aboutsummaryrefslogtreecommitdiffstats
path: root/src/charon/plugins/sql/sql_config.c
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2008-08-22 10:44:51 +0000
committerMartin Willi <martin@strongswan.org>2008-08-22 10:44:51 +0000
commit822901061beb899947f22288c2dc7eb5a13eeb87 (patch)
treeb3f8e84bba26bd24a8c4d3ba26ad4bf4fc03ec01 /src/charon/plugins/sql/sql_config.c
parent7c112a12c06c0320ee3945cd593c2beafe6b56dc (diff)
downloadstrongswan-822901061beb899947f22288c2dc7eb5a13eeb87.tar.bz2
strongswan-822901061beb899947f22288c2dc7eb5a13eeb87.tar.xz
ported parts of two-sim branch
eap_identity parameter to exchange in eap_identity some auth_info/peer_cfg refactorings fixed some bugs, introduced new ones
Diffstat (limited to 'src/charon/plugins/sql/sql_config.c')
-rw-r--r--src/charon/plugins/sql/sql_config.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/charon/plugins/sql/sql_config.c b/src/charon/plugins/sql/sql_config.c
index 7a2e96fe6..8efa1cb2e 100644
--- a/src/charon/plugins/sql/sql_config.c
+++ b/src/charon/plugins/sql/sql_config.c
@@ -267,6 +267,7 @@ static peer_cfg_t *build_peer_cfg(private_sql_config_t *this, enumerator_t *e,
peer_cfg_t *peer_cfg, *mediated_cfg;
ike_cfg_t *ike;
host_t *vip = NULL;
+ auth_info_t *auth;
local_id = identification_create_from_encoding(l_type, l_data);
remote_id = identification_create_from_encoding(r_type, r_data);
@@ -291,10 +292,19 @@ static peer_cfg_t *build_peer_cfg(private_sql_config_t *this, enumerator_t *e,
{
peer_cfg = peer_cfg_create(
name, 2, ike, local_id, remote_id, cert_policy, uniqueid,
- auth_method, eap_type, eap_vendor, keyingtries,
- rekeytime, reauthtime, jitter, overtime, mobike,
- dpd_delay, vip, pool,
+ keyingtries, rekeytime, reauthtime, jitter, overtime,
+ mobike, dpd_delay, vip, pool,
mediation, mediated_cfg, peer_id);
+ auth = peer_cfg->get_auth(peer_cfg);
+ auth->add_item(auth, AUTHN_AUTH_CLASS, &auth_method);
+ if (eap_type)
+ {
+ auth->add_item(auth, AUTHN_EAP_TYPE, &eap_type);
+ if (eap_vendor)
+ {
+ auth->add_item(auth, AUTHN_EAP_VENDOR, &eap_vendor);
+ }
+ }
add_child_cfgs(this, peer_cfg, id);
return peer_cfg;
}