diff options
author | Martin Willi <martin@revosec.ch> | 2012-05-02 09:03:23 +0200 |
---|---|---|
committer | Martin Willi <martin@revosec.ch> | 2012-05-02 10:22:59 +0200 |
commit | f99d8b10c9f5b5024b4b1e5f5d1e56e2519cdadc (patch) | |
tree | c675eb2564affb806336942de5387ad2ad668c0b /src/libcharon/daemon.c | |
parent | 13de38e354c055b2c8a5e95fc2e1cb793782bf27 (diff) | |
download | strongswan-f99d8b10c9f5b5024b4b1e5f5d1e56e2519cdadc.tar.bz2 strongswan-f99d8b10c9f5b5024b4b1e5f5d1e56e2519cdadc.tar.xz |
Added a dedicated sender flush method, delay sender destruction until users gone
Diffstat (limited to 'src/libcharon/daemon.c')
-rw-r--r-- | src/libcharon/daemon.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libcharon/daemon.c b/src/libcharon/daemon.c index 3fb49d475..f2c054a12 100644 --- a/src/libcharon/daemon.c +++ b/src/libcharon/daemon.c @@ -109,8 +109,11 @@ static void destroy(private_daemon_t *this) { this->public.traps->flush(this->public.traps); } + if (this->public.sender) + { + this->public.sender->flush(this->public.sender); + } DESTROY_IF(this->public.receiver); - DESTROY_IF(this->public.sender); #ifdef ME DESTROY_IF(this->public.connect_manager); DESTROY_IF(this->public.mediation_manager); @@ -129,6 +132,7 @@ static void destroy(private_daemon_t *this) DESTROY_IF(this->public.controller); DESTROY_IF(this->public.eap); DESTROY_IF(this->public.backends); + DESTROY_IF(this->public.sender); DESTROY_IF(this->public.socket); /* rehook library logging, shutdown logging */ |