diff options
| author | Deepthi Gowri <c_gowri@qti.qualcomm.com> | 2013-10-07 13:50:54 +0530 |
|---|---|---|
| committer | Deepthi Gowri <deepthi@codeaurora.org> | 2013-10-22 16:30:41 +0530 |
| commit | f1fe1967707a221876d7e49378ece97160e73b32 (patch) | |
| tree | 302dd14c783a82627f090cbd2c04ae95654f7481 | |
| parent | c89185f386408ee2201fc4f4fc50e950f894d4c3 (diff) | |
| download | android_external_wpa_supplicant_8-f1fe1967707a221876d7e49378ece97160e73b32.tar.gz android_external_wpa_supplicant_8-f1fe1967707a221876d7e49378ece97160e73b32.tar.bz2 android_external_wpa_supplicant_8-f1fe1967707a221876d7e49378ece97160e73b32.zip | |
P2P: Clear p2p_group_formation and p2p_in_provisioning on group removal
Commit 41f853235fe1d1fad1acecc0ee5dfe81c872c6b2 extends group formation
timeout for the first data connection to complete and resets
p2p_go_group_formation_completed flag due to which p2p_in_provisioning
and p2p_group_formation flags are not cleared when
wpas_group_formation_completed() is called. This can result in both
station scan and p2p_find failures in the case where separate P2P group
interface is not used and the client does not complete 4-way handshake.
Fix this by clearing p2p_group_formation and p2p_in_provisioning when
such a P2P group is deleted.
Change-Id: Ia1842eca41e01d6ecc07d09f4a3d9deb413acbd5
CRs-Fixed: 554197
Git-commit: acdd0fc84f01d8b5e8aa39d6e4573cee0b5ac707
Git-repo: git://w1.fi/srv/git/hostap.git
Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
| -rw-r--r-- | wpa_supplicant/p2p_supplicant.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c index f4d2e944..84db2c9a 100644 --- a/wpa_supplicant/p2p_supplicant.c +++ b/wpa_supplicant/p2p_supplicant.c @@ -401,6 +401,11 @@ static int wpas_p2p_group_delete(struct wpa_supplicant *wpa_s, return 1; } + if (!wpa_s->p2p_go_group_formation_completed) { + wpa_s->global->p2p_group_formation = NULL; + wpa_s->p2p_in_provisioning = 0; + } + wpa_printf(MSG_DEBUG, "P2P: Remove temporary group network"); if (ssid && (ssid->p2p_group || ssid->mode == WPAS_MODE_P2P_GROUP_FORMATION || |
