From dd426a51e389ed5ea5cfa60e89adbec2d0740b1a Mon Sep 17 00:00:00 2001 From: Donatas Abraitis Date: Thu, 8 Dec 2022 15:46:43 +0200 Subject: [PATCH] bgpd: Deprecate `bgpStatusCodes` and `bgpOriginCodes` ``` donatas-pc# sh ip bgp neighbors 192.168.10.124 advertised-routes json { "bgpTableVersion":11, "bgpLocalRouterId":"192.168.10.17", "defaultLocPrf":100, "localAS":65002, "bgpStatusCodes":{ "suppressed":"s", "damped":"d", "history":"h", "valid":"*", "best":">", "multipath":"=", "internal":"i", "ribFailure":"r", "stale":"S", "removed":"R" }, "bgpOriginCodes":{ "igp":"i", "egp":"e", "incomplete":"?" }, "advertisedRoutes":{ "200.200.200.200\/32":{ "addrPrefix":"200.200.200.200", "prefixLen":32, "network":"200.200.200.200\/32", "nextHopGlobal":"2a02:4780:abc::2", "weight":0, "path":"65001", "bgpOriginCode":"?", "origin":"incomplete", <<<<<<< "valid":true, <<<<<<<< "best":true, <<<<<<<< "appliedStatusSymbols":{ "*":true, ">":true } } }, "totalPrefixCounter":1, "filteredPrefixCounter":0 } ``` Signed-off-by: Donatas Abraitis --- bgpd/bgp_route.c | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 427997fe21..7aa3e48d23 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -9682,8 +9682,14 @@ void route_vty_out_tmp(struct vty *vty, struct bgp_dest *dest, attr->aspath->str); /* Print origin */ +#if CONFDATE > 20231208 +CPP_NOTICE("Drop `bgpOriginCodes` from JSON outputs") +#endif json_object_string_add(json_net, "bgpOriginCode", bgp_origin_str[attr->origin]); + json_object_string_add( + json_net, "origin", + bgp_origin_long_str[attr->origin]); } else { if (p->family == AF_INET && (safi == SAFI_MPLS_VPN || safi == SAFI_ENCAP || @@ -9736,11 +9742,18 @@ void route_vty_out_tmp(struct vty *vty, struct bgp_dest *dest, if (use_json) { struct bgp_path_info *bpi = bgp_dest_get_bgp_path_info(dest); +#if CONFDATE > 20231208 +CPP_NOTICE("Drop `bgpStatusCodes` from JSON outputs") +#endif json_object_boolean_true_add(json_status, "*"); json_object_boolean_true_add(json_status, ">"); + json_object_boolean_true_add(json_net, "valid"); + json_object_boolean_true_add(json_net, "best"); - if (bpi && CHECK_FLAG(bpi->flags, BGP_PATH_MULTIPATH)) + if (bpi && CHECK_FLAG(bpi->flags, BGP_PATH_MULTIPATH)) { json_object_boolean_true_add(json_status, "="); + json_object_boolean_true_add(json_net, "multipath"); + } json_object_object_add(json_net, "appliedStatusSymbols", json_status); json_object_object_addf(json_ar, json_net, "%pFX", p); @@ -14243,7 +14256,9 @@ static int peer_adj_routes(struct vty *vty, struct peer *peer, afi_t afi, json_ar = json_object_new_object(); json_scode = json_object_new_object(); json_ocode = json_object_new_object(); - +#if CONFDATE > 20231208 +CPP_NOTICE("Drop `bgpStatusCodes` from JSON outputs") +#endif json_object_string_add(json_scode, "suppressed", "s"); json_object_string_add(json_scode, "damped", "d"); json_object_string_add(json_scode, "history", "h"); @@ -14255,6 +14270,9 @@ static int peer_adj_routes(struct vty *vty, struct peer *peer, afi_t afi, json_object_string_add(json_scode, "stale", "S"); json_object_string_add(json_scode, "removed", "R"); +#if CONFDATE > 20231208 +CPP_NOTICE("Drop `bgpOriginCodes` from JSON outputs") +#endif json_object_string_add(json_ocode, "igp", "i"); json_object_string_add(json_ocode, "egp", "e"); json_object_string_add(json_ocode, "incomplete", "?"); -- 2.39.5