summaryrefslogtreecommitdiff
path: root/bgpd/rfapi/rfapi_rib.c
diff options
context:
space:
mode:
authorRenato Westphal <renato@opensourcerouting.org>2017-07-25 13:55:48 -0300
committerRenato Westphal <renato@opensourcerouting.org>2017-07-25 13:58:23 -0300
commit9b86009a38e127c4797aa7818537d4577ed9bf6a (patch)
tree0d228643bea2df13479817230b3a497392ad1908 /bgpd/rfapi/rfapi_rib.c
parentc6413dd3943263f532eccd6a9f9d4564d5fe4e7f (diff)
bgpd/eigrpd: fix crashes found by the CLI fuzzer
Fixes the following crashes: * bgpd aborted: vtysh -c "show ip bgp l2vpn evpn all 1.1.1.1 json" * bgpd aborted: vtysh -c "show ip bgp l2vpn evpn all 1.1.1.1" * bgpd aborted: vtysh -c "show ip bgp l2vpn evpn all 1.1.1.1/32 json" * bgpd aborted: vtysh -c "show ip bgp l2vpn evpn all 1.1.1.1/32" * bgpd aborted: vtysh -c "show bgp l2vpn evpn all 1.1.1.1 json" * bgpd aborted: vtysh -c "show bgp l2vpn evpn all 1.1.1.1" * bgpd aborted: vtysh -c "show bgp l2vpn evpn all 1.1.1.1/32 json" * bgpd aborted: vtysh -c "show bgp l2vpn evpn all 1.1.1.1/32" * bgpd aborted: vtysh -c "show bgp ipv4 vpn rd 1:1 1.1.1.1/32 json" * bgpd aborted: vtysh -c "show bgp ipv4 vpn rd 1:1 1.1.1.1/32" * bgpd aborted: vtysh -c "show bgp ipv4 vpn rd 1:1 2001:db8::1/128 json" * bgpd aborted: vtysh -c "show bgp ipv4 vpn rd 1:1 2001:db8::1/128" * bgpd aborted: vtysh -c "show bgp ipv6 vpn rd 1:1 1.1.1.1/32 json" * bgpd aborted: vtysh -c "show bgp ipv6 vpn rd 1:1 1.1.1.1/32" * bgpd aborted: vtysh -c "show bgp ipv6 vpn rd 1:1 2001:db8::1/128 json" * bgpd aborted: vtysh -c "show bgp ipv6 vpn rd 1:1 2001:db8::1/128" * bgpd aborted: vtysh -c "show vnc responses 1.1.1.1/32" * bgpd aborted: vtysh -c "show vnc responses 2001:db8::1/128" * bgpd aborted: vtysh -c "show vnc responses 11:11:11:11:11:11" * bgpd aborted: vtysh -c "show vnc responses" * eigrpd aborted: vtysh -c "configure terminal" -c "no router eigrp 65535" Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Diffstat (limited to 'bgpd/rfapi/rfapi_rib.c')
-rw-r--r--bgpd/rfapi/rfapi_rib.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/bgpd/rfapi/rfapi_rib.c b/bgpd/rfapi/rfapi_rib.c
index a414df1ab4..791eb4c916 100644
--- a/bgpd/rfapi/rfapi_rib.c
+++ b/bgpd/rfapi/rfapi_rib.c
@@ -2236,9 +2236,12 @@ void rfapiRibShowResponsesSummary(void *stream)
struct rfapi_descriptor *rfd;
struct listnode *node;
-
if (rfapiStream2Vty(stream, &fp, &vty, &out, &vty_newline) == 0)
return;
+ if (!bgp) {
+ fp(out, "Unable to find default BGP instance\n");
+ return;
+ }
fp(out, "%-24s ", "Responses: (Prefixes)");
fp(out, "%-8s %-8u ", "Active:", bgp->rfapi->rib_prefix_count_total);
@@ -2388,6 +2391,11 @@ void rfapiRibShowResponses(void *stream, struct prefix *pfx_match,
if (rfapiStream2Vty(stream, &fp, &vty, &out, &vty_newline) == 0)
return;
+ if (!bgp) {
+ fp(out, "Unable to find default BGP instance\n");
+ return;
+ }
+
/*
* loop over NVEs
*/