diff options
author | Clavister OpenSource <opensource@clavister.com> | 2011-11-24 11:26:04 +0100 |
---|---|---|
committer | Clavister OpenSource <opensource@clavister.com> | 2012-03-20 17:30:51 +0100 |
commit | 01685247b0ea9666793c80b28879d6866a333be1 (patch) | |
tree | e90da0264ec2d4db8ff495739c13e385019aa0dc | |
parent | e3bb68841a3a441d6770ec76ae14176b71f70495 (diff) | |
download | strongswan-01685247b0ea9666793c80b28879d6866a333be1.tar.bz2 strongswan-01685247b0ea9666793c80b28879d6866a333be1.tar.xz |
IKEv1 XAuth: Added ike_vendor task to the ID_PROT exchange type processing. We need to process vendor payloads to check to see if our peer understands XAuth before using any of these payload types.
-rw-r--r-- | src/libcharon/sa/task_manager_v1.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libcharon/sa/task_manager_v1.c b/src/libcharon/sa/task_manager_v1.c index 13d95b4fa..32f847f8a 100644 --- a/src/libcharon/sa/task_manager_v1.c +++ b/src/libcharon/sa/task_manager_v1.c @@ -19,6 +19,7 @@ #include <math.h> #include <daemon.h> +#include <sa/tasks/ike_vendor.h> #include <sa/tasks/main_mode.h> #include <sa/tasks/quick_mode.h> #include <processing/jobs/retransmit_job.h> @@ -493,6 +494,8 @@ static status_t process_request(private_task_manager_t *this, switch (message->get_exchange_type(message)) { case ID_PROT: + task = (task_t *)ike_vendor_create(this->ike_sa, FALSE); + this->passive_tasks->insert_last(this->passive_tasks, task); task = (task_t *)main_mode_create(this->ike_sa, FALSE); this->passive_tasks->insert_last(this->passive_tasks, task); break; |