mwifiex: use 'total_ie_len' in mwifiex_update_bss_desc_with_ie()
authorBrian Norris <briannorris@chromium.org>
Sat, 15 Jun 2019 00:13:21 +0000 (17:13 -0700)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 1 Oct 2019 09:22:36 +0000 (12:22 +0300)
This is clearer than copy/pasting the magic number '+ 2' around, and it
even saves the need for one existing comment.

Cc: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Brian Norris <briannorris@chromium.org>
Reviewed-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/marvell/mwifiex/scan.c

index 593c594..98f942b 100644 (file)
@@ -1270,7 +1270,7 @@ int mwifiex_update_bss_desc_with_ie(struct mwifiex_adapter *adapter,
                        break;
 
                case WLAN_EID_FH_PARAMS:
-                       if (element_len + 2 < sizeof(*fh_param_set))
+                       if (total_ie_len < sizeof(*fh_param_set))
                                return -EINVAL;
                        fh_param_set =
                                (struct ieee_types_fh_param_set *) current_ptr;
@@ -1280,7 +1280,7 @@ int mwifiex_update_bss_desc_with_ie(struct mwifiex_adapter *adapter,
                        break;
 
                case WLAN_EID_DS_PARAMS:
-                       if (element_len + 2 < sizeof(*ds_param_set))
+                       if (total_ie_len < sizeof(*ds_param_set))
                                return -EINVAL;
                        ds_param_set =
                                (struct ieee_types_ds_param_set *) current_ptr;
@@ -1293,7 +1293,7 @@ int mwifiex_update_bss_desc_with_ie(struct mwifiex_adapter *adapter,
                        break;
 
                case WLAN_EID_CF_PARAMS:
-                       if (element_len + 2 < sizeof(*cf_param_set))
+                       if (total_ie_len < sizeof(*cf_param_set))
                                return -EINVAL;
                        cf_param_set =
                                (struct ieee_types_cf_param_set *) current_ptr;
@@ -1303,7 +1303,7 @@ int mwifiex_update_bss_desc_with_ie(struct mwifiex_adapter *adapter,
                        break;
 
                case WLAN_EID_IBSS_PARAMS:
-                       if (element_len + 2 < sizeof(*ibss_param_set))
+                       if (total_ie_len < sizeof(*ibss_param_set))
                                return -EINVAL;
                        ibss_param_set =
                                (struct ieee_types_ibss_param_set *)
@@ -1460,10 +1460,8 @@ int mwifiex_update_bss_desc_with_ie(struct mwifiex_adapter *adapter,
                        break;
                }
 
-               current_ptr += element_len + 2;
-
-               /* Need to account for IE ID and IE Len */
-               bytes_left -= (element_len + 2);
+               current_ptr += total_ie_len;
+               bytes_left -= total_ie_len;
 
        }       /* while (bytes_left > 2) */
        return ret;