diff options
author | Jaganath Kanakkassery <jaganath.k@samsung.com> | 2012-07-19 09:24:04 +0200 |
---|---|---|
committer | Gustavo Padovan <gustavo.padovan@collabora.co.uk> | 2012-08-06 20:19:37 +0200 |
commit | 49dfbb9129c4edb318578de35cc45c555df37884 (patch) | |
tree | 64508a0d4d7cc178f81de89873aa33c630fa9585 /net | |
parent | Bluetooth: smp: Fix possible NULL dereference (diff) | |
download | linux-49dfbb9129c4edb318578de35cc45c555df37884.tar.xz linux-49dfbb9129c4edb318578de35cc45c555df37884.zip |
Bluetooth: Fix socket not getting freed if l2cap channel create fails
If l2cap_chan_create() fails then it will return from l2cap_sock_kill
since zapped flag of sk is reset.
Signed-off-by: Jaganath Kanakkassery <jaganath.k@samsung.com>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Diffstat (limited to 'net')
-rw-r--r-- | net/bluetooth/l2cap_sock.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c index a4bb27e8427e..b94abd30e6f9 100644 --- a/net/bluetooth/l2cap_sock.c +++ b/net/bluetooth/l2cap_sock.c @@ -1174,7 +1174,7 @@ static struct sock *l2cap_sock_alloc(struct net *net, struct socket *sock, int p chan = l2cap_chan_create(); if (!chan) { - l2cap_sock_kill(sk); + sk_free(sk); return NULL; } |