bgpd: Fix 'show bgp ipv4 vpnv4 statistics' cli

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 <sharpd@cumulusnetworks.com>
This commit is contained in:
Donald Sharp 2016-01-26 06:57:17 -08:00
parent 574970ab20
commit 06da0dafc0

View File

@ -10630,7 +10630,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 exist's for the AFI(%d)/SAFI(%d)%s",
afi, safi, VTY_NEWLINE);
return CMD_WARNING;
}
@ -10741,7 +10742,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",