mirror of https://gitee.com/openkylin/linux.git
Bluetooth: Drop packets on ATT fixed channel on BR/EDR
The ATT fixed channel is only valid when using LE connections. On BR/EDR it is required to go through L2CAP connection oriented channel for ATT. Drop ATT packets when they are received on a BR/EDR connection. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
This commit is contained in:
parent
ae4fd2d374
commit
b99707d7ee
|
@ -6431,8 +6431,12 @@ static void l2cap_conless_channel(struct l2cap_conn *conn, __le16 psm,
|
||||||
static void l2cap_att_channel(struct l2cap_conn *conn,
|
static void l2cap_att_channel(struct l2cap_conn *conn,
|
||||||
struct sk_buff *skb)
|
struct sk_buff *skb)
|
||||||
{
|
{
|
||||||
|
struct hci_conn *hcon = conn->hcon;
|
||||||
struct l2cap_chan *chan;
|
struct l2cap_chan *chan;
|
||||||
|
|
||||||
|
if (hcon->type != LE_LINK)
|
||||||
|
goto drop;
|
||||||
|
|
||||||
chan = l2cap_global_chan_by_scid(BT_CONNECTED, L2CAP_CID_ATT,
|
chan = l2cap_global_chan_by_scid(BT_CONNECTED, L2CAP_CID_ATT,
|
||||||
conn->src, conn->dst);
|
conn->src, conn->dst);
|
||||||
if (!chan)
|
if (!chan)
|
||||||
|
|
Loading…
Reference in New Issue