mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 06:01:57 +00:00
nfc/nci: Add the inconsistency check between the input data length and count
write$nci(r0, &(0x7f0000000740)=ANY=[@ANYBLOB="610501"], 0xf) Syzbot constructed a write() call with a data length of 3 bytes but a count value of 15, which passed too little data to meet the basic requirements of the function nci_rf_intf_activated_ntf_packet(). Therefore, increasing the comparison between data length and count value to avoid problems caused by inconsistent data length and count. Reported-and-tested-by: syzbot+71bfed2b2bcea46c98f2@syzkaller.appspotmail.com Signed-off-by: Edward Adam Davis <eadavis@qq.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e9022b31db
commit
068648aab7
@ -125,6 +125,10 @@ static ssize_t virtual_ncidev_write(struct file *file,
|
||||
kfree_skb(skb);
|
||||
return -EFAULT;
|
||||
}
|
||||
if (strnlen(skb->data, count) != count) {
|
||||
kfree_skb(skb);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
nci_recv_frame(vdev->ndev, skb);
|
||||
return count;
|
||||
|
Loading…
Reference in New Issue
Block a user