summaryrefslogtreecommitdiffstats
path: root/iptables-save.c
diff options
context:
space:
mode:
authorlaforge <laforge>2001-01-24 01:32:51 +0000
committerlaforge <laforge>2001-01-24 01:32:51 +0000
commit5ff88dbd006adf42ff2bb48f3a3c80a1aac43ffc (patch)
tree7b99a5214570aede0e557dd39e8480c03590e8da /iptables-save.c
parent60c6aa909d8015cea9acaee724355e63a4edab9f (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 8795cb1..61ad4c9 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,