]> git.puffer.fish Git - matthieu/frr.git/commitdiff
lib: use _safe iteration during link_state/ted cleanup
authorMark Stapp <mstapp@nvidia.com>
Thu, 18 Nov 2021 16:23:39 +0000 (11:23 -0500)
committerMark Stapp <mstapp@nvidia.com>
Thu, 18 Nov 2021 16:23:39 +0000 (11:23 -0500)
Use the _safe iterators when cleaning up the link-state module's
vertices, edges, and subnets.

Signed-off-by: Mark Stapp <mstapp@nvidia.com>
lib/link_state.c

index 7d2e6f64224c6fce7931e3a464b72adb4bd8037f..b0bc386b79c41d387632b8c9ac726931b810627e 100644 (file)
@@ -1010,11 +1010,11 @@ void ls_ted_del_all(struct ls_ted *ted)
                return;
 
        /* First remove Vertices, Edges and Subnets and associated Link State */
-       frr_each (vertices, &ted->vertices, vertex)
+       frr_each_safe (vertices, &ted->vertices, vertex)
                ls_vertex_del_all(ted, vertex);
-       frr_each (edges, &ted->edges, edge)
+       frr_each_safe (edges, &ted->edges, edge)
                ls_edge_del_all(ted, edge);
-       frr_each (subnets, &ted->subnets, subnet)
+       frr_each_safe (subnets, &ted->subnets, subnet)
                ls_subnet_del_all(ted, subnet);
 
        /* then remove TED itself */
@@ -1031,17 +1031,17 @@ void ls_ted_clean(struct ls_ted *ted)
                return;
 
        /* First, start with Vertices */
-       frr_each (vertices, &ted->vertices, vertex)
+       frr_each_safe (vertices, &ted->vertices, vertex)
                if (vertex->status == ORPHAN)
                        ls_vertex_del_all(ted, vertex);
 
        /* Then Edges */
-       frr_each (edges, &ted->edges, edge)
+       frr_each_safe (edges, &ted->edges, edge)
                if (edge->status == ORPHAN)
                        ls_edge_del_all(ted, edge);
 
        /* and Subnets */
-       frr_each (subnets, &ted->subnets, subnet)
+       frr_each_safe (subnets, &ted->subnets, subnet)
                if (subnet->status == ORPHAN)
                        ls_subnet_del_all(ted, subnet);