Fix Metaproxy stops logging after check config failed MP-590
[metaproxy-moved-to-github.git] / debian / metaproxy.init
index 6b72823..67743dd 100644 (file)
@@ -81,7 +81,7 @@ do_stop()
 }
 
 #
-# Function that sends a SIGHUP to the daemon/service
+# Function that sends a SIGUSR1 to the daemon/service
 #
 do_reload() {
        #
@@ -89,7 +89,17 @@ do_reload() {
        # restarting (for example, when it is sent a SIGHUP),
        # then implement that here.
        #
-       start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
+       start-stop-daemon --stop --signal USR1 --quiet --retry=5 --pidfile $PIDFILE --name $NAME
+       RETVAL="$?"
+       # Return if daemon could not be stopped
+       [ "$RETVAL" = 2 ] && return 2
+       # daemon not running or stopped
+       rm -f $PIDFILE
+       # Return if it was not running, in which case we don't start it
+       [ "$RETVAL" = 1 ] && return 0
+       start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
+               $DAEMON_OPTS \
+               || return 2
        return 0
 }
 
@@ -116,16 +126,16 @@ case "$1" in
                ;;
        esac
        ;;
-  #reload|force-reload)
+  reload|force-reload)
        #
        # If do_reload() is not implemented then leave this commented out
        # and leave 'force-reload' as an alias for 'restart'.
        #
-       #log_daemon_msg "Reloading $DESC" "$NAME"
-       #do_reload
-       #log_end_msg $?
-       #;;
-  restart|force-reload)
+       log_daemon_msg "Reloading $DESC" "$NAME"
+       do_reload
+       log_end_msg $?
+       ;;
+  restart)
        #
        # If the "reload" option is implemented then remove the
        # 'force-reload' alias
@@ -147,9 +157,11 @@ case "$1" in
                ;;
        esac
        ;;
+  status)
+       status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+       ;;
   *)
-       #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
-       echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
+       echo "Usage: $SCRIPTNAME {start|stop|status|restart|reload|force-reload}" >&2
        exit 3
        ;;
 esac