From fe19096aa9b41df22c5c302f0f90cba4484f54db Mon Sep 17 00:00:00 2001 From: Wei Yongjun Date: Tue, 27 Dec 2011 22:32:41 -0500 Subject: [PATCH] --- yaml --- r: 277044 b: refs/heads/master c: aef950b4ba3196622a5bd5e21ab1d63f30658285 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/packet/af_packet.c | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 16b8cc0baafe..4e36cd364b10 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c43c5f39584c0f388a7e5372312c2c48221a4415 +refs/heads/master: aef950b4ba3196622a5bd5e21ab1d63f30658285 diff --git a/trunk/net/packet/af_packet.c b/trunk/net/packet/af_packet.c index 3891702b81df..d9d4970b9b07 100644 --- a/trunk/net/packet/af_packet.c +++ b/trunk/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);