diff options
author | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2018-12-17 17:01:08 +0100 |
---|---|---|
committer | Ondrej Zajicek (work) <santiago@crfreenet.org> | 2018-12-17 17:01:08 +0100 |
commit | cea2e25f417866129ce7e78f1c078e993743173c (patch) | |
tree | 0863e3cb218fa8c89d7ca5046102947ce163b774 /proto/ospf | |
parent | 1cab2b4a7cffb7ad604dcbd200267733ef079973 (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/ospf')
-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 03b77349..e58f1375 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); |