X-Git-Url: http://git.pld-linux.org/?p=packages%2Fdistcc.git;a=blobdiff_plain;f=distcc.init;h=61d152d62e5e1e4873dad9ba9c3df62bebb73edc;hp=c2c601430bec327c80cec00f6062e3475a3894e8;hb=ae1426411e6c0589a0d577caf44f3c2e61116ee7;hpb=af2038cbb85ac5bd20ae2a669ecee25a818740d6 diff --git a/distcc.init b/distcc.init index c2c6014..61d152d 100644 --- a/distcc.init +++ b/distcc.init @@ -20,21 +20,27 @@ [ -f /etc/sysconfig/distccd ] && . /etc/sysconfig/distccd # Check that networking is up. -if is_no "${NETWORKING}"; then - msg_network_down distccd - exit 1 +if is_yes "${NETWORKING}"; then + if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status ]; then + msg_network_down distccd + exit 1 + fi +else + exit 0 fi OPTION1="--daemon" - +[ -z "$DISTCC_HOSTS_ALLOW" -a -n "$HOSTS_ALLOW" ] && DISTCC_HOSTS_ALLOW="$HOSTS_ALLOW" + +RETVAL=0 # See how we were called. case "$1" in start) # Check if the service is already running? if [ ! -f /var/lock/subsys/distccd ]; then msg_starting distccd - daemon /usr/bin/distccd + daemon /usr/bin/distccd --daemon --user nobody --log-file /var/log/distcc `for ip in $DISTCC_HOSTS_ALLOW; do echo -n "--allow $ip "; done` $DISTCC_OPTS RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/distccd else @@ -42,30 +48,36 @@ case "$1" in fi ;; stop) - if [ -f /var/lock/subsys/distccd ]; then + if [ -f /var/lock/subsys/distccd ]; then msg_stopping distccd killproc distccd rm -f /var/run/distccd.pid /var/lock/subsys/distccd >/dev/null 2>&1 else msg_not_running distccd - exit 1 fi ;; restart) $0 stop $0 start + exit $? ;; status) status distccd exit $? ;; - reload) - msg_reloading distccd - killproc distccd -HUP + reload|force-reload) + if [ -f /var/lock/subsys/distccd ]; then + msg_reloading distccd + killproc distccd -HUP + RETVAL=$? + else + msg_not_running distccd >&2 + exit 7 + fi ;; *) - msg_usage "$0 {start|stop|status|restart|reload}" - exit 1 + msg_usage "$0 {start|stop|restart|reload|force-reload|status}" + exit 3 esac exit $RETVAL