From 71ffee748f3a5466dc3e73e9f5fb5b286ff3b6c5 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Wed, 16 Nov 2016 12:00:40 -0500 Subject: [PATCH] bgpd: More Extended nexthop fixing Basically if we are reading in a cli with a extended-nexthop and we have not received from zebra the interface we are working on I believe we have a race condition where we are not propagating the PEER_FLAG_CAPABILITY_ENHE in this case. Modify the code to propagate even if we haven't found the interface yet. Signed-off-by: Donald Sharp --- bgpd/bgpd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c index 86133cd763..c6997a9b83 100644 --- a/bgpd/bgpd.c +++ b/bgpd/bgpd.c @@ -2652,7 +2652,7 @@ peer_group_bind (struct bgp *bgp, union sockunion *su, struct peer *peer, * Capability extended-nexthop is enabled for an interface neighbor by * default. So, fix that up here. */ - if (peer->ifp && cap_enhe_preset) + if (peer->conf_if && cap_enhe_preset) peer_flag_set (peer, PEER_FLAG_CAPABILITY_ENHE); for (afi = AFI_IP; afi < AFI_MAX; afi++)