base-files,procd: add generic service status
[openwrt/openwrt.git] / package / base-files / files / etc / rc.common
index 37adab0c54e1edcb7a5de32726ff1e42ca6c13c9..d3fa3be5058dcdd146bfaa5afa63b1fe77dabeff 100755 (executable)
@@ -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}"