diff options
author | Tobias Brunner <tobias@strongswan.org> | 2017-05-29 10:49:57 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2017-05-29 10:50:58 +0200 |
commit | a09e79ed5d3147da91d1331002ed1438fdd67496 (patch) | |
tree | cf54ce7b4da6ff1f1e84b2c39b06ff944b2a68f4 | |
parent | 85ee4107c5375a870f7b46f55eb85547ad108b87 (diff) | |
download | strongswan-a09e79ed5d3147da91d1331002ed1438fdd67496.tar.bz2 strongswan-a09e79ed5d3147da91d1331002ed1438fdd67496.tar.xz |
ike-cfg: Fix memory leak when matching against ranges
traffic_selector_t::to_subnet() always sets the net/host (unless the
address family was invalid).
Fixes: 3070697f9f7c ("ike: support multiple addresses, ranges and subnets in IKE address config")
-rw-r--r-- | src/libcharon/config/ike_cfg.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libcharon/config/ike_cfg.c b/src/libcharon/config/ike_cfg.c index 480dd3720..93300781d 100644 --- a/src/libcharon/config/ike_cfg.c +++ b/src/libcharon/config/ike_cfg.c @@ -224,12 +224,12 @@ static u_int match(linked_list_t *hosts, linked_list_t *ranges, host_t *cand) if (ts->to_subnet(ts, &host, &mask)) { quality = max(quality, mask + 1); - host->destroy(host); } else { quality = max(quality, 1); } + host->destroy(host); } } enumerator->destroy(enumerator); |