summaryrefslogtreecommitdiffstats
path: root/drivers/usb/atm/cxacru.c
diff options
context:
space:
mode:
authorDan Carpenter2016-01-30 15:34:55 +0100
committerGreg Kroah-Hartman2016-02-03 22:52:10 +0100
commit46e3cafb01feb107a681e89fd9b4f1cd938a601f (patch)
tree50a6daf1028c3d3598e50798a3d329f8fe6b3fe5 /drivers/usb/atm/cxacru.c
parentusb/storage: misc fixes to comments in include/linux/usb/storage.h (diff)
downloadkernel-qcow2-linux-46e3cafb01feb107a681e89fd9b4f1cd938a601f.tar.gz
kernel-qcow2-linux-46e3cafb01feb107a681e89fd9b4f1cd938a601f.tar.xz
kernel-qcow2-linux-46e3cafb01feb107a681e89fd9b4f1cd938a601f.zip
USB: cxacru: fix an bounds check warning
This is a privileged operation so it doesn't matter much. We use "tmp" as an offset into an array. If it were invalid we could read out of bounds and trigger an oops if the memory is not mapped. Plus it makes static checkers complain. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/atm/cxacru.c')
-rw-r--r--drivers/usb/atm/cxacru.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/atm/cxacru.c b/drivers/usb/atm/cxacru.c
index 1173f9cbc137..0a866e90b49c 100644
--- a/drivers/usb/atm/cxacru.c
+++ b/drivers/usb/atm/cxacru.c
@@ -476,6 +476,8 @@ static ssize_t cxacru_sysfs_store_adsl_config(struct device *dev,
return -EINVAL;
if (index < 0 || index > 0x7f)
return -EINVAL;
+ if (tmp < 0 || tmp > len - pos)
+ return -EINVAL;
pos += tmp;
/* skip trailing newline */