aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2010-01-24 08:47:02 -0500
committerStefan Richter <stefanr@s5r6.in-berlin.de>2010-01-26 14:54:50 -0500
commite300839da40e99581581c5d053a95a172651fec8 (patch)
treebb6c59a38828f4af0fd728f959dcbd39546891ce /include
parent92dcffb916d309aa01778bf8963a6932e4014d07 (diff)
firewire: core: add_descriptor size check
Presently, firewire-core only checks whether descriptors that are to be added by userspace drivers to the local node's config ROM do not exceed a size of 256 quadlets. However, the sum of the bare minimum ROM plus all descriptors (from firewire-core, from firewire-net, from userspace) must not exceed 256 quadlets. Otherwise, the bounds of a statically allocated buffer will be overwritten. If the kernel survives that, firewire-core will subsequently be unable to parse the local node's config ROM. (Note, userspace drivers can add descriptors only through device files of local nodes. These are usually only accessible by root, unlike device files of remote nodes which may be accessible to lesser privileged users.) Therefore add a test which takes the actual present and required ROM size into account for all descriptors of kernelspace and userspace drivers. Cc: stable@kernel.org Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions