diff --git a/package/network/utils/nftables/Makefile b/package/network/utils/nftables/Makefile index 7830596e8..9691151c7 100644 --- a/package/network/utils/nftables/Makefile +++ b/package/network/utils/nftables/Makefile @@ -1,20 +1,21 @@ -# Copyright (C) 2015 OpenWrt.org +# SPDX-License-Identifier: GPL-2.0-only # -# This is free software, licensed under the GNU General Public License v2. -# See /LICENSE for more information. +# Copyright (C) 2015 OpenWrt.org # include $(TOPDIR)/rules.mk PKG_NAME:=nftables -PKG_VERSION:=0.9.6 +PKG_VERSION:=1.0.5 PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files -PKG_HASH:=68d6fdfe8ab02303e6b1f13968a4022da5b0120110eaee3233d806857937b66e +PKG_HASH:=8d1b4b18393af43698d10baa25d2b9b6397969beecac7816c35dd0714e4de50a + PKG_MAINTAINER:= PKG_LICENSE:=GPL-2.0 +PKG_LICENSE_FILES:=COPYING PKG_FIXUP:=autoreconf PKG_INSTALL:=1 @@ -45,6 +46,7 @@ define Package/nftables-nojson TITLE+= no JSON support VARIANT:=nojson DEFAULT_VARIANT:=1 + CONFLICTS:=nftables-json endef define Package/nftables-json @@ -61,6 +63,15 @@ endif TARGET_CFLAGS += -flto TARGET_LDFLAGS += -flto +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/lib $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/include/nftables $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libnftables.pc \ + $(1)/usr/lib/pkgconfig/ +endef + define Package/nftables/install/Default $(INSTALL_DIR) $(1)/usr/sbin $(CP) $(PKG_INSTALL_DIR)/usr/sbin/nft $(1)/usr/sbin/ diff --git a/package/network/utils/nftables/patches/0001-fix-nft.patch b/package/network/utils/nftables/patches/0001-fix-nft.patch new file mode 100644 index 000000000..2138e254e --- /dev/null +++ b/package/network/utils/nftables/patches/0001-fix-nft.patch @@ -0,0 +1,23 @@ +'rule inet dscpclassify dscp_match meta l4proto { udp } th dport { 3478 } th sport { 3478-3497, 16384-16387 } goto ct_set_ef' +works with 'nft add', but not 'nft insert', the latter yields: "BUG: unhandled op 4". + +Fixes: 81e36530fcac ("src: replace interval segment tree overlap and automerge") +Signed-off-by: Florian Westphal +--- + src/evaluate.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/evaluate.c b/src/evaluate.c +index d9c9ca28a53a..edebd7bcd8ab 100644 +--- a/src/evaluate.c ++++ b/src/evaluate.c +@@ -1520,6 +1520,7 @@ static int interval_set_eval(struct eval_ctx *ctx, struct set *set, + switch (ctx->cmd->op) { + case CMD_CREATE: + case CMD_ADD: ++ case CMD_INSERT: + if (set->automerge) { + ret = set_automerge(ctx->msgs, ctx->cmd, set, init, + ctx->nft->debug_mask); +-- +2.35.1