summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGustavo F. Padovan <padovan@profusion.mobi>2011-05-04 19:42:50 -0300
committerGustavo F. Padovan <padovan@profusion.mobi>2011-06-08 16:58:16 -0300
commit0f8527249646bbe75d036fe8b9b84d662ece90a9 (patch)
tree30b1a4e2d68ba207349c5bd003101c6dafdf50b1
parent500698d3fd987f6c405d6d5f68fdf535a539e71e (diff)
Bluetooth: Rename __l2cap_chan_close() to l2cap_chan_close()
To make it consistent with the rest of the API. Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
-rw-r--r--include/net/bluetooth/l2cap.h2
-rw-r--r--net/bluetooth/l2cap_core.c29
-rw-r--r--net/bluetooth/l2cap_sock.c2
3 files changed, 14 insertions, 19 deletions
diff --git a/include/net/bluetooth/l2cap.h b/include/net/bluetooth/l2cap.h
index 1c89c7f03f8..a2dcbfff1c5 100644
--- a/include/net/bluetooth/l2cap.h
+++ b/include/net/bluetooth/l2cap.h
@@ -464,7 +464,7 @@ struct sock *l2cap_sock_alloc(struct net *net, struct socket *sock,
int proto, gfp_t prio);
struct l2cap_chan *l2cap_chan_create(struct sock *sk);
-void __l2cap_chan_close(struct l2cap_chan *chan, int reason);
+void l2cap_chan_close(struct l2cap_chan *chan, int reason);
void l2cap_chan_destroy(struct l2cap_chan *chan);
int l2cap_chan_connect(struct l2cap_chan *chan);
int l2cap_chan_send(struct l2cap_chan *chan, struct msghdr *msg, size_t len);
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c
index 248f68a9694..c630a0e8c5f 100644
--- a/net/bluetooth/l2cap_core.c
+++ b/net/bluetooth/l2cap_core.c
@@ -250,7 +250,7 @@ static void l2cap_chan_timeout(unsigned long arg)
else
reason = ETIMEDOUT;
- __l2cap_chan_close(chan, reason);
+ l2cap_chan_close(chan, reason);
bh_unlock_sock(sk);
@@ -383,16 +383,6 @@ static void l2cap_chan_del(struct l2cap_chan *chan, int err)
}
}
-/* Must be called on unlocked socket. */
-static void l2cap_chan_close(struct sock *sk)
-{
- l2cap_chan_clear_timer(l2cap_pi(sk)->chan);
- lock_sock(sk);
- __l2cap_chan_close(l2cap_pi(sk)->chan, ECONNRESET);
- release_sock(sk);
- l2cap_sock_kill(sk);
-}
-
static void l2cap_chan_cleanup_listen(struct sock *parent)
{
struct sock *sk;
@@ -400,14 +390,19 @@ static void l2cap_chan_cleanup_listen(struct sock *parent)
BT_DBG("parent %p", parent);
/* Close not yet accepted channels */
- while ((sk = bt_accept_dequeue(parent, NULL)))
- l2cap_chan_close(sk);
+ while ((sk = bt_accept_dequeue(parent, NULL))) {
+ l2cap_chan_clear_timer(l2cap_pi(sk)->chan);
+ lock_sock(sk);
+ l2cap_chan_close(l2cap_pi(sk)->chan, ECONNRESET);
+ release_sock(sk);
+ l2cap_sock_kill(sk);
+ }
parent->sk_state = BT_CLOSED;
sock_set_flag(parent, SOCK_ZAPPED);
}
-void __l2cap_chan_close(struct l2cap_chan *chan, int reason)
+void l2cap_chan_close(struct l2cap_chan *chan, int reason)
{
struct l2cap_conn *conn = chan->conn;
struct sock *sk = chan->sk;
@@ -724,10 +719,10 @@ static void l2cap_conn_start(struct l2cap_conn *conn)
conn->feat_mask)
&& chan->conf_state &
L2CAP_CONF_STATE2_DEVICE) {
- /* __l2cap_chan_close() calls list_del(chan)
+ /* l2cap_chan_close() calls list_del(chan)
* so release the lock */
read_unlock_bh(&conn->chan_lock);
- __l2cap_chan_close(chan, ECONNRESET);
+ l2cap_chan_close(chan, ECONNRESET);
read_lock_bh(&conn->chan_lock);
bh_unlock_sock(sk);
continue;
@@ -4151,7 +4146,7 @@ static inline void l2cap_check_encryption(struct l2cap_chan *chan, u8 encrypt)
l2cap_chan_clear_timer(chan);
l2cap_chan_set_timer(chan, HZ * 5);
} else if (chan->sec_level == BT_SECURITY_HIGH)
- __l2cap_chan_close(chan, ECONNREFUSED);
+ l2cap_chan_close(chan, ECONNREFUSED);
} else {
if (chan->sec_level == BT_SECURITY_MEDIUM)
l2cap_chan_clear_timer(chan);
diff --git a/net/bluetooth/l2cap_sock.c b/net/bluetooth/l2cap_sock.c
index 7d87d1f664c..b79fb756183 100644
--- a/net/bluetooth/l2cap_sock.c
+++ b/net/bluetooth/l2cap_sock.c
@@ -707,7 +707,7 @@ static int l2cap_sock_shutdown(struct socket *sock, int how)
err = __l2cap_wait_ack(sk);
sk->sk_shutdown = SHUTDOWN_MASK;
- __l2cap_chan_close(chan, 0);
+ l2cap_chan_close(chan, 0);
if (sock_flag(sk, SOCK_LINGER) && sk->sk_lingertime)
err = bt_sock_wait_state(sk, BT_CLOSED,