X-Git-Url: http://git.archive.openwrt.org/?p=project%2Ffirewall3.git;a=blobdiff_plain;f=redirects.c;h=43ef65b377573fb2015a93c9467fe44c3a373924;hp=3e6902d5583acd28bffe820e8761338ff9d0448a;hb=b549817fdacb79601970feb33bae530f184db752;hpb=ab591095d650bc3e997bad12aa7662e49d5cd9d5 diff --git a/redirects.c b/redirects.c index 3e6902d..43ef65b 100644 --- a/redirects.c +++ b/redirects.c @@ -114,7 +114,7 @@ fw3_load_redirects(struct fw3_state *state, struct uci_package *p) struct uci_element *e; struct fw3_redirect *redir; - bool valid = false; + bool valid; INIT_LIST_HEAD(&state->redirects); @@ -138,6 +138,8 @@ fw3_load_redirects(struct fw3_state *state, struct uci_package *p) redir->enabled = true; redir->reflection = true; + valid = false; + fw3_parse_options(redir, fw3_redirect_opts, s); if (!redir->enabled) @@ -225,6 +227,8 @@ fw3_load_redirects(struct fw3_state *state, struct uci_package *p) warn_elem(e, "has no destination specified"); else if (!redir->ip_dest.set) warn_elem(e, "has no src_dip option specified"); + else if (!list_empty(&redir->mac_src)) + warn_elem(e, "must not use 'src_mac' option for SNAT target"); else { set(redir->_dest->flags, FW3_FAMILY_V4, redir->target);