From 7c106734e8c1fe8f8c49fbf630d8e28f454d4432 Mon Sep 17 00:00:00 2001 From: Stan Grishin Date: Tue, 21 Apr 2026 19:11:41 +0000 Subject: [PATCH] pbr: update to 1.2.2-r14 fix: avoid unnecessary dnsmasq restarts (thanks @egc112) fix: insert, not add dns policies to ensure higher priority than the DNS hijack rules (thanks @egc112) Signed-off-by: Stan Grishin --- net/pbr/Makefile | 2 +- net/pbr/files/etc/init.d/pbr | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/net/pbr/Makefile b/net/pbr/Makefile index b88dfb50ea..9f534ddf5c 100644 --- a/net/pbr/Makefile +++ b/net/pbr/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pbr PKG_VERSION:=1.2.2 -PKG_RELEASE:=12 +PKG_RELEASE:=14 PKG_LICENSE:=AGPL-3.0-or-later PKG_MAINTAINER:=Stan Grishin diff --git a/net/pbr/files/etc/init.d/pbr b/net/pbr/files/etc/init.d/pbr index b0a7f096c5..240ee15aa0 100755 --- a/net/pbr/files/etc/init.d/pbr +++ b/net/pbr/files/etc/init.d/pbr @@ -198,6 +198,7 @@ nft_fw4_dump= loadEnvironmentFlag= loadPackageConfigFlag= resolverWorkingFlag= +resolverStoredHash= # shellcheck disable=SC1091 . "${IPKG_INSTROOT}/lib/functions.sh" @@ -979,7 +980,7 @@ nft_file() { done echo "" >> "$nftTempFile" # Add jump rules from fw4 chains to pbr chains - echo "add rule inet $nftTable dstnat jump ${nftPrefix}_dstnat" >> "$nftTempFile" + echo "insert rule inet $nftTable dstnat jump ${nftPrefix}_dstnat" >> "$nftTempFile" echo "add rule inet $nftTable mangle_prerouting jump ${nftPrefix}_prerouting" >> "$nftTempFile" echo "add rule inet $nftTable mangle_output jump ${nftPrefix}_output" >> "$nftTempFile" echo "add rule inet $nftTable mangle_forward jump ${nftPrefix}_forward" >> "$nftTempFile" @@ -1446,7 +1447,7 @@ resolver() { [ "$resolverNewHash" != "$resolverStoredHash" ] ;; store_hash) - [ -s "$packageDnsmasqFile" ] && resolverStoredHash="$(md5sum "$packageDnsmasqFile" | awk '{ print $1; }')" + [ -s "$packageDnsmasqFile" ] && resolverStoredHash="$(md5sum "$packageDnsmasqFile" | awk '{ print $1; }')" || resolverStoredHash= return 0 ;; wait) @@ -2801,7 +2802,7 @@ on_interface_reload() { start_service() { local param="$1" - local resolverStoredHash resolverNewHash reloadedIface + local reloadedIface local i k [ "$param" = 'on_boot' ] && pbrBootFlag=1 && return 0 @@ -2880,6 +2881,7 @@ start_service() { case $serviceStartTrigger in on_interface_reload) + resolver 'store_hash' output_okn output 1 "Reloading Interface: $reloadedIface " json_add_array 'gateways'