diff mbox series

[nft] segtree: memleak get element command

Message ID 20220215141220.775027-1-pablo@netfilter.org
State Accepted
Delegated to: Pablo Neira
Headers show
Series [nft] segtree: memleak get element command | expand

Commit Message

Pablo Neira Ayuso Feb. 15, 2022, 2:12 p.m. UTC
Release removed interval expressions before get_set_interval_find()
fails. The memleak can be triggered through:

 testcases/sets/0034get_element_0

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
---
 src/segtree.c | 2 ++
 1 file changed, 2 insertions(+)
diff mbox series

Patch

diff --git a/src/segtree.c b/src/segtree.c
index f721954f76eb..a61ea3d2854a 100644
--- a/src/segtree.c
+++ b/src/segtree.c
@@ -788,6 +788,8 @@  int get_set_decompose(struct set *cache_set, struct set *set)
 			mpz_sub_ui(i->key->value, i->key->value, 1);
 			range = get_set_interval_find(cache_set, left, i);
 			if (!range) {
+				expr_free(left);
+				expr_free(i);
 				expr_free(new_init);
 				errno = ENOENT;
 				return -1;