From: jow Date: Wed, 25 Nov 2015 15:43:33 +0000 (+0000) Subject: base-files: config_generate: properly handle multiple switches X-Git-Url: http://207.154.207.93/?a=commitdiff_plain;h=35816d486c2ae7bca4d4a9dc2c8c0ea6c3867f27;p=openwrt.git base-files: config_generate: properly handle multiple switches Signed-off-by: Jo-Philipp Wich git-svn-id: svn://svn.openwrt.org/openwrt/trunk@47646 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- diff --git a/package/base-files/files/bin/config_generate b/package/base-files/files/bin/config_generate index 40d70475a4..29fec8e946 100755 --- a/package/base-files/files/bin/config_generate +++ b/package/base-files/files/bin/config_generate @@ -172,6 +172,16 @@ calculate_switch_vlans() { eval device="\$dev$((vlan_off++ % n_cpu))" [ $n_vlan -gt $n_cpu ] && device="$device.$vlan_off" + # quirk: append ifnames for subsequent switches + case "$switch" in switch[1-9]) + local prev_devs="$(uci -q get "network.$role.ifname")" + if echo "$prev_devs" | grep -wq "$device"; then + device="$prev_devs" + else + device="$prev_devs $device" + fi + ;; esac + uci -q batch <<-EOF delete network.$role set network.$role='interface'