From: Donald Sharp Date: Tue, 3 May 2016 03:52:00 +0000 (-0400) Subject: bgpd: Fix call bgp_zebra_terminate_radv X-Git-Tag: frr-2.0-rc1~943 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=5575a6bb924f11f45429c1e1a618bb0bfdb81892;p=matthieu%2Ffrr.git bgpd: Fix call bgp_zebra_terminate_radv The call into bgp_zebra_terminate_radv was setting the peer->ifp to NULL before calling into bgp_zebra_terminate_radv. Signed-off-by: Donald Sharp Reviewed-by: Vivek Venkatraman --- diff --git a/bgpd/bgp_zebra.c b/bgpd/bgp_zebra.c index 7f5f47e062..377a6e08a6 100644 --- a/bgpd/bgp_zebra.c +++ b/bgpd/bgp_zebra.c @@ -183,11 +183,16 @@ bgp_update_interface_nbrs (struct bgp *bgp, struct interface *ifp, if (peer->conf_if && (strcmp (peer->conf_if, ifp->name) == 0)) { - peer->ifp = upd_ifp; if (upd_ifp) - bgp_zebra_initiate_radv (bgp, peer); + { + peer->ifp = upd_ifp; + bgp_zebra_initiate_radv (bgp, peer); + } else - bgp_zebra_terminate_radv (bgp, peer); + { + bgp_zebra_terminate_radv (bgp, peer); + peer->ifp = upd_ifp; + } } } }