summaryrefslogtreecommitdiffstats
path: root/ospf6d/ospf6d.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@nvidia.com>2021-09-01 12:30:33 +0200
committerDonald Sharp <sharpd@nvidia.com>2021-09-01 14:07:53 +0200
commit819a0202ae5eff93ab125602d19ffa5799b17989 (patch)
tree14f308b473e9b0ba784fd3971ad17402516d894a /ospf6d/ospf6d.c
parentMerge pull request #9525 from idryzhov/ospfd-crash (diff)
downloadfrr-819a0202ae5eff93ab125602d19ffa5799b17989.tar.xz
frr-819a0202ae5eff93ab125602d19ffa5799b17989.zip
ospf6d: Prevent crash of show ipv6 ospf data adv-router 0.0.0.0 linkstate-id 0.0.0.0
With this sequence of events: eva# conf eva(config)# router ospf6 eva(config-ospf6)# end eva# show ipv6 ospf data adv-router 0.0.0.0 linkstate-id 0.0.0.0 OSPF6: Received signal 11 at 1630442431 (si_addr 0x0, PC 0x559dcfa3a656); aborting... OSPF6: zlog_signal+0x18c 7fd2cc8229f7 7fff606775d0 /lib/libfrr.so.0 (mapped at 0x7fd2cc770000) OSPF6: core_handler+0xe3 7fd2cc8616ad 7fff606776f0 /lib/libfrr.so.0 (mapped at 0x7fd2cc770000) OSPF6: funlockfile+0x50 7fd2cc74f140 7fff60677840 /lib/x86_64-linux-gnu/libpthread.so.0 (mapped at 0x7fd2cc73b000) OSPF6: ---- signal ---- OSPF6: ospf6_lsdb_type_show_wrapper+0x5d 559dcfa3a656 7fff60677dd0 /usr/lib/frr/ospf6d (mapped at 0x559dcf9a5000) OSPF6: show_ipv6_ospf6_database_adv_router_linkstate_id+0x1f9 559dcfa3c24a 7fff60677e50 /usr/lib/frr/ospf6d (mapped at 0x559dcf9a5000) OSPF6 crashes. Fix. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Diffstat (limited to 'ospf6d/ospf6d.c')
-rw-r--r--ospf6d/ospf6d.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/ospf6d/ospf6d.c b/ospf6d/ospf6d.c
index 5dfd986e2..0e8185cfe 100644
--- a/ospf6d/ospf6d.c
+++ b/ospf6d/ospf6d.c
@@ -833,7 +833,6 @@ DEFUN(show_ipv6_ospf6_database_adv_router_linkstate_id,
bool all_vrf = false;
int idx_vrf = 0;
-
OSPF6_CMD_CHECK_RUNNING();
OSPF6_FIND_VRF_ARGS(argv, argc, idx_vrf, vrf_name, all_vrf);
if (idx_vrf > 0) {
@@ -847,9 +846,8 @@ DEFUN(show_ipv6_ospf6_database_adv_router_linkstate_id,
for (ALL_LIST_ELEMENTS_RO(om6->ospf6, node, ospf6)) {
if (all_vrf || strcmp(ospf6->name, vrf_name) == 0) {
- ospf6_lsdb_type_show_wrapper(vty, level, NULL, &id,
- &adv_router, uj, ospf6);
-
+ ospf6_lsdb_show_wrapper(vty, level, NULL, &id,
+ &adv_router, uj, ospf6);
if (!all_vrf)
break;
}