summaryrefslogtreecommitdiffstats
path: root/iptables-save.c
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2001-01-24 01:32:51 +0000
committerHarald Welte <laforge@gnumonks.org>2001-01-24 01:32:51 +0000
commite81377974336cad22e721e55e142749182877065 (patch)
tree7b99a5214570aede0e557dd39e8480c03590e8da /iptables-save.c
parentaf4ec45619a9519709c576b65492c27d413d26f0 (diff)
fix another iptables-save segfault when match doesn't provide save function (bug detected by Emmanuel Roger, fix by HW)
Diffstat (limited to 'iptables-save.c')
-rw-r--r--iptables-save.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/iptables-save.c b/iptables-save.c
index 8795cb17..61ad4c9c 100644
--- a/iptables-save.c
+++ b/iptables-save.c
@@ -108,7 +108,10 @@ static int print_match(const struct ipt_entry_match *e,
if (match) {
printf("-m %s ", e->u.user.name);
- match->save(ip, e);
+
+ /* some matches don't provide a save function */
+ if (match->save)
+ match->save(ip, e);
} else {
if (e->u.match_size) {
fprintf(stderr,