From 9f9e4d57f9bf0d05a6051482f59a7634a5814459 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 25 Nov 2015 15:43:33 +0000 Subject: 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(+) (limited to 'package/base-files/files') 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' -- cgit v1.2.3