Skip to content
Snippets Groups Projects
Commit 30519bb8 authored by Joe Perches's avatar Joe Perches Committed by Cheng Jian
Browse files

sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output


stable inclusion
from linux-4.19.179
commit cb1f69d53ac8a417fc42df013526b54735194c14
CVE: CVE-2021-27365

Prepare for CVE-2021-27365
--------------------------------

commit 2efc459d upstream.

Output defects can exist in sysfs content using sprintf and snprintf.

sprintf does not know the PAGE_SIZE maximum of the temporary buffer
used for outputting sysfs content and it's possible to overrun the
PAGE_SIZE buffer length.

Add a generic sysfs_emit function that knows that the size of the
temporary buffer and ensures that no overrun is done.

Add a generic sysfs_emit_at function that can be used in multiple
call situations that also ensures that no overrun is done.

Validate the output buffer argument to be page aligned.
Validate the offset len argument to be within the PAGE_SIZE buf.

Signed-off-by: default avatarJoe Perches <joe@perches.com>
Link: https://lore.kernel.org/r/884235202216d464d61ee975f7465332c86f76b2.1600285923.g...
parent 377a6ded
No related branches found
No related tags found
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment