From 1b5944ce67f0930923f624ff499406c19ab85d26 Mon Sep 17 00:00:00 2001 From: Eyal Shapira Date: Fri, 2 Nov 2012 00:14:23 +0200 Subject: P2P: cancel action frame offchan wait after recv go neg resp (UPSTREAM) A wait of 200ms is configured after sending the go neg request. The go neg process can end quickly within less than 200ms. If this wait isn't canceled it can cause the beaconing of the GO to start while mac80211 is still off channel on the listen channel and this may cause beaconing on the wrong channel if oper channel is different from the listen channel. Signed-off-by: Eyal Shapira --- src/p2p/p2p_go_neg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/p2p/p2p_go_neg.c b/src/p2p/p2p_go_neg.c index 0802037..60c19c6 100644 --- a/src/p2p/p2p_go_neg.c +++ b/src/p2p/p2p_go_neg.c @@ -827,6 +827,7 @@ void p2p_process_go_neg_resp(struct p2p_data *p2p, const u8 *sa, return; } dev->flags &= ~P2P_DEV_WAIT_GO_NEG_RESPONSE; + p2p->cfg->send_action_done(p2p->cfg->cb_ctx); if (msg.dialog_token != dev->dialog_token) { wpa_msg(p2p->cfg->msg_ctx, MSG_DEBUG, @@ -860,7 +861,6 @@ void p2p_process_go_neg_resp(struct p2p_data *p2p, const u8 *sa, "P2P: Stop GO Negotiation attempt"); p2p_go_neg_failed(p2p, dev, *msg.status); } - p2p->cfg->send_action_done(p2p->cfg->cb_ctx); p2p_parse_free(&msg); return; } -- cgit v1.1