From 472fa2168a950315cb939029252cd75366eb113a Mon Sep 17 00:00:00 2001 From: Eyal Shapira Date: Thu, 19 Dec 2013 12:03:29 +0200 Subject: [PATCH] P2P: Cancel action frame offchan wait after recv GO Neg Conf The missing call to scan_action_done() may keep us off-channel for 250 ms following sending GO Negotiation Response. In case the operating channel is different from this channel and we're GO, a race could lead to start beaconing while off-channel. This could potentially cause the Beacon frames to go out on incorrect channel with some drivers. Signed-hostap: Eyal Shapira --- src/p2p/p2p_go_neg.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/p2p/p2p_go_neg.c b/src/p2p/p2p_go_neg.c index 0e688a96b..8dee94230 100644 --- a/src/p2p/p2p_go_neg.c +++ b/src/p2p/p2p_go_neg.c @@ -1079,6 +1079,7 @@ void p2p_process_go_neg_conf(struct p2p_data *p2p, const u8 *sa, return; } dev->flags &= ~P2P_DEV_WAIT_GO_NEG_CONFIRM; + p2p->cfg->send_action_done(p2p->cfg->cb_ctx); if (msg.dialog_token != dev->dialog_token) { p2p_dbg(p2p, "Unexpected Dialog Token %u (expected %u)",