From: Donald Sharp Date: Wed, 6 Mar 2019 15:40:53 +0000 (-0500) Subject: bgpd: Don't prevent views from being able to connect X-Git-Tag: 7.1_pulled~184^2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=dded74d5784072b4d1d90d4307a94f1171abf825;p=mirror%2Ffrr.git bgpd: Don't prevent views from being able to connect Views are perfectly valid and should be allowed to connect. In a bgp instance scenario the vrf_id will always be UNKNOWN, so allow it. Signed-off-by: Donald Sharp --- diff --git a/bgpd/bgp_fsm.c b/bgpd/bgp_fsm.c index b70c8bbd63..447d8da613 100644 --- a/bgpd/bgp_fsm.c +++ b/bgpd/bgp_fsm.c @@ -310,7 +310,8 @@ void bgp_timer_set(struct peer *peer) status start timer is on unless peer is shutdown or peer is inactive. All other timer must be turned off */ if (BGP_PEER_START_SUPPRESSED(peer) || !peer_active(peer) - || peer->bgp->vrf_id == VRF_UNKNOWN) { + || (peer->bgp->inst_type != BGP_INSTANCE_TYPE_VIEW && + peer->bgp->vrf_id == VRF_UNKNOWN)) { BGP_TIMER_OFF(peer->t_start); } else { BGP_TIMER_ON(peer->t_start, bgp_start_timer, @@ -1422,7 +1423,8 @@ int bgp_start(struct peer *peer) return 0; } - if (peer->bgp->vrf_id == VRF_UNKNOWN) { + if (peer->bgp->inst_type != BGP_INSTANCE_TYPE_VIEW && + peer->bgp->vrf_id == VRF_UNKNOWN) { if (bgp_debug_neighbor_events(peer)) flog_err( EC_BGP_FSM,