ospf6d: fix LSA locking in ospf6_new_ls_id()
* ospf6_lsdb.c: (ospf6_new_ls_id) Unlock the current LSA when breaking
out of the ospf6_lsdb_*_head() / ospf6_lsdb_*_next() loop early. No
explicit unlocking is needed when all LSAs are looped through
because ospf6_lsdb_*_next() manages everything in that case.
diff --git a/ospf6d/ospf6_lsdb.c b/ospf6d/ospf6_lsdb.c
index b839d16..ea387e3 100644
--- a/ospf6d/ospf6_lsdb.c
+++ b/ospf6d/ospf6_lsdb.c
@@ -553,7 +553,10 @@
if (ntohl (lsa->header->id) < id)
continue;
if (ntohl (lsa->header->id) > id)
+ {
+ ospf6_lsa_unlock (lsa);
break;
+ }
id++;
}