mirror of https://gitee.com/openkylin/linux.git
Bluetooth: Don't accept ConfigReq if we aren't in the BT_CONFIG state
If such event happens we shall reply with a Command Reject, because we are not expecting any configure request. Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
parent
09f921f83f
commit
df6bd743b6
|
@ -3124,8 +3124,14 @@ static inline int l2cap_config_req(struct l2cap_conn *conn, struct l2cap_cmd_hdr
|
||||||
if (!sk)
|
if (!sk)
|
||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
|
|
||||||
if (sk->sk_state == BT_DISCONN)
|
if (sk->sk_state != BT_CONFIG) {
|
||||||
|
struct l2cap_cmd_rej rej;
|
||||||
|
|
||||||
|
rej.reason = cpu_to_le16(0x0002);
|
||||||
|
l2cap_send_cmd(conn, cmd->ident, L2CAP_COMMAND_REJ,
|
||||||
|
sizeof(rej), &rej);
|
||||||
goto unlock;
|
goto unlock;
|
||||||
|
}
|
||||||
|
|
||||||
/* Reject if config buffer is too small. */
|
/* Reject if config buffer is too small. */
|
||||||
len = cmd_len - sizeof(*req);
|
len = cmd_len - sizeof(*req);
|
||||||
|
|
Loading…
Reference in New Issue