From: Marcel Holtmann Date: Thu, 3 Oct 2013 09:54:11 +0000 (-0700) Subject: Bluetooth: Drop packets on ATT fixed channel on BR/EDR X-Git-Tag: v3.13-rc1~105^2~225^2~24^2~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b99707d7ee887f9df8b3f7cf75e1e9dbf3206df3;p=platform%2Fkernel%2Flinux-stable.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 Signed-off-by: Johan Hedberg --- diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index 102a510..583517e1 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c @@ -6431,8 +6431,12 @@ drop: static void l2cap_att_channel(struct l2cap_conn *conn, struct sk_buff *skb) { + struct hci_conn *hcon = conn->hcon; struct l2cap_chan *chan; + if (hcon->type != LE_LINK) + goto drop; + chan = l2cap_global_chan_by_scid(BT_CONNECTED, L2CAP_CID_ATT, conn->src, conn->dst); if (!chan)