media: hdpvr: add terminating 0 at end of string
authorHans Verkuil <hverkuil-cisco@xs4all.nl>
Thu, 15 Aug 2019 13:00:33 +0000 (10:00 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 5 Oct 2019 10:30:23 +0000 (12:30 +0200)
[ Upstream commit 8b8900b729e4f31f12ac1127bde137c775c327e6 ]

dev->usbc_buf was passed as argument for %s, but it was not safeguarded
by a terminating 0.

This caused this syzbot issue:

https://syzkaller.appspot.com/bug?extid=79d18aac4bf1770dd050

Reported-and-tested-by: syzbot+79d18aac4bf1770dd050@syzkaller.appspotmail.com
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/usb/hdpvr/hdpvr-core.c

index 7b34108f6587e87dda84984f03596bfbc5c6c9a7..99171b912a2d8bfd64bcbcdf8e2da8008fb50935 100644 (file)
@@ -143,6 +143,7 @@ static int device_authorization(struct hdpvr_device *dev)
 
        dev->fw_ver = dev->usbc_buf[1];
 
+       dev->usbc_buf[46] = '\0';
        v4l2_info(&dev->v4l2_dev, "firmware version 0x%x dated %s\n",
                          dev->fw_ver, &dev->usbc_buf[2]);