diff options
-rw-r--r-- | modules/admin-full/luasrc/model/cbi/admin_network/vlan.lua | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/modules/admin-full/luasrc/model/cbi/admin_network/vlan.lua b/modules/admin-full/luasrc/model/cbi/admin_network/vlan.lua index 155722669a..fbea03af98 100644 --- a/modules/admin-full/luasrc/model/cbi/admin_network/vlan.lua +++ b/modules/admin-full/luasrc/model/cbi/admin_network/vlan.lua @@ -25,6 +25,7 @@ m.uci:foreach("network", "switch", local has_learn = nil local has_vlan4k = nil local has_jumbo3 = nil + local has_mirror = nil local min_vid = 0 local max_vid = 16 local num_vlans = 16 @@ -74,6 +75,9 @@ m.uci:foreach("network", "switch", elseif line:match(": enable_learning") then has_learn = "enable_learning" + elseif line:match(": enable_mirror_rx") then + has_mirror = "enable_mirror_rx" + elseif line:match(": max_length") then has_jumbo3 = "max_length" end @@ -105,6 +109,24 @@ m.uci:foreach("network", "switch", x.rmempty = true end + -- Does this switch support port mirroring? + if has_mirror then + s:option(Flag, "enable_mirror_rx", translate("Enable mirroring of incoming packets")) + s:option(Flag, "enable_mirror_tx", translate("Enable mirroring of outgoing packets")) + + local sp = s:option(ListValue, "mirror_source_port", translate("Mirror source port")) + local mp = s:option(ListValue, "mirror_monitor_port", translate("Mirror monitor port")) + + local pt + for pt = 0, num_ports - 1 do + local name + + name = (pt == cpu_port) and translate("CPU") or translatef("Port %d", pt) + + sp:value(pt, name) + mp:value(pt, name) + end + end -- VLAN table s = m:section(TypedSection, "switch_vlan", |