Signed-off-by: Vasily Averin <vvs@xxxxxxxxxx> --- net/netfilter/xt_TPROXY.c | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletions(-) diff --git a/net/netfilter/xt_TPROXY.c b/net/netfilter/xt_TPROXY.c index ef8a926..ce99ad4 100644 --- a/net/netfilter/xt_TPROXY.c +++ b/net/netfilter/xt_TPROXY.c @@ -528,14 +528,21 @@ static int tproxy_tg4_check(const struct xt_tgchk_param *par) const struct ipt_ip *i = par->entryinfo; if ((i->proto == IPPROTO_TCP || i->proto == IPPROTO_UDP) - && !(i->invflags & IPT_INV_PROTO)) + && !(i->invflags & IPT_INV_PROTO)) { + inc_br_defrag_ipv4_users_count(par->net); return 0; + } pr_info("Can be used only in combination with " "either -p tcp or -p udp\n"); return -EINVAL; } +void tproxy_tg4_destroy(const struct xt_tgdtor_param *par) +{ + dec_br_defrag_ipv4_users_count(par->net); +} + static struct xt_target tproxy_tg_reg[] __read_mostly = { { .name = "TPROXY", @@ -545,6 +552,7 @@ static struct xt_target tproxy_tg_reg[] __read_mostly = { .revision = 0, .targetsize = sizeof(struct xt_tproxy_target_info), .checkentry = tproxy_tg4_check, + .destroy = tproxy_tg4_destroy, .hooks = 1 << NF_INET_PRE_ROUTING, .me = THIS_MODULE, }, @@ -556,6 +564,7 @@ static struct xt_target tproxy_tg_reg[] __read_mostly = { .revision = 1, .targetsize = sizeof(struct xt_tproxy_target_info_v1), .checkentry = tproxy_tg4_check, + .destroy = tproxy_tg4_destroy, .hooks = 1 << NF_INET_PRE_ROUTING, .me = THIS_MODULE, }, -- 1.7.5.4 -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html