kernel: netfilter: Add nf_tproxy_ipv{4,6} and nf_socket_ipv{4,6}

This commit is contained in:
lean 2022-09-12 02:58:55 +08:00
parent 931b793a06
commit 9c0a73385d
3 changed files with 81 additions and 6 deletions

View File

@ -355,6 +355,12 @@ $(eval $(if $(NF_KMOD),$(call nf_add,NFT_FIB,CONFIG_NFT_FIB_IPV6, $(P_V6)nft_fib
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_QUEUE,CONFIG_NFT_QUEUE, $(P_XT)nft_queue),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_SOCKET,CONFIG_NFT_SOCKET, $(P_XT)nft_socket),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_TPROXY,CONFIG_NFT_TPROXY, $(P_XT)nft_tproxy),))
$(eval $(if $(NF_KMOD),$(call nf_add,NFT_COMPAT,CONFIG_NFT_COMPAT, $(P_XT)nft_compat),))
# userland only
IPT_BUILTIN += $(NF_IPT-y) $(NF_IPT-m)
IPT_BUILTIN += $(IPT_CORE-y) $(IPT_CORE-m)

View File

@ -161,6 +161,26 @@ endef
$(eval $(call KernelPackage,nf-flow))
define KernelPackage/nf-socket
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter socket lookup support
KCONFIG:= $(KCOFNIG_NF_SOCKET)
FILES:=$(foreach mod,$(NF_SOCKET-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_SOCKET-m)))
endef
$(eval $(call KernelPackage,nf-socket))
define KernelPackage/nf-tproxy
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter tproxy support
KCONFIG:= $(KCOFNIG_NF_TPROXY)
FILES:=$(foreach mod,$(NF_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NF_TPROXY-m)))
endef
$(eval $(call KernelPackage,nf-tproxy))
define AddDepends/ipt
SUBMENU:=$(NF_MENU)
@ -1179,3 +1199,47 @@ define KernelPackage/nft-queue
endef
$(eval $(call KernelPackage,nft-queue))
define KernelPackage/nft-socket
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables socket support
DEPENDS:=+kmod-nft-core +kmod-nf-socket
FILES:=$(foreach mod,$(NFT_SOCKET-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_SOCKET-m)))
KCONFIG:=$(KCONFIG_NFT_SOCKET)
endef
$(eval $(call KernelPackage,nft-socket))
define KernelPackage/nft-tproxy
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables tproxy support
DEPENDS:=+kmod-nft-core +kmod-nf-tproxy +kmod-nf-conntrack
FILES:=$(foreach mod,$(NFT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_TPROXY-m)))
KCONFIG:=$(KCONFIG_NFT_TPROXY)
endef
$(eval $(call KernelPackage,nft-tproxy))
define KernelPackage/nft-compat
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables compat support
DEPENDS:=+kmod-nft-core +kmod-nf-ipt
FILES:=$(foreach mod,$(NFT_COMPAT-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_COMPAT-m)))
KCONFIG:=$(KCONFIG_NFT_COMPAT)
endef
$(eval $(call KernelPackage,nft-compat))
define KernelPackage/nft-xfrm
SUBMENU:=$(NF_MENU)
TITLE:=Netfilter nf_tables xfrm support (ipsec)
DEPENDS:=+kmod-nft-core
FILES:=$(foreach mod,$(NFT_XFRM-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir $(NFT_XFRM-m)))
KCONFIG:=$(KCONFIG_NFT_XFRM)
endef
$(eval $(call KernelPackage,nft-xfrm))

View File

@ -5,13 +5,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=firewall4
PKG_RELEASE:=1
PKG_RELEASE:=$(AUTORELEASE)
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/firewall4.git
PKG_SOURCE_DATE:=2021-03-31
PKG_SOURCE_VERSION:=29fba840201287b9265888adba6298779b750af5
PKG_MIRROR_HASH:=1d26a611aeecdf37f09e4cdee6b192e5da087abf6e0fc7a9ca97a80e58d14222
PKG_SOURCE_DATE:=2022-09-01
PKG_SOURCE_VERSION:=f5fcdcf2c51f6f0a4b116c352000c4fe0523be77
PKG_MIRROR_HASH:=57ef6f161abdd323019c026c959ab875fdfd3c972b8dc7767623634b1c259138
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
PKG_LICENSE:=ISC
@ -21,8 +21,13 @@ define Package/firewall4
SECTION:=net
CATEGORY:=Base system
TITLE:=OpenWrt 4th gen firewall
DEPENDS:=+ucode +ucode-mod-fs +ucode-mod-uci +ucode-mod-ubus +kmod-nft-core +kmod-nft-fib +kmod-nft-nat +kmod-nft-nat6 +nftables-json
CONFLICTS:=firewall kmod-ipt-nat
DEPENDS:= \
+kmod-nft-core +kmod-nft-fib +kmod-nft-offload \
+kmod-nft-nat \
+nftables-json \
+ucode +ucode-mod-fs +ucode-mod-ubus +ucode-mod-uci
EXTRA_DEPENDS:=ucode (>= 2022-03-22)
PROVIDES:=uci-firewall
endef
define Package/firewall4/description