ospfd: ospf_nbr_nbma_set()/ospf_snmp_vl_add() add unlock
Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Acked-by: Feng Lu <lu.feng@6wind.com>
diff --git a/ospfd/ospf_snmp.c b/ospfd/ospf_snmp.c
index 9f91776..604766d 100644
--- a/ospfd/ospf_snmp.c
+++ b/ospfd/ospf_snmp.c
@@ -1927,6 +1927,9 @@
lp.adv_router = vl_data->vl_peer;
rn = route_node_get (ospf_snmp_vl_table, (struct prefix *) &lp);
+ if (rn->info)
+ route_unlock_node (rn);
+
rn->info = vl_data;
}
diff --git a/ospfd/ospfd.c b/ospfd/ospfd.c
index 4062d64..019a22b 100644
--- a/ospfd/ospfd.c
+++ b/ospfd/ospfd.c
@@ -1557,6 +1557,8 @@
p.prefixlen = IPV4_MAX_BITLEN;
rn = route_node_get (ospf->nbr_nbma, (struct prefix *)&p);
+ if (rn->info)
+ route_unlock_node (rn);
rn->info = nbr_nbma;
for (ALL_LIST_ELEMENTS_RO (ospf->oiflist, node, oi))