[Fli4l_dev] Syntax mit [, { etc?

Peter Schiefer newsgroup at lan4me.de
Mi Sep 12 19:40:09 CEST 2018


Hallo Michael,

Am Wed, 12 Sep 2018 18:54:46 +0200 schrieb Michael Wieser:

> ich versuche einen fli mit einer aktuellen 4.0.irgendwas aufzusetzen
> und finde keinerlei Erklärung wie ich nun mit den Parametern, die in
> den [] und 
> 
> {
> irgendwe
> }
> 
> umgehen soll so das daraus was nutzbares entsteht.

ds hat mal Christoph hier erklärt unter den Stichworten alternative Syntax.
> 
> Als Beispiel:
> 
> #IP_NET[1]='192.168.6.1/24'     # IP address of your n'th ethernet 
> 
> #{
> #  DEV='eth0'                   # required: device name like ethX
> #}
> 
> 
> Das erste # gehört entfernt, doch wie geht es dann weiter so das dann
> das in der Doku erwähnte

alle 4 # gehören entfernt um untiges zu erreichen.

> 
>   IP_NET_1='192.168.6.1/24'
>         IP_NET_1_DEV='eth0'
> 
> draus wird?

Kurze Erklärung:

VAR[]

die [] stehen hier für den Index (1 bis n) und werden, wenn nicht direkt
definiert automatisch hochgezählt

aus:
VAR[]=''
VAR[]=''
VAR[]=''

wird beim build automatisch
VAR_N='3'
VAR_1=''
VAR_2=''
VAR_3=''

diese Autonummerierung hat den Vorteil, das man einfach eine Regel einfügen
kann wenn nötig, ohne bei allen folgenden den Index anzupassen
Im Fall von IP_NET sollte der Index jedoch direk gesetzt werden, also [1]
usw, da es hier andere Bereich absolut referenzieren (z. B. Circuits oder
der Paketfilter) und nur so eine eindeutige ZTuordnung erreicht wird.

Und nun zu den {}

aus
VAR[]=''
{
	FOO=''
        BAR=''
}
VAR[]=''
{
	FOO=''
        BAR=''
}

wird:
VAR_N='2'
VAR_1=''
VAR_1_FOO=''
VAR_1_BAR=''
VAR_2=''
VAR_2_FOO=''
VAR_2_BAR=''


die Klammer sorgen also dafür, das man viel Tipparbeit sparen kann, da
dadurch nur ein Teil des Variablennamens als Ergänzung getippt werden muss.


Ich hoffe das war so einigermassen verständlich.

Gruß Peter


Mehr Informationen über die Mailingliste Fli4l_dev