aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrett Mastbergen <bmastbergen@untangle.com>2018-12-11 14:09:22 -0500
committerHauke Mehrtens <hauke@hauke-m.de>2018-12-16 00:57:20 +0100
commit2b6eab507a2679a7be70740dd7f42860c59bec9e (patch)
tree2a41161cd4553dcad6ddf6d63cd311149fe5bf1e
parent0c3c944d1eba362fd4f600aaee796de4b77bcaa5 (diff)
downloadupstream-2b6eab507a2679a7be70740dd7f42860c59bec9e.tar.gz
upstream-2b6eab507a2679a7be70740dd7f42860c59bec9e.tar.bz2
upstream-2b6eab507a2679a7be70740dd7f42860c59bec9e.zip
netfilter: Add fib support for nftables
Signed-off-by: Brett Mastbergen <bmastbergen@untangle.com>
-rw-r--r--include/netfilter.mk5
-rw-r--r--package/kernel/linux/modules/netfilter.mk12
-rw-r--r--target/linux/generic/config-4.141
-rw-r--r--target/linux/generic/config-4.191
4 files changed, 19 insertions, 0 deletions
diff --git a/include/netfilter.mk b/include/netfilter.mk
index 3a7f78a2a6..179d4ed7b9 100644
--- a/include/netfilter.mk
+++ b/include/netfilter.mk
@@ -371,6 +371,11 @@ $(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_REDIR_IPV6, $(P_V6)nft_
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_CHAIN_NAT_IPV6, $(P_V6)nft_chain_nat_ipv6),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_MASQ_IPV6, $(P_V6)nft_masq_ipv6),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB, $(P_XT)nft_fib),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB_INET, $(P_XT)nft_fib_inet),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB_IPV4, $(P_V4)nft_fib_ipv4),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB_IPV6, $(P_V6)nft_fib_ipv6),))
+
# userland only
IPT_BUILTIN += $(NF_IPT-y) $(NF_IPT-m)
diff --git a/package/kernel/linux/modules/netfilter.mk b/package/kernel/linux/modules/netfilter.mk
index 0ba66caf7d..25715be5d1 100644
--- a/package/kernel/linux/modules/netfilter.mk
+++ b/package/kernel/linux/modules/netfilter.mk
@@ -1164,3 +1164,15 @@ define KernelPackage/nft-netdev
endef
$(eval $(call KernelPackage,nft-netdev))
+
+
+define KernelPackage/nft-fib
+ SUBMENU:=$(NF_MENU)
+ TITLE:=Netfilter nf_tables fib support
+ DEPENDS:=+kmod-nft-core
+ FILES:=$(foreach mod,$(NFT_FIB-m),$(LINUX_DIR)/net/$(mod).ko)
+ AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_FIB-m)))
+ KCONFIG:=$(KCONFIG_NFT_FIB)
+endef
+
+$(eval $(call KernelPackage,nft-fib))
diff --git a/target/linux/generic/config-4.14 b/target/linux/generic/config-4.14
index 430e564e29..b6c3e4aa11 100644
--- a/target/linux/generic/config-4.14
+++ b/target/linux/generic/config-4.14
@@ -3164,6 +3164,7 @@ CONFIG_NFS_V3=y
# CONFIG_NFT_DUP_IPV6 is not set
# CONFIG_NFT_FIB_IPV4 is not set
# CONFIG_NFT_FIB_IPV6 is not set
+# CONFIG_NFT_FIB_NETDEV is not set
# CONFIG_NFT_FLOW_OFFLOAD is not set
# CONFIG_NFT_OBJREF is not set
# CONFIG_NFT_RT is not set
diff --git a/target/linux/generic/config-4.19 b/target/linux/generic/config-4.19
index 0302cb6052..4a956a9b14 100644
--- a/target/linux/generic/config-4.19
+++ b/target/linux/generic/config-4.19
@@ -3309,6 +3309,7 @@ CONFIG_NFS_V3=y
# CONFIG_NFT_DUP_IPV6 is not set
# CONFIG_NFT_FIB_IPV4 is not set
# CONFIG_NFT_FIB_IPV6 is not set
+# CONFIG_NFT_FIB_NETDEV is not set
# CONFIG_NFT_FLOW_OFFLOAD is not set
# CONFIG_NFT_OBJREF is not set
# CONFIG_NFT_OSF is not set