]> git.puffer.fish Git - mirror/frr.git/commitdiff
ospfd: ospf_if_free can leave dangling references on ISM events - cancel them
authorPaul Jakma <paul@quagga.net>
Thu, 15 Apr 2010 10:39:05 +0000 (11:39 +0100)
committerPaul Jakma <paul@quagga.net>
Wed, 8 Dec 2010 17:11:17 +0000 (17:11 +0000)
* ospf_interface.c: (ospf_if_free) events with dangling pointers left
  scheduled can be seriously bad for ospfd's health. Cancel the event.

ospfd/ospf_interface.c

index afe3acf133e817636c9e40769fcec32421995924..f9dc4b09c995eb8ab8e0e22d235b30d2cfa318ed 100644 (file)
@@ -335,6 +335,8 @@ ospf_if_free (struct ospf_interface *oi)
   listnode_delete (oi->ospf->oiflist, oi);
   listnode_delete (oi->area->oiflist, oi);
 
+  thread_cancel_event (master, oi);
+
   memset (oi, 0, sizeof (*oi));
   XFREE (MTYPE_OSPF_IF, oi);
 }