diff options
author | Martin Willi <martin@revosec.ch> | 2013-07-24 13:35:46 +0200 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2013-07-29 09:00:49 +0200 |
commit | 44bb1dc3da9683df5ba27bf7b56ff6c557307c81 (patch) | |
tree | e3252c11e21c7af5bbd56d6d8a4b8489b0d2aa56 /src/charon-cmd/cmd/cmd_connection.c | |
parent | 3a399574c214775fa271b3dc8a0619af1a007d64 (diff) | |
download | strongswan-44bb1dc3da9683df5ba27bf7b56ff6c557307c81.tar.bz2 strongswan-44bb1dc3da9683df5ba27bf7b56ff6c557307c81.tar.xz |
charon-cmd: add --eap-identity and --xauth-username options
Diffstat (limited to 'src/charon-cmd/cmd/cmd_connection.c')
-rw-r--r-- | src/charon-cmd/cmd/cmd_connection.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/charon-cmd/cmd/cmd_connection.c b/src/charon-cmd/cmd/cmd_connection.c index 2d995f0cd..5c459f99f 100644 --- a/src/charon-cmd/cmd/cmd_connection.c +++ b/src/charon-cmd/cmd/cmd_connection.c @@ -102,6 +102,11 @@ struct private_cmd_connection_t { char *identity; /** + * XAuth/EAP identity + */ + char *xautheap; + + /** * Is a private key configured */ bool key_seen; @@ -187,6 +192,22 @@ static void add_auth_cfg(private_cmd_connection_t *this, peer_cfg_t *peer_cfg, if (local) { id = identification_create_from_string(this->identity); + if (this->xautheap) + { + switch (class) + { + case AUTH_CLASS_EAP: + auth->add(auth, AUTH_RULE_EAP_IDENTITY, + identification_create_from_string(this->xautheap)); + break; + case AUTH_CLASS_XAUTH: + auth->add(auth, AUTH_RULE_XAUTH_IDENTITY, + identification_create_from_string(this->xautheap)); + break; + default: + break; + } + } } else { @@ -411,6 +432,10 @@ METHOD(cmd_connection_t, handle, bool, case CMD_OPT_IDENTITY: this->identity = arg; break; + case CMD_OPT_EAP_IDENTITY: + case CMD_OPT_XAUTH_USER: + this->xautheap = arg; + break; case CMD_OPT_RSA: case CMD_OPT_AGENT: case CMD_OPT_PKCS12: |