diff options
author | Renato Westphal <renato@opensourcerouting.org> | 2021-05-31 15:27:51 +0200 |
---|---|---|
committer | Renato Westphal <renato@opensourcerouting.org> | 2021-06-08 16:41:33 +0200 |
commit | 4b3c4577024be8ebbfa8d36aada419070c2925be (patch) | |
tree | c7b0f9aac6e12f7bacded45554db3f3a472905d9 /ospfd | |
parent | ospfd: fix crash when logging a Grace-LSA (diff) | |
download | frr-4b3c4577024be8ebbfa8d36aada419070c2925be.tar.xz frr-4b3c4577024be8ebbfa8d36aada419070c2925be.zip |
ospfd: fix dangling pointer when exiting from the helper mode
When exiting from the helper mode for a given router after an
unsuccessful graceful restart, removing the neighborship to that
router straight away leads to a dangling pointer in the associated
interface, which inevitably leads to a crash. To solve this
problem, schedule the removal of the neighbor instead of removing
it immediately.
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Diffstat (limited to 'ospfd')
-rw-r--r-- | ospfd/ospf_gr_helper.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ospfd/ospf_gr_helper.c b/ospfd/ospf_gr_helper.c index 10c5020cd..3a130f87f 100644 --- a/ospfd/ospf_gr_helper.c +++ b/ospfd/ospf_gr_helper.c @@ -721,7 +721,7 @@ void ospf_gr_helper_exit(struct ospf_neighbor *nbr, zlog_debug( "%s, Failed GR exit, so bringing down the neighbour", __func__); - OSPF_NSM_EVENT_EXECUTE(nbr, NSM_KillNbr); + OSPF_NSM_EVENT_SCHEDULE(nbr, NSM_KillNbr); } /*Recalculate the DR for the network segment */ |