#!/bin/sh
#
# ipcs-provisioning  This shell script takes care of starting and stopping ipcs-provisioning
#               
#
# chkconfig: 2345 92 60
# description: Ipcs Provisioning
# processname: ipcs-provisioning

# Source function library.
. /etc/rc.d/init.d/functions

[ -f /usr/local/pbx/apps/ipcs/sbin/ipcs-provisioning ] || exit 0

RETVAL=0

# See how we were called.
case "$1" in
  start)

	# Check if 
	if [ ! -f "/usr/local/pbx/apps/ipcs/etc/ssl/cert/pbx/server.key" ]
	then
		echo "Fatal Error: ipcs private key missing: /usr/local/pbx/apps/ipcs/etc/ssl/cert/pbx/server.key"
	fi

        # Start daemons.
        echo -n "Starting Ipcs Provisioning daemon: "
        daemon /usr/local/pbx/apps/ipcs/sbin/safe_ipcs-provcl
	RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/astium
        ;;
  stop)
        # Stop daemons.
        echo -n "Shutting down Ipcs Provisioning daemon: "

	test=`ps ax|grep safe_ipcs|grep -v grep`
	if [ -n "$test" ]
	then
		ps ax|grep -v grep|grep safe_ipcs|awk '{ print $1 }'|xargs kill -9 > /dev/null 2>&1
	fi

	test=`ps ax|grep ipcs-provisioning|grep -v grep`
	if [ -n "$test" ]
	then
        	killall -q -9 /usr/local/pbx/apps/ipcs/sbin/ipcs-provisioning > /dev/null 2>&1
	fi
	RETVAL=0
        echo
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsy/safe_ipcs-provcl
        ;;
  status)
	isrunning=`ps aux|grep safe_ipcs-provcl|grep -v grep|grep -v status|grep -v vim|grep -v vi`
 
        if [ -n "$isrunning" ]
	then
		echo "Ipcs Provisioning daemon is running"
	fi
        if [ -z "$isrunning" ]
	then
		echo "Ipcs Provisioning daemon is not running"
	fi
        	
	RETVAL=$?
	;;
  reload)
	RETVAL=$?
	;;
  restart)
	$0 stop
	$0 start
	RETVAL=$?
	;;
  *)
        echo "Usage: ipcs-provisioning {start|stop|restart|reload|status}"
        exit 1
esac

exit $RETVAL
