summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjvoisin <julien.voisin@dustri.org>2013-09-18 19:17:34 +0100
committerDan Williams <dcbw@redhat.com>2013-10-23 21:07:30 -0500
commit00ffb78c8d4c63513a1c51ef61d32f0143ec78e2 (patch)
treefdb1a278e496e833acc469775d1017714497613a
parentecd49fb435cd15aafb9a46c85ed5c42c525d0c15 (diff)
downloadNetworkManager-00ffb78c8d4c63513a1c51ef61d32f0143ec78e2.tar.gz
core: add support for EAP-PWD authentication
-rw-r--r--cli/src/settings.c2
-rw-r--r--libnm-util/nm-setting-8021x.c7
-rw-r--r--src/settings/plugins/ifcfg-rh/reader.c1
-rw-r--r--src/settings/plugins/ifnet/connection_parser.c1
-rw-r--r--src/supplicant-manager/nm-supplicant-settings-verify.c2
5 files changed, 8 insertions, 5 deletions
diff --git a/cli/src/settings.c b/cli/src/settings.c
index f504b89f2e..1ac461201b 100644
--- a/cli/src/settings.c
+++ b/cli/src/settings.c
@@ -2302,7 +2302,7 @@ DEFINE_SETTER_STR_LIST_MULTI (check_and_add_802_1X_eap,
static gboolean
nmc_property_802_1X_set_eap (NMSetting *setting, const char *prop, const char *val, GError **error)
{
- const char *valid_eap[] = { "leap", "md5", "tls", "peap", "ttls", "sim", "fast", NULL };
+ const char *valid_eap[] = { "leap", "md5", "tls", "peap", "ttls", "sim", "fast", "pwd", NULL };
return check_and_add_802_1X_eap (setting, prop, val, valid_eap, error);
}
DEFINE_REMOVER_INDEX (nmc_property_802_1X_remove_idx_eap,
diff --git a/libnm-util/nm-setting-8021x.c b/libnm-util/nm-setting-8021x.c
index 58b2a4491a..55644e00b8 100644
--- a/libnm-util/nm-setting-8021x.c
+++ b/libnm-util/nm-setting-8021x.c
@@ -2395,6 +2395,7 @@ typedef struct {
static EAPMethodsTable eap_methods_table[] = {
{ "leap", need_secrets_password, verify_identity },
+ { "pwd", need_secrets_password, verify_identity },
{ "md5", need_secrets_password, verify_identity },
{ "pap", need_secrets_password, verify_identity },
{ "chap", need_secrets_password, verify_identity },
@@ -2520,7 +2521,7 @@ verify (NMSetting *setting, GSList *all_settings, GError **error)
{
NMSetting8021x *self = NM_SETTING_802_1X (setting);
NMSetting8021xPrivate *priv = NM_SETTING_802_1X_GET_PRIVATE (self);
- const char *valid_eap[] = { "leap", "md5", "tls", "peap", "ttls", "sim", "fast", NULL };
+ const char *valid_eap[] = { "leap", "md5", "tls", "peap", "ttls", "sim", "fast", "pwd", NULL };
const char *valid_phase1_peapver[] = { "0", "1", NULL };
const char *valid_phase1_peaplabel[] = { "0", "1", NULL };
const char *valid_phase1_fast_pac[] = { "0", "1", "2", "3", NULL };
@@ -3024,7 +3025,7 @@ nm_setting_802_1x_class_init (NMSetting8021xClass *setting_class)
* NMSetting8021x:eap:
*
* The allowed EAP method to be used when authenticating to the network with
- * 802.1x. Valid methods are: "leap", "md5", "tls", "peap", "ttls", and
+ * 802.1x. Valid methods are: "leap", "md5", "tls", "peap", "ttls", "pwd" and
* "fast". Each method requires different configuration using the
* properties of this object; refer to wpa_supplicant documentation for the
* allowed combinations.
@@ -3036,7 +3037,7 @@ nm_setting_802_1x_class_init (NMSetting8021xClass *setting_class)
"The allowed EAP method to be used when "
"authenticating to the network with 802.1x. "
"Valid methods are: 'leap', 'md5', 'tls', 'peap', "
- "'ttls', and 'fast'. Each method requires "
+ "'ttls', 'pwd', and 'fast'. Each method requires "
"different configuration using the properties of "
"this setting; refer to wpa_supplicant "
"documentation for the allowed combinations.",
diff --git a/src/settings/plugins/ifcfg-rh/reader.c b/src/settings/plugins/ifcfg-rh/reader.c
index e900fa19cf..b2abfff854 100644
--- a/src/settings/plugins/ifcfg-rh/reader.c
+++ b/src/settings/plugins/ifcfg-rh/reader.c
@@ -2700,6 +2700,7 @@ static EAPReader eap_readers[] = {
{ "mschap", eap_simple_reader, TRUE },
{ "mschapv2", eap_simple_reader, TRUE },
{ "leap", eap_simple_reader, FALSE },
+ { "pwd", eap_simple_reader, FALSE },
{ "tls", eap_tls_reader, FALSE },
{ "peap", eap_peap_reader, FALSE },
{ "ttls", eap_ttls_reader, FALSE },
diff --git a/src/settings/plugins/ifnet/connection_parser.c b/src/settings/plugins/ifnet/connection_parser.c
index 9f389ae65a..72f4fdb976 100644
--- a/src/settings/plugins/ifnet/connection_parser.c
+++ b/src/settings/plugins/ifnet/connection_parser.c
@@ -98,6 +98,7 @@ typedef struct {
static EAPReader eap_readers[] = {
{"md5", eap_simple_reader, TRUE},
+ {"pwd", eap_simple_reader, TRUE},
{"pap", eap_simple_reader, TRUE},
{"chap", eap_simple_reader, TRUE},
{"mschap", eap_simple_reader, TRUE},
diff --git a/src/supplicant-manager/nm-supplicant-settings-verify.c b/src/supplicant-manager/nm-supplicant-settings-verify.c
index 143e51a360..6e6d7a990b 100644
--- a/src/supplicant-manager/nm-supplicant-settings-verify.c
+++ b/src/supplicant-manager/nm-supplicant-settings-verify.c
@@ -74,7 +74,7 @@ const char * key_mgmt_allowed[] = { "WPA-PSK", "WPA-EAP", "IEEE8021X", "WPA-NONE
"NONE", NULL };
const char * auth_alg_allowed[] = { "OPEN", "SHARED", "LEAP", NULL };
const char * eap_allowed[] = { "LEAP", "MD5", "TLS", "PEAP", "TTLS", "SIM",
- "PSK", "FAST", NULL };
+ "PSK", "FAST", "PWD", NULL };
const char * phase1_allowed[] = {"peapver=0", "peapver=1", "peaplabel=1",
"peap_outer_success=0", "include_tls_length=1",