]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
network: parse multiple vlan parameters
authorHarald Hoyer <harald@redhat.com>
Fri, 1 Jul 2016 13:18:39 +0000 (15:18 +0200)
committerHarald Hoyer <harald@redhat.com>
Wed, 18 Jan 2017 12:15:18 +0000 (13:15 +0100)
modules.d/40network/parse-vlan.sh

index b2a9c1c2e7f7cc523eebf056616efd3185e54f6c..3e78ba3a40224bfdbd60244d115903857ebd408c 100755 (executable)
@@ -4,14 +4,6 @@
 #      vlan=<vlanname>:<phydevice>
 #
 
-# return if vlan already parsed
-[ -n "$vlanname" ] && return
-
-# Check if vlan parameter is valid
-if getarg vlan= >/dev/null ; then
-    :
-fi
-
 parsevlan() {
     local v=${1}:
     set --
@@ -27,16 +19,13 @@ parsevlan() {
     esac
 }
 
-unset vlanname phydevice
-
-if getarg vlan >/dev/null; then
-    # Read vlan= parameters if they exist
-    vlan="$(getarg vlan=)"
+for vlan in $(getargs vlan=); do
+    unset vlanname
+    unset phydevice
     if [ ! "$vlan" = "vlan" ]; then
         parsevlan "$(getarg vlan=)"
     fi
 
     echo "$phydevice" > /tmp/vlan.${phydevice}.phy
     echo "$vlanname" > /tmp/vlan.${vlanname}.${phydevice}
-    return
-fi
+done