P2P: Fix Action frame sending after disconnection

assoc_freq needs to be cleared when an interface gets disconnected.
This fixes an issue where P2P Action frame transmission may fail
because of missing remain-on-channel operation when using the same
interface for group operations (or non-P2P connections) and P2P
management operations.
This commit is contained in:
Jouni Malinen 2010-11-25 16:04:07 +02:00 committed by Jouni Malinen
parent 9d562b7946
commit 3c85f144ce
2 changed files with 2 additions and 0 deletions

View file

@ -442,6 +442,7 @@ void wpa_supplicant_ap_deinit(struct wpa_supplicant *wpa_s)
return; return;
wpa_s->current_ssid = NULL; wpa_s->current_ssid = NULL;
wpa_s->assoc_freq = 0;
#ifdef CONFIG_P2P #ifdef CONFIG_P2P
if (wpa_s->ap_iface->bss) if (wpa_s->ap_iface->bss)
wpa_s->ap_iface->bss[0]->p2p_group = NULL; wpa_s->ap_iface->bss[0]->p2p_group = NULL;

View file

@ -121,6 +121,7 @@ void wpa_supplicant_mark_disassoc(struct wpa_supplicant *wpa_s)
os_memset(wpa_s->bssid, 0, ETH_ALEN); os_memset(wpa_s->bssid, 0, ETH_ALEN);
os_memset(wpa_s->pending_bssid, 0, ETH_ALEN); os_memset(wpa_s->pending_bssid, 0, ETH_ALEN);
wpa_s->current_bss = NULL; wpa_s->current_bss = NULL;
wpa_s->assoc_freq = 0;
if (bssid_changed) if (bssid_changed)
wpas_notify_bssid_changed(wpa_s); wpas_notify_bssid_changed(wpa_s);