summaryrefslogtreecommitdiffstats
path: root/libiptc/libiptc.c
diff options
context:
space:
mode:
authorFranz Flasch <franz.flasch@frequentis.com>2012-03-08 04:20:41 +0000
committerPablo Neira Ayuso <pablo@netfilter.org>2012-03-12 12:57:57 +0100
commit61b8f7ecb64b3b6fe04d2a6ad9598f66e42ceea8 (patch)
tree75928c47522295868f6f263e9745cdf1da4e23bb /libiptc/libiptc.c
parent1a7732f965c2b09e526eeca8a551538fbdc099ef (diff)
iptables: missing free() in function delete_entry()
Fixed a memory leak in the dry run path of function delete_entry(). Signed-off-by: Franz Flasch <franz.flasch@frequentis.com> Signed-off-by: Christian Engelmayer <christian.engelmayer@frequentis.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'libiptc/libiptc.c')
-rw-r--r--libiptc/libiptc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libiptc/libiptc.c b/libiptc/libiptc.c
index 396bc8f5..13e41d52 100644
--- a/libiptc/libiptc.c
+++ b/libiptc/libiptc.c
@@ -1993,8 +1993,10 @@ static int delete_entry(const IPT_CHAINLABEL chain, const STRUCT_ENTRY *origfw,
continue;
/* if we are just doing a dry run, we simply skip the rest */
- if (dry_run)
+ if (dry_run){
+ free(r);
return 1;
+ }
/* If we are about to delete the rule that is the
* current iterator, move rule iterator back. next