diff options
author | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2018-12-17 17:10:59 +0100 |
---|---|---|
committer | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2018-12-17 17:10:59 +0100 |
commit | 98b1486c4846c5869780c8603e5f83e288c3d72f (patch) | |
tree | 90e59b38ac9585543b231af82cefa22b990808f1 /proto | |
parent | 8c0b12ac86d9075b76a3906d0c25ba9bc73bbb2c (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.c | 2 |
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); |