[PATCH v2 0/3] Bluetooth: btintel: harden version TLV parsing
Laxman Acharya Padhya <[email protected]>
| Newsgroups | org.kernel.vger.linux-bluetooth,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Malformed Intel version TLVs can make btintel_parse_version_tlv() read beyond the received response. Validate the minimum value length for each known fixed-size TLV and bound the firmware ID conversion by the TLV's advertised length. Propagate parser failures to the setup path in a separate patch. The two bounds fixes are kept separate because they were introduced by different commits and apply to different stable trees. The parser error propagation is also separate because it changes setup behavior. Changes in v2: - split the minimum-length validation and firmware ID bounds fix - use the appropriate Fixes tag for each bounds fix - keep parser error propagation as a separate behavioral change - add Ali's Reviewed-by tag to the two bounds fixes Laxman Acharya Padhya (3): Bluetooth: btintel: validate version TLV value lengths Bluetooth: btintel: bound firmware ID by TLV length Bluetooth: btintel: propagate version TLV parsing errors drivers/bluetooth/btintel.c | 44 +++++++++++++++++++++++++++++++++---- 1 file changed, 40 insertions(+), 4 deletions(-) -- 2.51.2