]> git.proxmox.com Git - mirror_frr.git/commitdiff
bfdd: move interface/vrf reset code
authorRafael Zalamena <rzalamena@opensourcerouting.org>
Mon, 23 Nov 2020 18:40:50 +0000 (15:40 -0300)
committerRafael Zalamena <rzalamena@opensourcerouting.org>
Tue, 24 Nov 2020 10:55:07 +0000 (07:55 -0300)
Don't reset interface/vrf pointer everytime a session is disabled
instead only do it when it was explicitly removed.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
bfdd/bfd.c
bfdd/ptm_adapter.c

index 524989004326e6cbc5fc0f1b4638d4168271bc67..f7ce0ece3ee93297f1a22a0897f3bc69e11a53a3 100644 (file)
@@ -409,8 +409,6 @@ void bfd_session_disable(struct bfd_session *bs)
        bfd_recvtimer_delete(bs);
        bfd_xmttimer_delete(bs);
        ptm_bfd_echo_stop(bs);
-       bs->vrf = NULL;
-       bs->ifp = NULL;
 
        /* Set session down so it doesn't report UP and disabled. */
        ptm_bfd_sess_dn(bs, BD_PATH_DOWN);
index 90e2df2367a876ab8db79922726c1d8d6a07d37a..44519c47b5e95055e3b1dd1397f03d4a31ae3f3d 100644 (file)
@@ -703,7 +703,7 @@ static void bfdd_sessions_disable_interface(struct interface *ifp)
                        continue;
 
                bfd_session_disable(bs);
-
+               bs->ifp = NULL;
        }
 }
 
@@ -752,6 +752,7 @@ void bfdd_sessions_disable_vrf(struct vrf *vrf)
                        continue;
 
                bfd_session_disable(bs);
+               bs->vrf = NULL;
        }
 }