summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@intel.com>2013-10-16 10:37:00 +0200
committerMarcel Holtmann <marcel@holtmann.org>2013-10-16 10:41:13 +0200
commit07e307f807fecf056f0f9024ade4c0187159c46b (patch)
tree138640e20d3f1ed494e2c43efac87a0a06afb3bb
parentBluetooth: Remove useless l2cap_err_to_reason function (diff)
downloadlinux-07e307f807fecf056f0f9024ade4c0187159c46b.tar.xz
linux-07e307f807fecf056f0f9024ade4c0187159c46b.zip
Bluetooth: Ignore A2MP data on non-BR/EDR links
The A2MP CID is only valid for BR/EDR transports. We should ignore A2MP data on non-BR/EDR links and refuse to create an amp_mgr object. Signed-off-by: Johan Hedberg <johan.hedberg@intel.com> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to '')
-rw-r--r--net/bluetooth/a2mp.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/bluetooth/a2mp.c b/net/bluetooth/a2mp.c
index fe32a334a52d..efcd108822c4 100644
--- a/net/bluetooth/a2mp.c
+++ b/net/bluetooth/a2mp.c
@@ -836,6 +836,9 @@ struct l2cap_chan *a2mp_channel_create(struct l2cap_conn *conn,
{
struct amp_mgr *mgr;
+ if (conn->hcon->type != ACL_LINK)
+ return NULL;
+
mgr = amp_mgr_create(conn, false);
if (!mgr) {
BT_ERR("Could not create AMP manager");