i2c: validate user data in compat ioctl
authorPavel Skripkin <paskripkin@gmail.com>
Thu, 30 Dec 2021 22:47:50 +0000 (01:47 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 5 Jan 2022 11:40:32 +0000 (12:40 +0100)
commit8d31cbab4c295d7010ebb729e9d02d0e9cece18f
tree986967125e1fc1b1eadd83374f2fb3f63c98ee3b
parent51c94d8fbd09fe314baac7d49d7173e56e0df048
i2c: validate user data in compat ioctl

[ Upstream commit bb436283e25aaf1533ce061605d23a9564447bdf ]

Wrong user data may cause warning in i2c_transfer(), ex: zero msgs.
Userspace should not be able to trigger warnings, so this patch adds
validation checks for user data in compact ioctl to prevent reported
warnings

Reported-and-tested-by: syzbot+e417648b303855b91d8a@syzkaller.appspotmail.com
Fixes: 7d5cb45655f2 ("i2c compat ioctls: move to ->compat_ioctl()")
Signed-off-by: Pavel Skripkin <paskripkin@gmail.com>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/i2c/i2c-dev.c