]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
P2P: Fix persistent group profile on manual disabled=2 change
authorJouni Malinen <jouni@qca.qualcomm.com>
Wed, 10 Jun 2015 20:58:21 +0000 (23:58 +0300)
committerJouni Malinen <j@w1.fi>
Wed, 10 Jun 2015 21:02:05 +0000 (00:02 +0300)
ssid->p2p_persistent_group was left to its old value when changing a
network profile to/from P2P persistent group type (disabled=2). This
could result in unexpected behavior when using an incomplete persistent
group profile. This was mainly visible through D-Bus network profile
handling where a persistent group would not be unregistered insome
cases.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
wpa_supplicant/notify.c

index c60d404379ba2c83c7815db710088649ec50798c..822db74decb92c6dfff0238eac3877d7f5a8a970 100644 (file)
@@ -790,10 +790,12 @@ void wpas_notify_network_type_changed(struct wpa_supplicant *wpa_s,
                ssid->disabled = 0;
                wpas_dbus_unregister_network(wpa_s, ssid->id);
                ssid->disabled = 2;
+               ssid->p2p_persistent_group = 1;
                wpas_dbus_register_persistent_group(wpa_s, ssid);
        } else {
                /* Changed from persistent group to normal network profile */
                wpas_dbus_unregister_persistent_group(wpa_s, ssid->id);
+               ssid->p2p_persistent_group = 0;
                wpas_dbus_register_network(wpa_s, ssid);
        }
 #endif /* CONFIG_P2P */