netdev-linux: Skip miimon execution when disabled
[sliver-openvswitch.git] / debian / openvswitch-controller.init
index c5f8eb8..44d2c87 100755 (executable)
@@ -1,5 +1,6 @@
 #!/bin/sh
 #
+# Copyright (c) 2011 Nicira, Inc.
 # Copyright (c) 2007, 2009 Javier Fernandez-Sanguino <jfs@debian.org>
 #
 # This is free software; you may redistribute it and/or modify
 #
 ### BEGIN INIT INFO
 # Provides:          openvswitch-controller
-# Required-Start:    $network $local_fs
-# Required-Stop:     
+# Required-Start:    $network $local_fs $remote_fs
+# Required-Stop:     $remote_fs
 # Should-Start:      $named
 # Should-Stop:       
 # Default-Start:     2 3 4 5
 # Default-Stop:      0 1 6
 # Short-Description: Open vSwitch controller
+# Description:       The Open vSwitch controller enables OpenFlow switches that connect to it
+#                    to act as MAC-learning Ethernet switches.
 ### END INIT INFO
 
 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 
-DAEMON=/usr/sbin/controller # Introduce the server's location here
+DAEMON=/usr/bin/ovs-controller # Introduce the server's location here
 NAME=ovs-controller         # Introduce the short server's name here
 DESC=ovs-controller         # Introduce a short description here
 LOGDIR=/var/log/openvswitch # Log directory to use
 
-PIDFILE=/var/run/$NAME.pid 
+PIDFILE=/var/run/openvswitch/$NAME.pid 
 
 test -x $DAEMON || exit 0
 
 . /lib/lsb/init-functions
 
 # Default options, these can be overriden by the information
-# at /etc/default/$NAME
+# at /etc/default/openvswitch-controller
 DAEMON_OPTS=""          # Additional options given to the server 
 
 DODTIME=10              # Time to wait for the server to die, in seconds
@@ -105,6 +108,10 @@ start_server() {
         exit 0
     fi
 
+    if [ ! -d /var/run/openvswitch ]; then
+        install -d -m 755 -o root -g root /var/run/openvswitch
+    fi
+
     SSL_OPTS=
     case $LISTEN in
         *ssl*)
@@ -175,10 +182,10 @@ force_stop() {
     if running ; then
         kill -15 $pid
         # Is it really dead?
-        sleep "$DIETIME"s
+        sleep "$DODTIME"
         if running ; then
             kill -9 $pid
-            sleep "$DIETIME"s
+            sleep "$DODTIME"
             if running ; then
                 echo "Cannot kill $NAME (pid=$pid)!"
                 exit 1
@@ -235,9 +242,11 @@ case "$1" in
         ;;
   restart|force-reload)
         log_daemon_msg "Restarting $DESC" "$NAME"
-        stop_server
-        # Wait some sensible amount, some server need this
-        [ -n "$DIETIME" ] && sleep $DIETIME
+        if running; then
+            stop_server
+            # Wait some sensible amount, some server need this.
+            [ -n "$DODTIME" ] && sleep $DODTIME
+        fi
         start_server
         running
         log_end_msg $?
@@ -260,7 +269,7 @@ case "$1" in
         log_warning_msg "cannot re-read the config file (use restart)."
         ;;
   *)
-        N=/etc/init.d/$NAME
+        N=/etc/init.d/openvswitch-controller
         echo "Usage: $N {start|stop|force-stop|restart|force-reload|status}" >&2
         exit 1
         ;;