aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/processing
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-01-20 13:42:37 +0100
committerMartin Willi <martin@revosec.ch>2012-03-20 17:31:38 +0100
commitaa3b53e7165da9d03ccc23a0f0feeeeda6e76219 (patch)
tree6923ae31dc0a796edff3075daaf5458e870c3d27 /src/libcharon/processing
parentfed5c33440d609721cfdd5992f269c52a6191539 (diff)
downloadstrongswan-aa3b53e7165da9d03ccc23a0f0feeeeda6e76219.tar.bz2
strongswan-aa3b53e7165da9d03ccc23a0f0feeeeda6e76219.tar.xz
Adopt children after syncing a rekeyed IKEv1 SA
Diffstat (limited to 'src/libcharon/processing')
-rw-r--r--src/libcharon/processing/jobs/adopt_children_job.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libcharon/processing/jobs/adopt_children_job.c b/src/libcharon/processing/jobs/adopt_children_job.c
index 744b7f9b7..93da960f8 100644
--- a/src/libcharon/processing/jobs/adopt_children_job.c
+++ b/src/libcharon/processing/jobs/adopt_children_job.c
@@ -88,7 +88,8 @@ METHOD(job_t, execute, void,
ike_sa = charon->ike_sa_manager->checkout(charon->ike_sa_manager, id);
if (ike_sa)
{
- if (ike_sa->get_state(ike_sa) == IKE_ESTABLISHED &&
+ if ((ike_sa->get_state(ike_sa) == IKE_ESTABLISHED ||
+ ike_sa->get_state(ike_sa) == IKE_PASSIVE) &&
me->equals(me, ike_sa->get_my_host(ike_sa)) &&
other->equals(other, ike_sa->get_other_host(ike_sa)) &&
xauth->equals(xauth, ike_sa->get_other_eap_id(ike_sa)) &&