Home
last modified time | relevance | path

Searched hist:"668160 e5a80536251b4931a332dfe34d6ec2aeb7" (Results 1 – 1 of 1) sorted by relevance

/openbmc/linux/drivers/hid/usbhid/
H A Dhid-core.cdiff 668160e5a80536251b4931a332dfe34d6ec2aeb7 Thu Jul 19 15:08:21 CDT 2012 Alan Stern <stern@rowland.harvard.edu> HID: usbhid: fix use-after-free bug

This patch (as1592) fixes an obscure problem in the usbhid driver.
Under some circumstances, a control or interrupt-OUT URB can be
submitted twice. This will happen if the first submission fails; the
queue pointers aren't updated, so the next time the queue is restarted
the same URB will be submitted again.

The problem is that raw_report gets deallocated during the first
submission. The second submission will then dereference and try to
free an already-freed region of memory. The patch fixes the problem
by setting raw_report to NULL when it is deallocated and checking for
NULL before dereferencing it.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
CC: Oliver Neukum <oliver@neukum.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>