]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ethtool: cmis: validate fw->size against start_cmd_payload_size
authorJakub Kicinski <kuba@kernel.org>
Fri, 22 May 2026 23:13:12 +0000 (16:13 -0700)
committerJakub Kicinski <kuba@kernel.org>
Tue, 26 May 2026 15:19:33 +0000 (08:19 -0700)
commitd5551f4c1800dc714cec86647bdd651ae0de923e
tree1286df8c0b8ebfa80822f625cb198c469b14d802
parent12c2496a71f82f63617971ca9b730dffa05cf58b
ethtool: cmis: validate fw->size against start_cmd_payload_size

cmis_fw_update_start_download() copies start_cmd_payload_size bytes
from the firmware blob into the CDB LPL vendor_data[] payload without
validating that the FW has enough data.

Since the start_cmd_payload_size can only be ~120B an image too short
is most likely corrupted, so reject it.

Fixes: c4f78134d45c ("ethtool: cmis_fw_update: add a layer for supporting firmware update using CDB")
Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Reviewed-by: Danielle Ratson <danieller@nvidia.com>
Link: https://patch.msgid.link/20260522231312.1710836-10-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ethtool/cmis_fw_update.c