From 708f883635a07d6e004d5d9a63cfee15c47d5de3 Mon Sep 17 00:00:00 2001 From: rantal Date: Wed, 14 Aug 2019 18:40:07 +0000 Subject: [PATCH] add support for Linux 5.0 for DELUDE and TARPIT --- extensions/xt_DELUDE.c | 5 +++++ extensions/xt_TARPIT.c | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/extensions/xt_DELUDE.c b/extensions/xt_DELUDE.c index 618de5e..b384c8e 100644 --- a/extensions/xt_DELUDE.c +++ b/extensions/xt_DELUDE.c @@ -107,8 +107,13 @@ static void delude_send_reset(struct net *net, struct sk_buff *oldskb, addr_type = RTN_UNSPEC; #ifdef CONFIG_BRIDGE_NETFILTER +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0) + if (hook != NF_INET_FORWARD || ((struct nf_bridge_info *)skb_ext_find(nskb, SKB_EXT_BRIDGE_NF) != NULL && + ((struct nf_bridge_info *)skb_ext_find(nskb, SKB_EXT_BRIDGE_NF))->physoutdev)) +#else if (hook != NF_INET_FORWARD || (nskb->nf_bridge != NULL && nskb->nf_bridge->physoutdev)) +#endif #else if (hook != NF_INET_FORWARD) #endif diff --git a/extensions/xt_TARPIT.c b/extensions/xt_TARPIT.c index cb98e9e..708e1c2 100644 --- a/extensions/xt_TARPIT.c +++ b/extensions/xt_TARPIT.c @@ -249,8 +249,13 @@ static void tarpit_tcp4(struct net *net, struct sk_buff *oldskb, niph->id = ~oldhdr->id + 1; #ifdef CONFIG_BRIDGE_NETFILTER +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 0, 0) + if (hook != NF_INET_FORWARD || ((struct nf_bridge_info *)skb_ext_find(nskb, SKB_EXT_BRIDGE_NF) != NULL && + ((struct nf_bridge_info *)skb_ext_find(nskb, SKB_EXT_BRIDGE_NF))->physoutdev)) +#else if (hook != NF_INET_FORWARD || (nskb->nf_bridge != NULL && nskb->nf_bridge->physoutdev != NULL)) +#endif #else if (hook != NF_INET_FORWARD) #endif