diff options
| author | Philippe Guibert <philippe.guibert@6wind.com> | 2018-04-06 13:17:16 +0200 |
|---|---|---|
| committer | Philippe Guibert <philippe.guibert@6wind.com> | 2018-04-09 11:04:14 +0200 |
| commit | 026b914a402fd59f900fa386d8fbcfacbafb7f62 (patch) | |
| tree | b37be4ebcef3cb3512932f7613df862bab168e3d | |
| parent | b72220fccda0fb96043e4b91b4afdacfb63e5a78 (diff) | |
bgpd: the nexthop IP is displayed for FS entries.
Most presumably, the nexthop IP is present, only when ECOM redirect IP
is present. The nexthop is displayed.
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
| -rw-r--r-- | bgpd/bgp_flowspec_vty.c | 3 | ||||
| -rw-r--r-- | bgpd/bgp_route.c | 16 |
2 files changed, 17 insertions, 2 deletions
diff --git a/bgpd/bgp_flowspec_vty.c b/bgpd/bgp_flowspec_vty.c index 247da5d183..7bf11f12aa 100644 --- a/bgpd/bgp_flowspec_vty.c +++ b/bgpd/bgp_flowspec_vty.c @@ -312,6 +312,9 @@ void route_vty_out_flowspec(struct vty *vty, struct prefix *p, json_object_array_add(json_paths, json_ecom_path); } + if (attr->nexthop.s_addr != 0 && + display == NLRI_STRING_FORMAT_LARGE) + vty_out(vty, "\tNH %-16s\n", inet_ntoa(attr->nexthop)); XFREE(MTYPE_ECOMMUNITY_STR, s); } peer_uptime(binfo->uptime, timebuf, BGP_UPTIME_LEN, 0, NULL); diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 944ae5b5dc..bd7b9964fb 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -6545,8 +6545,20 @@ void route_vty_out(struct vty *vty, struct prefix *p, struct bgp_info *binfo, } else vty_out(vty, "%-16s", inet_ntoa(attr->nexthop)); } else if (safi == SAFI_FLOWSPEC) { - /* already done */ - /* IPv4 Next Hop */ + if (attr->nexthop.s_addr != 0) { + if (json_paths) { + json_nexthop_global = json_object_new_object(); + json_object_string_add( + json_nexthop_global, "ip", + inet_ntoa(attr->nexthop)); + json_object_string_add(json_nexthop_global, + "afi", "ipv4"); + json_object_boolean_true_add(json_nexthop_global, + "used"); + } else { + vty_out(vty, "%-16s", inet_ntoa(attr->nexthop)); + } + } } else if (p->family == AF_INET && !BGP_ATTR_NEXTHOP_AFI_IP6(attr)) { if (json_paths) { json_nexthop_global = json_object_new_object(); |
