diff options
| -rw-r--r-- | bgpd/bgp_fsm.c | 4 | ||||
| -rw-r--r-- | bgpd/bgp_fsm.h | 12 | ||||
| -rw-r--r-- | bgpd/bgp_open.c | 9 | ||||
| -rw-r--r-- | bgpd/bgp_vty.c | 2 | ||||
| -rw-r--r-- | bgpd/bgpd.h | 6 |
5 files changed, 18 insertions, 15 deletions
diff --git a/bgpd/bgp_fsm.c b/bgpd/bgp_fsm.c index 6854a6501a..e78eb7453a 100644 --- a/bgpd/bgp_fsm.c +++ b/bgpd/bgp_fsm.c @@ -1217,7 +1217,7 @@ static void bgp_update_delay_process_status_change(struct peer *peer) "Begin read-only mode - update-delay timer %d seconds", peer->bgp->v_update_delay); } - if (CHECK_FLAG(peer->cap, PEER_CAP_RESTART_BIT_RCV)) + if (CHECK_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV)) bgp_update_restarted_peers(peer); } if (peer->ostatus == Established @@ -2160,7 +2160,7 @@ static int bgp_establish(struct peer *peer) } else { /* Peer sends R-bit. In this case, we need to send * ZEBRA_CLIENT_ROUTE_UPDATE_COMPLETE to Zebra. */ - if (CHECK_FLAG(peer->cap, PEER_CAP_RESTART_BIT_RCV)) { + if (CHECK_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV)) { FOREACH_AFI_SAFI (afi, safi) /* Send route processing complete message to RIB */ diff --git a/bgpd/bgp_fsm.h b/bgpd/bgp_fsm.h index f3d1781ed9..765a5aec5e 100644 --- a/bgpd/bgp_fsm.h +++ b/bgpd/bgp_fsm.h @@ -110,14 +110,14 @@ && CHECK_FLAG(peer->cap, PEER_CAP_RESTART_RCV)) #define BGP_PEER_RESTARTING_MODE(peer) \ - (CHECK_FLAG(peer->flags, PEER_FLAG_GRACEFUL_RESTART) \ - && CHECK_FLAG(peer->cap, PEER_CAP_RESTART_BIT_ADV) \ - && !CHECK_FLAG(peer->cap, PEER_CAP_RESTART_BIT_RCV)) + (CHECK_FLAG(peer->flags, PEER_FLAG_GRACEFUL_RESTART) && \ + CHECK_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_ADV) && \ + !CHECK_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV)) #define BGP_PEER_HELPER_MODE(peer) \ - (CHECK_FLAG(peer->flags, PEER_FLAG_GRACEFUL_RESTART_HELPER) \ - && CHECK_FLAG(peer->cap, PEER_CAP_RESTART_BIT_RCV) \ - && !CHECK_FLAG(peer->cap, PEER_CAP_RESTART_BIT_ADV)) + (CHECK_FLAG(peer->flags, PEER_FLAG_GRACEFUL_RESTART_HELPER) && \ + CHECK_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV) && \ + !CHECK_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_ADV)) /* Prototypes. */ diff --git a/bgpd/bgp_open.c b/bgpd/bgp_open.c index d2c1ff12b5..dc9f97f369 100644 --- a/bgpd/bgp_open.c +++ b/bgpd/bgp_open.c @@ -518,9 +518,9 @@ static int bgp_capability_restart(struct peer *peer, SET_FLAG(peer->cap, PEER_CAP_RESTART_RCV); restart_flag_time = stream_getw(s); if (CHECK_FLAG(restart_flag_time, GRACEFUL_RESTART_R_BIT)) - SET_FLAG(peer->cap, PEER_CAP_RESTART_BIT_RCV); + SET_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV); else - UNSET_FLAG(peer->cap, PEER_CAP_RESTART_BIT_RCV); + UNSET_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV); UNSET_FLAG(restart_flag_time, 0xF000); peer->v_gr_restart = restart_flag_time; @@ -528,7 +528,8 @@ static int bgp_capability_restart(struct peer *peer, if (bgp_debug_neighbor_events(peer)) { zlog_debug("%s Peer has%srestarted. Restart Time : %d", peer->host, - CHECK_FLAG(peer->cap, PEER_CAP_RESTART_BIT_RCV) + CHECK_FLAG(peer->cap, + PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV) ? " " : " not ", peer->v_gr_restart); @@ -1417,7 +1418,7 @@ static void bgp_peer_send_gr_capability(struct stream *s, struct peer *peer, restart_time = peer->bgp->restart_time; if (peer->bgp->t_startup) { SET_FLAG(restart_time, GRACEFUL_RESTART_R_BIT); - SET_FLAG(peer->cap, PEER_CAP_RESTART_BIT_ADV); + SET_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_ADV); if (BGP_DEBUG(graceful_restart, GRACEFUL_RESTART)) zlog_debug("[BGP_GR] Sending R-Bit for Peer :%s :", diff --git a/bgpd/bgp_vty.c b/bgpd/bgp_vty.c index 2aa77576a1..bdd3164600 100644 --- a/bgpd/bgp_vty.c +++ b/bgpd/bgp_vty.c @@ -11260,7 +11260,7 @@ static void bgp_show_neighnor_graceful_restart_rbit(struct vty *vty, && (CHECK_FLAG(p->cap, PEER_CAP_RESTART_RCV)) && (peer_established(p))) { - if (CHECK_FLAG(p->cap, PEER_CAP_RESTART_BIT_RCV)) + if (CHECK_FLAG(p->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV)) rbit_status = true; else rbit_status = false; diff --git a/bgpd/bgpd.h b/bgpd/bgpd.h index dfed9f2ae9..aee5ce35d7 100644 --- a/bgpd/bgpd.h +++ b/bgpd/bgpd.h @@ -1176,8 +1176,10 @@ struct peer { #define PEER_CAP_RESTART_RCV (1U << 6) /* restart received */ #define PEER_CAP_AS4_ADV (1U << 7) /* as4 advertised */ #define PEER_CAP_AS4_RCV (1U << 8) /* as4 received */ -#define PEER_CAP_RESTART_BIT_ADV (1U << 9) /* sent restart state */ -#define PEER_CAP_RESTART_BIT_RCV (1U << 10) /* peer restart state */ +/* sent graceful-restart restart (R) bit */ +#define PEER_CAP_GRACEFUL_RESTART_R_BIT_ADV (1U << 9) +/* received graceful-restart restart (R) bit */ +#define PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV (1U << 10) #define PEER_CAP_ADDPATH_ADV (1U << 11) /* addpath advertised */ #define PEER_CAP_ADDPATH_RCV (1U << 12) /* addpath received */ #define PEER_CAP_ENHE_ADV (1U << 13) /* Extended nexthop advertised */ |
