modules/admin-full: add support for configuring mirror port

This adds the LuCI support for setting a mirror port on AR8327 switches.
Patch provided by Colin Leitner <colin.leitner@gmail.com>

Ref: https://dev.openwrt.org/attachment/ticket/10202

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
pull/221/head
Jo-Philipp Wich 2014-10-10 15:56:42 +02:00
parent 0726313815
commit bb388f0873
1 changed files with 22 additions and 0 deletions

View File

@ -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",