From: Chirag Shah Date: Mon, 4 Nov 2019 19:15:02 +0000 (-0800) Subject: bgpd: fix json output for show cmd for evpn routes X-Git-Tag: base_7.3~187^2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=refs%2Fpull%2F5311%2Fhead;p=mirror%2Ffrr.git bgpd: fix json output for show cmd for evpn routes Fix json output where show command displayed "Route Distinguisher: " string in json output because NULL json object passed to bgp_evpn_show_route_rd_header() Testing Done: Route Distinguisher: ip 27.0.0.11:3 Route Distinguisher: ip 27.0.0.11:4 Route Distinguisher: ip 27.0.0.16:3 Route Distinguisher: ip 27.0.0.16:5 Route Distinguisher: ip 27.0.0.16:9 { "27.0.0.11:3":{ "rd":"27.0.0.11:3", "[2]:[0]:[48]:[00:02:00:00:00:02]":{ "prefix":"[2]:[0]:[48]:[00:02:00:00:00:02]", "prefixLen":288, ... } Post fix: { "27.0.0.11:3":{ "rd":"27.0.0.11:3", "[2]:[0]:[48]:[00:02:00:00:00:02]":{ "prefix":"[2]:[0]:[48]:[00:02:00:00:00:02]", "prefixLen":288, ... } Signed-off-by: Chirag Shah --- diff --git a/bgpd/bgp_evpn_vty.c b/bgpd/bgp_evpn_vty.c index 7dbeb8029a..3bc8345140 100644 --- a/bgpd/bgp_evpn_vty.c +++ b/bgpd/bgp_evpn_vty.c @@ -2619,10 +2619,8 @@ static void evpn_show_all_routes(struct vty *vty, struct bgp *bgp, int type, prefix_rd2str((struct prefix_rd *)&rd_rn->p, rd_str, sizeof(rd_str)); - if (json) { + if (json) json_rd = json_object_new_object(); - json_object_string_add(json_rd, "rd", rd_str); - } rd_header = 1; @@ -2659,7 +2657,7 @@ static void evpn_show_all_routes(struct vty *vty, struct bgp *bgp, int type, /* RD header - per RD. */ if (rd_header) { bgp_evpn_show_route_rd_header( - vty, rd_rn, NULL, rd_str, + vty, rd_rn, json_rd, rd_str, RD_ADDRSTRLEN); rd_header = 0; }