From patchwork Wed Oct 31 16:35:27 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [1/2] configurehood: Prevent multiple instances at the same time From: Adrian Schmutzler X-Patchwork-Id: 945 Message-Id: <20181031163527.6462-1-freifunk@adrianschmutzler.de> To: franken-dev@freifunk.net Date: Wed, 31 Oct 2018 17:35:27 +0100 This is based on a similar patch from Tim Niemeyer. Signed-off-by: Adrian Schmutzler Reviewed-by: Robert Langhammer Reviewed-by: Fabian Bläse Reviewed-by: Fabian Bläse > --- src/packages/fff/fff-hoods/Makefile | 2 +- src/packages/fff/fff-hoods/files/usr/sbin/configurehood | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/packages/fff/fff-hoods/Makefile b/src/packages/fff/fff-hoods/Makefile index d492572d..5233e611 100644 --- a/src/packages/fff/fff-hoods/Makefile +++ b/src/packages/fff/fff-hoods/Makefile @@ -1,7 +1,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=fff-hoods -PKG_VERSION:=3 +PKG_VERSION:=4 PKG_RELEASE:=1 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME) diff --git a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood index 47e228b7..e31ba219 100755 --- a/src/packages/fff/fff-hoods/files/usr/sbin/configurehood +++ b/src/packages/fff/fff-hoods/files/usr/sbin/configurehood @@ -1,5 +1,13 @@ #!/bin/sh +# Allow only one instance +lockfile="/var/lock/${0##*/}.lock" +if ! lock -n "$lockfile"; then + echo "Only one instance of $0 allowed." + exit 1 +fi +trap "lock -u \"$lockfile\"" INT TERM EXIT + . /usr/share/libubox/jshn.sh . /lib/functions/fff/keyxchange . /lib/functions/fff/network