isisd: address Coverity warnings
this fixes a bunch of issues found by Coverity SCAN and flagged as
"high" impact -- although, they're all rather minute issues.
* isisd/isis_adjacency.c: one superfluous check, one possible NULL deref
* isisd/isis_circuit.c: two prefix memory leaks
* isisd/isis_csm.c: one missing break
* isisd/isis_lsp.c: one possible NULL deref
* isisd/isis_pfpacket.c: one error-case fd leak
* isisd/isis_route.c: one isis_route_info memory leak
* isisd/isis_routemap.c: one... fnord
* isisd/isis_tlv.c: one infinite loop
Reported-by: Coverity SCAN
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
diff --git a/isisd/isis_circuit.c b/isisd/isis_circuit.c
index c09c3a2..3d9fb47 100644
--- a/isisd/isis_circuit.c
+++ b/isisd/isis_circuit.c
@@ -327,6 +327,8 @@
zlog_warn ("Nonexitant ip address %s removal attempt from \
circuit %d", buf, circuit->circuit_id);
}
+
+ prefix_ipv4_free (ipv4);
}
#ifdef HAVE_IPV6
if (connected->address->family == AF_INET6)
@@ -370,6 +372,8 @@
}
else if (circuit->area)
lsp_regenerate_schedule (circuit->area, circuit->is_type, 0);
+
+ prefix_ipv6_free (ipv6);
}
#endif /* HAVE_IPV6 */
return;