#!/bin/sh
# /etc/init.d/perforo
#
### BEGIN INIT INFO
# Provides:          perforo
# Required-Start:    $local_fs
# Required-Stop:     $local_fs
# Default-Start:     5
# Default-Stop:      0 6
# Short-Description: Turns on perforo daemon
# Description:       Enables perforo daemon for machine to machine communication
### END INIT INFO

DAEMON=/usr/sbin/perforo
DAEMONOPTS=""
BGDAEMONOPTS="-b"
NAME=perforo

ulimit -c unlimited

# Remove .lock files left over from power loss
find /etc/raven/perforo/ -name "*ini.lock" -exec rm {} \;

case "$1" in
  start)
    echo -n "Starting app: $NAME"

    #Start the regular perforo process
    mkdir -p /var/run/${NAME}
    start-stop-daemon --start --background -m --pidfile /var/run/${NAME}/${NAME}.pid --exec ${DAEMON} -- ${DAEMONOPTS}

    #Start the background file sync perforo instance
    mkdir -p /var/run/${NAME}
    start-stop-daemon --start --background -m --pidfile /var/run/${NAME}/${NAME}_bg.pid --exec ${DAEMON} -- ${BGDAEMONOPTS}

    echo "."

  ;;
  stop)
    echo -n "Stopping app: $NAME"

    #Stop the regular perforo process
    start-stop-daemon --stop --pidfile /var/run/${NAME}/${NAME}.pid --retry=TERM/10/KILL/5 --oknodo --exec ${DAEMON} -- ${DAEMONOPTS}
    rm -f /var/run/${NAME}/${NAME}.pid

    #Stop the background file sync perforo instance
    start-stop-daemon --stop --pidfile /var/run/${NAME}/${NAME}_bg.pid --retry=TERM/10/KILL/5 --oknodo --exec ${DAEMON} -- ${BGDAEMONOPTS}
    rm -f /var/run/${NAME}/${NAME}_bg.pid

    echo "."

  ;;
  reset)
    echo -n "Resetting app: $NAME"

    #Stop the regular perforo process
    start-stop-daemon --stop --pidfile /var/run/${NAME}/${NAME}.pid --retry=TERM/10/KILL/5 --oknodo --exec ${DAEMON} -- ${DAEMONOPTS}
    rm -f /var/run/${NAME}/${NAME}.pid

    #Stop the background file sync perforo instance
    start-stop-daemon --stop --pidfile /var/run/${NAME}/${NAME}_bg.pid --retry=TERM/10/KILL/5 --oknodo --exec ${DAEMON} -- ${BGDAEMONOPTS}
    rm -f /var/run/${NAME}/${NAME}_bg.pid

    echo "."

    #Start the regular perforo process
    mkdir -p /var/run/${NAME}
    start-stop-daemon --start --background -m --pidfile /var/run/${NAME}/${NAME}.pid --exec ${DAEMON} -- ${DAEMONOPTS}

    #Start the background file sync perforo instance
    mkdir -p /var/run/${NAME}
    start-stop-daemon --start --background -m --pidfile /var/run/${NAME}/${NAME}_bg.pid --exec ${DAEMON} -- ${BGDAEMONOPTS}

    echo "."

  ;;
  *)
    echo "Usage /etc/init.d/perforo [start|stop|reset]"
    exit -1
  ;;
esac

exit 0
