Blob Blame History Raw
#!/bin/bash
#
#       /etc/rc.d/init.d/murmur
#
#       starts the murmur voip server
#
# chkconfig: - 20 80
# description:	murmur is the server for the Mumble
#		voip suite aimed at gamers
# processname: murmur
# config: /etc/mumble-server.ini
# pidfile: /var/run/mumble-server/mumble-server.pid


. /etc/rc.d/init.d/functions

prog=murmurd
lockfile=/var/lock/subsys/murmurd
RETVAL=0
INIFILE=/etc/mumble-server.ini
MURMUR_USER=mumble-server
MURMUR_GROUP=mumble-server
MURMUR_OPTS="-ini $INIFILE"

start() {
        echo -n "Starting murmur: "
	
	status $prog &> /dev/null # Murmur is running
	RETVAL=$?
	if [ $RETVAL -eq 0 ]; then
		success 
		echo
		return $RETVAL
	fi

	daemon "$prog $MURMUR_OPTS"
	RETVAL=$?
	if [ $RETVAL -eq 0 ]; then
		touch "$lockfile" && success || failure
	fi
	echo
	return $RETVAL
}

stop() {
        echo -n "Shutting down murmur: "
	killproc $prog -INT
	RETVAL=$?
	if [ $RETVAL -eq 0 ]; then
		/bin/rm "$lockfile" 2> /dev/null && success || failure
	fi
	echo
	return $RETVAL
}

restart() {
	stop
	start
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
	status $prog
	RETVAL=$?	
        ;;
    restart|force-reload)
	restart
        ;;
    reload)
        ;;
    condrestart)
        [ -f "$lockfile" ] && restart
	;;
    *)
        echo "Usage: <servicename> {start|stop|status|restart|reload|force-reload|condrestart}"
        exit 1
        ;;
esac
exit $RETVAL