Commit a6dfba84 authored by Johannes Berg's avatar Johannes Berg

mac80211: remove unused IE pointers from parser

There's no need to parse IEs that aren't used
so just remove them.
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent c5d54fbf
...@@ -1157,11 +1157,8 @@ struct ieee802_11_elems { ...@@ -1157,11 +1157,8 @@ struct ieee802_11_elems {
/* pointers to IEs */ /* pointers to IEs */
const u8 *ssid; const u8 *ssid;
const u8 *supp_rates; const u8 *supp_rates;
const u8 *fh_params;
const u8 *ds_params; const u8 *ds_params;
const u8 *cf_params;
const struct ieee80211_tim_ie *tim; const struct ieee80211_tim_ie *tim;
const u8 *ibss_params;
const u8 *challenge; const u8 *challenge;
const u8 *rsn; const u8 *rsn;
const u8 *erp_info; const u8 *erp_info;
...@@ -1183,18 +1180,14 @@ struct ieee802_11_elems { ...@@ -1183,18 +1180,14 @@ struct ieee802_11_elems {
const struct ieee80211_channel_sw_ie *ch_switch_ie; const struct ieee80211_channel_sw_ie *ch_switch_ie;
const u8 *country_elem; const u8 *country_elem;
const u8 *pwr_constr_elem; const u8 *pwr_constr_elem;
const u8 *quiet_elem; /* first quite element */
const u8 *timeout_int; const u8 *timeout_int;
const u8 *opmode_notif; const u8 *opmode_notif;
/* length of them, respectively */ /* length of them, respectively */
u8 ssid_len; u8 ssid_len;
u8 supp_rates_len; u8 supp_rates_len;
u8 fh_params_len;
u8 ds_params_len; u8 ds_params_len;
u8 cf_params_len;
u8 tim_len; u8 tim_len;
u8 ibss_params_len;
u8 challenge_len; u8 challenge_len;
u8 rsn_len; u8 rsn_len;
u8 erp_info_len; u8 erp_info_len;
...@@ -1207,8 +1200,6 @@ struct ieee802_11_elems { ...@@ -1207,8 +1200,6 @@ struct ieee802_11_elems {
u8 prep_len; u8 prep_len;
u8 perr_len; u8 perr_len;
u8 country_elem_len; u8 country_elem_len;
u8 quiet_elem_len;
u8 num_of_quiet_elem; /* can be more the one */
u8 timeout_int_len; u8 timeout_int_len;
/* whether a parse error occurred while retrieving these elements */ /* whether a parse error occurred while retrieving these elements */
......
...@@ -738,18 +738,10 @@ u32 ieee802_11_parse_elems_crc(u8 *start, size_t len, ...@@ -738,18 +738,10 @@ u32 ieee802_11_parse_elems_crc(u8 *start, size_t len,
elems->supp_rates = pos; elems->supp_rates = pos;
elems->supp_rates_len = elen; elems->supp_rates_len = elen;
break; break;
case WLAN_EID_FH_PARAMS:
elems->fh_params = pos;
elems->fh_params_len = elen;
break;
case WLAN_EID_DS_PARAMS: case WLAN_EID_DS_PARAMS:
elems->ds_params = pos; elems->ds_params = pos;
elems->ds_params_len = elen; elems->ds_params_len = elen;
break; break;
case WLAN_EID_CF_PARAMS:
elems->cf_params = pos;
elems->cf_params_len = elen;
break;
case WLAN_EID_TIM: case WLAN_EID_TIM:
if (elen >= sizeof(struct ieee80211_tim_ie)) { if (elen >= sizeof(struct ieee80211_tim_ie)) {
elems->tim = (void *)pos; elems->tim = (void *)pos;
...@@ -757,10 +749,6 @@ u32 ieee802_11_parse_elems_crc(u8 *start, size_t len, ...@@ -757,10 +749,6 @@ u32 ieee802_11_parse_elems_crc(u8 *start, size_t len,
} else } else
elem_parse_failed = true; elem_parse_failed = true;
break; break;
case WLAN_EID_IBSS_PARAMS:
elems->ibss_params = pos;
elems->ibss_params_len = elen;
break;
case WLAN_EID_CHALLENGE: case WLAN_EID_CHALLENGE:
elems->challenge = pos; elems->challenge = pos;
elems->challenge_len = elen; elems->challenge_len = elen;
...@@ -870,13 +858,6 @@ u32 ieee802_11_parse_elems_crc(u8 *start, size_t len, ...@@ -870,13 +858,6 @@ u32 ieee802_11_parse_elems_crc(u8 *start, size_t len,
} }
elems->ch_switch_ie = (void *)pos; elems->ch_switch_ie = (void *)pos;
break; break;
case WLAN_EID_QUIET:
if (!elems->quiet_elem) {
elems->quiet_elem = pos;
elems->quiet_elem_len = elen;
}
elems->num_of_quiet_elem++;
break;
case WLAN_EID_COUNTRY: case WLAN_EID_COUNTRY:
elems->country_elem = pos; elems->country_elem = pos;
elems->country_elem_len = elen; elems->country_elem_len = elen;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment