[RFC PATCH] Fix uci error caused by symlink to non-existent file

Fabian Bläse fabian at blaese.de
Mi Sep 6 11:13:03 CEST 2017


Hallo Christian,

tatsache, habs grade nochmal ausprobiert. Dann bleibt das natürlich drin, hatte ich bisher nicht getestet.

Wird nur in der vpn-select in die tunneldigger geschrieben? Dann könnten der Symlink und die /tmp/tunneldigger erst angelegt werden, wenn das wan-Interface up ist.
Dann wird zwar (bei VPN-Routern) jeden Reboot in den Flash geschrieben, allerdings hat man dann nicht die eigentlich unsaubere Lösung, dass die /tmp/tunneldigger erst bei einem hotplug-Event erzeugt wird.

Gruß
Fabian

> On 6. Sep 2017, at 11:01, Christian Dresel <fff at chrisi01.de> wrote:
> 
> Hi Fabian
> 
> stimmt du hast recht, da war ja was mit dem Symlink hatte ich ganz
> vergessen. Dennoch hatte ich was im Hinterkopf das dieses -c /tmp nötig
> war und ich glaub ich hab in den Archiven der Mailingliste auch gerade
> den Grund gefunden:
> 
> http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/2017-April/012076.html
> 
> http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/2017-April/012082.html
> 
> bzw. einfach den ganzen Thread angucken ;)
> 
> mfg
> 
> Christian
> 
> On 06.09.2017 10:56, Fabian Bläse wrote:
>> Hi Christian,
>> 
>> das ist mir durchaus klar, es bleibt ja auch dort. Dieser Patch ergänzt nur, dass selbst wenn das wan-Interface nicht up ist (in welchem Fall die vpn-select nicht ausgeführt wird), trotzdem die /etc/config/tunneldigger (welche nach /tmp/tunneldigger symlinkt) “berührt” wird, damit sie existiert.
>> Das “-c /tmp” habe ich entfernt, weil es durch den Symlink nicht nötig ist und auch alle anderen Aufrufe auf die /etc/config/tunneldigger (den Symlink) zugreifen. Damit die Configs alle an einer stelle liegen und im uci angezeigt werden, auch wenn man nicht “-c /tmp” angibt, würde ich den Symlink auf jeden Fall in dieser Form behalten.
>> 
>> Gruß
>> Fabian
>> 
>>> On 6. Sep 2017, at 10:43, Christian Dresel <fff at chrisi01.de> wrote:
>>> 
>>> hi
>>> 
>>> On 06.09.2017 01:19, Fabian Bläse wrote:
>>>> Signed-off-by: Fabian Bläse <fabian at blaese.de>
>>>> ---
>>>> .../fff/fff-vpn-select/files/etc/hotplug.d/iface/50-vpn-select         | 3 +++
>>>> src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select              | 2 +-
>>>> 2 files changed, 4 insertions(+), 1 deletion(-)
>>>> 
>>>> diff --git a/src/packages/fff/fff-vpn-select/files/etc/hotplug.d/iface/50-vpn-select b/src/packages/fff/fff-vpn-select/files/etc/hotplug.d/iface/50-vpn-select
>>>> index 16d9853..c400889 100755
>>>> --- a/src/packages/fff/fff-vpn-select/files/etc/hotplug.d/iface/50-vpn-select
>>>> +++ b/src/packages/fff/fff-vpn-select/files/etc/hotplug.d/iface/50-vpn-select
>>>> @@ -1,4 +1,7 @@
>>>> #!/bin/sh
>>>> +
>>>> +touch /etc/config/tunneldigger
>>>> +
>>>> [ "$ACTION" = "ifup" -a "$INTERFACE" = "wan" ] && {
>>>>       sleep 3
>>>>       /usr/sbin/vpn-select
>>>> 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 c3d003f..016c940 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
>>>> @@ -29,7 +29,7 @@ for file in $filecounts; do
>>>>        uci set tunneldigger.$count.interface="l2tp$count"
>>>>        uci set tunneldigger.$count.enabled="1"
>>>>        uci set tunneldigger.$count.hook_script='/etc/tunneldigger/tunneldigger.hook'
>>>> -        uci -c /tmp commit tunneldigger
>>>> +        uci commit tunneldigger
>>> 
>>> das wurde extra nach /tmp verlagert, weil das Script sonst alle 5
>>> Minuten auf dem Flash rumschreibt.. Ist also eher ungünstig das wieder
>>> weg zu nehmen.
>>> 
>>> mfg
>>> 
>>> Christian
>>> 
>>>>        count=$((count + 1))
>>>>        # remove this fastd-peer
>>>>        rm /etc/fastd/${project}/peers/$file
>>>> 
>>> 
>> 
> 

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 801 bytes
Beschreibung: Message signed with OpenPGP
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20170906/57daad61/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev