From c390a09cea580ddb0a400c844751f0b65b69d3aa Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 18 Aug 2016 09:23:28 +0200 Subject: luci-mod-admin-full: fallback to generic switch topology Use a generic default topology if we cannot infer switch information from board.json and display an error message in this case. Should fix #779 and similar issues. Signed-off-by: Jo-Philipp Wich --- .../luasrc/model/cbi/admin_network/vlan.lua | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua index 20715f0ed8..902767c903 100644 --- a/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua +++ b/modules/luci-mod-admin-full/luasrc/model/cbi/admin_network/vlan.lua @@ -30,9 +30,23 @@ m.uci:foreach("network", "switch", local topo = topologies[switch_name] + if not topo then + m.message = translatef("Switch %q has an unknown topology - the VLAN settings might not be accurate.", switch_name) + topo = { + ports = { + { num = 0, label = "Port 1" }, + { num = 1, label = "Port 2" }, + { num = 2, label = "Port 3" }, + { num = 3, label = "Port 4" }, + { num = 4, label = "Port 5" }, + { num = 5, label = "CPU (eth0)", tagged = false } + } + } + end + -- Parse some common switch properties from swconfig help output. local swc = io.popen("swconfig dev %q help 2>/dev/null" % switch_name) - if swc and topo then + if swc then local is_port_attr = false local is_vlan_attr = false -- cgit v1.2.3