nfc: nci: fix possible NULL pointer dereference in send_acknowledge()
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Fri, 13 Oct 2023 18:41:29 +0000 (20:41 +0200)
committerJakub Kicinski <kuba@kernel.org>
Tue, 17 Oct 2023 00:34:53 +0000 (17:34 -0700)
Handle memory allocation failure from nci_skb_alloc() (calling
alloc_skb()) to avoid possible NULL pointer dereference.

Reported-by: 黄思聪 <huangsicong@iie.ac.cn>
Fixes: 391d8a2da787 ("NFC: Add NCI over SPI receive")
Cc: <stable@vger.kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://lore.kernel.org/r/20231013184129.18738-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/nfc/nci/spi.c

index 0935527..b68150c 100644 (file)
@@ -151,6 +151,8 @@ static int send_acknowledge(struct nci_spi *nspi, u8 acknowledge)
        int ret;
 
        skb = nci_skb_alloc(nspi->ndev, 0, GFP_KERNEL);
+       if (!skb)
+               return -ENOMEM;
 
        /* add the NCI SPI header to the start of the buffer */
        hdr = skb_push(skb, NCI_SPI_HDR_LEN);