#!/bin/sh
# WARNING: This file was auto-generated. Do not edit!
echon() {
  echo -n "$*"
}
set -e
PATH="/bin:/usr/bin:/usr/local/bin:$PATH"
export PATH
program=`basename $0`

warn() {
  echo "$program: Warning: $@" >&2
}

fatal() {
  echo "$program: Fatal error: $@" >&2
  exit 1
}

usage_nocd() {
  min=$1; max=$2; opts=$3; msg=$4; shift 4

  while getopts q$opts flag; do
    case $flag in
      q)
        exec >/dev/null
	;;
      \? | :)
        exit 1
	;;
      ?)
        eval "opt_${flag}=true"
	;;
    esac
  done

  shift=$(( $OPTIND - 1 ))
  shift $shift

  if [ $# -lt $min -o $# -gt $max ]; then
    echo "$0: usage: $program [-q] $msg" >&2
    exit 1
  fi
}

usage() {
  usage_nocd "$@"
  cd "$SVSCANDIR"
}

SVSCANDIR="${SVSCANDIR-/service}"
SVCLOCKDIR="${SVCLOCKDIR-/var/service}"
opt_l=false
usage 1 9999 '' "[-l] [SIGNAL] service [service ...]" "$@"
shift $(( $OPTIND - 1 ))

if $opt_l; then
    echo "svc-kill accepts the following signals:"
    echo "SIGALRM"
    echo "SIGCONT"
    echo "SIGHUP"
    echo "SIGINT"
    echo "SIGKILL"
    echo "SIGSTOP"
    echo "SIGTERM (default)"
    exit 0
fi

flag=-t
case $1 in
    SIGSTOP | STOP     ) flag=-p; shift;;
    SIGCONT | CONT     ) flag=-c; shift;;
    SIGHUP  | HUP  |  1) flag=-h; shift;;
    SIGALRM | ALRM | 14) flag=-a; shift;;
    SIGINT  | INT  |  2) flag=-i; shift;;
    SIGTERM | TERM | 15) flag=-t; shift;;
    SIGKILL | KILL |  9) flag=-k; shift;;
esac

if [ $# -lt 1 ]; then
    echo "$0: No services named to kill"
    exit 1
fi

exec svc $flag "$@"
