[PATCH 3/6] P2P: Set p2p_go_wait_client in invitation_result() cb
Ilan Peer
ilan.peer at intel.com
Tue Nov 3 06:24:58 PST 2015
When an invitation to join an existing group is accepted by the
peer device, set p2p_go_wait_client to the current time so
that wpas_p2p_in_progress() would return != 0, thus preventing
P2P CSA, scanning etc., that would interfere with the peer
device connection.
Signed-off-by: Ilan Peer <ilan.peer at intel.com>
---
wpa_supplicant/p2p_supplicant.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c
index 7d78623..59ca368 100644
--- a/wpa_supplicant/p2p_supplicant.c
+++ b/wpa_supplicant/p2p_supplicant.c
@@ -3101,7 +3101,13 @@ static void wpas_invitation_result(void *ctx, int status, const u8 *bssid,
if (wpa_s->pending_invite_ssid_id == -1) {
if (status == P2P_SC_FAIL_UNKNOWN_GROUP)
wpas_remove_persistent_client(wpa_s, peer);
- return; /* Invitation to active group */
+
+ /*
+ * Invitation to active group. Set the client wait, to allow
+ * provisioning and connection.
+ */
+ os_get_reltime(&wpa_s->global->p2p_go_wait_client);
+ return;
}
if (status == P2P_SC_FAIL_INFO_CURRENTLY_UNAVAILABLE) {
--
1.9.1
More information about the Hostap
mailing list