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:
parent
9d562b7946
commit
3c85f144ce
2 changed files with 2 additions and 0 deletions
|
@ -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;
|
||||||
|
|
|
@ -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);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue