From: Zhang zhengguang <[email protected]>
Signed-off-by: Zhang zhengguang <[email protected]>
---
gsupplicant/supplicant.c | 12 +++++++++---
src/service.c | 9 ++++++---
2 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/gsupplicant/supplicant.c b/gsupplicant/supplicant.c
index 559dfbc..c0f8cb6 100644
--- a/gsupplicant/supplicant.c
+++ b/gsupplicant/supplicant.c
@@ -3377,15 +3377,20 @@ static void add_network_security_eap(DBusMessageIter
*dict,
{
char *eap_value;
- if (!ssid->eap || !ssid->identity)
+ if (!ssid->eap)
return;
if (g_strcmp0(ssid->eap, "tls") == 0) {
+ if (!ssid->identity)
+ return;
add_network_security_tls(dict, ssid);
} else if (g_strcmp0(ssid->eap, "peap") == 0 ||
g_strcmp0(ssid->eap, "ttls") == 0) {
+ if (!ssid->identity)
+ return;
add_network_security_peap(dict, ssid);
- } else
+ } else if (g_strcmp0(ssid->eap, "sim") != 0 &&
+ g_strcmp0(ssid->eap, "aka") != 0)
return;
eap_value = g_ascii_strup(ssid->eap, -1);
@@ -3393,7 +3398,8 @@ static void add_network_security_eap(DBusMessageIter
*dict,
supplicant_dbus_dict_append_basic(dict, "eap",
DBUS_TYPE_STRING,
&eap_value);
- supplicant_dbus_dict_append_basic(dict, "identity",
+ if (ssid->identity)
+ supplicant_dbus_dict_append_basic(dict, "identity",
DBUS_TYPE_STRING,
&ssid->identity);
diff --git a/src/service.c b/src/service.c
index 33cce14..269ddd7 100644
--- a/src/service.c
+++ b/src/service.c
@@ -5831,10 +5831,13 @@ static int service_connect(struct connman_service
*service)
return -EINVAL;
/*
- * never request credentials if using EAP-TLS
- * (EAP-TLS networks need to be fully provisioned)
+ * never request credentials if using EAP-TLS, EAP-SIM
+ * and EAP-AKA(EAP-TLS, EAP-SIM and EAP-AKA networks
+ * need to be fully provisioned)
*/
- if (g_str_equal(service->eap, "tls"))
+ if (g_str_equal(service->eap, "tls") ||
+ g_str_equal(service->eap, "sim") ||
+ g_str_equal(service->eap, "aka"))
break;
/*
--
1.7.10.4
_______________________________________________
connman mailing list
[email protected]
https://lists.connman.net/mailman/listinfo/connman