# Check if the service is already running?
if [ ! -f /var/lock/subsys/ejabberd ]; then
msg_starting ejabberd
- daemon /usr/sbin/ejabberdctl start
+ daemon --user jabber /usr/sbin/ejabberdctl start
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
msg_starting "ejabberd start confirmation"
- daemon /usr/sbin/ejabberdctl started
+ daemon --user jabber /usr/sbin/ejabberdctl started
RETVAL=$?
fi
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/ejabberd
# Stop daemons.
if [ -f /var/lock/subsys/ejabberd ]; then
msg_stopping ejabberd ; busy
- out=$(/usr/sbin/ejabberdctl stop 2>&1)
+ out=$(/bin/su - jabber -s /bin/sh -c "/usr/sbin/ejabberdctl stop" 2>&1)
RETVAL=$?
if [ $RETVAL -eq 0 ]; then
- out2=$(/usr/sbin/ejabberdctl stopped 2>&1)
+ out2=$(/bin/su - jabber -s /bin/sh -c "/usr/sbin/ejabberdctl stopped" 2>&1)
RETVAL=$?
fi
if [ $RETVAL -eq 0 ]; then
fi
}
+reload() {
+ # Reload configuration
+ if [ ! -f /var/lock/subsys/ejabberd ]; then
+ msg_not_running ejabberd
+ RETVAL=7
+ return
+ fi
+ msg_reloading ejabberd
+ daemon --user jabber /usr/sbin/ejabberdctl reload_config
+ RETVAL=$?
+}
+
# See how we were called.
case "$1" in
start)
start
;;
reload|force-reload)
- if [ -f /var/lock/subsys/ejabberd ]; then
- stop
- start
- RETVAL=$?
- else
- msg_not_running ejabberd
- RETVAL=7
- fi
+ reload
;;
status)
status --pidfile $EJABBERD_PID_PATH ejabberd