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 <sharpd@cumulusnetworks.com>
This commit is contained in:
Donald Sharp 2016-11-16 12:00:40 -05:00
parent 70a4754dd0
commit 71ffee748f

View File

@ -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++)