chiark / gitweb /
Backgrounded commands and RELOAD.
[tripe] / tripe-init.in
index b02b8269fd03aaa7b11497a892dd724bae7c99f6..e3d835ac6f24a10bf27af251868a5e7963f3dc35 100755 (executable)
@@ -29,7 +29,7 @@ fi
 
 test -x $tripe -a -x $tripectl || exit 0
 
-case `$tripe --tunnel` in
+case ${tunnel-`$tripe --tunnels | head -1`} in
   linux)
     case `uname -s` in
       Linux)
@@ -99,6 +99,12 @@ case `$tripe --tunnel` in
        ;;
     esac
     ;;
+  slip)
+    if test "$TRIPE_SLIPIF" = ""; then
+      echo >&2 "$tripe needs SLIP interfaces set up!"
+      exit 1
+    fi
+    ;;
 esac
   
 # --- Do what was wanted ---
@@ -119,6 +125,7 @@ case "$1" in
       ${user+-S-u}${user} \
       ${group+-S-g}${group} \
       ${trace+-S-T}${trace} \
+      ${tunnel+-S-n}${tunnel} \
       ${miscopts}
     for i in 1 2 3 4 give-up; do
       $tripectl help >/dev/null 2>/dev/null && break
@@ -163,12 +170,16 @@ case "$1" in
       $tripectl stats $i | sed 's/^/  /'
     done
     ;;
+  reload)
+    $tripectl reload
+    echo "Keyrings reloaded OK."
+    ;;
   restart | force-reload)
     sh $0 stop
     sh $0 start
     ;;
   *)
-    echo >&2 "usage: $0 start|stop|restart|status|force-reload"
+    echo >&2 "usage: $0 start|stop|restart|status|reload|force-reload"
     exit 1
     ;;
 esac