<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=DE link="#0563C1" vlink="#954F72"><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>Hallo Fabian,<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>das mit dem if ist mir bewusst, ich habe einfach auf meinem dezentralen Gateway<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>uci get gateway<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>eingegeben, und dann kommt … nichts. Das hat mich gewundert.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>Exit Status passt:<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>uci get gateway && echo „a“ || echo „b“<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>gibt „a“<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>uci get gateway2 && echo „a“ || echo „b“<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>gibt „b“<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>Grüße<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'>Adrian<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US'><o:p> </o:p></span></p><div style='border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt'><div><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri",sans-serif'>From:</span></b><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri",sans-serif'> Fabian Bläse [mailto:fabian@blaese.de] <br><b>Sent:</b> Montag, 19. August 2019 20:20<br><b>To:</b> Adrian Schmutzler <mail@adrianschmutzler.de>; franken-dev@freifunk.net<br><b>Subject:</b> Re: [PATCH v2] fff-gateway: Add sanity checks<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><p><span style='font-family:"Calibri",sans-serif'>Hey Adrian,</span> <o:p></o:p></p><p><span style='font-family:"Calibri",sans-serif'>On 19.08.19 15:17, Adrian Schmutzler wrote:</span> <br><span style='font-family:"Calibri",sans-serif'>> Hallo,</span> <br><span style='font-family:"Calibri",sans-serif'>> </span><br><span style='font-family:"Calibri",sans-serif'>> um das nochmal etwas zu spezifizieren, ich würde folgendes machen:</span> <br><span style='font-family:"Calibri",sans-serif'>> </span><br><span style='font-family:"Calibri",sans-serif'>> config gateway 'meta'</span> <br><span style='font-family:"Calibri",sans-serif'>>       option config_version '1'</span> <br><span style='font-family:"Calibri",sans-serif'>Klingt gut.</span> <br><span style='font-family:"Calibri",sans-serif'>Ich baue aus diesem Vorschlag demnächst eine v3.</span> <o:p></o:p></p><p><span style='font-family:"Calibri",sans-serif'>> Ansonsten noch ein Kommentar/Frage:</span> <br><span style='font-family:"Calibri",sans-serif'>> </span><br><span style='font-family:"Calibri",sans-serif'>>>> +   if ! uci -q get gateway; then</span> <br><span style='font-family:"Calibri",sans-serif'>> </span><br><span style='font-family:"Calibri",sans-serif'>> Mir war gar nicht bewusst, dass das geht (aber ja, habs getestet). Ich hätte da jetzt ! [ -s "/etc/config/gateway" ] gemacht.</span><o:p></o:p></p><p><span style='font-family:"Calibri",sans-serif'>> </span><br><span style='font-family:"Calibri",sans-serif'>> Da die von mir genannte Variante an diversen Stellen (für andere uci config Files) verwendet wird, würde mich interessieren, was ihr für besser haltet (ist ja auch ein bisschen Speicher vs. Dateisystem).</span><o:p></o:p></p><p><span style='font-family:"Calibri",sans-serif'>Vermutlich ist das "uci get" sinnvoller, weil das direkt überprüft, ob es mit uci funktioniert.</span> <o:p></o:p></p><p><span style='font-family:"Calibri",sans-serif'>> Zudem frage ich mich, ob die Syntax von Fabian absichtlich oder aus Versehen funktioniert, da sie nichts ins std-out schreibt.</span><o:p></o:p></p><p><span style='font-family:"Calibri",sans-serif'>Ein shell-if wertet nicht den Output, sondern den Exitstatus bzw Rückgabewert eines Befehls aus.</span> <br><span style='font-family:"Calibri",sans-serif'>In einer Shell kannst du diesen mit "echo $?" abfragen. (Vorsicht: Geht nur einmal. Bei nächsten mal kriegst du dann natürlich den Exitstatus des zuvor ausgeführten echos)</span><o:p></o:p></p><p><span style='font-family:"Calibri",sans-serif'>Ein einfaches Beispiel:</span> <br><span style='font-family:"Calibri",sans-serif'>> ~$ true</span> <br><span style='font-family:"Calibri",sans-serif'>> ~$ echo $?</span> <br><span style='font-family:"Calibri",sans-serif'>> 0</span> <br><span style='font-family:"Calibri",sans-serif'>> ~$ false</span> <br><span style='font-family:"Calibri",sans-serif'>> ~$ echo $?</span> <br><span style='font-family:"Calibri",sans-serif'>> 1</span> <br><span style='font-family:"Calibri",sans-serif'>> ~$ echo $?</span> <br><span style='font-family:"Calibri",sans-serif'>> 0</span> <br><span style='font-family:"Calibri",sans-serif'>Gruß</span> <br><span style='font-family:"Calibri",sans-serif'>Fabian</span> <o:p></o:p></p><p class=MsoNormal style='margin-bottom:12.0pt'><o:p> </o:p></p></div></div></body></html>