X-Git-Url: http://git.pld-linux.org/?p=packages%2Fejabberd.git;a=blobdiff_plain;f=ejabberd.init;h=9173899c55414e88d449526a890ecef9b9fc0bc5;hp=f78fb6c4c671f3fd30a5d2ba28c84f405174792c;hb=e3426334f506a4d920400c0ad540e506af50a98a;hpb=b16b585ed1c389497980d59aae598fa7bccd28af diff --git a/ejabberd.init b/ejabberd.init index f78fb6c..9173899 100644 --- a/ejabberd.init +++ b/ejabberd.init @@ -22,11 +22,11 @@ start() { # 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 @@ -39,10 +39,10 @@ stop() { # 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 @@ -58,6 +58,18 @@ stop() { 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) @@ -71,14 +83,7 @@ case "$1" in 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