From 7b7be053b8b6f763b54a662020e84edc3b202d2b Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 30 Aug 2021 17:30:55 +0200 Subject: [PATCH] package/smcroute: add sysv init script Same start order as mrouted, start after networking is up. Custom command line options, like startup delay, or disable multicast routing by default, can be added to the optional /etc/default/smcroute env. file. Signed-off-by: Joachim Wiberg Signed-off-by: Arnout Vandecappelle (Essensium/Mind) --- package/smcroute/S41smcroute | 48 ++++++++++++++++++++++++++++++++++++ package/smcroute/smcroute.mk | 5 ++++ 2 files changed, 53 insertions(+) create mode 100755 package/smcroute/S41smcroute diff --git a/package/smcroute/S41smcroute b/package/smcroute/S41smcroute new file mode 100755 index 0000000000..bdc0f87645 --- /dev/null +++ b/package/smcroute/S41smcroute @@ -0,0 +1,48 @@ +#!/bin/sh + +NAME="smcroute" +DAEMON="smcrouted" +PIDFILE="/var/run/$NAME.pid" + +# shellcheck source=/dev/null +[ -r "/etc/default/$NAME" ] && . "/etc/default/$NAME" + +cmd() +{ + start-stop-daemon -q -p "$PIDFILE" "$@" + status=$? + if [ $status -eq 0 ]; then + echo "OK" + else + echo "FAIL" + fi + return $status +} + +case "$1" in + start) + printf 'Starting %s: ' "$DAEMON" + # shellcheck disable=SC2086 # we need the word splitting + cmd -S -x "/usr/sbin/$DAEMON" -- $SMCROUTED_ARGS + ;; + + stop) + printf 'Stopping %s: ' "$DAEMON" + cmd -K + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + reload) + printf 'Reloading %s: ' "$DAEMON" + cmd -K -s HUP + ;; + + *) + echo "Usage: $0 {start|stop|restart|reload}" + exit 1 +esac diff --git a/package/smcroute/smcroute.mk b/package/smcroute/smcroute.mk index e4ee81db6f..9cce0acbbc 100644 --- a/package/smcroute/smcroute.mk +++ b/package/smcroute/smcroute.mk @@ -19,4 +19,9 @@ else SMCROUTE_CONF_OPTS += --without-libcap endif +define SMCROUTE_INSTALL_INIT_SYSV + $(INSTALL) -m 755 -D package/smcroute/S41smcroute \ + $(TARGET_DIR)/etc/init.d/S41smcroute +endef + $(eval $(autotools-package)) -- 2.30.2