aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2015-11-10 14:00:11 +0100
committerTobias Brunner <tobias@strongswan.org>2015-11-10 14:00:11 +0100
commite8f2c13f9a80c53f4fae15119c5d2cdafb08726b (patch)
treee6474b1485efe637d0c014fc5712499e7cb22c20
parentebeb8c87c5669fa2cd2d2e580e5c731e9d4cc922 (diff)
downloadstrongswan-e8f2c13f9a80c53f4fae15119c5d2cdafb08726b.tar.bz2
strongswan-e8f2c13f9a80c53f4fae15119c5d2cdafb08726b.tar.xz
trap-manager: Also clean up remote address in error cases
Fixes #1201.
-rw-r--r--src/libcharon/sa/trap_manager.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/libcharon/sa/trap_manager.c b/src/libcharon/sa/trap_manager.c
index 63505c960..90ad7e40e 100644
--- a/src/libcharon/sa/trap_manager.c
+++ b/src/libcharon/sa/trap_manager.c
@@ -211,6 +211,7 @@ METHOD(trap_manager_t, install, u_int32_t,
if (this->installing == INSTALL_DISABLED)
{ /* flush() has been called */
this->lock->unlock(this->lock);
+ other->destroy(other);
me->destroy(me);
return 0;
}
@@ -235,6 +236,7 @@ METHOD(trap_manager_t, install, u_int32_t,
{
DBG1(DBG_CFG, "CHILD_SA '%s' is already being routed", found->name);
this->lock->unlock(this->lock);
+ other->destroy(other);
me->destroy(me);
return 0;
}