linux/drivers/scsi/be2iscsi
Lin Ma 1806edae97 scsi: be2iscsi: Add length check when parsing nlattrs
[ Upstream commit ee0268f230 ]

beiscsi_iface_set_param() parses nlattr with nla_for_each_attr and assumes
every attributes can be viewed as struct iscsi_iface_param_info.

This is not true because there is no any nla_policy to validate the
attributes passed from the upper function iscsi_set_iface_params().

Add the nla_len check before accessing the nlattr data and return EINVAL if
the length check fails.

Fixes: 0e43895ec1 ("[SCSI] be2iscsi: adding functionality to change network settings using iscsiadm")
Signed-off-by: Lin Ma <linma@zju.edu.cn>
Link: https://lore.kernel.org/r/20230723075938.3713864-1-linma@zju.edu.cn
Reviewed-by: Chris Leech <cleech@redhat.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
History 2023-09-13 09:42:52 +02:00
..
be.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 2019-06-05 17:37:07 +02:00
be_cmds.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 2019-06-05 17:37:07 +02:00
be_cmds.h treewide: Use sizeof_field() macro 2019-12-09 10:36:44 -08:00
be_iscsi.c scsi: be2iscsi: Add length check when parsing nlattrs 2023-09-13 09:42:52 +02:00
be_iscsi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 2019-06-05 17:37:07 +02:00
be_main.c scsi: iscsi: Remove iscsi_get_task back_lock requirement 2022-06-21 21:19:23 -04:00
be_main.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 2019-06-05 17:37:07 +02:00
be_mgmt.c scsi: be2iscsi: Fix use-after-free during IP updates 2021-07-18 21:19:14 -04:00
be_mgmt.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 2019-06-05 17:37:07 +02:00
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00