diff options
author | Gustavo Padovan <gustavo@padovan.org> | 2012-05-16 11:17:10 -0400 |
---|---|---|
committer | Gustavo Padovan <gustavo.padovan@collabora.co.uk> | 2012-05-16 15:14:17 -0400 |
commit | c5daa683f2d3315cd766f550ef7d88bfca1671f4 (patch) | |
tree | 91a974326357fd923a52818107b8ba99cad1e111 /net/bluetooth/l2cap_core.c | |
parent | c6585a4da0c709a7a9f59aab68869298b52ca1e1 (diff) |
Bluetooth: Create flags for bt_sk()
defer_setup and suspended are now flags into bt_sk().
Signed-off-by: Gustavo Padovan <gustavo@padovan.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
Diffstat (limited to 'net/bluetooth/l2cap_core.c')
-rw-r--r-- | net/bluetooth/l2cap_core.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index 285c5e13c7d5..24f144b72a96 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c | |||
@@ -71,7 +71,7 @@ static void l2cap_send_cmd(struct l2cap_conn *conn, u8 ident, u8 code, u16 len, | |||
71 | void *data); | 71 | void *data); |
72 | static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data); | 72 | static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data); |
73 | static void l2cap_send_disconn_req(struct l2cap_conn *conn, | 73 | static void l2cap_send_disconn_req(struct l2cap_conn *conn, |
74 | struct l2cap_chan *chan, int err); | 74 | struct l2cap_chan *chan, int err); |
75 | 75 | ||
76 | /* ---- L2CAP channels ---- */ | 76 | /* ---- L2CAP channels ---- */ |
77 | 77 | ||
@@ -586,7 +586,7 @@ void l2cap_chan_close(struct l2cap_chan *chan, int reason) | |||
586 | struct l2cap_conn_rsp rsp; | 586 | struct l2cap_conn_rsp rsp; |
587 | __u16 result; | 587 | __u16 result; |
588 | 588 | ||
589 | if (bt_sk(sk)->defer_setup) | 589 | if (test_bit(BT_SK_DEFER_SETUP, &bt_sk(sk)->flags)) |
590 | result = L2CAP_CR_SEC_BLOCK; | 590 | result = L2CAP_CR_SEC_BLOCK; |
591 | else | 591 | else |
592 | result = L2CAP_CR_BAD_PSM; | 592 | result = L2CAP_CR_BAD_PSM; |
@@ -1050,7 +1050,8 @@ static void l2cap_conn_start(struct l2cap_conn *conn) | |||
1050 | 1050 | ||
1051 | if (l2cap_chan_check_security(chan)) { | 1051 | if (l2cap_chan_check_security(chan)) { |
1052 | lock_sock(sk); | 1052 | lock_sock(sk); |
1053 | if (bt_sk(sk)->defer_setup) { | 1053 | if (test_bit(BT_SK_DEFER_SETUP, |
1054 | &bt_sk(sk)->flags)) { | ||
1054 | struct sock *parent = bt_sk(sk)->parent; | 1055 | struct sock *parent = bt_sk(sk)->parent; |
1055 | rsp.result = cpu_to_le16(L2CAP_CR_PEND); | 1056 | rsp.result = cpu_to_le16(L2CAP_CR_PEND); |
1056 | rsp.status = cpu_to_le16(L2CAP_CS_AUTHOR_PEND); | 1057 | rsp.status = cpu_to_le16(L2CAP_CS_AUTHOR_PEND); |
@@ -3032,7 +3033,7 @@ static inline int l2cap_connect_req(struct l2cap_conn *conn, struct l2cap_cmd_hd | |||
3032 | 3033 | ||
3033 | if (conn->info_state & L2CAP_INFO_FEAT_MASK_REQ_DONE) { | 3034 | if (conn->info_state & L2CAP_INFO_FEAT_MASK_REQ_DONE) { |
3034 | if (l2cap_chan_check_security(chan)) { | 3035 | if (l2cap_chan_check_security(chan)) { |
3035 | if (bt_sk(sk)->defer_setup) { | 3036 | if (test_bit(BT_SK_DEFER_SETUP, &bt_sk(sk)->flags)) { |
3036 | __l2cap_state_change(chan, BT_CONNECT2); | 3037 | __l2cap_state_change(chan, BT_CONNECT2); |
3037 | result = L2CAP_CR_PEND; | 3038 | result = L2CAP_CR_PEND; |
3038 | status = L2CAP_CS_AUTHOR_PEND; | 3039 | status = L2CAP_CS_AUTHOR_PEND; |
@@ -4924,7 +4925,7 @@ int l2cap_security_cfm(struct hci_conn *hcon, u8 status, u8 encrypt) | |||
4924 | chan->state == BT_CONFIG)) { | 4925 | chan->state == BT_CONFIG)) { |
4925 | struct sock *sk = chan->sk; | 4926 | struct sock *sk = chan->sk; |
4926 | 4927 | ||
4927 | bt_sk(sk)->suspended = false; | 4928 | clear_bit(BT_SK_SUSPEND, &bt_sk(sk)->flags); |
4928 | sk->sk_state_change(sk); | 4929 | sk->sk_state_change(sk); |
4929 | 4930 | ||
4930 | l2cap_check_encryption(chan, encrypt); | 4931 | l2cap_check_encryption(chan, encrypt); |
@@ -4946,7 +4947,8 @@ int l2cap_security_cfm(struct hci_conn *hcon, u8 status, u8 encrypt) | |||
4946 | lock_sock(sk); | 4947 | lock_sock(sk); |
4947 | 4948 | ||
4948 | if (!status) { | 4949 | if (!status) { |
4949 | if (bt_sk(sk)->defer_setup) { | 4950 | if (test_bit(BT_SK_DEFER_SETUP, |
4951 | &bt_sk(sk)->flags)) { | ||
4950 | struct sock *parent = bt_sk(sk)->parent; | 4952 | struct sock *parent = bt_sk(sk)->parent; |
4951 | res = L2CAP_CR_PEND; | 4953 | res = L2CAP_CR_PEND; |
4952 | stat = L2CAP_CS_AUTHOR_PEND; | 4954 | stat = L2CAP_CS_AUTHOR_PEND; |