X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=exim.init;h=f11f6e8372eba37af5e655194b2f9db00082a3dc;hb=1ee996413c916913dff87e6c9c3dd807a6f36d17;hp=b9f81bdd2a07a35a66a1dfca3177220188321fc2;hpb=d1b56fb40af91129f7563c79fe5d437562de3554;p=packages%2Fexim-lite.git diff --git a/exim.init b/exim.init index b9f81bd..f11f6e8 100644 --- a/exim.init +++ b/exim.init @@ -16,47 +16,70 @@ . /etc/sysconfig/network # Source exim configureation. -if [ -f /etc/sysconfig/exim ] ; then +if [ -f /etc/sysconfig/exim ]; then . /etc/sysconfig/exim else - DAEMON=yes QUEUE=1h fi # Check that networking is up. -if is_no "${NETWORKING}"; then - msg_Network_Down Exim - exit 1 +if is_yes "${NETWORKING}"; then + if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then + msg_network_down Exim + exit 1 + fi +else + exit 0 fi -[ -x /usr/bin/exim ] || exit 0 - +RETVAL=0 # See how we were called. case "$1" in start) # Start daemons. - msg_starting exim - daemon /usr/bin/exim $([ "$DAEMON" = "yes" ] && echo -bd) \ - $([ -n "$QUEUE" ] && echo -q$QUEUE) - touch /var/lock/subsys/exim + if [ ! -f /var/lock/subsys/exim ]; then + msg_starting Exim + daemon exim \ + $( is_yes "$ALLOW_TCP_CONNECTIONS" && echo -bd ) \ + $( [ -n "$QUEUE" ] && echo -q$QUEUE ) + RETVAL=$? + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/exim + else + msg_already_running Exim + fi ;; stop) # Stop daemons. - msg_stopping exim - killproc exim - rm -f /var/lock/subsys/exim + if [ -f /var/lock/subsys/exim ]; then + msg_stopping Exim + killproc exim + rm -f /var/lock/subsys/exim >/dev/null 2>&1 + else + msg_not_running Exim + fi ;; restart) $0 stop $0 start + exit $? ;; status) status exim + exit $? + ;; + reload|force-reload) + if [ -f /var/lock/subsys/exim ]; then + msg_reloading Exim + killproc exim -HUP + RETVAL=$? + else + msg_not_running Exim >&2 + exit 7 + fi ;; *) - msg_Usage "$0 {start|stop|restart|status}" - exit 1 + msg_usage "$0 {start|stop|restart|reload|force-reload|status}" + exit 3 esac -exit 0 - +exit $RETVAL