]> git.karo-electronics.de Git - karo-tx-linux.git/commit
USB serial ftdi_sio: Prevent userspace DoS (CVE-2006-2936)
authorIan Abbott <abbotti@mev.co.uk>
Mon, 26 Jun 2006 11:59:17 +0000 (12:59 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 25 Jul 2006 03:35:25 +0000 (20:35 -0700)
commitba4532fa45b99a866d253877372f086503a944c6
tree700b02aaf776f164ea76cb4c8373e59bd4eeaa07
parent5bd9689ce4b9ffd657be1462f4b2f5a0d10cd450
USB serial ftdi_sio: Prevent userspace DoS (CVE-2006-2936)

This patch limits the amount of outstanding 'write' data that can be
queued up for the ftdi_sio driver, to prevent userspace DoS attacks (or
simple accidents) that use up all the system memory by writing lots of
data to the serial port.

The original patch was by Guillaume Autran, who in turn based it on the
same mechanism implemented in the 'visor' driver.  I (Ian Abbott)
re-targeted the patch to the latest sources, fixed a couple of errors,
renamed his new structure members, and updated the implementations of
the 'write_room' and 'chars_in_buffer' methods to take account of the
number of outstanding 'write' bytes.  It seems to work fine, though at
low baud rates it is still possible to queue up an amount of data that
takes an age to shift (a job for another day!).

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/serial/ftdi_sio.c