mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-02 08:34:20 +08:00
Bluetooth: Factor out common L2CAP connection code
L2CAP connect requests and create channel requests share a significant amount of code. This change moves common code to a new function. Signed-off-by: Mat Martineau <mathewm@codeaurora.org> Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
This commit is contained in:
parent
f5a2598d80
commit
4c89b6aad5
@ -3394,7 +3394,8 @@ static inline int l2cap_command_rej(struct l2cap_conn *conn, struct l2cap_cmd_hd
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline int l2cap_connect_req(struct l2cap_conn *conn, struct l2cap_cmd_hdr *cmd, u8 *data)
|
||||
static void __l2cap_connect(struct l2cap_conn *conn, struct l2cap_cmd_hdr *cmd,
|
||||
u8 *data, u8 rsp_code, u8 amp_id)
|
||||
{
|
||||
struct l2cap_conn_req *req = (struct l2cap_conn_req *) data;
|
||||
struct l2cap_conn_rsp rsp;
|
||||
@ -3488,7 +3489,7 @@ sendresp:
|
||||
rsp.dcid = cpu_to_le16(dcid);
|
||||
rsp.result = cpu_to_le16(result);
|
||||
rsp.status = cpu_to_le16(status);
|
||||
l2cap_send_cmd(conn, cmd->ident, L2CAP_CONN_RSP, sizeof(rsp), &rsp);
|
||||
l2cap_send_cmd(conn, cmd->ident, rsp_code, sizeof(rsp), &rsp);
|
||||
|
||||
if (result == L2CAP_CR_PEND && status == L2CAP_CS_NO_INFO) {
|
||||
struct l2cap_info_req info;
|
||||
@ -3511,7 +3512,12 @@ sendresp:
|
||||
l2cap_build_conf_req(chan, buf), buf);
|
||||
chan->num_conf_req++;
|
||||
}
|
||||
}
|
||||
|
||||
static int l2cap_connect_req(struct l2cap_conn *conn,
|
||||
struct l2cap_cmd_hdr *cmd, u8 *data)
|
||||
{
|
||||
__l2cap_connect(conn, cmd, data, L2CAP_CONN_RSP, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user