gentoo/net-im/ejabberd/files/ejabberd.initd

55 lines
1.0 KiB
Plaintext

#!/sbin/openrc-run
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
extra_started_commands="reload"
depend() {
use dns
need epmd net
provide jabber-server
}
start() {
if ejabberdctl status >/dev/null 2>&1; then
ewarn "ejabberd is already started (manually?)."
return 0
fi
ebegin "Starting ejabberd"
/usr/sbin/ejabberdctl ${EJABBERDCTL_OPTS} start
eend $?
}
reload() {
ebegin "Reloading ejabberd configuration"
/usr/sbin/ejabberdctl ${EJABBERDCTL_OPTS} reload_config
eend $?
}
stop() {
ejabberdctl status >/dev/null 2>&1
if test $? = 3; then
ewarn "ejabberd is already stopped (manually?)."
return 0
fi
ebegin "Stopping ejabberd"
if /usr/sbin/ejabberdctl stop >/dev/null 2>&1; then
cnt=0
sleep 1
while ejabberdctl status >/dev/null 2>&1 || test $? = 1; do
echo -n .
cnt=`expr $cnt + 1`
if [ $cnt -ge 60 ] ; then
eend 1
break
fi
sleep 1
done
eend 0
else
eend 1
einfo "Please, run '/usr/sbin/ejabberdctl stop' to see what's going on."
fi
eend 0
}