summaryrefslogtreecommitdiffstats
path: root/drivers/input/touchscreen
diff options
context:
space:
mode:
authorDaniel Kurtz <djkurtz@chromium.org>2012-05-09 07:38:52 +0200
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2012-05-11 05:39:05 +0200
commitd1ff320f0a9766a53ae412d96f72bd861a889af6 (patch)
treedc60b58f939dadf51d53e5051f5db465049a1523 /drivers/input/touchscreen
parentInput: atmel_mxt_ts - only allow root to update firmware (diff)
downloadlinux-d1ff320f0a9766a53ae412d96f72bd861a889af6.tar.xz
linux-d1ff320f0a9766a53ae412d96f72bd861a889af6.zip
Input: atmel_mxt_ts - verify object size in mxt_write_object
Don't allow writing past the length of an object. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/touchscreen')
-rw-r--r--drivers/input/touchscreen/atmel_mxt_ts.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c
index 15ae6fd575b2..8f0dc7776e7d 100644
--- a/drivers/input/touchscreen/atmel_mxt_ts.c
+++ b/drivers/input/touchscreen/atmel_mxt_ts.c
@@ -506,7 +506,7 @@ static int mxt_write_object(struct mxt_data *data,
u16 reg;
object = mxt_get_object(data, type);
- if (!object)
+ if (!object || offset >= object->size + 1)
return -EINVAL;
reg = object->start_address;