aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/config
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2016-11-11 15:30:54 +0100
committerTobias Brunner <tobias@strongswan.org>2016-11-11 15:34:33 +0100
commitda1d5cd2e68235c28e16eef719efb48c5b2d375d (patch)
treed02b2ab0ecd060c7e9375832417e685da7818d88 /src/libcharon/config
parent4af02c6c61cff97b310ca68a1c0c424475e8f9cd (diff)
downloadstrongswan-da1d5cd2e68235c28e16eef719efb48c5b2d375d.tar.bz2
strongswan-da1d5cd2e68235c28e16eef719efb48c5b2d375d.tar.xz
peer-cfg: Fix memory leak when replacing child configs
Fixes: 622c2b2c3386 ("peer-cfg: Add method to atomically replace child configs")
Diffstat (limited to 'src/libcharon/config')
-rw-r--r--src/libcharon/config/peer_cfg.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libcharon/config/peer_cfg.c b/src/libcharon/config/peer_cfg.c
index 6463c7a36..5665b66c4 100644
--- a/src/libcharon/config/peer_cfg.c
+++ b/src/libcharon/config/peer_cfg.c
@@ -235,6 +235,7 @@ METHOD(enumerator_t, child_cfgs_replace_enumerate, bool,
{
break;
}
+ this->wrapped->destroy(this->wrapped);
this->wrapped = this->added->create_enumerator(this->added);
this->add = TRUE;
}