diff options
author | Arron Wang <arron.wang@intel.com> | 2012-10-12 10:10:28 +0800 |
---|---|---|
committer | Zhang zhengguang <zhengguang.zhang@intel.com> | 2014-10-31 16:06:20 +0800 |
commit | ede27f8e832d3ce5dc6bf2a8be78f34abddcc885 (patch) | |
tree | f04248c66292e7c358fe0c920575828c24e86092 | |
parent | f5af9712213cb0da9e5066e0a2fcf8fbedccc075 (diff) | |
download | connman-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.c | 20 | ||||
-rw-r--r-- | src/service.c | 13 |
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 |