diff options
author | Eric Leblond <eric@regit.org> | 2017-07-06 13:58:27 +0100 |
---|---|---|
committer | Eric Leblond <eric@regit.org> | 2017-07-06 13:58:27 +0100 |
commit | d58998312375de0865091cfc5d00ddd271d9a44c (patch) | |
tree | c2b739cf2430a7280319711f28d1d19f2e8c028b /src/set.c | |
parent | e7ca8e1de707444a6081070ca5bb6f70dd849856 (diff) |
set: free user data
This was causing a memory leak when using set.
Catched by an ASAN run:
==21004==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 12 byte(s) in 2 object(s) allocated from:
#0 0x4cde58 in malloc (/usr/local/sbin/nft+0x4cde58)
#1 0x7ffff79b8c19 in nftnl_set_set_data /home/eric/git/netfilter/libnftnl/src/set.c:179
Diffstat (limited to 'src/set.c')
-rw-r--r-- | src/set.c | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -48,6 +48,8 @@ void nftnl_set_free(const struct nftnl_set *s) xfree(s->table); if (s->flags & (1 << NFTNL_SET_NAME)) xfree(s->name); + if (s->flags & (1 << NFTNL_SET_USERDATA)) + xfree(s->user.data); list_for_each_entry_safe(elem, tmp, &s->element_list, head) { list_del(&elem->head); |