diff options
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/ieee80211_i.h | 4 | ||||
-rw-r--r-- | net/mac80211/mlme.c | 5 | ||||
-rw-r--r-- | net/mac80211/util.c | 6 |
3 files changed, 8 insertions, 7 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index faa2476a2451..a8c72742a8b1 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -837,7 +837,7 @@ struct ieee802_11_elems { | |||
837 | u8 *country_elem; | 837 | u8 *country_elem; |
838 | u8 *pwr_constr_elem; | 838 | u8 *pwr_constr_elem; |
839 | u8 *quiet_elem; /* first quite element */ | 839 | u8 *quiet_elem; /* first quite element */ |
840 | u8 *assoc_comeback; | 840 | u8 *timeout_int; |
841 | 841 | ||
842 | /* length of them, respectively */ | 842 | /* length of them, respectively */ |
843 | u8 ssid_len; | 843 | u8 ssid_len; |
@@ -865,7 +865,7 @@ struct ieee802_11_elems { | |||
865 | u8 pwr_constr_elem_len; | 865 | u8 pwr_constr_elem_len; |
866 | u8 quiet_elem_len; | 866 | u8 quiet_elem_len; |
867 | u8 num_of_quiet_elem; /* can be more the one */ | 867 | u8 num_of_quiet_elem; /* can be more the one */ |
868 | u8 assoc_comeback_len; | 868 | u8 timeout_int_len; |
869 | }; | 869 | }; |
870 | 870 | ||
871 | static inline struct ieee80211_local *hw_to_local( | 871 | static inline struct ieee80211_local *hw_to_local( |
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 43da6227b37c..b9e4b93089c4 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -1317,9 +1317,10 @@ static void ieee80211_rx_mgmt_assoc_resp(struct ieee80211_sub_if_data *sdata, | |||
1317 | ieee802_11_parse_elems(pos, len - (pos - (u8 *) mgmt), &elems); | 1317 | ieee802_11_parse_elems(pos, len - (pos - (u8 *) mgmt), &elems); |
1318 | 1318 | ||
1319 | if (status_code == WLAN_STATUS_ASSOC_REJECTED_TEMPORARILY && | 1319 | if (status_code == WLAN_STATUS_ASSOC_REJECTED_TEMPORARILY && |
1320 | elems.assoc_comeback && elems.assoc_comeback_len == 4) { | 1320 | elems.timeout_int && elems.timeout_int_len == 5 && |
1321 | elems.timeout_int[0] == WLAN_TIMEOUT_ASSOC_COMEBACK) { | ||
1321 | u32 tu, ms; | 1322 | u32 tu, ms; |
1322 | tu = get_unaligned_le32(elems.assoc_comeback); | 1323 | tu = get_unaligned_le32(elems.timeout_int + 1); |
1323 | ms = tu * 1024 / 1000; | 1324 | ms = tu * 1024 / 1000; |
1324 | printk(KERN_DEBUG "%s: AP rejected association temporarily; " | 1325 | printk(KERN_DEBUG "%s: AP rejected association temporarily; " |
1325 | "comeback duration %u TU (%u ms)\n", | 1326 | "comeback duration %u TU (%u ms)\n", |
diff --git a/net/mac80211/util.c b/net/mac80211/util.c index 963e0473205c..3f559e3d0a7c 100644 --- a/net/mac80211/util.c +++ b/net/mac80211/util.c | |||
@@ -653,9 +653,9 @@ void ieee802_11_parse_elems(u8 *start, size_t len, | |||
653 | elems->pwr_constr_elem = pos; | 653 | elems->pwr_constr_elem = pos; |
654 | elems->pwr_constr_elem_len = elen; | 654 | elems->pwr_constr_elem_len = elen; |
655 | break; | 655 | break; |
656 | case WLAN_EID_ASSOC_COMEBACK_TIME: | 656 | case WLAN_EID_TIMEOUT_INTERVAL: |
657 | elems->assoc_comeback = pos; | 657 | elems->timeout_int = pos; |
658 | elems->assoc_comeback_len = elen; | 658 | elems->timeout_int_len = elen; |
659 | break; | 659 | break; |
660 | default: | 660 | default: |
661 | break; | 661 | break; |