aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/bluetooth/hci_event.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c
index 0aba21a03b3c..6bc5a0506c6c 100644
--- a/net/bluetooth/hci_event.c
+++ b/net/bluetooth/hci_event.c
@@ -1314,8 +1314,16 @@ static inline void hci_sync_conn_complete_evt(struct hci_dev *hdev, struct sk_bu
1314 hci_dev_lock(hdev); 1314 hci_dev_lock(hdev);
1315 1315
1316 conn = hci_conn_hash_lookup_ba(hdev, ev->link_type, &ev->bdaddr); 1316 conn = hci_conn_hash_lookup_ba(hdev, ev->link_type, &ev->bdaddr);
1317 if (!conn) 1317 if (!conn) {
1318 goto unlock; 1318 if (ev->link_type == ESCO_LINK)
1319 goto unlock;
1320
1321 conn = hci_conn_hash_lookup_ba(hdev, ESCO_LINK, &ev->bdaddr);
1322 if (!conn)
1323 goto unlock;
1324
1325 conn->type = SCO_LINK;
1326 }
1319 1327
1320 if (!ev->status) { 1328 if (!ev->status) {
1321 conn->handle = __le16_to_cpu(ev->handle); 1329 conn->handle = __le16_to_cpu(ev->handle);