/usr/lib/anytun-launcher is in anytun 0.3.6-1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | #!/bin/sh
NAME="${NAME:-$2}"
DAEMON=/usr/sbin/anytun
ANYTUNCONFIG=/usr/bin/anytun-config
CONTROLDAEMON=/usr/bin/anytun-controld
CONFIG_DIR=/etc/anytun
VARRUN_DIR=/run/anytun
VARCONTROL_DIR=/run/anytun-controld
test -x $DAEMON || exit 0
test -z $NAME && exit 1
start_vpn () {
if [ -f $CONFIG_DIR/$NAME/config ] ; then
POSTUP=''
test -f $CONFIG_DIR/$NAME/post-up.sh && POSTUP="-x $CONFIG_DIR/$NAME/post-up.sh"
CHROOTDIR=`grep '^chroot' < $CONFIG_DIR/$NAME/config | sed 's/chroot\s*//'`
if [ -n "$CHROOTDIR" ] ; then
test -d $CHROOTDIR || mkdir -p $CHROOTDIR
fi
test -d $VARRUN_DIR || mkdir -p $VARRUN_DIR
DAEMONARG=`sed 's/#.*//' < $CONFIG_DIR/$NAME/config | grep -e '\w' | sed 's/^/--/' | tr '\n' ' '`
exec $DAEMON --write-pid $VARRUN_DIR/$NAME.pid $POSTUP $DAEMONOPTS $DAEMONARG
else
echo "no config found" >&2
return 1
fi
}
start_configd () {
if [ -d $CONFIG_DIR/$NAME/conf.d ] ; then
test -d $VARCONTROL_DIR || mkdir -p $VARCONTROL_DIR
chmod 700 $VARCONTROL_DIR
rm -f $VARCONTROL_DIR/$NAME 2>/dev/null
KDPRF=`sed 's/#.*//' < $CONFIG_DIR/$NAME/config | grep -e 'kd-prf' | sed 's/^/ --/' | xargs echo`
for CLIENTNAME in `ls $CONFIG_DIR/$NAME/conf.d`; do
echo -n " ($CLIENTNAME)"
DAEMONARG=`sed 's/#.*//' < $CONFIG_DIR/$NAME/conf.d/$CLIENTNAME | grep -e '\w' | sed 's/^/ --/' | xargs echo`
$ANYTUNCONFIG $DAEMONARG $CIPHER $AUTHALGO $KDPRF >> $VARCONTROL_DIR/$NAME
done
CONTROLHOST=`sed 's/#.*//' < $CONFIG_DIR/$NAME/config | grep -e 'control-host' | sed 's/^/ --/' | xargs echo`
exec $CONTROLDAEMON -f $VARCONTROL_DIR/$NAME $DAEMONOPTS $CONTROLHOST \
--write-pid $VARCONTROL_DIR/$NAME.pid
fi
}
case $1 in
vpn)
start_vpn
;;
configd)
start_configd
;;
*)
exit 2
;;
esac
|