From: Harald Hoyer Date: Fri, 1 Jul 2016 13:18:39 +0000 (+0200) Subject: network: parse multiple vlan parameters X-Git-Tag: 045~44 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a1595cf5f92047e22a1a15fadbc89d56d5c2f3e8;p=thirdparty%2Fdracut.git network: parse multiple vlan parameters --- diff --git a/modules.d/40network/parse-vlan.sh b/modules.d/40network/parse-vlan.sh index b2a9c1c2e..3e78ba3a4 100755 --- a/modules.d/40network/parse-vlan.sh +++ b/modules.d/40network/parse-vlan.sh @@ -4,14 +4,6 @@ # vlan=: # -# 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