WPS: Disconnect when removing existing WPS network block
wpas_clear_wps() was just clearing the current wpa_s->current_ssid pointer when removing a WPS network block which with the device was associated. This could leave the association up even though the network block had already been removed. Prevent this by explicitly disconnecting from the network instead of such clearing current_ssid. Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
fe65847bb1
commit
c7a67a7719
1 changed files with 2 additions and 3 deletions
|
@ -868,9 +868,8 @@ static void wpas_clear_wps(struct wpa_supplicant *wpa_s)
|
|||
while (ssid) {
|
||||
if (ssid->key_mgmt & WPA_KEY_MGMT_WPS) {
|
||||
if (ssid == wpa_s->current_ssid) {
|
||||
wpa_s->current_ssid = NULL;
|
||||
if (ssid != NULL)
|
||||
wpas_notify_network_changed(wpa_s);
|
||||
wpa_supplicant_deauthenticate(
|
||||
wpa_s, WLAN_REASON_DEAUTH_LEAVING);
|
||||
}
|
||||
id = ssid->id;
|
||||
remove_ssid = ssid;
|
||||
|
|
Loading…
Reference in a new issue