netfilter,iptables: add optional CHECKSUM module
authorDenis Osvald <denis.osvald@sartura.hr>
Tue, 30 Aug 2016 14:26:18 +0000 (16:26 +0200)
committerDenis Osvald <denis.osvald@sartura.hr>
Fri, 7 Oct 2016 13:22:18 +0000 (15:22 +0200)
Signed-off-by: Denis Osvald <denis.osvald@sartura.hr>
include/netfilter.mk
package/kernel/linux/modules/netfilter.mk
package/network/utils/iptables/Makefile

index c8e6a8b2399bd87304bfc8e17b053d6262d82f52..0a921f5d1cc4f1b4235773eecba43137ca3ca13c 100644 (file)
@@ -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
 
index 353de3e45b3515fab07024227dbbda762740e7a1..55c6df514fd5134d2331f8232139431c1bc32b13 100644 (file)
@@ -508,6 +508,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
index 6f7529c736a3f7dcf90fccf95e6f001ec9e8c8dc..70c744f5cf36da50eb03e07b0fe1d09e3639c7a1 100644 (file)
@@ -355,6 +355,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
@@ -549,6 +558,7 @@ $(eval $(call BuildPlugin,iptables-mod-tee,$(IPT_TEE-m)))
 $(eval $(call BuildPlugin,iptables-mod-u32,$(IPT_U32-m)))
 $(eval $(call BuildPlugin,iptables-mod-nflog,$(IPT_NFLOG-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)))