#!/bin/bash . /etc/rc.conf . /etc/rc.d/functions . /etc/profile.d/jre.sh [ -f "/etc/conf.d/openfire" ] && . /etc/conf.d/openfire OPENFIRE_HOME="/usr/share/openfire" OPENFIRE_LOGDIR="/var/log/openfire" OPENFIRE_LIB="/usr/lib/openfire" OPENFIRE_RUN_CMD="java -server ${OPENFIRE_OPTS} -DopenfireHome=${OPENFIRE_HOME} -Dopenfire.lib.dir=${OPENFIRE_LIB} -classpath ${OPENFIRE_LIB}/startup.jar -jar ${OPENFIRE_LIB}/startup.jar" case "$1" in start) stat_busy "Starting Openfire Daemon" rm -f $OPENFIRE_LOGDIR/nohup.out su -s /bin/sh -c "nohup $OPENFIRE_RUN_CMD > $OPENFIRE_LOGDIR/nohup.out 2>&1 &" openfire sleep 2 RETVAL=$? PID=`ps ax --width=1000 | grep openfire | grep startup.jar | awk '{print $1}'` if [ $RETVAL -eq 0 -a ! -z "$PID" ]; then echo $PID > /var/run/openfire.pid add_daemon openfire sleep 2 stat_done else stat_fail fi ;; stop) stat_busy "Stopping Openfire Daemon" kill `cat /var/run/openfire.pid` if [ $? -gt 0 ]; then stat_fail else rm -f /var/run/openfire.pid rm_daemon openfire stat_done fi ;; restart) $0 stop sleep 10 $0 start ;; *) echo "usage: $0 {start|stop|restart}" esac