summaryrefslogtreecommitdiffstats
path: root/fs/compat_ioctl.c
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2014-01-21 15:48:43 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2014-01-21 16:19:42 -0800
commit38316c8ab7f17bc1be8f2898278d5f5131e18bf2 (patch)
treeb712b7206791c79a5a3c8660b16b0934f90d5949 /fs/compat_ioctl.c
parent0afaa12047a45ebe651f29a3b4818e523f862c28 (diff)
downloadlinux-stable-38316c8ab7f17bc1be8f2898278d5f5131e18bf2.tar.gz
linux-stable-38316c8ab7f17bc1be8f2898278d5f5131e18bf2.tar.bz2
linux-stable-38316c8ab7f17bc1be8f2898278d5f5131e18bf2.zip
fs/compat_ioctl.c: fix an underflow issue (harmless)
We cap "nmsgs" at I2C_RDRW_IOCTL_MAX_MSGS (42) but the current code allows negative values. It's harmless but it makes my static checker upset so I've made nsmgs unsigned. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/compat_ioctl.c')
-rw-r--r--fs/compat_ioctl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/compat_ioctl.c b/fs/compat_ioctl.c
index dc52e13d58e0..3881610b6438 100644
--- a/fs/compat_ioctl.c
+++ b/fs/compat_ioctl.c
@@ -680,7 +680,8 @@ static int do_i2c_rdwr_ioctl(unsigned int fd, unsigned int cmd,
struct i2c_msg __user *tmsgs;
struct i2c_msg32 __user *umsgs;
compat_caddr_t datap;
- int nmsgs, i;
+ u32 nmsgs;
+ int i;
if (get_user(nmsgs, &udata->nmsgs))
return -EFAULT;