#      This shell script takes care of starting and stopping MWBCC.
#
# chkconfig: 5 80 30
# description: add RCPT system.
# processname: mwbcc
# config: /etc/mail/mwbcc/mwbcc.xml
# pidfile: /var/run/mwbcc.pid

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

# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
[ -f /opt/nec/mail/mwbcc/mwmctl ] || exit 0
# See how we were called.
case "$1" in
start)
# Start daemons.
echo -n "MWBCC Starting: "
if [ -f /var/run/mwbcc.pid ]; then
pid=`head -1 /var/run/mwbcc.pid`
if [ -f /proc/$pid/cmdline ]; then
cmd=`cat /proc/$pid/status | head -1 | awk '{ print $2 }'`
if [ $cmd == "mwbcc" ]; then
echo -n "already MWBCC running..."
exit 0
fi
fi
fi
daemon /opt/nec/mail/mwbcc/mwmctl
RETVAL=$?
echo
if [ $RETVAL = 0 ]; then
touch /var/lock/subsys/mwmctl
fi
;;
stop)
	if [ -s /var/run/mwbcc.pid ] ; then
pid=$(cat /var/run/mwbcc.pid)
	kill -TERM $pid
	loop=0
	while [ $loop -lt 15 ] ; do
	kill -0 $pid >/dev/null 2>&1 || break
	[ $loop -eq 1 ] && echo -n "Sleeping for 15 seconds to allow mwbcc to shutdown"
	[ $loop -ge 1 ] && echo -n "."
	sleep 1
loop=$(( $loop + 1 ))
	done
	kill -0 $pid >/dev/null 2>&1 && echo $"not stop" || echo $"done" && rm -f /var/lock/subsys/mwmctl
	else
	kill -TERM $(pgrep mwmctl) >/dev/null 2>&1 && echo $"not stop" || echo $"done" && rm -f /var/lock/subsys/mwmctl
	fi
	;;

	reload)
        if [ -s /var/run/mwbcc.pid ] ; then
pid=$(cat /var/run/mwbcc.pid)
        kill -TERM $pid
        loop=0
        while [ $loop -lt 15 ] ; do
        kill -0 $pid >/dev/null 2>&1 || break
        [ $loop -eq 1 ] && echo -n "Sleeping for 15 seconds to allow mwbcc
        to shutdown"
        [ $loop -ge 1 ] && echo -n "."
        sleep 1
loop=$(( $loop + 1 ))
        done
        kill -0 $pid >/dev/null 2>&1 && echo $"not stop" || echo $"done" && rm -f
        /var/lock/subsys/mwmctl
        else
        kill -TERM $(pgrep mwmctl) >/dev/null 2>&1 && echo $"not stop" || echo $"d
        one" && rm -f /var/lock/subsys/mwmctl
        fi
        sleep 3

# Start daemons.
        echo -n "MWBCC Starting: "
        if [ -f /var/run/mwbcc.pid ]; then
        pid=`head -1 /var/run/mwbcc.pid`
        if [ -f /proc/$pid/cmdline ]; then
        cmd=`cat /proc/$pid/status | head -1 | awk '{ print $2 }'`
        if [ $cmd == "mwmctl" ]; then
        echo -n "already MWBCC running..."
        exit 0
        fi
        fi
        fi
        daemon /opt/nec/mail/mwbcc/mwmctl
        RETVAL=$?
        echo
        if [ $RETVAL = 0 ]; then
        touch /var/lock/subsys/mwmctl
        fi
        ;;

	restart)

	if [ -s /var/run/mwbcc.pid ] ; then
pid=$(cat /var/run/mwbcc.pid)
	kill -TERM $pid
	loop=0
	while [ $loop -lt 15 ] ; do
	kill -0 $pid >/dev/null 2>&1 || break
	[ $loop -eq 1 ] && echo -n "Sleeping for 15 seconds to allow mwbcc
	to shutdown"
	[ $loop -ge 1 ] && echo -n "."
	sleep 1
loop=$(( $loop + 1 ))
	done
	kill -0 $pid >/dev/null 2>&1 && echo $"not stop" || echo $"done" && rm -f
	/var/lock/subsys/mwmctl
	else
	kill -TERM $(pgrep mwmctl) >/dev/null 2>&1 && echo $"not stop" || echo $"d
	one" && rm -f /var/lock/subsys/mwmctl
	fi
	sleep 3

# Start daemons.
	echo -n "MWBCC Starting: "
	if [ -f /var/run/mwbcc.pid ]; then
	pid=`head -1 /var/run/mwbcc.pid`
	if [ -f /proc/$pid/cmdline ]; then
	cmd=`cat /proc/$pid/status | head -1 | awk '{ print $2 }'`
	if [ $cmd == "mwmctl" ]; then
	echo -n "already MWBCC running..."
	exit 0
	fi
	fi
	fi
	daemon /opt/nec/mail/mwbcc/mwmctl
	RETVAL=$?
	echo
	if [ $RETVAL = 0 ]; then
	touch /var/lock/subsys/mwmctl
	fi
	;;

	status)

	if [ -f /var/run/mwbcc.pid ]; then
	pid=`head -1 /var/run/mwbcc.pid`
	if [ -f /proc/$pid/cmdline ]; then
	cmd=`cat /proc/$pid/status | head -1 | awk '{ print $2 }'`
	if [ $cmd == "mwmctl" ]; then
	echo "mwmctl (pid $pid) is running..."
	else
	echo "mwmctl is stopped."
	fi
	else
	echo "mwmctl is stopped."
	fi
	else
	echo "mwmctl is stopped."
	fi
	;;

	*)
	echo "Usage: mwmctl {start|stop|reload|status}"
	exit 1
	esac

	exit 0


