From 20fa1f140474e22b600273a6d24f0d95206bab8b Mon Sep 17 00:00:00 2001
From: Felix Richter <Felix.Richter@syntax-fehler.de>
Date: Wed, 25 May 2011 23:19:54 +0200
Subject: added startup script for tinc

---
 .scripts/autostart/Makefile |  7 ++++
 .scripts/autostart/tinc     | 92 +++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 99 insertions(+)
 create mode 100644 .scripts/autostart/Makefile
 create mode 100644 .scripts/autostart/tinc

(limited to '.scripts/autostart')

diff --git a/.scripts/autostart/Makefile b/.scripts/autostart/Makefile
new file mode 100644
index 00000000..58bfc0c5
--- /dev/null
+++ b/.scripts/autostart/Makefile
@@ -0,0 +1,7 @@
+INIT_FOLDER=/etc/rc.d
+.phony: all
+all:
+	#TODO change the tinc file before writing
+	cp tinc $(INIT_FOLDER)/tinc
+	echo "retiolum" > /etc/tinc/nets.boot
+	update-rc.d tinc defaults
diff --git a/.scripts/autostart/tinc b/.scripts/autostart/tinc
new file mode 100644
index 00000000..06d10403
--- /dev/null
+++ b/.scripts/autostart/tinc
@@ -0,0 +1,92 @@
+#! /bin/sh
+#
+### BEGIN INIT INFO
+# Provides:          tinc
+# Required-Start:    $remote_fs $network
+# Required-Stop:     $remote_fs $network
+# Should-Start:      $syslog $named
+# Should-Stop:       $syslog
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Start tinc daemons
+# Description:       Create a file $NETSFILE (/etc/tinc/nets.boot),
+#                    and put all the names of the networks in there.
+#                    These names must be valid directory names under
+#                    $TCONF (/etc/tinc). Lines starting with a # will be
+#                    ignored in this file.
+### END INIT INFO
+#
+# Based on Lubomir Bulej's Redhat init script.
+
+DAEMON="/usr/sbin/tincd"
+NAME="tinc"
+DESC="tinc daemons"
+TCONF="/etc/tinc"
+NETSFILE="$TCONF/nets.boot"
+NETS=""
+
+test -f $DAEMON || exit 0
+
+[ -r /etc/default/tinc ] && . /etc/default/tinc
+
+# foreach_net "what-to-say" action [arguments...]
+foreach_net() {
+  if [ ! -f $NETSFILE ] ; then
+    echo "Please create $NETSFILE."
+    exit 0
+  fi
+  echo -n "$1"
+  shift
+  egrep '^[ ]*[a-zA-Z0-9_-]+' $NETSFILE | while read net args; do
+    echo -n " $net"
+    "$@" $net $args
+  done
+  echo "."
+}
+
+start() {
+  $DAEMON $EXTRA -n "$@"
+}
+stop() {
+  $DAEMON -n $1 -k
+}
+reload() {
+  $DAEMON -n $1 -kHUP
+}
+restart() {
+  stop "$@"
+  sleep 0.5
+  i=0;
+  while [ -f /var/run/tinc.$1.pid ] ; do
+  if [ $i = '10' ] ; then
+    break
+  else
+    echo -n "."
+    sleep 0.5
+    i=$(($i+1))
+  fi    
+  done
+  start "$@"
+}
+
+case "$1" in
+  start)
+    foreach_net "Starting $DESC:" start
+  ;;
+  stop)
+    foreach_net "Stopping $DESC:" stop
+  ;;
+  reload|force-reload)
+    foreach_net "Reloading $DESC configuration:" reload
+  ;;
+  restart)
+    foreach_net "Restarting $DESC:" restart
+  ;;
+  *)
+    echo "Usage: /etc/init.d/$NAME {start|stop|reload|restart|force-reload}"
+    exit 1
+  ;;
+esac
+
+exit 0
+
-- 
cgit v1.2.3