4 # Required-Start: $network $named $syslog
6 # Default-Start: 2 3 4 5
8 # Short-Description: Start anycast tunneling daemon at boot time
9 # Description: Enables networking over vpn tunnel interfaces
11 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
12 DAEMON=/usr/sbin/uanytun
13 CONFIG_DIR=/etc/uanytun
17 test -x $DAEMON || exit 0
19 # Include uanytun defaults if available
20 if [ -f /etc/default/uanytun ] ; then
21 . /etc/default/uanytun
26 if [ -f $CONFIG_DIR/$NAME/config ] ; then
28 test -f $CONFIG_DIR/$NAME/post-up.sh && POSTUP="-x $CONFIG_DIR/$NAME/post-up.sh"
29 CHROOTDIR=`grep '^chroot' < $CONFIG_DIR/$NAME/config | sed 's/chroot\s*//'`
30 if [ -n "$CHROOTDIR" ] ; then
31 test -d $CHROOTDIR || mkdir -p $CHROOTDIR
33 DAEMONARG=`sed 's/#.*//' < $CONFIG_DIR/$NAME/config | grep -e '\w' | sed 's/^/--/' | tr '\n' ' '`
34 $DAEMON --write-pid /var/run/uanytun.$NAME.pid $POSTUP $DAEMONOPTS $DAEMONARG || STATUS="FAILED"
36 STATUS="no config found"
41 kill `cat $PIDFILE` || true
48 echo -n "Starting $DESC:"
49 if test -z "$2" ; then
50 if [ -f $CONFIG_DIR/autostart ] ; then
51 for NAME in `sed 's/#.*//' < $CONFIG_DIR/autostart | grep -e '\w'`; do
56 echo " no config found"
70 echo -n "Stoping $DESC:"
71 if test -z "$2" ; then
72 for PIDFILE in `ls /var/run/uanytun.*.pid 2> /dev/null`; do
73 NAME=`echo $PIDFILE | cut -c18-`
81 if test -e /var/run/uanytun.$1.pid ; then
82 PIDFILE=`ls /var/run/uanytun.$1.pid 2> /dev/null`
83 NAME=`echo $PIDFILE | cut -c18-`
88 echo -n " (failure: No such tunnel is running: $1)"
95 echo -n "Reloading $DESC:"
96 if test -z "$2" ; then
97 for PIDFILE in `ls /var/run/uanytun.*.pid 2> /dev/null`; do
98 NAME=`echo $PIDFILE | cut -c18-`
107 if test -e /var/run/uanytun.$1.pid ; then
108 PIDFILE=`ls /var/run/uanytun.$1.pid 2> /dev/null`
109 NAME=`echo $PIDFILE | cut -c18-`
115 echo -n " (failure: No such tunnel is running: $1)"
130 echo "Usage: $N {start|stop|restart|reload}" >&2