<%+header%> <% local disp = require "luci.dispatcher" local path = disp.context.path local request = disp.context.request local mtkwifi = require("mtkwifi") local devs = mtkwifi.get_all_devs() local devname local vifname, vifidx local dev = {} local vif = {} if request[4] == "vif_add_view" then devname, vifname = request[5], request[6] dev = devs and devs[devname] vifname = vifname..#dev.vifs vifidx = #dev.vifs + 1 elseif request[4] == "vif_cfg_view" then devname, vifname = request[5], request[6] dev = devs and devs[devname] or nil vif = dev and dev.vifs[vifname] or nil vifidx = vif and vif.vifidx or nil end local cfgs = mtkwifi.load_profile(dev.profile) local diff = mtkwifi.diff_profile(dev.profile) local WscValue = mtkwifi.token_get(cfgs["WscConfMode"], vifidx, "0") or "0" local appliedWscValue = diff["WscConfMode"] and mtkwifi.token_get(diff["WscConfMode"][2], vifidx) or nil local map_cfgs local first_card_cfgs = mtkwifi.load_profile(mtkwifi.detect_first_card()) local appliedMapModeDiff if pcall(require, "map_helper") then map_cfgs = mtkwifi.load_profile(mtkwifi.__read_easymesh_profile_path()) local appliedMapDiffTable = mtkwifi.diff_profile(mtkwifi.detect_first_card()) appliedMapModeDiff = appliedMapDiffTable["MapMode"] and appliedMapDiffTable["MapEnable"][2] or nil end local AuthModes = {} local EncryptionTypeLists = {} if string.split(cfgs.WirelessMode,";")[1] == "18" then AuthModes = (WscValue == "0") and dev.AuthModeList_6G or dev.WpsEnableAuthModeList_6G EncryptionTypeLists = dev.EncryptionTypeList_6G else AuthModes = (WscValue == "0") and dev.AuthModeList or dev.WpsEnableAuthModeList EncryptionTypeLists = dev.EncryptionTypeList end %>
" enctype="multipart/form-data" onsubmit="return validate_all('<%=vifidx%>','<%=cfgs["HT_DisallowTKIP"]%>') && chk_WPS_ACL('<%=tostring(mtkwifi.__any_wsc_enabled(WscValue)) %>')" autocomplete="off"> <% if not dev or not vif then%>
Interface Not Exist - <%=vifname and devname.."@"..vifname or devname%>
<% else %> <% if mtkwifi.band(vif.__wirelessmode or string.split(cfgs.WirelessMode,";")[1]) == "5G" or mtkwifi.band(vif.__wirelessmode or string.split(cfgs.WirelessMode,";")[1]) == "6G" then %> <% else %> <% end %>
Interface Configurations - <%=vifname and devname.."@"..vifname or devname%> <%if next(diff) ~= nil then%> ( '">Click here to apply changes) <%end%> <% if dev.DBDC_MODE == "0" then %> <% end %>
SSID " name="<%="SSID"..vifidx%>">
Channel
Auth Mode
Hidden checked="checked" <% end %> type="checkbox">
AP Isolation checked="checked" <% end %> type="checkbox">
WMM Capable checked="checked" <% end %> type="checkbox">
TX Rate
STBC checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
HT LDPC checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
VHT STBC checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
VHT LDPC checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
Mode
DLS Capable checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
APSD Capable checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
Fragment Threshold (range 256-2346, default 2346)
RTS Threshold (range 1-2347, default 2347)
VHT Short GI
VHT BW Signaling checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable checked="checked"<% end %>/> Dynamic
HT Protection checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
HT Guard Interval
Operating Mode
A-MSDU checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
Auto Block ACK checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
IGMP Snooping checked="checked"<% end %>/> Enable checked="checked"<% end %>/> Disable
<% if string.split(cfgs.WirelessMode,";")[1] == "16" or string.split(cfgs.WirelessMode,";")[1] == "17" or string.split(cfgs.WirelessMode,";")[1] == "18" then %> <% end %> <%if tostring(mtkwifi.__any_wsc_enabled(WscValue)) == "1" then%> <% if not appliedWscValue or (WscValue == appliedWscValue) then%> <% if map_cfgs then %> <% if cfgs.MapMode == "0" then %> <% end %> <% else %> <% end %> <% else %> <% end %> <% end %> <% if not dev.wdsBand or dev.wdsBand == dev.dbdcBandName then %> style="display:none" <% end %>> style="display:none" <% end %>> style="display:none" <% end %>> style="display:none" <% end %>> style="display:none" <% end %>> style="display:none" <% end %>> style="display:none" <% end %>> style="display:none" <% end %>> style="display:none" <% end %>> style="display:none" <% end %>> <% _wdsMac=cfgs.WdsList and cfgs.WdsList:match("^([%x:]+)") %> style="display:none" <% end %>> <% _wdsMac=cfgs.WdsList and cfgs.WdsList:match("^[%x:]+;([%x:]+)") %> style="display:none" <% end %>> <% _wdsMac=cfgs.WdsList and cfgs.WdsList:match("^[%x:]+;[%x:]+;([%x:]+)") %> style="display:none" <% end %>> <% _wdsMac=cfgs.WdsList and cfgs.WdsList:match("^[%x:]+;[%x:]+;[%x:]+;([%x:]+)") %> <% end %> <% if request[4] == "vif_cfg_view" then%> <% end %> <% if map_cfgs then %>
Access Control - <%=vifname and devname.."@"..vifname or devname%>
Access Policy disabled="disabled" <% end %> <% if cfgs["AccessPolicy"..(vifidx-1)] == "0" then %> checked="checked"<% end %>/> Disable
disabled="disabled" <% end %> <% if cfgs["AccessPolicy"..(vifidx-1)] == "1" then %> checked="checked"<% end %>/> White List
disabled="disabled" <% end %> <% if cfgs["AccessPolicy"..(vifidx-1)] == "2" then %> checked="checked"<% end %>/> Black List
<% if first_card_cfgs.MapMode == "1" then %> To set Black List see MAP application note when EasyMesh is enabled. <% end %>
# 1. one MAC one line.
# 2. empty lines will be ignored.
# 3. lines start with "#" will be ignored.
# 4. invalid MAC will be ignored.

11:22:33:44:55:66
AA:BB:CC:DD:EE:FF
11:22:33:aa:bb:cc
            
<% else %>
Access Control - <%=vifname and devname.."@"..vifname or devname%>
Access Policy checked="checked"<% end %>/> Disable
checked="checked"<% end %>/> White List
checked="checked"<% end %>/> Black List
# 1. one MAC one line.
# 2. empty lines will be ignored.
# 3. lines start with "#" will be ignored.
# 4. invalid MAC will be ignored.

11:22:33:44:55:66
AA:BB:CC:DD:EE:FF
11:22:33:aa:bb:cc
            
<% end %>
<% end %> <%+footer%>