From: Wei Yongjun Date: Wed, 28 Dec 2011 03:32:41 +0000 (-0500) Subject: packet: fix possible dev refcnt leak when bind fail X-Git-Tag: v3.2~24^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=aef950b4ba3196622a5bd5e21ab1d63f30658285;p=profile%2Fcommon%2Fkernel-common.git packet: fix possible dev refcnt leak when bind fail If bind is fail when bind is called after set PACKET_FANOUT sock option, the dev refcnt will leak. Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller --- diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index 3891702..d9d4970 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -2448,8 +2448,12 @@ static int packet_do_bind(struct sock *sk, struct net_device *dev, __be16 protoc { struct packet_sock *po = pkt_sk(sk); - if (po->fanout) + if (po->fanout) { + if (dev) + dev_put(dev); + return -EINVAL; + } lock_sock(sk);