From: Alexander Yurchenko Date: Fri, 19 Feb 2010 09:26:34 +0000 (+0300) Subject: Fix null pointer dereference in bridge_bpdu_rcv X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b79b9a98650cd8018141874d2a5e59c1cd78ea3c;p=people%2Fms%2Frstp.git Fix null pointer dereference in bridge_bpdu_rcv Check that the interface on which bpdu was received is actually a bridge port. It's possible to receive an STP packet on a bridge interface itself if the bridge has STP disabled and forwards STP traffic. Signed-off-by: Alexander Yurchenko --- diff --git a/bridge_track.c b/bridge_track.c index be555de..f08c9f6 100644 --- a/bridge_track.c +++ b/bridge_track.c @@ -579,7 +579,7 @@ void bridge_bpdu_rcv(int if_index, const unsigned char *data, int len) BPDU_T *bpdu = (BPDU_T *) (data + sizeof(MAC_HEADER_T)); LOG("ifindex %d, len %d", if_index, len); - if (!ifc) + if (!ifc || !ifc->master) return; TST(ifc->up,);