summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_route.c
diff options
context:
space:
mode:
authorDonatas Abraitis <donatas@opensourcerouting.org>2022-12-08 14:46:43 +0100
committerDonatas Abraitis <donatas@opensourcerouting.org>2022-12-08 14:57:14 +0100
commitdd426a51e389ed5ea5cfa60e89adbec2d0740b1a (patch)
treec1b4ea3ec9e6dfbf5c1bfdb0a7ff819a7b099299 /bgpd/bgp_route.c
parentMerge pull request #12460 from opensourcerouting/msdp-fixes (diff)
downloadfrr-dd426a51e389ed5ea5cfa60e89adbec2d0740b1a.tar.xz
frr-dd426a51e389ed5ea5cfa60e89adbec2d0740b1a.zip
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 <donatas@opensourcerouting.org>
Diffstat (limited to 'bgpd/bgp_route.c')
-rw-r--r--bgpd/bgp_route.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index 427997fe2..7aa3e48d2 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", "?");