diff --git a/mesh11sd/Makefile b/mesh11sd/Makefile index f7e3543d1..beaea3bd5 100644 --- a/mesh11sd/Makefile +++ b/mesh11sd/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mesh11sd PKG_VERSION:=6.2.1 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_MAINTAINER:=Rob White PKG_LICENSE:=GPL-2.0-only diff --git a/mesh11sd/patches/100-skip-runtime-setup-for-informational-options.patch b/mesh11sd/patches/100-skip-runtime-setup-for-informational-options.patch new file mode 100644 index 000000000..c7234e7b6 --- /dev/null +++ b/mesh11sd/patches/100-skip-runtime-setup-for-informational-options.patch @@ -0,0 +1,51 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Josef Schlehofer +Date: Thu, 6 Aug 2026 13:00:00 +0200 +Subject: [PATCH] mesh11sd: skip the environment setup for the informational + options + +get_current_setup() runs before any argument is parsed, so mesh11sd -v +and mesh11sd -h collect the whole runtime environment first. That +includes refresh_bridgemac(), which calls wait_for_interface() for +br-lan; when that interface is not up, the poll loop runs for the full +interface_timeout, ten seconds by default. + +On a running router br-lan is up, the loop exits on its first iteration +and the delay is invisible. It shows up wherever the interface is +absent or still coming up, such as the OpenWrt package CI: it probes +every installed executable for its version with a ten second timeout, +so each probe was killed before mesh11sd printed anything. + +The informational branches reference only $version and $tmpdir, and +both already hold a value before the setup pass, so it can be skipped +for them. The one visible consequence is that the help text now names +the initial /tmp/mesh11sd rather than $log_mountpoint/mesh11sd, which +get_current_setup() would have assigned on a node that configures +log_mountpoint elsewhere. + +Upstream-Status: Denied [https://github.com/openNDS/mesh11sd/pull/204] +Closed in favour of an upstream change that moves the +get_current_setup() call after the version and help handling. That +change is in the private 7.2.0 beta and is expected in the 7.2.0 +release; drop this patch once the package is bumped to it. + +Signed-off-by: Josef Schlehofer +--- + src/mesh11sd | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +--- a/src/mesh11sd ++++ b/src/mesh11sd +@@ -5976,7 +5976,11 @@ else + mesh11sdpid=$(pgrep -f "/bin/sh /usr/sbin/mesh11sd") + fi + +-get_current_setup 2> /dev/null ++# Skip the expensive runtime setup for informational options. ++case "$1" in ++ ""|-h|--help|help|-v|--version|version) ;; ++ *) get_current_setup 2> /dev/null ;; ++esac + + if [ -z "$1" ] || [ "$1" = "-h" ] || [ $1 = "--help" ] || [ $1 = "help" ]; then + echo " diff --git a/nodogsplash/Makefile b/nodogsplash/Makefile index 09a81310f..8102f0a96 100644 --- a/nodogsplash/Makefile +++ b/nodogsplash/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=nodogsplash PKG_VERSION:=5.0.2 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/nodogsplash/nodogsplash/tar.gz/v$(PKG_VERSION)? diff --git a/nodogsplash/files/etc/init.d/nodogsplash b/nodogsplash/files/etc/init.d/nodogsplash index 4af51ca24..8b186486c 100755 --- a/nodogsplash/files/etc/init.d/nodogsplash +++ b/nodogsplash/files/etc/init.d/nodogsplash @@ -119,7 +119,7 @@ generate_uci_config() { config_get val "$cfg" config if [ -n "$val" ]; then if [ ! -f "$val" ]; then - echo "Configuration file '$file' doesn't exist." >&2 + echo "Configuration file '$val' doesn't exist." >&2 return 1 fi addline "$(cat $val)" @@ -142,7 +142,7 @@ generate_uci_config() { addline "GatewayInterface $ifname" for option in preauth binauth \ - daemon debuglevel maxclients gatewayname gatewayinterface gatewayiprange \ + daemon debuglevel maxclients gatewayname gatewayiprange \ gatewayaddress gatewayport webroot splashpage statuspage \ redirecturl sessiontimeout preauthidletimeout authidletimeout checkinterval \ setmss mssvalue trafficcontrol downloadlimit uploadlimit \ @@ -158,7 +158,7 @@ generate_uci_config() { for option in fasport fasremoteip faspath fas_secure_enabled ; do config_get val "$cfg" "$option" if [ -n "$val" ]; then - echo "Warning: nodogsplash does not support $val" + echo "Warning: nodogsplash does not support $option" return 1 fi done diff --git a/opennds/Makefile b/opennds/Makefile index edda12e0f..172ee79e7 100644 --- a/opennds/Makefile +++ b/opennds/Makefile @@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=opennds PKG_VERSION:=10.3.1 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/opennds/opennds/tar.gz/v$(PKG_VERSION)? @@ -30,7 +30,7 @@ define Package/opennds CATEGORY:=Network DEPENDS:=+libmicrohttpd-no-ssl TITLE:=open Network Demarcation Service - URL:=https://github.com/opennds/opennds + URL:=https://github.com/openNDS/openNDS CONFLICTS:=nodogsplash endef