mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-07 09:22:03 +00:00
bgpd: fixes for the "show bgp large-community" command
* Fix a segfault when the "show bgp large-community" command is given without any optional large communities; * Fix parsing of optional large communities. Without this fix a "Large-community malformed" error is shown even for valid large communities. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
This commit is contained in:
parent
2caafa8c6f
commit
d536095fd3
@ -8171,7 +8171,7 @@ bgp_show_lcommunity (struct vty *vty, struct bgp *bgp, int argc,
|
|||||||
buffer_putc (b, ' ');
|
buffer_putc (b, ' ');
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (strmatch (argv[i]->text, "<AA:BB:CC>"))
|
if (strmatch (argv[i]->text, "AA:BB:CC"))
|
||||||
{
|
{
|
||||||
first = 1;
|
first = 1;
|
||||||
buffer_putstr (b, argv[i]->arg);
|
buffer_putstr (b, argv[i]->arg);
|
||||||
@ -8187,7 +8187,7 @@ bgp_show_lcommunity (struct vty *vty, struct bgp *bgp, int argc,
|
|||||||
XFREE (MTYPE_TMP, str);
|
XFREE (MTYPE_TMP, str);
|
||||||
if (! lcom)
|
if (! lcom)
|
||||||
{
|
{
|
||||||
vty_out (vty, "%% Large-community malformed: %s", VTY_NEWLINE);
|
vty_out (vty, "%% Large-community malformed%s", VTY_NEWLINE);
|
||||||
return CMD_WARNING;
|
return CMD_WARNING;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -8299,8 +8299,7 @@ DEFUN (show_ip_bgp_large_community,
|
|||||||
return CMD_WARNING;
|
return CMD_WARNING;
|
||||||
}
|
}
|
||||||
|
|
||||||
argv_find (argv, argc, "large-community", &idx);
|
if (argv_find (argv, argc, "AA:BB:CC", &idx))
|
||||||
if (strmatch(argv[idx+1]->text, "AA:BB:CC"))
|
|
||||||
return bgp_show_lcommunity (vty, bgp, argc, argv, afi, safi, uj);
|
return bgp_show_lcommunity (vty, bgp, argc, argv, afi, safi, uj);
|
||||||
else
|
else
|
||||||
return bgp_show (vty, bgp, afi, safi, bgp_show_type_lcommunity_all, NULL, uj);
|
return bgp_show (vty, bgp, afi, safi, bgp_show_type_lcommunity_all, NULL, uj);
|
||||||
|
Loading…
Reference in New Issue
Block a user