aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis Osvald <denis.osvald@sartura.hr>2017-10-22 22:21:23 +0200
committerJohn Crispin <john@phrozen.org>2017-11-06 16:39:41 +0100
commitee791fa4ab66bb77fec0f2e323fe4c8637808a5b (patch)
tree5ddc7c258cdf5ce73c30b5adfd06e9cce9ce816a
parentf9ecb0d562bd1dab9dadb150f6a6c146b948fc5c (diff)
downloadupstream-ee791fa4ab66bb77fec0f2e323fe4c8637808a5b.tar.gz
upstream-ee791fa4ab66bb77fec0f2e323fe4c8637808a5b.tar.bz2
upstream-ee791fa4ab66bb77fec0f2e323fe4c8637808a5b.zip
netfilter, iptables: add optional CHECKSUM module
Signed-off-by: Denis Osvald <denis.osvald@sartura.hr>
-rw-r--r--include/netfilter.mk4
-rw-r--r--package/kernel/linux/modules/netfilter.mk17
-rw-r--r--package/network/utils/iptables/Makefile10
3 files changed, 31 insertions, 0 deletions
diff --git a/include/netfilter.mk b/include/netfilter.mk
index 1f5050b0c3..616425cb08 100644
--- a/include/netfilter.mk
+++ b/include/netfilter.mk
@@ -262,6 +262,10 @@ $(eval $(if $(NF_KMOD),$(call nf_add,IPT_TEE,CONFIG_NF_DUP_IPV6, $(P_V6)nf_dup_i
$(eval $(call nf_add,IPT_U32,CONFIG_NETFILTER_XT_MATCH_U32, $(P_XT)xt_u32))
+# checksum
+
+$(eval $(call nf_add,IPT_CHECKSUM,CONFIG_NETFILTER_XT_TARGET_CHECKSUM, $(P_XT)xt_CHECKSUM))
+
# netlink
diff --git a/package/kernel/linux/modules/netfilter.mk b/package/kernel/linux/modules/netfilter.mk
index 0ad6987aa6..0d817ed7f4 100644
--- a/package/kernel/linux/modules/netfilter.mk
+++ b/package/kernel/linux/modules/netfilter.mk
@@ -529,6 +529,23 @@ endef
$(eval $(call KernelPackage,ipt-u32))
+define KernelPackage/ipt-checksum
+ TITLE:=CHECKSUM support
+ KCONFIG:= \
+ CONFIG_NETFILTER_XT_TARGET_CHECKSUM
+ FILES:= \
+ $(LINUX_DIR)/net/netfilter/xt_CHECKSUM.ko \
+ $(foreach mod,$(IPT_CHECKSUM-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_CHECKSUM-m)))
+ $(call AddDepends/ipt)
+endef
+
+define KernelPackage/ipt-checksum/description
+ Kernel modules for CHECKSUM fillin target
+endef
+
+$(eval $(call KernelPackage,ipt-checksum))
+
define KernelPackage/ipt-iprange
TITLE:=Module for matching ip ranges
diff --git a/package/network/utils/iptables/Makefile b/package/network/utils/iptables/Makefile
index 133d98c16b..43b5220f2d 100644
--- a/package/network/utils/iptables/Makefile
+++ b/package/network/utils/iptables/Makefile
@@ -395,6 +395,15 @@ U32 iptables extensions.
endef
+define Package/iptables-mod-checksum
+$(call Package/iptables/Module, +kmod-ipt-checksum)
+ TITLE:=IP CHECKSUM target extension
+endef
+
+define Package/iptables-mod-checksum/description
+iptables extension for the CHECKSUM calculation target
+endef
+
define Package/ip6tables
$(call Package/iptables/Default)
DEPENDS:=@IPV6 +kmod-ip6tables +iptables
@@ -600,6 +609,7 @@ $(eval $(call BuildPlugin,iptables-mod-u32,$(IPT_U32-m)))
$(eval $(call BuildPlugin,iptables-mod-nflog,$(IPT_NFLOG-m)))
$(eval $(call BuildPlugin,iptables-mod-trace,$(IPT_DEBUG-m)))
$(eval $(call BuildPlugin,iptables-mod-nfqueue,$(IPT_NFQUEUE-m)))
+$(eval $(call BuildPlugin,iptables-mod-checksum,$(IPT_CHECKSUM-m)))
$(eval $(call BuildPackage,ip6tables))
$(eval $(call BuildPlugin,ip6tables-extra,$(IPT_IPV6_EXTRA-m)))
$(eval $(call BuildPlugin,ip6tables-mod-nat,$(IPT_NAT6-m)))