]> git.proxmox.com Git - mirror_frr.git/commitdiff
ospf6: move serv_close to ospf6_delete
authorIgor Ryzhov <iryzhov@nfware.com>
Fri, 20 Nov 2020 03:06:51 +0000 (06:06 +0300)
committerIgor Ryzhov <iryzhov@nfware.com>
Mon, 30 Nov 2020 14:36:10 +0000 (17:36 +0300)
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
ospf6d/ospf6_main.c
ospf6d/ospf6_top.c

index 4ed6e2a6040dbb85d932e8d43743aa7d91255870..69424f4b46cb4f9710cd0c139bc77f6b8a78101c 100644 (file)
@@ -88,12 +88,11 @@ static void __attribute__((noreturn)) ospf6_exit(int status)
 
        for (ALL_LIST_ELEMENTS(om6->ospf6, node, nnode, ospf6)) {
                vrf = vrf_lookup_by_id(ospf6->vrf_id);
-               ospf6_serv_close(&ospf6->fd);
+               ospf6_delete(ospf6);
+               ospf6 = NULL;
                FOR_ALL_INTERFACES (vrf, ifp)
                        if (ifp->info != NULL)
                                ospf6_interface_delete(ifp->info);
-               ospf6_delete(ospf6);
-               ospf6 = NULL;
        }
 
        bfd_gbl_exit();
index 97002145b074d014cfa4ed8ebeee44fb28ab1b51..908cda43d0b62ec4efb3d962cb6d5bb05cfb9fc9 100644 (file)
@@ -302,6 +302,8 @@ void ospf6_delete(struct ospf6 *o)
        ospf6_disable(o);
        ospf6_del(o);
 
+       ospf6_serv_close(&o->fd);
+
        for (ALL_LIST_ELEMENTS(o->area_list, node, nnode, oa))
                ospf6_area_delete(oa);
 
@@ -458,7 +460,6 @@ DEFUN (no_router_ospf6,
        if (ospf6 == NULL)
                vty_out(vty, "OSPFv3 is not configured\n");
        else {
-               ospf6_serv_close(&ospf6->fd);
                ospf6_delete(ospf6);
                ospf6 = NULL;
        }