Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion mesh11sd/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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 <rob@blue-wave.net>
PKG_LICENSE:=GPL-2.0-only
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Josef Schlehofer <pepe.schlehofer@gmail.com>
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 <pepe.schlehofer@gmail.com>
---
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 "
2 changes: 1 addition & 1 deletion nodogsplash/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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)?
Expand Down
6 changes: 3 additions & 3 deletions nodogsplash/files/etc/init.d/nodogsplash
Original file line number Diff line number Diff line change
Expand Up @@ -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)"
Expand All @@ -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 \
Expand All @@ -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
Expand Down
4 changes: 2 additions & 2 deletions opennds/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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)?
Expand All @@ -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

Expand Down
Loading