aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-01-16 15:57:46 +0100
committerMartin Willi <martin@revosec.ch>2012-03-20 17:31:36 +0100
commit5b7fc7686187838d738ad7985cd3dc808c5bc30f (patch)
tree806422a447ca330cb28aa48d6b0f641350a96c01 /src
parentc654d949f33c1d2d7586b25a35631ec730ecfd7d (diff)
downloadstrongswan-5b7fc7686187838d738ad7985cd3dc808c5bc30f.tar.bz2
strongswan-5b7fc7686187838d738ad7985cd3dc808c5bc30f.tar.xz
Don't invoke updown hook when flushing SAs for IKEv1, tasks will do it
Diffstat (limited to 'src')
-rw-r--r--src/libcharon/sa/ike_sa_manager.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/libcharon/sa/ike_sa_manager.c b/src/libcharon/sa/ike_sa_manager.c
index 2b4418f24..79a52c918 100644
--- a/src/libcharon/sa/ike_sa_manager.c
+++ b/src/libcharon/sa/ike_sa_manager.c
@@ -1695,16 +1695,18 @@ METHOD(ike_sa_manager_t, flush, void,
while (enumerator->enumerate(enumerator, &entry, &segment))
{
charon->bus->set_sa(charon->bus, entry->ike_sa);
- /* as the delete never gets processed, fire down events */
- switch (entry->ike_sa->get_state(entry->ike_sa))
- {
- case IKE_ESTABLISHED:
- case IKE_REKEYING:
- case IKE_DELETING:
- charon->bus->ike_updown(charon->bus, entry->ike_sa, FALSE);
- break;
- default:
- break;
+ if (entry->ike_sa->get_version(entry->ike_sa) == IKEV2)
+ { /* as the delete never gets processed, fire down events */
+ switch (entry->ike_sa->get_state(entry->ike_sa))
+ {
+ case IKE_ESTABLISHED:
+ case IKE_REKEYING:
+ case IKE_DELETING:
+ charon->bus->ike_updown(charon->bus, entry->ike_sa, FALSE);
+ break;
+ default:
+ break;
+ }
}
entry->ike_sa->delete(entry->ike_sa);
}