Hi,
Please look at this patch and get any comments.

We tested ConnMan Wi-Fi very hellishly, (but not 100% yet ;)).
WPA supplicant gets lost its connection (weak signal) and sometimes tries to
connect with SAME ESSID,
(when user turn back to inside of Wi-Fi area again, or Wi-Fi roaming case)
all of this trials are conducted by wpa supplicant itself and the last
association gets fail.

ConnMan gets interface_state signals connected, associating and disconnected
consecutively.

ConnMan network state recovered, associating = true -> false, but service
state stay CONNMAN_SERVICE_STATE_ASSOCIATION.
User cannot make connect and even disconnect any other Wi-Fi services (in
progress).

Cheers,
Danny JS Seo.


Subject: network: Correct service state when Wi-Fi connected -> associating
-> disconnected from wpa_supplicant.

Problem case: wpa_supplicant gets lost Wi-Fi connections and then tries to
connect same ESSID; one of example is Wi-Fi roaming case
If the trial gets failed from wpa_supplicant, ConnMan network gets
associating back to false, but service doesn't and stays associating
---
 plugins/wifi.c |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/plugins/wifi.c b/plugins/wifi.c
index a9d7871..52fa91e 100644
--- a/plugins/wifi.c
+++ b/plugins/wifi.c
@@ -935,8 +935,13 @@ static void interface_state(GSupplicantInterface
*interface)
 
                if (is_idle(wifi))
                        break;
-               connman_network_set_associating(network, FALSE);
-               connman_network_set_connected(network, FALSE);
+
+               int err_assoc, err_conn;
+               err_assoc = connman_network_set_associating(network, FALSE);
+               err_conn = connman_network_set_connected(network, FALSE);
+
+               if (err_assoc == 0 && err_conn != 0)
+                       set_connected(network);
                break;
 
        case G_SUPPLICANT_STATE_INACTIVE:
-- 
1.7.5.4

-----------------------------------------------
Danny Jeongseok Seo
Senior Engineer

Platform R&D Team
Mobile & Communication Division
Telecommunication Network
SAMSUNG Electronics Co., Ltd.
Phone: +82-31-301-4561
E-mail: [email protected]

_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman

Reply via email to