summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArron Wang <arron.wang@intel.com>2012-10-12 10:10:28 +0800
committerZhang zhengguang <zhengguang.zhang@intel.com>2014-10-31 16:06:20 +0800
commitede27f8e832d3ce5dc6bf2a8be78f34abddcc885 (patch)
treef04248c66292e7c358fe0c920575828c24e86092
parentf5af9712213cb0da9e5066e0a2fcf8fbedccc075 (diff)
downloadconnman-ede27f8e832d3ce5dc6bf2a8be78f34abddcc885.tar.gz
connman-ede27f8e832d3ce5dc6bf2a8be78f34abddcc885.tar.bz2
connman-ede27f8e832d3ce5dc6bf2a8be78f34abddcc885.zip
Tizen: Fix wifi enterprise to support SIM and AKA
Revise Wi-Fi enterprise to enable PEAP, TLS, TTLS Fix wifi enterprise to support SIM and AKA Change-Id: Ib9c10615fd0668b2ebca57eac9285bf8a3564427
-rw-r--r--gsupplicant/supplicant.c20
-rw-r--r--src/service.c13
2 files changed, 32 insertions, 1 deletions
diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c
index d2e4a649..58a8c9f3 100644
--- a/gsupplicant/supplicant.c
+++ b/gsupplicant/supplicant.c
@@ -4392,14 +4392,27 @@ static void add_network_security_eap(DBusMessageIter *dict,
{
char *eap_value;
+#if defined TIZEN_EXT
+ if (!ssid->eap)
+#else
if (!ssid->eap || !ssid->identity)
+#endif
return;
if (g_strcmp0(ssid->eap, "tls") == 0) {
add_network_security_tls(dict, ssid);
} else if (g_strcmp0(ssid->eap, "peap") == 0 ||
g_strcmp0(ssid->eap, "ttls") == 0) {
+#if defined TIZEN_EXT
+ if (!ssid->identity)
+ return;
+#endif
add_network_security_peap(dict, ssid);
+
+#if defined TIZEN_EXT
+ } else if (g_strcmp0(ssid->eap, "sim") == 0 ||
+ g_strcmp0(ssid->eap, "aka") == 0) {
+#endif
} else
return;
@@ -4408,9 +4421,16 @@ static void add_network_security_eap(DBusMessageIter *dict,
supplicant_dbus_dict_append_basic(dict, "eap",
DBUS_TYPE_STRING,
&eap_value);
+#if defined TIZEN_EXT
+ if (ssid->identity != NULL)
+ supplicant_dbus_dict_append_basic(dict, "identity",
+ DBUS_TYPE_STRING,
+ &ssid->identity);
+#else
supplicant_dbus_dict_append_basic(dict, "identity",
DBUS_TYPE_STRING,
&ssid->identity);
+#endif
g_free(eap_value);
}
diff --git a/src/service.c b/src/service.c
index 8d3c6196..99bb35d2 100644
--- a/src/service.c
+++ b/src/service.c
@@ -5912,13 +5912,24 @@ static int service_connect(struct connman_service *service)
if (!service->eap)
return -EINVAL;
+#if defined TIZEN_EXT
+ /*
+ * never request credentials if using EAP-TLS, EAP-SIM
+ * or EAP-AKA (EAP-TLS, EAP-SIM and EAP-AKA networks
+ * need to be fully provisioned)
+ */
+ if (g_str_equal(service->eap, "tls") ||
+ g_str_equal(service->eap, "sim") ||
+ g_str_equal(service->eap, "aka"))
+ break;
+#else
/*
* never request credentials if using EAP-TLS
* (EAP-TLS networks need to be fully provisioned)
*/
if (g_str_equal(service->eap, "tls"))
break;
-
+#endif
/*
* Return -ENOKEY if either identity or passphrase is
* missing. Agent provided credentials can be used as