чување 5c01bbae598c2265d27a8f7852879f8d237d8613 родитељ e6d518f4e0e60216ecf0a62f17176b1453ef0ee9 Аутор: Страхиња Радић <contact@strahinja.org> Датум: Thu, 21 Jul 2022 21:15:04 +0200 Make bare.sh consistent with sdhcp Signed-off-by: Страхиња Радић <contact@strahinja.org> Diffstat:
| M | svc.d/avail/sdhcp | | | 2 | ++ |
| M | svc.d/bare.sh | | | 65 | +++++++++++++++++++++-------------------------------------------- |
измењених датотека: 2, додавања: 23(+), брисања: 44(-)
diff --git a/svc.d/avail/sdhcp b/svc.d/avail/sdhcp @@ -33,7 +33,9 @@ case $1 in 2>&1 || exit 2 fi rm "${PIDFILE}";; + *) return $?;; esac;; -r) svc -k ${svc} svc -s ${svc};; + *) exit 2;; esac diff --git a/svc.d/bare.sh b/svc.d/bare.sh @@ -29,49 +29,26 @@ done PID=$(pidof -o %PPID ${BIN}) case $1 in - -e) [ -z "${PID}" ] && exit 2 - exit 0;; - -s) if [ -z "${PID}" ]; then - ${BIN} ${PARAMS} & - tries=4 - while [ -z "$(pidof -o %PPID "${BIN}" 2>/dev/null)" ] - do - /bin/usleep 100000 - tries=$((tries-1)) - if [ "${tries}" -eq 0 ]; then - exit 2 - fi - done - exit 0 - else - exit 1 - fi;; - -k) if [ -z "${PID}" ]; then - exit 1 - else - pkill -f "${BIN}" >/dev/null 2>&1 - if [ -n "$(pidof -o %PPID "${BIN}" 2>/dev/null)" ] - then - pkill -9 -f "${BIN}" >/dev/null 2>&1 || exit 2 - fi - fi;; - -r) if [ -n "${PID}" ]; then - pkill -f "${BIN}" >/dev/null 2>&1 - if [ -n "$(pidof -o %PPID "${BIN}" 2>/dev/null)" ] - then - pkill -9 -f "${BIN}" >/dev/null 2>&1 || exit 2 - fi - fi - ${BIN} ${PARAMS} & - /bin/usleep 500000 - tries=4 - while [ -z "$(pidof -o %PPID "${BIN}" 2>/dev/null)" ] - do - /bin/usleep 100000 - tries=$((tries-1)) - if [ "${tries}" -eq 0 ]; then - exit 2 - fi - done;; + -e) [ -z "${PID}" ] && exit 2;; + -s) $0 "${SERVICE}" -e + case $? in + 0) return 1;; + 2) ${BIN} ${PARAMS} >/dev/null 2>&1 &;; + *) return $?;; + esac;; + -k) $0 "${SERVICE}" -e + case $? in + 2) return 1;; + 0) pkill -f "${BIN}" >/dev/null 2>&1 + if [ -n "$(pidof -o %PPID "${BIN}" \ + 2>/dev/null)" ] + then + pkill -9 -f "${BIN}" >/dev/null 2>&1 \ + || exit 2 + fi;; + *) return $?;; + esac;; + -r) $0 "${SERVICE}" -k + $0 "${SERVICE}" -s;; *) exit 2;; esac