From: Ilan Peer Date: Mon, 19 Jan 2015 01:44:12 +0000 (-0500) Subject: P2P: Stop p2p_listen/find on wpas_p2p_invite X-Git-Tag: hostap_2_4~344 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b72b2ad39e15f2844eb6e7b0464952a9f042152c;p=thirdparty%2Fhostap.git P2P: Stop p2p_listen/find on wpas_p2p_invite Stop any ongoing P2P listen/find flow before starting invitation flow. This was partially handled in p2p_invite() that called p2p_find(), but this did not cleanly handle cases such as long_listen. Signed-off-by: Ilan Peer --- diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c index 72d68730c..4364a0649 100644 --- a/wpa_supplicant/p2p_supplicant.c +++ b/wpa_supplicant/p2p_supplicant.c @@ -6177,6 +6177,12 @@ int wpas_p2p_invite(struct wpa_supplicant *wpa_s, const u8 *peer_addr, pref_freq = 0; } + /* + * Stop any find/listen operations before invitation and possibly + * connection establishment. + */ + wpas_p2p_stop_find_oper(wpa_s); + return p2p_invite(wpa_s->global->p2p, peer_addr, role, bssid, ssid->ssid, ssid->ssid_len, force_freq, go_dev_addr, 1, pref_freq, -1);