From b5341bb07c8b8f3f31c2bc04e9106b587e9c6dff Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Mon, 21 May 2012 12:17:32 +0200 Subject: Fix IKEv1 DPD clear, destroying IKE_SA even if reestablish not needed --- src/libcharon/processing/jobs/dpd_timeout_job.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'src/libcharon/processing') diff --git a/src/libcharon/processing/jobs/dpd_timeout_job.c b/src/libcharon/processing/jobs/dpd_timeout_job.c index c3337996b..4f427f1d3 100644 --- a/src/libcharon/processing/jobs/dpd_timeout_job.c +++ b/src/libcharon/processing/jobs/dpd_timeout_job.c @@ -77,15 +77,9 @@ METHOD(job_t, execute, void, if (use_time < this->check) { DBG1(DBG_JOB, "DPD check timed out, enforcing DPD action"); - if (ike_sa->reestablish(ike_sa) == SUCCESS) - { - charon->ike_sa_manager->checkin_and_destroy( - charon->ike_sa_manager, ike_sa); - } - else - { - charon->ike_sa_manager->checkin(charon->ike_sa_manager, ike_sa); - } + ike_sa->reestablish(ike_sa); + charon->ike_sa_manager->checkin_and_destroy(charon->ike_sa_manager, + ike_sa); } else { -- cgit v1.2.3