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 <ilan.peer@intel.com>
This commit is contained in:
Ilan Peer 2015-01-18 20:44:12 -05:00 committed by Jouni Malinen
parent 7b7b4449a9
commit b72b2ad39e

View file

@ -6177,6 +6177,12 @@ int wpas_p2p_invite(struct wpa_supplicant *wpa_s, const u8 *peer_addr,
pref_freq = 0; 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, return p2p_invite(wpa_s->global->p2p, peer_addr, role, bssid,
ssid->ssid, ssid->ssid_len, force_freq, go_dev_addr, ssid->ssid, ssid->ssid_len, force_freq, go_dev_addr,
1, pref_freq, -1); 1, pref_freq, -1);