+ if (!rule->set_mark.set && !rule->set_xmark.set &&
+ rule->target == FW3_FLAG_MARK)
+ {
+ warn_elem(e, "is set to target MARK but specifies neither "
+ "'set_mark' nor 'set_xmark' option");
+ fw3_free_rule(rule);
+ continue;
+ }
+
+ if (rule->_dest && rule->target == FW3_FLAG_MARK)
+ {
+ warn_elem(e, "must not specify 'dest' for MARK target");
+ fw3_free_rule(rule);
+ continue;
+ }
+
+ if (rule->set_mark.invert || rule->set_xmark.invert)
+ {
+ warn_elem(e, "must not have inverted 'set_mark' or 'set_xmark'");
+ fw3_free_rule(rule);
+ continue;
+ }
+