#!/bin/sh
# Start/Stop script for l7vsd
#
# chkconfig: 2345 95 34
# description: Start and stop l7vsd
#              
# processname: l7vsd
#
# Author: Shinya TAKEBAYASHI
# Released: October 2007
# Licence: GNU General Public Licence

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

[ -f /usr/sbin/l7vsd ] || exit 0

PROG="l7vsd"
DAEMON="/usr/sbin/l7vsd"
SOCKFILE=/var/run/l7vs/l7vs

start() {
    RETVAL=0
    if [ -a $SOCKFILE ]; then
	echo "$PROG is already running."
	RETVAL=-1
    else
	echo -n $"Starting $PROG: " 
	start-stop-daemon --start --quiet --nicelevel +19 --exec $DAEMON
	RETVAL=$?
    fi
    echo
    return $RETVAL
}

stop() {
    echo -n $"Stopping $PROG: "
    start-stop-daemon --stop --quiet --exec $DAEMON
    echo
    RETVAL=$?
    if [ $RETVAL -eq 0 ]; then
	rm -rf $SOCKFILE
    fi
    
    return $RETVAL
}

status() {
    PID=`pidof $DAEMON`
    RETVAL=$?
    if [ $RETVAL != 0 ]; then
	echo "l7vsd is not running."
    else
	echo "l7vsd is running with pid: $PID"
    fi
}

case "$1" in
	start)
	    start
	    ;;
	
	stop)
	    stop
	    ;;
	
	status)
	    status l7vsd
	    ;;

	restart)
	    stop
	    start
	    ;;

	condrestart)
	    if test "x`pidof l7vsd`" != x; then
		stop
		start
	    fi
	    ;;
	
	*)
	    echo $"Usage: $0 {start|stop|restart|condrestart|status}"
	    RETVAL=1

esac

exit $RETVAL
