summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Ortiz <sameo@linux.intel.com>2009-12-23 13:57:45 +0100
committerMarcel Holtmann <marcel@holtmann.org>2009-12-23 05:00:10 -0800
commit12e1ac58c3f4728079a9d5053c5d1fc722df2b8c (patch)
tree2947d9c28001a3020369b7943ec234447a5a9da0
parentb766c33ef02179be43134aaf533a844b93269a64 (diff)
downloadconnman-12e1ac58c3f4728079a9d5053c5d1fc722df2b8c.tar.gz
connman-12e1ac58c3f4728079a9d5053c5d1fc722df2b8c.tar.bz2
connman-12e1ac58c3f4728079a9d5053c5d1fc722df2b8c.zip
Convert the network EAP string to uppercase
wpa_supplicant only understands upper case string for the EAP definitions.
-rw-r--r--plugins/supplicant.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/plugins/supplicant.c b/plugins/supplicant.c
index 3aa629d3..c90439bc 100644
--- a/plugins/supplicant.c
+++ b/plugins/supplicant.c
@@ -918,6 +918,7 @@ static int set_network(struct supplicant_task *task,
} else if (g_ascii_strcasecmp(security, "ieee8021x") == 0) {
struct connman_network *network = task->network;
const char *key_mgmt = "WPA-EAP", *eap, *identity;
+ char *eap_value;
/*
* If our private key password is unset,
@@ -963,15 +964,21 @@ static int set_network(struct supplicant_task *task,
goto invalid;
}
+ /* wpa_supplicant only accepts upper case EAPs */
+ eap_value = g_ascii_strup(eap, -1);
+
connman_dbus_dict_append_basic(&dict, "key_mgmt",
DBUS_TYPE_STRING,
&key_mgmt);
connman_dbus_dict_append_basic(&dict, "eap",
- DBUS_TYPE_STRING, &eap);
+ DBUS_TYPE_STRING,
+ &eap_value);
connman_dbus_dict_append_basic(&dict, "identity",
DBUS_TYPE_STRING,
&identity);
+ g_free(eap_value);
+
} else if (g_ascii_strcasecmp(security, "wep") == 0) {
const char *key_mgmt = "NONE";
const char *auth_alg = "OPEN";