X-Git-Url: http://git.archive.openwrt.org/?p=project%2Ffirewall3.git;a=blobdiff_plain;f=rules.c;h=5e1d5f3a6385fe084f53d9e4feae8659c4afe2ac;hp=ea66771457511b37b7bc7af3fb8248b16f0906d4;hb=b45e162eca2c6e913318c4552643aae2a973ae3a;hpb=f50a524847a0ac74ef8cc74011d3cc46e9269c6b diff --git a/rules.c b/rules.c index ea66771..5e1d5f3 100644 --- a/rules.c +++ b/rules.c @@ -33,7 +33,7 @@ const struct fw3_option fw3_rule_opts[] = { FW3_OPT("ipset", setmatch, rule, ipset), FW3_OPT("helper", cthelper, rule, helper), - FW3_OPT("set_helper", cthelper, rule, helper), + FW3_OPT("set_helper", cthelper, rule, set_helper), FW3_LIST("proto", protocol, rule, proto), @@ -436,7 +436,7 @@ print_rule(struct fw3_ipt_handle *handle, struct fw3_state *state, } if (rule->helper.ptr && - rule->helper.ptr->proto.protocol != proto->protocol) + !fw3_cthelper_check_proto(rule->helper.ptr, proto)) { info(" ! Skipping protocol %s since helper '%s' does not support it", fw3_protoname(proto), rule->helper.ptr->name); @@ -444,7 +444,7 @@ print_rule(struct fw3_ipt_handle *handle, struct fw3_state *state, } if (rule->set_helper.ptr && - rule->set_helper.ptr->proto.protocol != proto->protocol) + !fw3_cthelper_check_proto(rule->set_helper.ptr, proto)) { info(" ! Skipping protocol %s since helper '%s' does not support it", fw3_protoname(proto), rule->helper.ptr->name);