Merge "Add support for WPS2-PSK security type in Security property of service interfa...
[platform/upstream/connman.git] / src / network.c
index ad67746..0d6b442 100755 (executable)
@@ -97,6 +97,7 @@ struct connman_network {
                unsigned char bssid[WIFI_BSSID_LEN_MAX];
                unsigned int maxrate;
                unsigned int isHS20AP;
+               bool rsn_selected;
 #endif
        } wifi;
 
@@ -1311,15 +1312,8 @@ static gboolean __connman_network_clear_associating_delayed(gpointer user_data)
 
        if (network->associating == FALSE &&
                        state_ipv4 == CONNMAN_SERVICE_STATE_ASSOCIATION &&
-                       state_ipv6 == CONNMAN_SERVICE_STATE_ASSOCIATION) {
-               __connman_service_ipconfig_indicate_state(service,
-                                                       CONNMAN_SERVICE_STATE_IDLE,
-                                                       CONNMAN_IPCONFIG_TYPE_IPV4);
-
-               __connman_service_ipconfig_indicate_state(service,
-                                                       CONNMAN_SERVICE_STATE_IDLE,
-                                                       CONNMAN_IPCONFIG_TYPE_IPV6);
-       }
+                       state_ipv6 == CONNMAN_SERVICE_STATE_ASSOCIATION)
+               connman_network_clear_associating(network);
 
        return FALSE;
 }
@@ -1882,6 +1876,14 @@ const char *connman_network_get_enc_mode(struct connman_network *network)
        return (const char *)network->wifi.encryption_mode;
 }
 
+int connman_network_set_rsn_selected(struct connman_network *network,
+                               bool rsn_selected)
+{
+       network->wifi.rsn_selected = rsn_selected;
+
+       return 0;
+}
+
 int connman_network_set_proxy(struct connman_network *network,
                                const char *proxies)
 {
@@ -2132,7 +2134,15 @@ const char *connman_network_get_string(struct connman_network *network,
        else if (g_str_equal(key, "WiFi.Mode"))
                return network->wifi.mode;
        else if (g_str_equal(key, "WiFi.Security"))
+#if defined TIZEN_EXT
+               if (network->wifi.rsn_selected != true ||
+                   g_str_equal(network->wifi.security, "ieee8021x"))
+                       return network->wifi.security;
+               else
+                       return "rsn";
+#else
                return network->wifi.security;
+#endif
        else if (g_str_equal(key, "WiFi.Passphrase"))
                return network->wifi.passphrase;
        else if (g_str_equal(key, "WiFi.EAP"))