From: Christian Franke <[email protected]> The route table code in lib/table.c triggers an assertion when a route node with rn->info != NULL reaches refcount 0, probably to avoid memleaks. In this particular case, this is not an issue, since the info will be freed by the destructor.
However, since removing this assertion probably requires more discussion, just make sure that rn->info gets freed and unset before its refcount is decremented to zero. Signed-off-by: Christian Franke <[email protected]> --- isisd/isis_redist.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/isisd/isis_redist.c b/isisd/isis_redist.c index abb9ecd..690ae47 100644 --- a/isisd/isis_redist.c +++ b/isisd/isis_redist.c @@ -176,6 +176,7 @@ isis_redist_uninstall(struct isis_area *area, int level, struct prefix *p) if (!er_node->info) return; + XFREE(MTYPE_ISIS, er_node->info); route_unlock_node(er_node); lsp_regenerate_schedule(area, level, 0); } @@ -358,6 +359,7 @@ isis_redist_delete(int type, struct prefix *p) isis_redist_uninstall(area, level, p); } + XFREE(MTYPE_ISIS, ei_node->info); route_unlock_node(ei_node); } @@ -502,6 +504,7 @@ isis_redist_unset(struct isis_area *area, int level, continue; } + XFREE(MTYPE_ISIS, rn->info); route_unlock_node(rn); } -- 2.7.4 _______________________________________________ Quagga-dev mailing list [email protected] https://lists.quagga.net/mailman/listinfo/quagga-dev
