Files
linux-stable-mirror/fs
Bryam VargasandGreg Kroah-Hartman 36723b28e3 orangefs: keep the readdir entry size 64-bit in fill_from_part()
commit 18227a6bc9 upstream.

fill_from_part() computes the size of a directory entry in size_t but
stores it in a __u32. An entry length near U32_MAX wraps it to a small
value, bypasses the bounds check, and is then used to index the entry,
reading far past the directory part -- an out-of-bounds read that oopses
the kernel.

Compute the size as a u64 so it cannot truncate; the bounds check then
rejects the entry. The trailer is supplied by the userspace client.

Fixes: 480e3e532e ("orangefs: support very large directories")
Cc: stable@vger.kernel.org
Signed-off-by: Bryam Vargas <hexlabsecurity@proton.me>
Link: https://patch.msgid.link/20260619-b4-disp-50d2bd59-v1-1-ce332969b4a2@proton.me
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2026-07-24 15:55:09 +02:00
..
2026-07-24 15:54:41 +02:00
2026-03-04 07:20:25 -05:00
2026-01-17 16:39:33 +01:00
2025-10-02 13:40:41 +02:00
2025-03-28 21:58:51 +01:00
2025-10-29 14:04:35 +01:00
2026-01-11 15:19:22 +01:00