From f4f394e67c5f525b880b915f193cf2878ade4a03 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Tue, 29 Sep 2009 11:30:44 +0200 Subject: [PATCH] Do not sync a delete for a child in a destroying IKE_SA --- src/charon/plugins/ha_sync/ha_sync_child.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/charon/plugins/ha_sync/ha_sync_child.c b/src/charon/plugins/ha_sync/ha_sync_child.c index 9f200eccb..b167314c4 100644 --- a/src/charon/plugins/ha_sync/ha_sync_child.c +++ b/src/charon/plugins/ha_sync/ha_sync_child.c @@ -116,7 +116,9 @@ static bool child_keys(private_ha_sync_child_t *this, ike_sa_t *ike_sa, static bool child_state_change(private_ha_sync_child_t *this, ike_sa_t *ike_sa, child_sa_t *child_sa, child_sa_state_t state) { - if (!ike_sa || ike_sa->get_state(ike_sa) == IKE_PASSIVE) + if (!ike_sa || + ike_sa->get_state(ike_sa) == IKE_PASSIVE || + ike_sa->get_state(ike_sa) == IKE_DESTROYING) { /* only sync active IKE_SAs */ return TRUE; } @@ -125,6 +127,7 @@ static bool child_state_change(private_ha_sync_child_t *this, ike_sa_t *ike_sa, return TRUE; } + if (state == CHILD_DESTROYING) { ha_sync_message_t *m;