From: Dan Carpenter Date: Wed, 29 Jul 2015 10:16:06 +0000 (+0300) Subject: HID: uclogic: fix limit in uclogic_tablet_enable() X-Git-Tag: v4.1.7~58 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=e0a829ebdcc4732ceec327fc00c300430257b8f8;p=users%2Fjedix%2Flinux-maple.git HID: uclogic: fix limit in uclogic_tablet_enable() commit 4a8e70f5d0d80675fc17b9ba1e62db8ca6b91775 upstream. The limit should be ARRAY_SIZE(params) (5 elements) here instead of sizeof(params) (20 bytes). Fixes: 08177f40bd00 ('HID: uclogic: merge hid-huion driver in hid-uclogic') Signed-off-by: Dan Carpenter Reviewed-by: Nikolai Kondrashov Signed-off-by: Jiri Kosina Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/hid/hid-uclogic.c b/drivers/hid/hid-uclogic.c index 94167310e15a4..b905d501e752d 100644 --- a/drivers/hid/hid-uclogic.c +++ b/drivers/hid/hid-uclogic.c @@ -858,7 +858,7 @@ static int uclogic_tablet_enable(struct hid_device *hdev) for (p = drvdata->rdesc; p <= drvdata->rdesc + drvdata->rsize - 4;) { if (p[0] == 0xFE && p[1] == 0xED && p[2] == 0x1D && - p[3] < sizeof(params)) { + p[3] < ARRAY_SIZE(params)) { v = params[p[3]]; put_unaligned(cpu_to_le32(v), (s32 *)p); p += 4;