aboutsummaryrefslogtreecommitdiff
path: root/atf-c++/(developers-only)
diff options
context:
space:
mode:
authorNick Price <nprice@FreeBSD.org>2026-11-08 01:32:08 +0000
committerNick Price <nprice@FreeBSD.org>2026-11-08 01:32:08 +0000
commitfbe4835e6b1eec36103a5ce97efbab11b3b5fc72 (patch)
tree835c40da6e4db87c82e24eacc512a2db8e3aa0da /atf-c++/(developers-only)
parent838ff5548b4f83707f34cfd28769e35393da3f05 (diff)
linux: do not truncate the listxattr() sizeHEADmain
listxattr() sized its buffer with min(), which truncates the 64-bit size to 32 bits, so a size of 2^32 + k allocated k bytes while the copy-out guard used the full size. The walk then read record lengths past the buffer and copied kernel heap out to the caller, and could panic the kernel. Any user can reach it through a user.* attribute on a file it owns. Use MIN(), and fail with EIO if a record runs past the data returned. Reviewed by: adrian, markj Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D61006 Signed-off-by: Nick Price <nprice@FreeBSD.org>
Diffstat (limited to 'atf-c++/(developers-only)')
0 files changed, 0 insertions, 0 deletions