diff options
author | laforge <laforge> | 2003-04-30 15:57:01 +0000 |
---|---|---|
committer | laforge <laforge> | 2003-04-30 15:57:01 +0000 |
commit | b7419a21972ae6627cc195c0cf4efc8fe26e4e54 (patch) | |
tree | d007c7b91553ccd96a321bda8ce96dc49202ac3b /libiptc | |
parent | ee49a81bae86be8b59ba3ac1b3df0a7fb458b9ec (diff) |
Fix libiptc memory hole during iptc_chain_next() (Tomas Lejdar)
Diffstat (limited to 'libiptc')
-rw-r--r-- | libiptc/libiptc.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libiptc/libiptc.c b/libiptc/libiptc.c index 985b9b0..55b708b 100644 --- a/libiptc/libiptc.c +++ b/libiptc/libiptc.c @@ -1,4 +1,4 @@ -/* Library which manipulates firewall rules. Version $Revision: 1.34 $ */ +/* Library which manipulates firewall rules. Version $Revision: 1.35 $ */ /* Architecture of firewall rules is as follows: * @@ -504,8 +504,10 @@ TC_NEXT_CHAIN(TC_HANDLE_T *handle) (*handle)->cache_chain_iteration++; if ((*handle)->cache_chain_iteration - (*handle)->cache_chain_heads - == (*handle)->cache_num_chains) + == (*handle)->cache_num_chains) { + free((*handle)->cache_chain_heads); return NULL; + } return (*handle)->cache_chain_iteration->name; } |