hc
2024-10-22 8ac6c7a54ed1b98d142dce24b11c6de6a1e239a5
kernel/drivers/scsi/qla4xxx/ql4_os.c
....@@ -973,6 +973,11 @@
973973 memset(&chap_rec, 0, sizeof(chap_rec));
974974
975975 nla_for_each_attr(attr, data, len, rem) {
976
+ if (nla_len(attr) < sizeof(*param_info)) {
977
+ rc = -EINVAL;
978
+ goto exit_set_chap;
979
+ }
980
+
976981 param_info = nla_data(attr);
977982
978983 switch (param_info->param) {
....@@ -2755,6 +2760,11 @@
27552760 }
27562761
27572762 nla_for_each_attr(attr, data, len, rem) {
2763
+ if (nla_len(attr) < sizeof(*iface_param)) {
2764
+ rval = -EINVAL;
2765
+ goto exit_init_fw_cb;
2766
+ }
2767
+
27582768 iface_param = nla_data(attr);
27592769
27602770 if (iface_param->param_type == ISCSI_NET_PARAM) {
....@@ -8119,6 +8129,11 @@
81198129
81208130 memset((void *)&chap_tbl, 0, sizeof(chap_tbl));
81218131 nla_for_each_attr(attr, data, len, rem) {
8132
+ if (nla_len(attr) < sizeof(*fnode_param)) {
8133
+ rc = -EINVAL;
8134
+ goto exit_set_param;
8135
+ }
8136
+
81228137 fnode_param = nla_data(attr);
81238138
81248139 switch (fnode_param->param) {