diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2013-10-03 03:03:39 -0400 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2013-10-03 03:13:30 -0400 |
commit | ae4fd2d37433ba58e17adbf1694b7b66eeaec76c (patch) | |
tree | 3c2481da00bc5a1ed74a428ba433f342d8f7ef4d | |
parent | 7b9899dbcf432b188f3cc22bd1ad9e8050c496fc (diff) |
Bluetooth: L2CAP connectionless channels are only valid for BR/EDR
When receiving connectionless packets on a LE connection, just drop
the packet. There is no concept of connectionless channels for LE.
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
-rw-r--r-- | net/bluetooth/l2cap_core.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c index 65c53719b76c..102a510a153a 100644 --- a/net/bluetooth/l2cap_core.c +++ b/net/bluetooth/l2cap_core.c | |||
@@ -6403,8 +6403,12 @@ done: | |||
6403 | static void l2cap_conless_channel(struct l2cap_conn *conn, __le16 psm, | 6403 | static void l2cap_conless_channel(struct l2cap_conn *conn, __le16 psm, |
6404 | struct sk_buff *skb) | 6404 | struct sk_buff *skb) |
6405 | { | 6405 | { |
6406 | struct hci_conn *hcon = conn->hcon; | ||
6406 | struct l2cap_chan *chan; | 6407 | struct l2cap_chan *chan; |
6407 | 6408 | ||
6409 | if (hcon->type != ACL_LINK) | ||
6410 | goto drop; | ||
6411 | |||
6408 | chan = l2cap_global_chan_by_psm(0, psm, conn->src, conn->dst); | 6412 | chan = l2cap_global_chan_by_psm(0, psm, conn->src, conn->dst); |
6409 | if (!chan) | 6413 | if (!chan) |
6410 | goto drop; | 6414 | goto drop; |