{CAPABILITY_CODE_ADDPATH, "AddPath"},
{CAPABILITY_CODE_DYNAMIC, "Dynamic"},
{CAPABILITY_CODE_ENHE, "Extended Next Hop Encoding"},
- {CAPABILITY_CODE_REFRESH_OLD, "Route Refresh (Old)"},
{CAPABILITY_CODE_ORF_OLD, "ORF (Old)"},
{CAPABILITY_CODE_FQDN, "FQDN"},
{CAPABILITY_CODE_ENHANCED_RR, "Enhanced Route Refresh"},
[CAPABILITY_CODE_ADDPATH] = CAPABILITY_CODE_ADDPATH_LEN,
[CAPABILITY_CODE_DYNAMIC] = CAPABILITY_CODE_DYNAMIC_LEN,
[CAPABILITY_CODE_ENHE] = CAPABILITY_CODE_ENHE_LEN,
- [CAPABILITY_CODE_REFRESH_OLD] = CAPABILITY_CODE_REFRESH_LEN,
[CAPABILITY_CODE_ORF_OLD] = CAPABILITY_CODE_ORF_LEN,
[CAPABILITY_CODE_FQDN] = CAPABILITY_CODE_MIN_FQDN_LEN,
[CAPABILITY_CODE_ENHANCED_RR] = CAPABILITY_CODE_ENHANCED_LEN,
[CAPABILITY_CODE_ADDPATH] = 4,
[CAPABILITY_CODE_DYNAMIC] = 1,
[CAPABILITY_CODE_ENHE] = 6,
- [CAPABILITY_CODE_REFRESH_OLD] = 1,
[CAPABILITY_CODE_ORF_OLD] = 1,
[CAPABILITY_CODE_FQDN] = 1,
[CAPABILITY_CODE_ENHANCED_RR] = 1,
switch (caphdr.code) {
case CAPABILITY_CODE_MP:
case CAPABILITY_CODE_REFRESH:
- case CAPABILITY_CODE_REFRESH_OLD:
case CAPABILITY_CODE_ORF:
case CAPABILITY_CODE_ORF_OLD:
case CAPABILITY_CODE_RESTART:
}
} break;
case CAPABILITY_CODE_ENHANCED_RR:
- case CAPABILITY_CODE_REFRESH:
- case CAPABILITY_CODE_REFRESH_OLD: {
+ case CAPABILITY_CODE_REFRESH: {
/* BGP refresh capability */
if (caphdr.code == CAPABILITY_CODE_ENHANCED_RR)
SET_FLAG(peer->cap, PEER_CAP_ENHANCED_RR_RCV);
- else if (caphdr.code == CAPABILITY_CODE_REFRESH_OLD)
- SET_FLAG(peer->cap, PEER_CAP_REFRESH_OLD_RCV);
else
- SET_FLAG(peer->cap, PEER_CAP_REFRESH_NEW_RCV);
+ SET_FLAG(peer->cap, PEER_CAP_REFRESH_RCV);
} break;
case CAPABILITY_CODE_ORF:
case CAPABILITY_CODE_ORF_OLD:
/* Route refresh. */
SET_FLAG(peer->cap, PEER_CAP_REFRESH_ADV);
stream_putc(s, BGP_OPEN_OPT_CAP);
- ext_opt_params ? stream_putw(s, CAPABILITY_CODE_REFRESH_LEN + 2)
- : stream_putc(s, CAPABILITY_CODE_REFRESH_LEN + 2);
- stream_putc(s, CAPABILITY_CODE_REFRESH_OLD);
- stream_putc(s, CAPABILITY_CODE_REFRESH_LEN);
- stream_putc(s, BGP_OPEN_OPT_CAP);
ext_opt_params ? stream_putw(s, CAPABILITY_CODE_REFRESH_LEN + 2)
: stream_putc(s, CAPABILITY_CODE_REFRESH_LEN + 2);
stream_putc(s, CAPABILITY_CODE_REFRESH);
#define CAPABILITY_CODE_FQDN 73 /* Advertise hostname capability */
#define CAPABILITY_CODE_SOFT_VERSION 75 /* Software Version capability */
#define CAPABILITY_CODE_ENHE 5 /* Extended Next Hop Encoding */
-#define CAPABILITY_CODE_REFRESH_OLD 128 /* Route Refresh Capability(cisco) */
#define CAPABILITY_CODE_ORF_OLD 130 /* Cooperative Route Filtering Capability(cisco) */
#define CAPABILITY_CODE_EXT_MESSAGE 6 /* Extended Message Support */
#define CAPABILITY_CODE_ROLE 9 /* Role Capability */
s = stream_new(peer->max_packet_size);
/* Make BGP update packet. */
- if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_NEW_RCV))
+ if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_RCV))
bgp_packet_set_marker(s, BGP_MSG_ROUTE_REFRESH_NEW);
else
bgp_packet_set_marker(s, BGP_MSG_ROUTE_REFRESH_OLD);
safi2str(safi), peer->host);
bgp_soft_reconfig_in(peer, afi, safi);
- } else if (CHECK_FLAG(peer->cap,
- PEER_CAP_REFRESH_OLD_RCV)
- || CHECK_FLAG(peer->cap,
- PEER_CAP_REFRESH_NEW_RCV)) {
+ } else if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_RCV)) {
if (bgp_debug_update(peer, NULL, NULL, 1))
zlog_debug(
"Processing route_map %s(%s:%s) update on peer %s (inbound, route-refresh)",
/* Route Refresh */
if (CHECK_FLAG(p->cap, PEER_CAP_REFRESH_ADV) ||
- CHECK_FLAG(p->cap, PEER_CAP_REFRESH_NEW_RCV) ||
- CHECK_FLAG(p->cap, PEER_CAP_REFRESH_OLD_RCV)) {
+ CHECK_FLAG(p->cap, PEER_CAP_REFRESH_RCV)) {
if (CHECK_FLAG(p->cap, PEER_CAP_REFRESH_ADV) &&
- (CHECK_FLAG(p->cap,
- PEER_CAP_REFRESH_NEW_RCV) ||
- CHECK_FLAG(p->cap,
- PEER_CAP_REFRESH_OLD_RCV))) {
- if (CHECK_FLAG(
- p->cap,
- PEER_CAP_REFRESH_OLD_RCV) &&
- CHECK_FLAG(
- p->cap,
- PEER_CAP_REFRESH_NEW_RCV))
- json_object_string_add(
- json_cap,
- "routeRefresh",
- "advertisedAndReceivedOldNew");
- else {
- if (CHECK_FLAG(
- p->cap,
- PEER_CAP_REFRESH_OLD_RCV))
- json_object_string_add(
- json_cap,
- "routeRefresh",
- "advertisedAndReceivedOld");
- else
- json_object_string_add(
- json_cap,
- "routeRefresh",
- "advertisedAndReceivedNew");
- }
- } else if (CHECK_FLAG(p->cap,
- PEER_CAP_REFRESH_ADV))
+ CHECK_FLAG(p->cap, PEER_CAP_REFRESH_RCV))
+ json_object_string_add(json_cap,
+ "routeRefresh",
+ "advertisedAndReceived");
+ else if (CHECK_FLAG(p->cap,
+ PEER_CAP_REFRESH_ADV))
json_object_string_add(json_cap,
"routeRefresh",
"advertised");
else if (CHECK_FLAG(p->cap,
- PEER_CAP_REFRESH_NEW_RCV) ||
- CHECK_FLAG(p->cap,
- PEER_CAP_REFRESH_OLD_RCV))
+ PEER_CAP_REFRESH_RCV))
json_object_string_add(json_cap,
"routeRefresh",
"received");
/* Route Refresh */
if (CHECK_FLAG(p->cap, PEER_CAP_REFRESH_ADV) ||
- CHECK_FLAG(p->cap, PEER_CAP_REFRESH_NEW_RCV) ||
- CHECK_FLAG(p->cap, PEER_CAP_REFRESH_OLD_RCV)) {
+ CHECK_FLAG(p->cap, PEER_CAP_REFRESH_RCV)) {
vty_out(vty, " Route refresh:");
if (CHECK_FLAG(p->cap, PEER_CAP_REFRESH_ADV))
vty_out(vty, " advertised");
- if (CHECK_FLAG(p->cap,
- PEER_CAP_REFRESH_NEW_RCV) ||
- CHECK_FLAG(p->cap,
- PEER_CAP_REFRESH_OLD_RCV))
- vty_out(vty, " %sreceived(%s)",
+ if (CHECK_FLAG(p->cap, PEER_CAP_REFRESH_RCV))
+ vty_out(vty, " %sreceived",
CHECK_FLAG(p->cap,
PEER_CAP_REFRESH_ADV)
? "and "
- : "",
- (CHECK_FLAG(
- p->cap,
- PEER_CAP_REFRESH_OLD_RCV) &&
- CHECK_FLAG(
- p->cap,
- PEER_CAP_REFRESH_NEW_RCV))
- ? "old & new"
- : CHECK_FLAG(
- p->cap,
- PEER_CAP_REFRESH_OLD_RCV)
- ? "old"
- : "new");
-
+ : "");
vty_out(vty, "\n");
}
bgp_notify_send(peer, BGP_NOTIFY_CEASE,
BGP_NOTIFY_CEASE_CONFIG_CHANGE);
} else if (type == peer_change_reset_in) {
- if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_OLD_RCV)
- || CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_NEW_RCV))
+ if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_RCV))
bgp_route_refresh_send(peer, afi, safi, 0, 0, 0,
BGP_ROUTE_REFRESH_NORMAL);
else {
if (bgp_soft_reconfig_in(peer, afi, safi))
return;
- if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_OLD_RCV) ||
- CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_NEW_RCV))
+ if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_RCV))
bgp_route_refresh_send(peer, afi, safi, 0, 0, 0,
BGP_ROUTE_REFRESH_NORMAL);
}
/* If neighbor has route refresh capability, send route
refresh
message to the peer. */
- if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_OLD_RCV)
- || CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_NEW_RCV))
+ if (CHECK_FLAG(peer->cap, PEER_CAP_REFRESH_RCV))
bgp_route_refresh_send(
peer, afi, safi, 0, 0, 0,
BGP_ROUTE_REFRESH_NORMAL);
/* Capability flags (reset in bgp_stop) */
uint32_t cap;
#define PEER_CAP_REFRESH_ADV (1U << 0) /* refresh advertised */
-#define PEER_CAP_REFRESH_OLD_RCV (1U << 1) /* refresh old received */
-#define PEER_CAP_REFRESH_NEW_RCV (1U << 2) /* refresh rfc received */
+#define PEER_CAP_REFRESH_RCV (1U << 2) /* refresh rfc received */
#define PEER_CAP_DYNAMIC_ADV (1U << 3) /* dynamic advertised */
#define PEER_CAP_DYNAMIC_RCV (1U << 4) /* dynamic received */
#define PEER_CAP_RESTART_ADV (1U << 5) /* restart advertised */