diff options
| author | Gustavo F. Padovan <[email protected]> | 2011-02-04 04:36:42 +0000 |
|---|---|---|
| committer | Gustavo F. Padovan <[email protected]> | 2011-02-08 03:43:30 +0000 |
| commit | 554f05bb8a0707dcc0ba4ea1dba1fb9970846ab5 (patch) | |
| tree | a7aaed5d2bf68fdd5be3a1a8a36d3382e99d109d /net/bluetooth/l2cap_sock.c | |
| parent | Bluetooth: move l2cap_sock_ops to l2cap_sock.c (diff) | |
| download | kernel-554f05bb8a0707dcc0ba4ea1dba1fb9970846ab5.tar.gz kernel-554f05bb8a0707dcc0ba4ea1dba1fb9970846ab5.zip | |
Bluetooth: move l2cap_sock_release() to l2cap_sock.c
Signed-off-by: Gustavo F. Padovan <[email protected]>
Diffstat (limited to 'net/bluetooth/l2cap_sock.c')
| -rw-r--r-- | net/bluetooth/l2cap_sock.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c index c1455f72bf03..20efd240a786 100644 --- a/net/bluetooth/l2cap_sock.c +++ b/net/bluetooth/l2cap_sock.c @@ -62,6 +62,23 @@ static void l2cap_sock_timeout(unsigned long arg) sock_put(sk); } +static int l2cap_sock_release(struct socket *sock) +{ + struct sock *sk = sock->sk; + int err; + + BT_DBG("sock %p, sk %p", sock, sk); + + if (!sk) + return 0; + + err = l2cap_sock_shutdown(sock, 2); + + sock_orphan(sk); + l2cap_sock_kill(sk); + return err; +} + static void l2cap_sock_destruct(struct sock *sk) { BT_DBG("sk %p", sk); |
