chiark / gitweb /
Ignore Emacs backup files.
[tripe] / tripe-init.in
1 #! /bin/sh
2 #
3 # tripe init script
4 #   suitable for direct use in most SysV-style inits
5
6 prefix=@prefix@
7 exec_prefix=@exec_prefix@
8 bindir=@bindir@
9 sbindir=@sbindir@
10
11 set -e
12
13 [ -f /etc/tripe.conf ] && . /etc/tripe.conf
14 : ${TRIPEDIR=/var/lib/tripe}
15 export TRIPEDIR
16
17 : ${tripe=$sbindir/tripe}
18 : ${tripectl=$bindir/tripectl}
19 PATH=/usr/bin:/usr/sbin:/bin:/sbin:$bindir
20 export PATH
21
22 case "$1" in
23   start)
24     echo -n "Starting TrIPE VPN daemon:"
25     if $tripectl help >/dev/null 2>/dev/null; then
26       echo " already running"
27       exit 0
28     fi
29     $tripectl -D -f ${tripelog-tripe.log} -p $tripe -s \
30       ${addr+-S-b}$addr \
31       ${port+-S-p}${port} \
32       ${user+-S-u}${user} \
33       ${group+-S-g}${group} \
34       ${trace+-S-T}${trace} \
35       ${miscopts}
36     for i in 1 2 3 4 give-up; do
37       $tripectl help >/dev/null 2>/dev/null && break
38       sleep 1
39     done
40     if [ $i = give-up ]; then
41       echo " wouldn't start"
42       exit 1
43     fi
44     echo -n " tripe"
45     for i in $TRIPEDIR/peers/*; do
46       case $i in *~|\#*) continue;; esac
47       name=`basename $i`
48       $i
49       echo -n " $name"
50     done
51     echo " done"
52     ;;
53   stop)
54     echo -n "Stopping TrIPE VPN daemon:"
55     $tripectl quit
56     echo " done"
57     ;;
58   restart | force-reload)
59     sh $0 stop
60     sh $0 start
61     ;;
62   *)
63     echo >&2 "usage: $0 start|stop|restart|force-reload"
64     exit 1
65     ;;
66 esac