From: Markham Date: Sat, 23 Apr 2022 08:49:11 +0000 (+0200) Subject: update openvpn.init script X-Git-Url: https://git.webhop.me/?a=commitdiff_plain;h=bd4196d2d911617ec5bdfec7f4d7933f9dc00234;p=bs-cst-neutrino-hd.git update openvpn.init script --- diff --git a/archive-patches/openvpn/files/openvpn.init b/archive-patches/openvpn/files/openvpn.init index bdff488..d194112 100755 --- a/archive-patches/openvpn/files/openvpn.init +++ b/archive-patches/openvpn/files/openvpn.init @@ -2,96 +2,104 @@ #set -v -x -DAEMON=openvpn +DAEMON=$(which openvpn) CONFIG_DIR=/var/etc/openvpn +FLAG=/var/etc/.openvpn test -x $DAEMON || exit 0 test -d $CONFIG_DIR || exit 0 -modprobe tun >/dev/null 2>&1 || true + start_vpn () { + if [ ! -c /dev/net/tun ]; then + modprobe tun >/dev/null 2>&1 || true + fi $DAEMON --daemon --writepid /var/run/openvpn.$NAME.pid \ - --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || echo -n " FAILED->" + --config $CONFIG_DIR/$NAME.conf \ + --log /tmp/openvpn.$NAME.log \ + --cd $CONFIG_DIR || echo -n " FAILED->" echo -n " $NAME" } stop_vpn () { - kill `cat $PIDFILE` || true - rm $PIDFILE + kill `cat $PIDFILE` || true + rm $PIDFILE >/dev/null 2>&1 + rm /tmp/openvpn.$NAME.log } case "$1" in start) - echo -n "Starting openvpn:" - - if test -z $2 ; then - for CONFIG in `cd $CONFIG_DIR; ls *.conf 2> /dev/null`; do - NAME=${CONFIG%%.conf} - start_vpn - done - else - if test -e $CONFIG_DIR/$2.conf ; then - NAME=$2 - start_vpn - else - echo -n " No such VPN: $2" - fi - fi - echo "." + echo -n "Starting openvpn:" - ;; + if test -z $2 ; then + if [ -e $FLAG ]; then + read mode < /var/etc/.openvpn + mode=${mode:-client} + NAME=$mode + start_vpn + fi + else + if test -e $CONFIG_DIR/$2.conf ; then + NAME=$2 + start_vpn + else + echo -n " No such VPN: $2" + fi + fi + echo "." + ;; stop) - echo -n "Stopping openvpn:" + echo -n "Stopping openvpn:" - if test -z $2 ; then - for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do - NAME=`echo $PIDFILE | cut -c18-` - NAME=${NAME%%.pid} - stop_vpn - echo -n " $NAME" - done - else - if test -e /var/run/openvpn.$2.pid ; then - PIDFILE=`ls /var/run/openvpn.$2.pid 2> /dev/null` - NAME=`echo $PIDFILE | cut -c18-` - NAME=${NAME%%.pid} - stop_vpn - echo -n " $NAME" - else - echo -n " No such VPN: $2" - fi - fi - echo "." - ;; + if test -z $2 ; then + for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do + NAME=`echo $PIDFILE | cut -c18-` + NAME=${NAME%%.pid} + stop_vpn + echo -n " $NAME" + done + else + if test -e /var/run/openvpn.$2.pid ; then + PIDFILE=`ls /var/run/openvpn.$2.pid 2> /dev/null` + NAME=`echo $PIDFILE | cut -c18-` + NAME=${NAME%%.pid} + stop_vpn + echo -n " $NAME" + else + echo -n " No such VPN: $2" + fi + fi + echo "." + ;; # We only 'reload' for running VPNs. New ones will only start with 'start' or 'restart'. reload|force-reload) - echo -n "Reloading openvpn:" - for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do - NAME=`echo $PIDFILE | cut -c18-` - NAME=${NAME%%.pid} + echo -n "Reloading openvpn:" + for PIDFILE in `ls /var/run/openvpn.*.pid 2> /dev/null`; do + NAME=`echo $PIDFILE | cut -c18-` + NAME=${NAME%%.pid} # If openvpn if running under a different user than root we'll need to restart - if egrep '^( |\t)*user' $CONFIG_DIR/$NAME.conf > /dev/null 2>&1 ; then - stop_vpn - sleep 1 - start_vpn - echo -n "(restarted)" - else - kill -HUP `cat $PIDFILE` || true + if egrep '^( |\t)*user' $CONFIG_DIR/$NAME.conf > /dev/null 2>&1 ; then + stop_vpn + sleep 1 + start_vpn + echo -n "(restarted)" + else + kill -HUP `cat $PIDFILE` || true # start-stop-daemon --stop --signal HUP --quiet --oknodo \ # --exec $DAEMON --pidfile $PIDFILE - echo -n " $NAME" - fi - done - echo "." - ;; + echo -n " $NAME (reloaded)" + fi + done + echo "." + ;; restart) - $0 stop $2 - sleep 1 - $0 start $2 - ;; + $0 stop $2 + sleep 1 + $0 start $2 + ;; *) - echo "Usage: $0 {start|stop|reload|restart|force-reload}" >&2 - exit 1 - ;; + echo "Usage: $0 {start|stop|reload|restart|force-reload}" >&2 + exit 1 + ;; esac exit 0 diff --git a/archive-patches/samba36/files/samba3.init b/archive-patches/samba36/files/samba3.init old mode 100644 new mode 100755