Commit 7e8aeffb authored by Luiz Augusto von Dentz's avatar Luiz Augusto von Dentz Committed by Marcel Holtmann
Browse files

Bluetooth: btsdio: Check for valid packet type



Check for valid packet type before calling hci_recv_frame which is
inline with what other drivers are doing.

Signed-off-by: default avatarLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
parent 1cc3c10c
Loading
Loading
Loading
Loading
+14 −5
Original line number Diff line number Diff line
@@ -145,11 +145,20 @@ static int btsdio_rx_packet(struct btsdio_data *data)

	data->hdev->stat.byte_rx += len;

	switch (hdr[3]) {
	case HCI_EVENT_PKT:
	case HCI_ACLDATA_PKT:
	case HCI_SCODATA_PKT:
	case HCI_ISODATA_PKT:
		hci_skb_pkt_type(skb) = hdr[3];

		err = hci_recv_frame(data->hdev, skb);
		if (err < 0)
			return err;
		break;
	default:
		kfree_skb(skb);
		return -EINVAL;
	}

	sdio_writeb(data->func, 0x00, REG_PC_RRT, NULL);