wait until all IKE_SAs are in-house before destroying them
authorMartin Willi <martin@strongswan.org>
Fri, 12 Dec 2008 08:33:48 +0000 (08:33 -0000)
committerMartin Willi <martin@strongswan.org>
Fri, 12 Dec 2008 08:33:48 +0000 (08:33 -0000)
src/charon/sa/ike_sa_manager.c

index 66a1550..4560d8f 100644 (file)
@@ -1513,7 +1513,7 @@ static void flush(private_ike_sa_manager_t *this)
        enumerator = create_table_enumerator(this);
        while (enumerator->enumerate(enumerator, &entry, &segment))
        {
-               while (entry->waiting_threads)
+               while (entry->waiting_threads || entry->checked_out)
                {
                        /* wake up all */
                        entry->condvar->broadcast(entry->condvar);