From 2b6eab507a2679a7be70740dd7f42860c59bec9e Mon Sep 17 00:00:00 2001 From: Brett Mastbergen Date: Tue, 11 Dec 2018 14:09:22 -0500 Subject: [PATCH] netfilter: Add fib support for nftables Signed-off-by: Brett Mastbergen --- include/netfilter.mk | 5 +++++ package/kernel/linux/modules/netfilter.mk | 12 ++++++++++++ target/linux/generic/config-4.14 | 1 + target/linux/generic/config-4.19 | 1 + 4 files changed, 19 insertions(+) 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