69 lines
1.9 KiB
Makefile
69 lines
1.9 KiB
Makefile
#
|
|
# Copyright (C) 2018 Chion Tang <tech@chionlab.moe>
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
include $(INCLUDE_DIR)/kernel.mk
|
|
|
|
PKG_NAME:=fullconenat
|
|
PKG_VERSION:=2021-12-04
|
|
PKG_RELEASE:=5
|
|
|
|
PKG_SOURCE_VERSION:=7fe02604e073945a3b081c18efbb4d3c799a31f6
|
|
PKG_HASH:=214a80b647981e55b733ba37d29f5951141d481b81c5bb8e55a442b651d09025
|
|
PKG_SOURCE_URL_FILE:=$(PKG_SOURCE_VERSION).tar.gz
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=https://github.com/llccd/netfilter-full-cone-nat/archive/
|
|
|
|
PKG_LICENSE:=GPL-2.0
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
TAR_OPTIONS+= --strip-components 1
|
|
TAR_CMD=$(HOST_TAR) -C $(1) $(TAR_OPTIONS)
|
|
|
|
define Package/iptables-mod-fullconenat
|
|
SUBMENU:=Firewall
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
TITLE:=FULLCONENAT iptables extension
|
|
DEPENDS:=+iptables +kmod-ipt-fullconenat
|
|
MAINTAINER:=Chion Tang <tech@chionlab.moe>
|
|
endef
|
|
|
|
define Package/iptables-mod-fullconenat/install
|
|
$(INSTALL_DIR) $(1)/usr/lib/iptables
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/libipt_FULLCONENAT.so $(1)/usr/lib/iptables
|
|
endef
|
|
|
|
define KernelPackage/ipt-fullconenat
|
|
SUBMENU:=Netfilter Extensions
|
|
TITLE:=FULLCONENAT netfilter module
|
|
DEPENDS:=+kmod-nf-ipt +kmod-nf-nat +PACKAGE_kmod-nf-nat6:kmod-nf-nat6
|
|
MAINTAINER:=Chion Tang <tech@chionlab.moe>
|
|
KCONFIG:=CONFIG_NF_CONNTRACK_EVENTS=y CONFIG_NF_CONNTRACK_CHAIN_EVENTS=y
|
|
FILES:=$(PKG_BUILD_DIR)/xt_FULLCONENAT.ko
|
|
endef
|
|
|
|
include $(INCLUDE_DIR)/kernel-defaults.mk
|
|
|
|
define Build/Prepare
|
|
$(call Build/Prepare/Default)
|
|
$(CP) ./files/Makefile $(PKG_BUILD_DIR)/
|
|
endef
|
|
|
|
define Build/Compile
|
|
$(KERNEL_MAKE) M="$(PKG_BUILD_DIR)" \
|
|
EXTRA_CFLAGS="$(EXTRA_CFLAGS)" \
|
|
$(PKG_EXTRA_KCONFIG) \
|
|
modules
|
|
$(call Build/Compile/Default)
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,iptables-mod-fullconenat))
|
|
$(eval $(call KernelPackage,ipt-fullconenat))
|