Try to detect reauthentication as responder and adopt children to new SA

This commit is contained in:
Martin Willi
2012-03-20 17:31:33 +01:00
parent 3a0b67bce5
commit b147679a2c
5 changed files with 233 additions and 1 deletions
+4
View File
@@ -32,6 +32,7 @@
#include <sa/ikev1/tasks/mode_config.h>
#include <sa/ikev1/tasks/informational.h>
#include <sa/ikev1/tasks/isakmp_delete.h>
#include <processing/jobs/adopt_children_job.h>
typedef struct private_main_mode_t private_main_mode_t;
@@ -966,6 +967,9 @@ METHOD(task_t, build_r, status_t,
return FAILED;
default:
establish(this);
lib->processor->queue_job(lib->processor, (job_t*)
adopt_children_job_create(
this->ike_sa->get_id(this->ike_sa)));
return SUCCESS;
}
}
+3
View File
@@ -18,6 +18,7 @@
#include <daemon.h>
#include <hydra.h>
#include <encoding/payloads/cp_payload.h>
#include <processing/jobs/adopt_children_job.h>
typedef struct private_xauth_t private_xauth_t;
@@ -212,6 +213,8 @@ METHOD(task_t, build_r_ack, status_t,
if (this->status == XAUTH_OK)
{
establish(this);
lib->processor->queue_job(lib->processor, (job_t*)
adopt_children_job_create(this->ike_sa->get_id(this->ike_sa)));
return SUCCESS;
}
return FAILED;