]> git.puffer.fish Git - mirror/frr.git/commitdiff
2004-02-17 Paul Jakma <paul@dishone.st>
authorpaul <paul>
Tue, 17 Feb 2004 20:07:30 +0000 (20:07 +0000)
committerpaul <paul>
Tue, 17 Feb 2004 20:07:30 +0000 (20:07 +0000)
        * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
          params, nor the interface structure, if an interface delete
          message is received from zebra.
        * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
          params and interface, ie that which was previously removed in
          (ospf_interface_delete) above.

ospfd/ChangeLog
ospfd/ospf_interface.c
ospfd/ospf_zebra.c

index b2a5ad2ed524581911c07c0f20f4110375cb0f34..6c8955a3fceb7c4d9b01c6523036c13ce9350eb5 100644 (file)
@@ -1,3 +1,12 @@
+2004-02-17 Paul Jakma <paul@dishone.st>
+
+       * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
+         params, nor the interface structure, if an interface delete 
+         message is received from zebra.
+       * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
+         params and interface, ie that which was previously removed in
+         (ospf_interface_delete) above.
+
 2004-02-11 Hasso Tepper <hasso@estpak.ee>
        * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
          if oi doesn't exist any more.
index 2f94b43fff6fb11e65bb8fedc4cfb7697fa638e6..acce9076bec1067584ddfd127e350de622eb432c 100644 (file)
@@ -677,11 +677,18 @@ int
 ospf_if_delete_hook (struct interface *ifp)
 {
   int rc = 0;
+  struct route_node *rn;
 #ifdef HAVE_OPAQUE_LSA
   rc = ospf_opaque_del_if (ifp);
 #endif /* HAVE_OPAQUE_LSA */
+
   route_table_finish (IF_OIFS (ifp));
+
+  for (rn = route_top (IF_OIFS_PARAMS (ifp)); rn; rn = route_next (rn))
+    if (rn->info)
+      ospf_del_if_params (rn->info);
   route_table_finish (IF_OIFS_PARAMS (ifp));
+
   ospf_del_if_params ((struct ospf_if_params *) IF_DEF_PARAMS (ifp));
   XFREE (MTYPE_OSPF_IF_INFO, ifp->info);
   ifp->info = NULL;
index 0910a5061eeb2b0aaaabb408fa20389a66d22b2b..e3738bedf8d4025d0b9f6614f566a3ef7a3ad9e8 100644 (file)
@@ -125,12 +125,6 @@ ospf_interface_delete (int command, struct zclient *zclient,
     if (rn->info)
       ospf_if_free ((struct ospf_interface *) rn->info);
 
-  for (rn = route_top (IF_OIFS_PARAMS (ifp)); rn; rn = route_next (rn))
-    if (rn->info)
-      ospf_del_if_params (rn->info);
-
-  if_delete (ifp);
-
   return 0;
 }