Description
In the Linux kernel, the following vulnerability has been resolved: 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.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
d6efaa50af62fb0790dd1fd4e7e5506b46312510 to < 8b85ef0f561039e249c3f883c5280a1449c6dbeeaffected73c5b5aea1c443239c8cb4191b4af7a4bd6fd7b1 to < 97be6396817bd3b11d06239010d27902940bfaa9affected2b658c1c442ec1cd9eec5ead98d68662c40fe645 to < f9f808227554b2c116fd07dd2328ecd74ea3f411affected2b658c1c442ec1cd9eec5ead98d68662c40fe645 to < 3afefbfe55c2a8a0c4bdf6f4cc1f773da120027caffectedeb57dae20fdf6f3069cdc07821fa3bb46de381d7affected6.12.78 to < 6.12.113affected6.18.20 to < 6.18.56affected6.19.10 to < 6.20affected
Linux Linux
Default version status: affected
7.0affected0 to < 7.0unaffected6.12.113 to ≤ 6.12.*unaffected6.18.56 to ≤ 6.18.*unaffected7.2.10 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected