fortify: Fix incorrect reporting of read buffer size

When FORTIFY_SOURCE reports about a run-time buffer overread, the wrong
buffer size was being shown in the error message. (The bounds checking
was correct.)

Fixes: 3d965b33e4 ("fortify: Improve buffer overflow reporting")
Reviewed-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Link: https://lore.kernel.org/r/20250729231817.work.023-kees@kernel.org
Signed-off-by: Kees Cook <kees@kernel.org>
pull/1309/head
Kees Cook 2025-07-29 16:18:25 -07:00
parent fc525d625a
commit 94fd44648d
1 changed files with 1 additions and 1 deletions

View File

@ -596,7 +596,7 @@ __FORTIFY_INLINE bool fortify_memcpy_chk(__kernel_size_t size,
if (p_size != SIZE_MAX && p_size < size) if (p_size != SIZE_MAX && p_size < size)
fortify_panic(func, FORTIFY_WRITE, p_size, size, true); fortify_panic(func, FORTIFY_WRITE, p_size, size, true);
else if (q_size != SIZE_MAX && q_size < size) else if (q_size != SIZE_MAX && q_size < size)
fortify_panic(func, FORTIFY_READ, p_size, size, true); fortify_panic(func, FORTIFY_READ, q_size, size, true);
/* /*
* Warn when writing beyond destination field size. * Warn when writing beyond destination field size.