From 7b9aaebe3a155d092b633a13f9f02f55e456b361 Mon Sep 17 00:00:00 2001 From: Bart De Schuymer Date: Sun, 23 Jun 2002 20:38:34 +0000 Subject: *** empty log message *** --- extensions/ebt_nat.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'extensions/ebt_nat.c') diff --git a/extensions/ebt_nat.c b/extensions/ebt_nat.c index fe7cd1a..d94763a 100644 --- a/extensions/ebt_nat.c +++ b/extensions/ebt_nat.c @@ -136,22 +136,24 @@ static int parse_d(int c, char **argv, int argc, } static void final_check_s(const struct ebt_u_entry *entry, - const struct ebt_entry_target *target, const char *name, unsigned int hook_mask) + const struct ebt_entry_target *target, const char *name, + unsigned int hook_mask, unsigned int time) { if (!(hook_mask & (1 << NF_BR_POST_ROUTING)) || strcmp(name, "nat")) print_error("Wrong chain for snat"); - if (to_source_supplied == 0) + if (time == 0 && to_source_supplied == 0) print_error("No snat address supplied"); } static void final_check_d(const struct ebt_u_entry *entry, - const struct ebt_entry_target *target, const char *name, unsigned int hook_mask) + const struct ebt_entry_target *target, const char *name, + unsigned int hook_mask, unsigned int time) { if (((hook_mask & ~((1 << NF_BR_PRE_ROUTING) | (1 << NF_BR_LOCAL_OUT))) || strcmp(name, "nat")) && ((hook_mask & ~(1 << NF_BR_BROUTING)) || strcmp(name, "broute"))) print_error("Wrong chain for dnat"); - if (to_dest_supplied == 0) + if (time == 0 && to_dest_supplied == 0) print_error("No dnat address supplied"); } -- cgit v1.2.3