diff options
author | Andrew J. Schorr <ajschorr@alumni.princeton.edu> | 2007-02-27 13:55:46 +0000 |
---|---|---|
committer | Andrew J. Schorr <ajschorr@alumni.princeton.edu> | 2007-02-27 13:55:46 +0000 |
commit | 4056a544eb0b7ea513bca0d70808e671c3f2c25b (patch) | |
tree | d5e3ecf637a6ac20215a33e100b63c41eb6c53df | |
parent | bd34fb346db5bb1f0bc8eeeef1868e296d889053 (diff) |
[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.
-rw-r--r-- | ospfd/ChangeLog | 6 | ||||
-rw-r--r-- | ospfd/ospfd.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/ospfd/ChangeLog b/ospfd/ChangeLog index 35ffd69d..191288e7 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 f72295d1..159422b4 100644 --- a/ospfd/ospfd.c +++ b/ospfd/ospfd.c @@ -355,6 +355,10 @@ ospf_terminate (void) 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); |