summaryrefslogtreecommitdiffhomepage
path: root/modules/luci-mod-network
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2019-02-17 21:00:52 +0100
committerHauke Mehrtens <hauke@hauke-m.de>2019-03-09 17:08:43 +0100
commit526ac93f548a5c426ea5a6bb8eb39f3ba5920558 (patch)
tree2cdea3a7205c25387cfe9fa0959c6567f5e902a8 /modules/luci-mod-network
parent9627dbd65e4a7c4a6fe5aee1ba6930dee180d7c2 (diff)
luci-mod-network: wifi: Add OWE support
This allows to select OWE support in the wireless menu when a capable hostapd is installed. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'modules/luci-mod-network')
-rw-r--r--modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua15
1 files changed, 15 insertions, 0 deletions
diff --git a/modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua b/modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua
index 393b8a62b..7b7fc0ffc 100644
--- a/modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua
+++ b/modules/luci-mod-network/luasrc/model/cbi/admin_network/wifi.lua
@@ -678,6 +678,10 @@ if hwtype == "mac80211" or hwtype == "prism2" then
local has_ap_sae = (os.execute("hostapd -vsae >/dev/null 2>/dev/null") == 0)
local has_sta_sae = (os.execute("wpa_supplicant -vsae >/dev/null 2>/dev/null") == 0)
+ -- Probe OWE support
+ local has_ap_owe = (os.execute("hostapd -vowe >/dev/null 2>/dev/null") == 0)
+ local has_sta_owe = (os.execute("wpa_supplicant -vowe >/dev/null 2>/dev/null") == 0)
+
if hostapd and supplicant then
encr:value("psk", "WPA-PSK", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}, {mode="adhoc"})
encr:value("psk2", "WPA2-PSK", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}, {mode="adhoc"})
@@ -690,6 +694,9 @@ if hwtype == "mac80211" or hwtype == "prism2" then
encr:value("wpa", "WPA-EAP", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"})
encr:value("wpa2", "WPA2-EAP", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"})
end
+ if has_ap_owe and has_sta_owe then
+ encr:value("owe", "OWE", {mode="ap"}, {mode="sta"}, {mode="ap-wds"}, {mode="sta-wds"}, {mode="adhoc"})
+ end
elseif hostapd and not supplicant then
encr:value("psk", "WPA-PSK", {mode="ap"}, {mode="ap-wds"})
encr:value("psk2", "WPA2-PSK", {mode="ap"}, {mode="ap-wds"})
@@ -702,6 +709,9 @@ if hwtype == "mac80211" or hwtype == "prism2" then
encr:value("wpa", "WPA-EAP", {mode="ap"}, {mode="ap-wds"})
encr:value("wpa2", "WPA2-EAP", {mode="ap"}, {mode="ap-wds"})
end
+ if has_ap_owe then
+ encr:value("owe", "OWE", {mode="ap"}, {mode="ap-wds"})
+ end
encr.description = translate(
"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " ..
"and ad-hoc mode) to be installed."
@@ -718,6 +728,9 @@ if hwtype == "mac80211" or hwtype == "prism2" then
encr:value("wpa", "WPA-EAP", {mode="sta"}, {mode="sta-wds"})
encr:value("wpa2", "WPA2-EAP", {mode="sta"}, {mode="sta-wds"})
end
+ if has_sta_owe then
+ encr:value("owe", "OWE", {mode="sta"}, {mode="sta-wds"})
+ end
encr.description = translate(
"WPA-Encryption requires wpa_supplicant (for client mode) or hostapd (for AP " ..
"and ad-hoc mode) to be installed."
@@ -1131,10 +1144,12 @@ if hwtype == "mac80211" then
ieee80211w:depends({mode="ap", encryption="psk-mixed"})
ieee80211w:depends({mode="ap", encryption="sae"})
ieee80211w:depends({mode="ap", encryption="sae-mixed"})
+ ieee80211w:depends({mode="ap", encryption="owe"})
ieee80211w:depends({mode="ap-wds", encryption="psk2"})
ieee80211w:depends({mode="ap-wds", encryption="psk-mixed"})
ieee80211w:depends({mode="ap-wds", encryption="sae"})
ieee80211w:depends({mode="ap-wds", encryption="sae-mixed"})
+ ieee80211w:depends({mode="ap-wds", encryption="owe"})
max_timeout = s:taboption("encryption", Value, "ieee80211w_max_timeout",
translate("802.11w maximum timeout"),