diff options
author | Martin Willi <martin@revosec.ch> | 2010-06-28 15:41:48 +0200 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2010-07-05 09:41:04 +0200 |
commit | ec6caa13673176b7f2ef486dc5437cf05a00bb48 (patch) | |
tree | a3cf56e5e7f5befc66c3900dade92b88819544d9 /src/libcharon/sa/tasks/ike_auth.c | |
parent | 43ab542b66080ca6153217b63f1b095086d4d345 (diff) | |
download | strongswan-ec6caa13673176b7f2ef486dc5437cf05a00bb48.tar.bz2 strongswan-ec6caa13673176b7f2ef486dc5437cf05a00bb48.tar.xz |
Copy EAP specific attributes to auth config only
Diffstat (limited to 'src/libcharon/sa/tasks/ike_auth.c')
-rw-r--r-- | src/libcharon/sa/tasks/ike_auth.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/libcharon/sa/tasks/ike_auth.c b/src/libcharon/sa/tasks/ike_auth.c index a07f96767..5df1a26f8 100644 --- a/src/libcharon/sa/tasks/ike_auth.c +++ b/src/libcharon/sa/tasks/ike_auth.c @@ -527,7 +527,16 @@ static status_t process_r(private_ike_auth_t *this, message_t *message) } cand = get_auth_cfg(this, FALSE); } - cfg->merge(cfg, cand, TRUE); + /* copy over the EAP specific rules for authentication */ + cfg->add(cfg, AUTH_RULE_EAP_TYPE, + cand->get(cand, AUTH_RULE_EAP_TYPE)); + cfg->add(cfg, AUTH_RULE_EAP_VENDOR, + cand->get(cand, AUTH_RULE_EAP_VENDOR)); + id = (identification_t*)cand->get(cand, AUTH_RULE_EAP_IDENTITY); + if (id) + { + cfg->add(cfg, AUTH_RULE_EAP_IDENTITY, id->clone(id)); + } } /* verify authentication data */ |