The ucode wifi-scripts unconditionally set ieee80211w=1 for psk-sae
and eap-eap2 auth types, ignoring any user-configured value. This
caused ieee80211w=2 (MFP required) to be silently downgraded to 1
(MFP optional) when using sae-mixed encryption.
Change the logic to only set the default of 1 when ieee80211w is not
already configured by the user.
Fixes: https://github.com/openwrt/openwrt/issues/21751
Signed-off-by: Felix Fietkau <nbd@nbd.name>
}
if (config.auth_type in [ 'psk-sae', 'eap-eap2' ]) {
- config.ieee80211w = 1;
+ if (!config.ieee80211w)
+ config.ieee80211w = 1;
if (config.rsn_override)
config.rsn_override_mfp = 2;
config.sae_require_mfp = 1;
if (config.auth_type in [ 'sae', 'owe', 'eap2', 'eap192' ])
config.ieee80211w = 2;
- else if (config.auth_type in [ 'psk-sae' ])
+ else if (config.auth_type in [ 'psk-sae' ] && !config.ieee80211w)
config.ieee80211w = 1;
if ((wildcard(data.htmode, 'EHT*') || wildcard(data.htmode, 'HE*')) &&
config.rsn_override)