aboutsummaryrefslogtreecommitdiffstats
path: root/wpa_supplicant/gas_query.c
diff options
context:
space:
mode:
authorJouni Malinen <j@w1.fi>2015-12-20 17:37:06 (GMT)
committerJouni Malinen <j@w1.fi>2015-12-20 17:40:01 (GMT)
commitc012567df6249d14b6aa78f40fa7f16f6cb8fb97 (patch)
tree87a71c5e5c9beb61e8eb3e1ad2e8faf0da6eeb2a /wpa_supplicant/gas_query.c
parentd5f5d260b8f8459f82ba8c150707c0cd9343ca8b (diff)
downloadhostap-c012567df6249d14b6aa78f40fa7f16f6cb8fb97.zip
hostap-c012567df6249d14b6aa78f40fa7f16f6cb8fb97.tar.gz
hostap-c012567df6249d14b6aa78f40fa7f16f6cb8fb97.tar.bz2
GAS: Clear offchannel_tx_started when ending remain-on-channel
Commit 2c0d0ae370f72fbe6248feed7ea0635303e3dc5a ('GAS: End remain-on-channel due to delayed GAS comeback request') started ending the remain-on-channel operation between the initial request and the following comeback request. However, it did not check or update the offchannel_tx_started variable. While this alone would not necessarily be problematic, this makes it more difficult to optimize wait time for offchannel TX operations, so make sure the internal tracking variable gets updated. Signed-off-by: Jouni Malinen <j@w1.fi>
Diffstat (limited to 'wpa_supplicant/gas_query.c')
-rw-r--r--wpa_supplicant/gas_query.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/wpa_supplicant/gas_query.c b/wpa_supplicant/gas_query.c
index 65dec2b..fdb36df 100644
--- a/wpa_supplicant/gas_query.c
+++ b/wpa_supplicant/gas_query.c
@@ -319,7 +319,10 @@ static void gas_query_tx_comeback_req_delay(struct gas_query *gas,
{
unsigned int secs, usecs;
- offchannel_send_action_done(gas->wpa_s);
+ if (query->offchannel_tx_started) {
+ offchannel_send_action_done(gas->wpa_s);
+ query->offchannel_tx_started = 0;
+ }
secs = (comeback_delay * 1024) / 1000000;
usecs = comeback_delay * 1024 - secs * 1000000;