#! /bin/sh
#
# chkconfig: - 85 15
# description: zabbix server daemon
#

### BEGIN INIT INFO
# Provides: zabbix
# Required-Start: $local_fs $network
# Required-Stop: $local_fs $network
# Default-Start:
# Default-Stop: 0 1 2 3 4 5 6
# Short-Description: start and stop zabbix server
# Description: Zabbix Server
### END INIT INFO

# zabbix details
if [ -x /usr/sbin/zabbix_server ]; then
    ZABBIX=zabbix_server
elif [ -x /usr/sbin/zabbix_server_mysql ]; then
    ZABBIX=zabbix_server_mysql
elif [ -x /usr/sbin/zabbix_server_pgsql ]; then
    ZABBIX=zabbix_server_pgsql
elif [ -x /usr/sbin/zabbix_server_sqlite3 ]; then
    ZABBIX=zabbix_server_sqlite3
else
    exit 5
fi

CONF=/etc/zabbix/zabbix_server.conf
PIDFILE=/var/run/zabbix/zabbix_server.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

[ -e $CONF ] || exit 6

RETVAL=0

case "$1" in
    start)
        echo -n "Starting zabbix server: "
        daemon $ZABBIX -c $CONF
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/zabbix
        ;;
    stop)
        echo -n "Shutting down zabbix server: "
        killproc $ZABBIX
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/zabbix
        ;;
    restart)
        $0 stop
        $0 start
        RETVAL=$?
        ;;
    reload)
        echo -n $"Reloading zabbix server: "
        killproc -p $PIDFILE $ZABBIX -HUP
        RETVAL=$?
	echo
        ;;
    condrestart)
        if [ -f /var/lock/subsys/zabbix ]; then
            $0 stop
            $0 start
        fi
        RETVAL=$?
        ;;
    status)
        status $ZABBIX
        RETVAL=$?
        ;;
    *)
	echo "Usage: $0 {start|stop|restart|condrestart|reload|status}"
	exit 1
	;;
esac

exit $RETVAL

