From ef01549170d412edb8f22519414108586e5ca219 Mon Sep 17 00:00:00 2001 From: Don Slice Date: Tue, 18 Apr 2017 08:11:32 -0400 Subject: [PATCH] zebra: stop crash on process termination due to stale ifp->node Problem reported that crash occurred when stopping quagga in certain circumstances. Determined that this was due to a stale pointer on the ifp for a deleted interface. The ifp->node had been freed but the ifp still kept a pointer to it, and when later the process was stopped, it attempted to delete it again. Ticket: CM-15550 Signed-off-by: Don Slice Reviewed-by: Donald Sharp --- zebra/interface.c | 1 + 1 file changed, 1 insertion(+) diff --git a/zebra/interface.c b/zebra/interface.c index 1d015e8588..1eefe1339c 100644 --- a/zebra/interface.c +++ b/zebra/interface.c @@ -691,6 +691,7 @@ if_delete_update (struct interface *ifp) for setting ifindex to IFINDEX_INTERNAL after processing the interface deletion message. */ ifp->ifindex = IFINDEX_INTERNAL; + ifp->node = NULL; } /* VRF change for an interface */ -- 2.39.5