Commit 6491d698 authored by Dan Carpenter's avatar Dan Carpenter Committed by David S. Miller
Browse files

nfc: nci: Potential off by one in ->pipes[] array



This is similar to commit e285d5bf ("NFC: Fix the number of pipes")
where we changed NFC_HCI_MAX_PIPES from 127 to 128.

As the comment next to the define explains, the pipe identifier is 7
bits long.  The highest possible pipe is 127, but the number of possible
pipes is 128.  As the code is now, then there is potential for an
out of bounds array access:

    net/nfc/nci/hci.c:297 nci_hci_cmd_received() warn: array off by one?
    'ndev->hci_dev->pipes[pipe]' '0-127 == 127'

Fixes: 11f54f22 ("NFC: nci: Add HCI over NCI protocol support")
Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d7ee81ad
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -166,7 +166,7 @@ struct nci_conn_info {
 * According to specification 102 622 chapter 4.4 Pipes,
 * According to specification 102 622 chapter 4.4 Pipes,
 * the pipe identifier is 7 bits long.
 * the pipe identifier is 7 bits long.
 */
 */
#define NCI_HCI_MAX_PIPES          127
#define NCI_HCI_MAX_PIPES          128


struct nci_hci_gate {
struct nci_hci_gate {
	u8 gate;
	u8 gate;