mirror of
https://github.com/torvalds/linux.git
synced 2026-10-26 20:46:02 +01:00
The PDR_INTERFACE_LIST loop only checks that the record start is within
the entry before reading an entire struct exp_if from it. A truncated
trailing record makes the if_id/variant reads cross the entry boundary
into the heap beyond the EEPROM buffer (verified with a KASAN
reproducer of the loop). The variant also feeds the synth front-end
selection, so this is not only a leak.
Advance only while a full record still fits in the entry.
Fixes:
|
||
|---|---|---|
| .. | ||
| p54 | ||
| Kconfig | ||
| Makefile | ||