diff options
author | Pablo Neira Ayuso <pablo@netfilter.org> | 2016-04-15 12:29:42 +0200 |
---|---|---|
committer | Pablo Neira Ayuso <pablo@netfilter.org> | 2016-04-15 12:51:51 +0200 |
commit | 79f475c99b83775fdb9ec331eef85c94e80a3449 (patch) | |
tree | 2c5cb418575be5104338ffbdb7db16f04a50234f /src | |
parent | 3aca3f8206dad8b3f585e11c973ed2c02ed8c1c4 (diff) |
rule: fix leaks in NFTNL_RULE_USERDATA
Fix leaks in nftnl_rule_free() and nftnl_rule_set_data().
Reported-by: Carlos Falgueras GarcĂa <carlosfg@riseup.net>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/rule.c | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -75,6 +75,8 @@ void nftnl_rule_free(struct nftnl_rule *r) xfree(r->table); if (r->chain != NULL) xfree(r->chain); + if (r->user.data != NULL) + xfree(r->user.data); xfree(r); } @@ -162,6 +164,9 @@ void nftnl_rule_set_data(struct nftnl_rule *r, uint16_t attr, r->position = *((uint64_t *)data); break; case NFTNL_RULE_USERDATA: + if (r->user.data != NULL) + xfree(r->user.data); + r->user.data = (void *)data; r->user.len = data_len; break; |