[PATCH 2/2] fff-vpn-select: add fastd start/stop for various situations

Steffen Pankratz kratz00 at gmx.de
Fr Aug 19 18:53:18 CEST 2016


On 07/24/2016 09:34 PM, Robert Langhammer wrote:

Hi Robert

> Signed-off-by: Robert Langhammer <rlanghammer at web.de>
> ---
>  src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> index 2458a06..b071ff6 100755
> --- a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> +++ b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> @@ -76,5 +76,13 @@ if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
>          sumnew=$(sha256sum /etc/config/tunneldigger)
>          [ "$sumnew" != "$sumold" ] && /etc/init.d/tunneldigger restart
>          /etc/init.d/fastd reload
> +
> +        # fastd start/stop for various situations
> +        if [ "$(ls /etc/fastd/${project}/peers/* 2>/dev/null)" ]; then

Ist es Absicht, dass nur die stderr Ausgabe umgeleitet wird?
So listet das Skript den Inhalt des Verzeichnisses auf.
Ich waere dafuer alles umzuleiten (ls /etc/fastd/${project}/peers/*
&>/dev/null).


> +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] || /etc/init.d/fastd start
> +        else
> +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] && /etc/init.d/fastd stop
> +        fi

Was mir nicht gefaellt ist der Pfad zur PID-Datei.
Offiziell ist es /var/run/fastd.fff.pid, sieht man auch in der Ausgabe
von "ps".

Dein Ansatz ist nicht falsch, aber verwendet zwei Befehle (test und cat)

pidof fastd &> /dev/null && /etc/init.d/fastd start
pidof fastd &> /dev/null && /etc/init.d/fastd stop

Nachteil von der pidof Loesung es findet alle laufenden fastd Instanzen.
Aktuell haben wir afaik nur eine Instanz laufen.

Das fastd Skript (/etc/init.d/fastd) startet bzw. stoppt leider auch
alle Instanzen.

Kannst du dir ueberlegen, was du da machen willst :)

> +
>      fi
>  fi
> 

Generell ist es eine gute Idee Variablen und Command expansion Ausgaben
mit Doppelhochkommas zu versehen, da diese Leerzeichen und andere
Sonderzeichen enthalten koennen.


Gruss
-Steffen

-- 
Hermes powered by Manjaro Linux (Linux 4.6.5)

Best regards, Steffen Pankratz.

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 205 bytes
Beschreibung: OpenPGP digital signature
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20160819/3bee7e80/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev