diff options
-rw-r--r-- | src/libcharon/sa/ike_sa.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libcharon/sa/ike_sa.c b/src/libcharon/sa/ike_sa.c index d659a3c68..1992a6017 100644 --- a/src/libcharon/sa/ike_sa.c +++ b/src/libcharon/sa/ike_sa.c @@ -1296,8 +1296,13 @@ METHOD(ike_sa_t, delete_, status_t, { switch (this->state) { - case IKE_ESTABLISHED: case IKE_REKEYING: + if (this->version == IKEV1) + { /* SA has been reauthenticated, delete */ + break; + } + /* FALL */ + case IKE_ESTABLISHED: this->task_manager->queue_ike_delete(this->task_manager); return this->task_manager->initiate(this->task_manager); case IKE_CREATED: |