diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2026-04-26 21:09:33 -0700 |
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2026-04-26 21:13:05 -0700 |
| commit | 6cdc46b38cf146ce81d4831b6472dbf7731849a2 (patch) | |
| tree | 57c12acf25f142c4a8861d6faa99ad5461c01c25 /scripts/stackusage | |
| parent | 2905281cbda52ec9df540113b35b835feb5fafd3 (diff) | |
Input: xpad - fix out-of-bounds access for Share button
xpadone_process_packet() receives len directly from urb->actual_length
and uses it to index the share-button byte at data[len - 18] or
data[len - 26]. Since both len and data[0] are under the device's
control, a broken controller can send a GIP_CMD_INPUT packet with
actual_length < 18 (e.g. 5 bytes) and reach this code path, causing
accesses beyond the actual array.
Fix this by calculating the offset and checking bounds against the
packet length.
Reported-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Fixes: 4ef46367073b ("Input: xpad - fix Share button on Xbox One controllers")
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'scripts/stackusage')
0 files changed, 0 insertions, 0 deletions
