From 35816d486c2ae7bca4d4a9dc2c8c0ea6c3867f27 Mon Sep 17 00:00:00 2001 From: jow Date: Wed, 25 Nov 2015 15:43:33 +0000 Subject: [PATCH] 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 --- package/base-files/files/bin/config_generate | 10 ++++++++++ 1 file changed, 10 insertions(+) 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' -- 2.11.0