bgpd: Set last reset No AFI/SAFI activated for peer after we do defaults

Move checking if the peer is active only after we apply defaults for address
families.

If the family got activated after applying the defaults we should reset last_reset
reason.

Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
This commit is contained in:
Donatas Abraitis 2025-01-18 14:54:20 +02:00
parent 0702ddb3c9
commit 9a5be11191

View File

@ -2026,8 +2026,11 @@ struct peer *peer_create(union sockunion *su, const char *conf_if,
if (bgp->autoshutdown) if (bgp->autoshutdown)
peer_flag_set(peer, PEER_FLAG_SHUTDOWN); peer_flag_set(peer, PEER_FLAG_SHUTDOWN);
/* Set up peer's events and timers. */ /* Set up peer's events and timers. */
else if (!active && peer_active(peer->connection)) else if (!active && peer_active(peer->connection)) {
if (peer->last_reset == PEER_DOWN_NOAFI_ACTIVATED)
peer->last_reset = 0;
bgp_timer_set(peer->connection); bgp_timer_set(peer->connection);
}
bgp_peer_gr_flags_update(peer); bgp_peer_gr_flags_update(peer);
BGP_GR_ROUTER_DETECT_AND_SEND_CAPABILITY_TO_ZEBRA(bgp, bgp->peer); BGP_GR_ROUTER_DETECT_AND_SEND_CAPABILITY_TO_ZEBRA(bgp, bgp->peer);