summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIgor Ryzhov <iryzhov@nfware.com>2021-11-18 10:19:20 +0100
committerGitHub <noreply@github.com>2021-11-18 10:19:20 +0100
commit537355b18aeb7901d2af585aee9b2acc84da1a8a (patch)
treef5404d26083207a3dc16ea8e4099e504f155586a
parentMerge pull request #10077 from idryzhov/pim-if-addr-add (diff)
parentospf6d: Prevent use after free (diff)
downloadfrr-537355b18aeb7901d2af585aee9b2acc84da1a8a.tar.xz
frr-537355b18aeb7901d2af585aee9b2acc84da1a8a.zip
Merge pull request #10091 from donaldsharp/ospf6_thread_stop
ospf6d: Prevent use after free
-rw-r--r--ospf6d/ospf6_top.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ospf6d/ospf6_top.c b/ospf6d/ospf6_top.c
index 7e9ed4160..d223b9f75 100644
--- a/ospf6d/ospf6_top.c
+++ b/ospf6d/ospf6_top.c
@@ -562,6 +562,8 @@ static void ospf6_disable(struct ospf6 *o)
THREAD_OFF(o->t_ospf6_receive);
THREAD_OFF(o->t_external_aggr);
THREAD_OFF(o->gr_info.t_grace_period);
+ THREAD_OFF(o->t_write);
+ THREAD_OFF(o->t_abr_task);
}
}
@@ -583,8 +585,6 @@ static int ospf6_maxage_remover(struct thread *thread)
struct listnode *i, *j, *k;
int reschedule = 0;
- o->maxage_remover = (struct thread *)NULL;
-
for (ALL_LIST_ELEMENTS_RO(o->area_list, i, oa)) {
for (ALL_LIST_ELEMENTS_RO(oa->if_list, j, oi)) {
for (ALL_LIST_ELEMENTS_RO(oi->neighbor_list, k, on)) {