| 
					
				 | 
			
			
				@@ -1,4 +1,4 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-#! /bin/sh 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#!/bin/sh 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ### BEGIN INIT INFO 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Provides:          softflowd 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -6,136 +6,159 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Required-Stop:     $network $remote_fs $syslog 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Default-Start:     2 3 4 5 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Default-Stop:      0 1 6 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Short-Description: Flow-based network traffic analyser. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Short-Description: Flow-based network traffic analyser 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Description:       Manage all softflowd exports defined in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#                    /etc/softflowd/*.conf 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 ### END INIT INFO 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Author: Christoph Biedl <debian.axhn@manchmal.in-ulm.de> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Based on /etc/init.d/skeleton, written by 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Miquel van Smoorenburg <miquels@cistron.nl>, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# modified for Debian by Ian Murdock <imurdock@gnu.ai.mit.edu>. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 PATH=/sbin:/usr/sbin:/bin:/usr/bin 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-DAEMON=/usr/sbin/softflowd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 NAME=softflowd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-DESC="Flow-based network traffic analyser" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-DEFAULT=/etc/default/$NAME 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-PIDFILE=/var/run/$NAME.pid 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-PRIVDROP_CHROOT_DIR=/var/run/softflowd/chroot 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+DESC='Flow-based network traffic analyser' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+SOFTFLOWD="/usr/sbin/$NAME" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+PIDDIR="/var/run/$NAME/" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+PRIVDROP_CHROOT_DIR='/var/run/softflowd/chroot' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-test -x "$DAEMON" || exit 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+[ -x "$SOFTFLOWD" ] || exit 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Include softflowd defaults if available 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-INTERFACE= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-OPTIONS= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-[ -r "$DEFAULT" ] && . "$DEFAULT" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if [ "$1" = 'start' ] ; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    mkdir -p "$PRIVDROP_CHROOT_DIR" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if [ -e /var/run/softflowd.ctl ] ; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        [ -L /var/run/softflowd.ctl ] || rm /var/run/softflowd.ctl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    [ -e /var/run/softflowd.ctl ] || ln -s /var/run/softflowd/default.ctl /var/run/softflowd.ctl 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # Load the VERBOSE setting and other rcS variables 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 . /lib/init/vars.sh 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Define LSB log_* functions. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Define LSB functions 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 . /lib/lsb/init-functions 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Start a softflowd instance 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   0 if daemon has been started 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   1 if daemon was already running 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   2 if daemon could not be started 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+do_start () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    local INSTANCE="$1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    local CONFIG="$2" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-case "$1" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-start|restart|force-reload) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    if [ -z "$INTERFACE" ] ; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	log_daemon_msg "NOT starting $DESC" "$NAME" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	log_action_msg "\nEdit $DEFAULT and define the INTERFACE variable" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	log_end_msg 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	exit 0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    sh -n "$CONFIG" 2>/dev/null || return 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-[ -d "$PRIVDROP_CHROOT_DIR" ] || mkdir -p "$PRIVDROP_CHROOT_DIR" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    interface= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    options= 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    . "$CONFIG" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    [ "$interface" ] || return 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    local PIDFILE="$PIDDIR$INSTANCE.pid" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    local CTLSOCK="$PIDDIR$INSTANCE.ctl" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    start-stop-daemon --start --quiet \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        --pidfile "$PIDFILE" --exec "$VBLADE" --test > /dev/null \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        || return 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    start-stop-daemon --start --quiet \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        --pidfile "$PIDFILE" \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        --exec $ionice "$SOFTFLOWD" -- \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        -p "$PIDFILE" -c "$CTLSOCK" \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        -i "$interface" $options \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        || return 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Function that starts the daemon/service 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-do_start() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    # Return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #   0 if daemon has been started 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #   1 if daemon was already running 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #   2 if daemon could not be started 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    start-stop-daemon --start --quiet --pidfile $PIDFILE \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	--exec $DAEMON --test > /dev/null || \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	return 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    start-stop-daemon --start --quiet --pidfile $PIDFILE \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	--exec $DAEMON -- -i "$INTERFACE" $OPTIONS || \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	return 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Stop a softflowd instance 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 # 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# Function that stops the daemon/service 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-# 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-do_stop() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    # Return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #   0 if daemon has been stopped 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #   1 if daemon was already stopped 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #   2 if daemon could not be stopped 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    #   other if a failure occurred 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	--pidfile $PIDFILE --name $NAME 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+# Return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   0 if daemon has been stopped 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   1 if daemon was already stopped 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   2 if daemon could not be stopped 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+#   other if a failure occurred 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+do_stop () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    local INSTANCE="$1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    local PIDFILE="$PIDDIR/$INSTANCE.pid" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    start-stop-daemon --stop --quiet \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        --retry=TERM/30/KILL/5 --pidfile "$PIDFILE" --name "$NAME" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     RETVAL="$?" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     [ "$RETVAL" = 2 ] && return 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    # Wait for children to finish too if this is a daemon that forks 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    # and if the daemon is only ever run from this initscript. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    # If the above conditions are not satisfied then add some other code 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    # that waits for the process to drop all resources that could be 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    # needed by services started subsequently.  A last resort is to 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    # sleep for some time. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 \ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	--exec $DAEMON 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    [ "$?" = 2 ] && return 2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     # Many daemons don't delete their pidfiles when they exit. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rm -f $PIDFILE 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rm -f "$PIDFILE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return "$RETVAL" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-case "$1" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-start) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    do_start 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case "$?" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-stop) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    do_stop 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case "$?" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-status) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-restart|force-reload) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    log_daemon_msg "Restarting $DESC" "$NAME" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    do_stop 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    case "$?" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	0|1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    do_start 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    case "$?" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		0) log_end_msg 0 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		1) log_end_msg 1 ;; # Old process is still running 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		*) log_end_msg 1 ;; # Failed to start 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	*) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    # Failed to stop 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    log_end_msg 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+EXIT=0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+do_action () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    local CONFIG="$1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    INSTANCE="$(basename "${CONFIG%%.conf}")" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    case "$ACTION" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        start) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$INSTANCE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            do_start "$INSTANCE" "$CONFIG" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            case "$?" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                0|1)    [ "$VERBOSE" != no ] && log_end_msg 0 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                2)      [ "$VERBOSE" != no ] && log_end_msg 1 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        stop) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$INSTANCE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            do_stop "$INSTANCE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            case "$?" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                0|1)    [ "$VERBOSE" != no ] && log_end_msg 0 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                2)      [ "$VERBOSE" != no ] && log_end_msg 1 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        status) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            status_of_proc -p "$PIDDIR/$INSTANCE.pid" "$SOFTFLOWD" "softflowd instance $INSTANCE" || EXIT=$? 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        restart|force-reload) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            log_daemon_msg "Restarting $DESC" "$INSTANCE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            do_stop "$INSTANCE" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            case "$?" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                0|1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    do_start "$INSTANCE" "$CONFIG" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    case "$?" in 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        0)  log_end_msg 0 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        *) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            # Old process is still running or 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            # failed to start 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            log_end_msg 1 ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                *) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    # Failed to stop 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    log_end_msg 1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        *) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            echo "Usage: /etc/init.d/softflowd {start|stop|status|restart|force-reload} [<export> ...]" >&2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            exit 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-*) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    exit 3 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    ;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-esac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ACTION="$1" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+shift 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if [ "$1" ] ; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    while [ "$1" ] ; do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        CONFIG="/etc/softflowd/$1.conf" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if [ -f "$CONFIG" ] ; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            do_action "$CONFIG" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        shift 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    for CONFIG in /etc/softflowd/*.conf ; do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if [ -f "$CONFIG" ] ; then 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            do_action "$CONFIG" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    done 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+fi 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+exit $EXIT 
			 |