1
0
mirror of https://gitlab.nic.cz/turris/reforis/foris-js.git synced 2024-11-14 17:35:35 +01:00

Add a switch to disable Management Frame Protection (802.11w)

In the case of WPA3 encryption Management Frame Protection is enabled
by default in OpenWrt.

But in some cases, it causes trouble with particular devices that
fails to connect to WiFi Access Point - see:
https://forum.turris.cz/t/turris-omnia-wifi-health/15704/15
This commit is contained in:
Aleksandr Gumroian 2022-09-29 18:20:25 +02:00
parent f3a1090dbd
commit 8348179b55
No known key found for this signature in database
GPG Key ID: 5F29B986B9AD1471

View File

@ -65,6 +65,7 @@ DeviceForm.propTypes = {
guest_wifi: PropTypes.object.isRequired, guest_wifi: PropTypes.object.isRequired,
encryption: PropTypes.string.isRequired, encryption: PropTypes.string.isRequired,
available_bands: PropTypes.array.isRequired, available_bands: PropTypes.array.isRequired,
"80211w": PropTypes.bool.isRequired,
}), }),
formErrors: PropTypes.object.isRequired, formErrors: PropTypes.object.isRequired,
setFormValue: PropTypes.func.isRequired, setFormValue: PropTypes.func.isRequired,
@ -102,7 +103,7 @@ function DeviceForm({
switchHeading switchHeading
{...props} {...props}
/> />
{formData.enabled ? ( {formData.enabled && (
<> <>
<TextInput <TextInput
label="SSID" label="SSID"
@ -142,7 +143,7 @@ function DeviceForm({
{...props} {...props}
/> />
<CheckBox <Switch
label={_("Hide SSID")} label={_("Hide SSID")}
helpText={HELP_TEXTS.hidden} helpText={HELP_TEXTS.hidden}
checked={formData.hidden} checked={formData.hidden}
@ -220,6 +221,25 @@ function DeviceForm({
{...props} {...props}
/> />
{(formData.encryption === "WPA3" ||
formData.encryption === "WPA2/3") && (
<Switch
label={_("Disable Management Frame Protection")}
helpText={_(
"In case you have trouble connecting to WiFi Access Point, try disabling Management Frame Protection."
)}
checked={formData["80211w"]}
onChange={setFormValue((value) => ({
devices: {
[deviceIndex]: {
"80211w": { $set: value },
},
},
}))}
{...props}
/>
)}
{hasGuestNetwork && ( {hasGuestNetwork && (
<WifiGuestForm <WifiGuestForm
formData={{ formData={{
@ -232,8 +252,8 @@ function DeviceForm({
/> />
)} )}
</> </>
) : null} )}
{divider ? <hr /> : null} {divider && <hr />}
</> </>
); );
} }