| .. | .. |
|---|
| 4304 | 4304 | struct hci_ev_sync_conn_complete *ev = (void *) skb->data; |
|---|
| 4305 | 4305 | struct hci_conn *conn; |
|---|
| 4306 | 4306 | |
|---|
| 4307 | + switch (ev->link_type) { |
|---|
| 4308 | + case SCO_LINK: |
|---|
| 4309 | + case ESCO_LINK: |
|---|
| 4310 | + break; |
|---|
| 4311 | + default: |
|---|
| 4312 | + /* As per Core 5.3 Vol 4 Part E 7.7.35 (p.2219), Link_Type |
|---|
| 4313 | + * for HCI_Synchronous_Connection_Complete is limited to |
|---|
| 4314 | + * either SCO or eSCO |
|---|
| 4315 | + */ |
|---|
| 4316 | + bt_dev_err(hdev, "Ignoring connect complete event for invalid link type"); |
|---|
| 4317 | + return; |
|---|
| 4318 | + } |
|---|
| 4319 | + |
|---|
| 4307 | 4320 | BT_DBG("%s status 0x%2.2x", hdev->name, ev->status); |
|---|
| 4308 | 4321 | |
|---|
| 4309 | 4322 | hci_dev_lock(hdev); |
|---|