summaryrefslogtreecommitdiff
path: root/proto
diff options
context:
space:
mode:
authorOndrej Zajicek (work) <santiago@crfreenet.org>2018-12-17 17:10:59 +0100
committerOndrej Zajicek (work) <santiago@crfreenet.org>2018-12-17 17:10:59 +0100
commit98b1486c4846c5869780c8603e5f83e288c3d72f (patch)
tree90e59b38ac9585543b231af82cefa22b990808f1 /proto
parent8c0b12ac86d9075b76a3906d0c25ba9bc73bbb2c (diff)
OSPF: Fix wrong LSA collisions detection
In some circumstances (old LSA flushed but not acknowledged and not removed) origination of a new LSA may wrongly triggers LSA collision code. The patch fixes that. Thanks to Asbjorn Mikkelsen for the bugreport and @mdelagueronniere for the original patch.
Diffstat (limited to 'proto')
-rw-r--r--proto/ospf/topology.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/proto/ospf/topology.c b/proto/ospf/topology.c
index 341eff87..f50b2826 100644
--- a/proto/ospf/topology.c
+++ b/proto/ospf/topology.c
@@ -404,6 +404,8 @@ ospf_refresh_lsa(struct ospf_proto *p, struct top_hash_entry *en)
void
ospf_flush_lsa(struct ospf_proto *p, struct top_hash_entry *en)
{
+ en->nf = NULL;
+
if (en->next_lsa_body)
{
mb_free(en->next_lsa_body);