From: Rafał Miłecki Date: Fri, 28 May 2021 06:18:08 +0000 (+0200) Subject: base-files: simplify setting device MAC X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=c2139eef279ef9efc30ddbaf08544f33eac63e36;p=openwrt%2Fstaging%2Fxback.git base-files: simplify setting device MAC 1. Move code above interface generation It results in more logical order. Device gets its config section above interface section. 2. Drop the loop We have separated code handling bridges now so $device should be guaranteed to contain a single device name. 3. Drop section name It's not required by netifd or LuCI & it's not needed by this script as $device contains a single device name now. Signed-off-by: Rafał Miłecki (cherry picked from commit e002179a6d2eea8640e262160030336bea54ec26) --- diff --git a/package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate index d895090309..0dca5549e8 100755 --- a/package/base-files/files/bin/config_generate +++ b/package/base-files/files/bin/config_generate @@ -133,6 +133,14 @@ generate_network() { type="" } + if [ -n "$macaddr" ]; then + uci -q batch <<-EOF + add network device + set network.@device[-1].name='$device' + set network.@device[-1].macaddr='$macaddr' + EOF + fi + uci -q batch <<-EOF delete network.$1 set network.$1='interface' @@ -141,17 +149,6 @@ generate_network() { set network.$1.proto='none' EOF - if [ -n "$macaddr" ]; then - for name in $device; do - uci -q batch <<-EOF - delete network.$1_${name/./_}_dev - set network.$1_${name/./_}_dev='device' - set network.$1_${name/./_}_dev.name='$name' - set network.$1_${name/./_}_dev.macaddr='$macaddr' - EOF - done - fi - case "$protocol" in static) local ipad