[ospfd] early-return in nsm_event missed LLDown event, fixes use after free
2006-07-06 Paul Jakma <paul.jakma@sun.com>
* ospf_nsm.c: (ospf_nsm_event) LLDown event also results in nbr
being deleted, requires early-return too. Likely explains
some crash reports after interface events.
diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog
index 054935b..b4f7d3e 100644
--- a/ospfd/ChangeLog
+++ b/ospfd/ChangeLog
@@ -1,3 +1,9 @@
+2006-07-06 Paul Jakma <paul.jakma@sun.com>
+
+ * ospf_nsm.c: (ospf_nsm_event) LLDown event also results in nbr
+ being deleted, requires early-return too. Likely explains
+ some crash reports after interface events.
+
2006-07-04 Paul Jakma <paul.jakma@sun.com>
* ospf_nsm.c: (general) Various small cleanups from Andrew's
diff --git a/ospfd/ospf_nsm.c b/ospfd/ospf_nsm.c
index 11da503..fb736eb 100644
--- a/ospfd/ospf_nsm.c
+++ b/ospfd/ospf_nsm.c
@@ -857,7 +857,9 @@
/* When event is NSM_KillNbr or InactivityTimer, the neighbor is
deleted. */
- if (event == NSM_KillNbr || event == NSM_InactivityTimer)
+ if (event == NSM_KillNbr
+ || event == NSM_InactivityTimer
+ || event == NSM_LLDown)
{
if (IS_DEBUG_OSPF (nsm, NSM_EVENTS))
zlog_debug ("NSM[%s:%s]: neighbor deleted",