From: Don Slice Date: Tue, 18 Apr 2017 12:11:32 +0000 (-0400) Subject: zebra: stop crash on process termination due to stale ifp->node X-Git-Tag: reindent-master-before~213^2~4 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=ef01549170d412edb8f22519414108586e5ca219;p=matthieu%2Ffrr.git 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 --- 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 */