summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpaul <paul>2003-02-18 23:25:44 +0000
committerpaul <paul>2003-02-18 23:25:44 +0000
commit8c80cb7ee950b7f8c728539d965deae91e70a4eb (patch)
tree77bb0a23805fc05c12d8fffc6fa54d2f0969b869
parent4955a0ba4311918f55daf2235df812a99c46ae7c (diff)
fixes an assert which doesnt seem to take into account that route_node_get
may return an existing node. (if the code wants a /new/ node why not use route_node_set? if it doesnt mind - then the assert is wrong). this bug is in zebra.org CVS. (must be an extremely rare/unlikely bug though).
-rw-r--r--ospfd/ospf_interface.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/ospfd/ospf_interface.c b/ospfd/ospf_interface.c
index f0300273..d94cdb8b 100644
--- a/ospfd/ospf_interface.c
+++ b/ospfd/ospf_interface.c
@@ -135,7 +135,10 @@ ospf_add_to_if (struct interface *ifp, struct ospf_interface *oi)
p.prefixlen = IPV4_MAX_PREFIXLEN;
rn = route_node_get (IF_OIFS (ifp), &p);
- assert (! rn->info);
+ /* rn->info should either be NULL or equal to this oi
+ * as route_node_get may return an existing node
+ */
+ assert (! rn->info || rn->info == oi);
rn->info = oi;
}