#!/bin/sh
##
## service(8) clone for Solaris to emulate Red Hat Linux
## Copyright (c) 2008-2009 SATOH Fumiyasu @ OSS Technology, Inc.
##               <http://www.osstech.co.jp>
##
## License: GNU General Public License version 2 or later
## Date: 2009-03-28, since 2008-06-14
##

set -u

PATH="/usr/sbin:/usr/bin:/sbin:/bin"
export PATH

perr()
{
  echo "$0: ERROR: $*" 1>&2
}

pdie()
{
  perr "$*"
  exit 1
}

vendor_id="${SERVICE_VENDOR_ID-osstech}"
init_dir="${SERVICE_INIT_DIR:-/etc/init.d}"

cmd_usage="Usage: $0 SERVICE COMMAND"

if [ $# -eq 0 ]; then
  echo "$cmd_usage"
  exit 1
fi

sv="$1"; shift

## ======================================================================

cd /

if [ X"$sv" = X"--status-all" ]; then
  cd "$init_dir"
  for sv in ${vendor_id:+$vendor_id-}*; do
    case X"$sv" in
    X*.*)
      : Ignore
      ;;
    *)
      [ -f "$sv" ] && [ -x "$sv" ] && "$init_dir/$sv" status
      ;;
    esac
  done
  exit 0
fi

sv_init="$init_dir/$sv"
if [ ! -x "$sv_init" ]; then
  pdie "Unrecognized service: $sv"
fi

"$sv_init" ${1+"$@"}
exit "$?"

