diff options
| author | Benjamin Tissoires <bentiss@kernel.org> | 2026-09-15 17:46:57 +0200 |
|---|---|---|
| committer | Benjamin Tissoires <bentiss@kernel.org> | 2026-09-25 09:45:11 +0200 |
| commit | 3afefbfe55c2a8a0c4bdf6f4cc1f773da120027c (patch) | |
| tree | b6086d6e36d60e403a7a427c65d0b9aa73c26b6b /tools/lib/python/kdoc/python_version.py | |
| parent | a1cdd72371270640bd357bd3e3b2ec0be17c9536 (diff) | |
| download | linux-next-3afefbfe55c2a8a0c4bdf6f4cc1f773da120027c.tar.gz linux-next-3afefbfe55c2a8a0c4bdf6f4cc1f773da120027c.zip | |
HID: bpf: cast size to ssize_t when checking hid_bpf_hw_request
As reported by Sashiko:
If a transport driver encounters a hardware error and returns a negative
error code such as -EPIPE, ret is implicitly promoted to size_t when
compared against size. This causes the negative error code to evaluate
as a large positive number, making the (ret > size) condition true.
This silently converts the hardware error into a success return value
and copies the unmodified buffer back, which could leave BPF programs
operating on uninitialized or stale data.
Fix this by casting size into ssize_t to return the actual negative
error code.
Link: https://lore.kernel.org/all/20260904130354.A79471F00A3D@smtp.kernel.org/
Fixes: 2b658c1c442e ("HID: bpf: prevent buffer overflow in hid_hw_request")
Cc: stable@vger.kernel.org
Acked-by: Jiri Kosina <jkosina@suse.com>
Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
Diffstat (limited to 'tools/lib/python/kdoc/python_version.py')
0 files changed, 0 insertions, 0 deletions
