From 7519a36774ca0e50dfae6a4b9fea75cab95171a5 Mon Sep 17 00:00:00 2001 From: Luiz Angelo Daros de Luca Date: Tue, 11 Sep 2018 22:35:09 -0300 Subject: base-files,procd: add generic service status MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds a default status action for init.d scripts. procd "service status" will return: 0) for loaded services (even if disabled by conf or dead) 3) for inactive services 4) when filtering a non-existing instance Signed-off-by: Luiz Angelo Daros de Luca [rebased, cleaned up] Signed-off-by: Petr Štetiar --- package/base-files/files/etc/rc.common | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'package/base-files/files/etc') diff --git a/package/base-files/files/etc/rc.common b/package/base-files/files/etc/rc.common index 37adab0c54..d3fa3be505 100755 --- a/package/base-files/files/etc/rc.common +++ b/package/base-files/files/etc/rc.common @@ -105,9 +105,10 @@ ${INIT_TRACE:+set -x} . "$initscript" [ -n "$USE_PROCD" ] && { - EXTRA_COMMANDS="${EXTRA_COMMANDS} running trace" + EXTRA_COMMANDS="${EXTRA_COMMANDS} running status trace" EXTRA_HELP="\ running Check if service is running + status Service status " . $IPKG_INSTROOT/lib/functions/procd.sh @@ -153,6 +154,14 @@ ${INIT_TRACE:+set -x} running() { service_running "$@" } + + status() { + if eval "type status_service" 2>/dev/null >/dev/null; then + status_service "$@" + else + _procd_status "$(basename ${basescript:-$initscript})" "$1" + fi + } } ALL_COMMANDS="start stop reload restart boot shutdown enable disable enabled depends ${EXTRA_COMMANDS}" -- cgit v1.2.3