X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=modules%2Fniu%2Fluasrc%2Fmodel%2Fcbi%2Fniu%2Fwireless%2Fap1.lua;fp=modules%2Fniu%2Fluasrc%2Fmodel%2Fcbi%2Fniu%2Fwireless%2Fap1.lua;h=2b748ad9d57e7c4c2c51271aacb74ea6ddcf6496;hp=5ce93b400035b1b774222fd98585f3e369766457;hb=e822874a710a00ee8b6de988ece12ba76e193236;hpb=2aa4534db4c01851fa38293766f326cf4089c032
diff --git a/modules/niu/luasrc/model/cbi/niu/wireless/ap1.lua b/modules/niu/luasrc/model/cbi/niu/wireless/ap1.lua
index 5ce93b400..2b748ad9d 100644
--- a/modules/niu/luasrc/model/cbi/niu/wireless/ap1.lua
+++ b/modules/niu/luasrc/model/cbi/niu/wireless/ap1.lua
@@ -16,13 +16,13 @@ $Id$
local iface = "ap"
local ap = true
-
local fs = require "nixio.fs"
local sys = require "luci.sys"
local cursor = require "luci.model.uci".inst
local state = require "luci.model.uci".inst_state
cursor:unload("wireless")
+
local device = cursor:get("wireless", iface, "device")
local hwtype = cursor:get("wireless", device, "type")
@@ -175,7 +175,9 @@ s.addremove = false
s:tab("general", translate("General Settings"))
s:tab("expert", translate("Expert Settings"))
-s:taboption("general", Value, "ssid", translate("Network Name (ESSID)"))
+
+
+local ssid = s:taboption("general", Value, "ssid", translate("Network Name (ESSID)"))
mode = s:taboption("expert", ListValue, "mode", translate("Operating Mode"))
mode.override_values = true
@@ -185,8 +187,12 @@ encr = s:taboption("expert", ListValue, "encryption", translate("Encryption"))
if hwtype == "mac80211" then
- s:taboption("expert", Flag, "wds", translate("Enable Bridging and Repeating (WDS)"))
- s:taboption("expert", Flag, "powersave", translate("Enable Powersaving"))
+ mode:value("mesh", translate("Mesh (802.11s)"))
+ local meshid = s:taboption("expert", Value, "mesh_id", translate("Mesh ID"))
+ meshid:depends("mode", "mesh")
+
+ s:taboption("expert", Flag, "wds", translate("Enable Bridging and Repeating (WDS)")):depends("mode", "ap")
+ s:taboption("expert", Flag, "powersave", translate("Enable Powersaving")):depends("mode", "ap")
elseif hwtype == "atheros" then
-- mode:value("wds", translate("Static WDS"))
@@ -246,16 +252,26 @@ encr:value("wep", "WEP", {mode="ap"})
if hwtype == "atheros" or hwtype == "mac80211" or hwtype == "prism2" then
local hostapd = fs.access("/usr/sbin/hostapd") or os.getenv("LUCI_SYSROOT")
+ local supplicant = fs.access("/usr/sbin/wpa_supplicant") or os.getenv("LUCI_SYSROOT")
- if hostapd then
- --s:taboption("expert", Flag, "_alloweap", "Allow EAP / 802.11i authentication")
-
+ if hostapd and not supplicant then
encr:value("psk", "WPA", {mode="ap"})
encr:value("wpa", "WPA-EAP", {mode="ap"})
encr:value("psk-mixed", "WPA + WPA2", {mode="ap"})
encr:value("psk2", "WPA2", {mode="ap"})
encr:value("wpa2", "WPA2-EAP (802.11i)", {mode="ap"})
encr.default = "psk-mixed"
+ elseif not hostapd and supplicant then
+ encr:value("psk", "WPA", {mode="mesh"})
+ encr:value("psk2", "WPA2", {mode="mesh"})
+ encr.default = "psk2"
+ elseif hostapd and supplicant then
+ encr:value("psk", "WPA", {mode="ap"}, {mode="mesh"})
+ encr:value("wpa", "WPA-EAP", {mode="ap"})
+ encr:value("psk-mixed", "WPA + WPA2", {mode="ap"})
+ encr:value("psk2", "WPA2", {mode="ap"}, {mode="mesh"})
+ encr:value("wpa2", "WPA2-EAP (802.11i)", {mode="ap"})
+ encr.default = "psk-mixed"
end
elseif hwtype == "broadcom" then
encr:value("psk", "WPA")