]> git.baikalelectronics.ru Git - kernel.git/commit
net: nfc: fix bounds checking bugs on "pipe"
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 4 Mar 2020 14:24:31 +0000 (17:24 +0300)
committerDavid S. Miller <davem@davemloft.net>
Fri, 6 Mar 2020 05:32:42 +0000 (21:32 -0800)
commit395fa38e50ffdac88f78248372d70d5bbe9ed066
tree5d11e5ff1d358db10e02ffaa583dc462ad0835a2
parent1018567cfce2532f89c9d4fcef51bfea6697bef1
net: nfc: fix bounds checking bugs on "pipe"

This is similar to commit c1609579a421 ("NFC: Fix possible memory
corruption when handling SHDLC I-Frame commands") and commit 1f596720b2eb
("NFC: nci: Add some bounds checking in nci_hci_cmd_received()") which
added range checks on "pipe".

The "pipe" variable comes skb->data[0] in nfc_hci_msg_rx_work().
It's in the 0-255 range.  We're using it as the array index into the
hdev->pipes[] array which has NFC_HCI_MAX_PIPES (128) members.

Fixes: 44a23a6c34c2 ("NFC: hci: Add pipes table to reference them with a tuple {gate, host}")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/nfc/hci/core.c