aboutsummaryrefslogtreecommitdiffstats
path: root/wpa_supplicant/hs20_supplicant.c
diff options
context:
space:
mode:
authorJouni Malinen <jouni@qca.qualcomm.com>2014-02-27 22:29:34 (GMT)
committerJouni Malinen <j@w1.fi>2014-02-27 22:29:34 (GMT)
commit06c7b7f0b5f4deed675a7b81e33830311da7339a (patch)
treef92bc033c1509a67e861f0604630352a41f35088 /wpa_supplicant/hs20_supplicant.c
parentcfa57df68de6d3a42da38e4b7207adb710c420a3 (diff)
downloadhostap-06c7b7f0b5f4deed675a7b81e33830311da7339a.zip
hostap-06c7b7f0b5f4deed675a7b81e33830311da7339a.tar.gz
hostap-06c7b7f0b5f4deed675a7b81e33830311da7339a.tar.bz2
HS 2.0R2: Fix temporary network disabling in Deauth Req case
Commits 7ef6947993d4b09dea6797b96f34dbcfed57d90e and 533536d82ac63512c31ff0bae403d437392d34e0 added this temporarily disabling case, but those commits were merged in without having been converted to the new os_reltime design used for ssid->disabled_until. Consequently, they ended up disabling the network for 44 years or so too long time (depending on what values the relative timestamp had accummulated so far). Fix this by using relative timestamps consistently. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Diffstat (limited to 'wpa_supplicant/hs20_supplicant.c')
-rw-r--r--wpa_supplicant/hs20_supplicant.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/wpa_supplicant/hs20_supplicant.c b/wpa_supplicant/hs20_supplicant.c
index b873c7c..b342d5d 100644
--- a/wpa_supplicant/hs20_supplicant.c
+++ b/wpa_supplicant/hs20_supplicant.c
@@ -885,8 +885,8 @@ void hs20_rx_deauth_imminent_notice(struct wpa_supplicant *wpa_s, u8 code,
/* TODO: For now, disable full ESS since some drivers may not
* support disabling per BSS. */
if (wpa_s->current_ssid) {
- struct os_time now;
- os_get_time(&now);
+ struct os_reltime now;
+ os_get_reltime(&now);
if (now.sec + reauth_delay <=
wpa_s->current_ssid->disabled_until.sec)
return;
@@ -898,8 +898,8 @@ void hs20_rx_deauth_imminent_notice(struct wpa_supplicant *wpa_s, u8 code,
}
if (code == HS20_DEAUTH_REASON_CODE_ESS && wpa_s->current_ssid) {
- struct os_time now;
- os_get_time(&now);
+ struct os_reltime now;
+ os_get_reltime(&now);
if (now.sec + reauth_delay <=
wpa_s->current_ssid->disabled_until.sec)
return;