X-Git-Url: http://git.archive.openwrt.org/?p=project%2Ffirewall3.git;a=blobdiff_plain;f=defaults.c;h=f87ac92d0e2420b59b04304b006f54f4d19e0b7f;hp=bde4644a5de1b303145ce92eb40b00a497feaa75;hb=0bbcb880e14ca9bd0ba59963a9d3ec1faadec6d7;hpb=62863ea95d3c2c7dd0b56ac0f1dee5a4590ca70c diff --git a/defaults.c b/defaults.c index bde4644..f87ac92 100644 --- a/defaults.c +++ b/defaults.c @@ -38,6 +38,8 @@ static const struct fw3_rule_spec default_chains[] = { C(V4, NAT, CUSTOM_CHAINS, "postrouting_rule"), C(ANY, MANGLE, UNSPEC, "mssfix"), + C(ANY, MANGLE, UNSPEC, "fwmark"), + C(ANY, RAW, UNSPEC, "notrack"), { } @@ -52,6 +54,8 @@ static const struct fw3_rule_spec toplevel_rules[] = { C(V4, NAT, UNSPEC, "POSTROUTING -j delegate_postrouting"), C(ANY, MANGLE, UNSPEC, "FORWARD -j mssfix"), + C(ANY, MANGLE, UNSPEC, "PREROUTING -j fwmark"), + C(ANY, RAW, UNSPEC, "PREROUTING -j notrack"), { } @@ -79,6 +83,9 @@ const struct fw3_option fw3_flag_opts[] = { FW3_OPT("custom_chains", bool, defaults, custom_chains), FW3_OPT("disable_ipv6", bool, defaults, disable_ipv6), + FW3_OPT("__flags_v4", int, defaults, flags[0]), + FW3_OPT("__flags_v6", int, defaults, flags[1]), + { } }; @@ -135,8 +142,8 @@ fw3_load_defaults(struct fw3_state *state, struct uci_package *p) } void -fw3_print_default_chains(enum fw3_table table, enum fw3_family family, - bool reload, struct fw3_state *state) +fw3_print_default_chains(struct fw3_state *state, enum fw3_family family, + enum fw3_table table, bool reload) { bool rv; struct fw3_defaults *defs = &state->defaults; @@ -173,8 +180,8 @@ fw3_print_default_chains(enum fw3_table table, enum fw3_family family, } void -fw3_print_default_head_rules(enum fw3_table table, enum fw3_family family, - bool reload, struct fw3_state *state) +fw3_print_default_head_rules(struct fw3_state *state, enum fw3_family family, + enum fw3_table table, bool reload) { int i; struct fw3_defaults *defs = &state->defaults; @@ -248,8 +255,8 @@ fw3_print_default_head_rules(enum fw3_table table, enum fw3_family family, } void -fw3_print_default_tail_rules(enum fw3_table table, enum fw3_family family, - bool reload, struct fw3_state *state) +fw3_print_default_tail_rules(struct fw3_state *state, enum fw3_family family, + enum fw3_table table, bool reload) { struct fw3_defaults *defs = &state->defaults; @@ -306,8 +313,8 @@ reset_policy(enum fw3_table table, enum fw3_flag policy) } void -fw3_flush_rules(enum fw3_table table, enum fw3_family family, - bool pass2, bool reload, struct fw3_state *state) +fw3_flush_rules(struct fw3_state *state, enum fw3_family family, + enum fw3_table table, bool reload, bool pass2) { struct fw3_defaults *defs = &state->defaults; uint32_t custom_mask = ~0;