|
@@ -180,7 +180,7 @@ static void __l2cap_state_change(struct l2cap_chan *chan, int state)
|
|
state_to_string(state));
|
|
state_to_string(state));
|
|
|
|
|
|
chan->state = state;
|
|
chan->state = state;
|
|
- chan->ops->state_change(chan->data, state);
|
|
|
|
|
|
+ chan->ops->state_change(chan, state);
|
|
}
|
|
}
|
|
|
|
|
|
static void l2cap_state_change(struct l2cap_chan *chan, int state)
|
|
static void l2cap_state_change(struct l2cap_chan *chan, int state)
|
|
@@ -381,7 +381,7 @@ static void l2cap_chan_timeout(struct work_struct *work)
|
|
|
|
|
|
l2cap_chan_unlock(chan);
|
|
l2cap_chan_unlock(chan);
|
|
|
|
|
|
- chan->ops->close(chan->data);
|
|
|
|
|
|
+ chan->ops->close(chan);
|
|
mutex_unlock(&conn->chan_lock);
|
|
mutex_unlock(&conn->chan_lock);
|
|
|
|
|
|
l2cap_chan_put(chan);
|
|
l2cap_chan_put(chan);
|
|
@@ -569,7 +569,7 @@ static void l2cap_chan_cleanup_listen(struct sock *parent)
|
|
l2cap_chan_close(chan, ECONNRESET);
|
|
l2cap_chan_close(chan, ECONNRESET);
|
|
l2cap_chan_unlock(chan);
|
|
l2cap_chan_unlock(chan);
|
|
|
|
|
|
- chan->ops->close(chan->data);
|
|
|
|
|
|
+ chan->ops->close(chan);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1213,7 +1213,7 @@ static void l2cap_le_conn_ready(struct l2cap_conn *conn)
|
|
goto clean;
|
|
goto clean;
|
|
}
|
|
}
|
|
|
|
|
|
- chan = pchan->ops->new_connection(pchan->data);
|
|
|
|
|
|
+ chan = pchan->ops->new_connection(pchan);
|
|
if (!chan)
|
|
if (!chan)
|
|
goto clean;
|
|
goto clean;
|
|
|
|
|
|
@@ -1324,7 +1324,7 @@ static void l2cap_conn_del(struct hci_conn *hcon, int err)
|
|
|
|
|
|
l2cap_chan_unlock(chan);
|
|
l2cap_chan_unlock(chan);
|
|
|
|
|
|
- chan->ops->close(chan->data);
|
|
|
|
|
|
+ chan->ops->close(chan);
|
|
l2cap_chan_put(chan);
|
|
l2cap_chan_put(chan);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2568,7 +2568,7 @@ static void l2cap_raw_recv(struct l2cap_conn *conn, struct sk_buff *skb)
|
|
if (!nskb)
|
|
if (!nskb)
|
|
continue;
|
|
continue;
|
|
|
|
|
|
- if (chan->ops->recv(chan->data, nskb))
|
|
|
|
|
|
+ if (chan->ops->recv(chan, nskb))
|
|
kfree_skb(nskb);
|
|
kfree_skb(nskb);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -3411,7 +3411,7 @@ static inline int l2cap_connect_req(struct l2cap_conn *conn, struct l2cap_cmd_hd
|
|
goto response;
|
|
goto response;
|
|
}
|
|
}
|
|
|
|
|
|
- chan = pchan->ops->new_connection(pchan->data);
|
|
|
|
|
|
+ chan = pchan->ops->new_connection(pchan);
|
|
if (!chan)
|
|
if (!chan)
|
|
goto response;
|
|
goto response;
|
|
|
|
|
|
@@ -3420,7 +3420,7 @@ static inline int l2cap_connect_req(struct l2cap_conn *conn, struct l2cap_cmd_hd
|
|
/* Check if we already have channel with that dcid */
|
|
/* Check if we already have channel with that dcid */
|
|
if (__l2cap_get_chan_by_dcid(conn, scid)) {
|
|
if (__l2cap_get_chan_by_dcid(conn, scid)) {
|
|
sock_set_flag(sk, SOCK_ZAPPED);
|
|
sock_set_flag(sk, SOCK_ZAPPED);
|
|
- chan->ops->close(chan->data);
|
|
|
|
|
|
+ chan->ops->close(chan);
|
|
goto response;
|
|
goto response;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -3831,7 +3831,7 @@ static inline int l2cap_disconnect_req(struct l2cap_conn *conn, struct l2cap_cmd
|
|
|
|
|
|
l2cap_chan_unlock(chan);
|
|
l2cap_chan_unlock(chan);
|
|
|
|
|
|
- chan->ops->close(chan->data);
|
|
|
|
|
|
+ chan->ops->close(chan);
|
|
l2cap_chan_put(chan);
|
|
l2cap_chan_put(chan);
|
|
|
|
|
|
mutex_unlock(&conn->chan_lock);
|
|
mutex_unlock(&conn->chan_lock);
|
|
@@ -3865,7 +3865,7 @@ static inline int l2cap_disconnect_rsp(struct l2cap_conn *conn, struct l2cap_cmd
|
|
|
|
|
|
l2cap_chan_unlock(chan);
|
|
l2cap_chan_unlock(chan);
|
|
|
|
|
|
- chan->ops->close(chan->data);
|
|
|
|
|
|
+ chan->ops->close(chan);
|
|
l2cap_chan_put(chan);
|
|
l2cap_chan_put(chan);
|
|
|
|
|
|
mutex_unlock(&conn->chan_lock);
|
|
mutex_unlock(&conn->chan_lock);
|
|
@@ -4435,7 +4435,7 @@ static int l2cap_reassemble_sdu(struct l2cap_chan *chan, struct sk_buff *skb,
|
|
if (chan->sdu)
|
|
if (chan->sdu)
|
|
break;
|
|
break;
|
|
|
|
|
|
- err = chan->ops->recv(chan->data, skb);
|
|
|
|
|
|
+ err = chan->ops->recv(chan, skb);
|
|
break;
|
|
break;
|
|
|
|
|
|
case L2CAP_SAR_START:
|
|
case L2CAP_SAR_START:
|
|
@@ -4485,7 +4485,7 @@ static int l2cap_reassemble_sdu(struct l2cap_chan *chan, struct sk_buff *skb,
|
|
if (chan->sdu->len != chan->sdu_len)
|
|
if (chan->sdu->len != chan->sdu_len)
|
|
break;
|
|
break;
|
|
|
|
|
|
- err = chan->ops->recv(chan->data, chan->sdu);
|
|
|
|
|
|
+ err = chan->ops->recv(chan, chan->sdu);
|
|
|
|
|
|
if (!err) {
|
|
if (!err) {
|
|
/* Reassembly complete */
|
|
/* Reassembly complete */
|
|
@@ -5207,7 +5207,7 @@ static inline int l2cap_data_channel(struct l2cap_conn *conn, u16 cid, struct sk
|
|
if (chan->imtu < skb->len)
|
|
if (chan->imtu < skb->len)
|
|
goto drop;
|
|
goto drop;
|
|
|
|
|
|
- if (!chan->ops->recv(chan->data, skb))
|
|
|
|
|
|
+ if (!chan->ops->recv(chan, skb))
|
|
goto done;
|
|
goto done;
|
|
break;
|
|
break;
|
|
|
|
|
|
@@ -5246,7 +5246,7 @@ static inline int l2cap_conless_channel(struct l2cap_conn *conn, __le16 psm, str
|
|
if (chan->imtu < skb->len)
|
|
if (chan->imtu < skb->len)
|
|
goto drop;
|
|
goto drop;
|
|
|
|
|
|
- if (!chan->ops->recv(chan->data, skb))
|
|
|
|
|
|
+ if (!chan->ops->recv(chan, skb))
|
|
return 0;
|
|
return 0;
|
|
|
|
|
|
drop:
|
|
drop:
|
|
@@ -5272,7 +5272,7 @@ static inline int l2cap_att_channel(struct l2cap_conn *conn, u16 cid,
|
|
if (chan->imtu < skb->len)
|
|
if (chan->imtu < skb->len)
|
|
goto drop;
|
|
goto drop;
|
|
|
|
|
|
- if (!chan->ops->recv(chan->data, skb))
|
|
|
|
|
|
+ if (!chan->ops->recv(chan, skb))
|
|
return 0;
|
|
return 0;
|
|
|
|
|
|
drop:
|
|
drop:
|