zebra: fix infinite loop when deleting an interface
When deleting a VLAN interface after flushing its
addresses, zebra uses 100% CPU time and freezes.
* interface.c: The while loop in line 407 that
should clean up connected routes never hits one
of the 2 lines "last = node;" and thus loops
forever.
Signed-off-by: Roman Hoog Antink <rha@open.ch>
diff --git a/zebra/interface.c b/zebra/interface.c
index ba4cf25..03e7ff7 100644
--- a/zebra/interface.c
+++ b/zebra/interface.c
@@ -477,6 +477,10 @@
}
}
#endif /* HAVE_IPV6 */
+ else
+ {
+ last = node;
+ }
}
}
zebra_interface_delete_update (ifp);