[ospfd] Fix bug: should exit immediately on SIGTERM if OSPF not actually running

2007-02-27 Andrew J. Schorr <ajschorr@alumni.princeton.edu>

	* ospfd.c: (ospf_terminate) Exit immediately if ospf is not
	  actually running (e.g. the config file was empty).  Fixes
	  bug where SIGTERM would not kill ospfd.
diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog
index 35ffd69..191288e 100644
--- a/ospfd/ChangeLog
+++ b/ospfd/ChangeLog
@@ -1,3 +1,9 @@
+2007-02-27 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
+
+	* ospfd.c: (ospf_terminate) Exit immediately if ospf is not
+	  actually running (e.g. the config file was empty).  Fixes
+	  bug where SIGTERM would not kill ospfd.
+
 2007-02-26 Paul Jakma <paul.jakma@sun.com>
 
 	* ospf_spf.c: Fix regression introduced with bug #330 fix: The
diff --git a/ospfd/ospfd.c b/ospfd/ospfd.c
index f72295d..159422b 100644
--- a/ospfd/ospfd.c
+++ b/ospfd/ospfd.c
@@ -355,6 +355,10 @@
   
   SET_FLAG (om->options, OSPF_MASTER_SHUTDOWN);
 
+  /* exit immediately if OSPF not actually running */
+  if (listcount(om->ospf) == 0)
+    exit(0);
+
   for (ALL_LIST_ELEMENTS (om->ospf, node, nnode, ospf))
     ospf_finish (ospf);