When attempting to use the 'show bgp ipv4 vpnv4 statistics' cli, the safi choosen is BGP_MPLS_LABELED_VPN which is #defined to 128. The afi/safi combination is fed to bgp->rib, which limits the size of the safi to BGP_SAFI_MAX which is #defined to 5. The correct value to use is BGP_MPLS_VPN
The bgp code differentiates between the actual safi value for BGP_MPLS_LABELED_VPN used defined by RFC 4364, to a internal SAFI value used to limit array size. Signed-off-by: Donald Sharp <[email protected]> --- bgpd/bgp_route.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c index 316fa5a..f669c53 100644 --- a/bgpd/bgp_route.c +++ b/bgpd/bgp_route.c @@ -9513,7 +9513,8 @@ bgp_table_stats (struct vty *vty, struct bgp *bgp, afi_t afi, safi_t safi) if (!bgp->rib[afi][safi]) { - vty_out (vty, "%% No RIB exist for the AFI/SAFI%s", VTY_NEWLINE); + vty_out (vty, "%% No RIB exists for the specified AFI(%d)/SAFI(%d)%s", + afi, safi, VTY_NEWLINE); return CMD_WARNING; } @@ -9624,7 +9625,7 @@ bgp_table_stats_vty (struct vty *vty, const char *name, else if (strncmp (safi_str, "u", 1) == 0) safi = SAFI_UNICAST; else if (strncmp (safi_str, "vpnv4", 5) == 0 || strncmp (safi_str, "vpnv6", 5) == 0) - safi = SAFI_MPLS_LABELED_VPN; + safi = SAFI_MPLS_VPN; else { vty_out (vty, "%% Invalid subsequent address family %s%s", -- 1.9.1 _______________________________________________ Quagga-dev mailing list [email protected] https://lists.quagga.net/mailman/listinfo/quagga-dev
