gchar *ca_cert;
gchar *client_cert;
gchar *private_key;
+ gchar *private_key_password;
gchar *identity;
gchar *eap_type;
gchar *eap_auth_type;
g_free(conf->eap_config->ca_cert);
g_free(conf->eap_config->client_cert);
g_free(conf->eap_config->private_key);
+ g_free(conf->eap_config->private_key_password);
g_free(conf->eap_config->identity);
g_free(conf->eap_config->eap_type);
g_free(conf->eap_config->eap_auth_type);
config->eap_config->ca_cert = g_key_file_get_string(keyfile, group_name, WIFI_CONFIG_EAP_CACERT, NULL);
config->eap_config->client_cert = g_key_file_get_string(keyfile, group_name, WIFI_CONFIG_EAP_CLIENTCERT, NULL);
config->eap_config->private_key = g_key_file_get_string(keyfile, group_name, WIFI_CONFIG_EAP_PRIVATEKEY, NULL);
+ config->eap_config->private_key_password = g_key_file_get_string(keyfile, group_name, WIFI_CONFIG_EAP_PRIVATEKEY_PASSWORD, NULL);
config->eap_config->identity = g_key_file_get_string(keyfile, group_name, WIFI_CONFIG_EAP_IDENTITY, NULL);
config->eap_config->eap_type = g_key_file_get_string(keyfile, group_name, WIFI_CONFIG_EAP_TYPE, NULL);
config->eap_config->eap_auth_type = g_key_file_get_string(keyfile, group_name, WIFI_CONFIG_EAP_AUTH_TYPE, NULL);
DBG("client_cert [%s]", config->eap_config->client_cert);
if (config->eap_config->private_key)
DBG("private_key [%s]", config->eap_config->private_key);
+ if (config->eap_config->private_key_password)
+ DBG("private_key_password [%s]", config->eap_config->private_key_password);
if (config->eap_config->identity)
DBG("identity [%s]", config->eap_config->identity);
if (config->eap_config->eap_type)
else
g_variant_builder_add(b, "{sv}", WIFI_CONFIG_EAP_PRIVATEKEY, g_variant_new_string("NONE"));
+ if (conf->eap_config->private_key_password != NULL)
+ g_variant_builder_add(b, "{sv}", WIFI_CONFIG_EAP_PRIVATEKEY_PASSWORD, g_variant_new_string(conf->eap_config->private_key_password));
+ else
+ g_variant_builder_add(b, "{sv}", WIFI_CONFIG_EAP_PRIVATEKEY_PASSWORD, g_variant_new_string("NONE"));
+
if (conf->eap_config->identity != NULL)
g_variant_builder_add(b, "{sv}", WIFI_CONFIG_EAP_IDENTITY, g_variant_new_string(conf->eap_config->identity));
else
} else {
conf->eap_config->private_key = NULL;
}
+ } else if (g_strcmp0(field, WIFI_CONFIG_EAP_PRIVATEKEY_PASSWORD) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
+ conf->eap_config->private_key_password = g_strdup(g_variant_get_string(value, NULL));
+ DBG("private_key_password[%s]", conf->eap_config->private_key_password);
+ } else {
+ conf->eap_config->private_key_password = NULL;
+ }
} else if (g_strcmp0(field, WIFI_CONFIG_EAP_IDENTITY) == 0) {
if (g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
conf->eap_config->identity = g_strdup(g_variant_get_string(value, NULL));
g_key_file_set_string(keyfile, group_name,
WIFI_CONFIG_EAP_PRIVATEKEY, conf->eap_config->private_key);
+ if (conf->eap_config->private_key_password != NULL)
+ g_key_file_set_string(keyfile, group_name,
+ WIFI_CONFIG_EAP_PRIVATEKEY_PASSWORD, conf->eap_config->private_key_password);
+
if (conf->eap_config->identity != NULL)
g_key_file_set_string(keyfile, group_name,
WIFI_CONFIG_EAP_IDENTITY, conf->eap_config->identity);