fils: Ensure capability checks are consistent

iwd supports FILS only on softmac drivers.  Ensure the capability check
is consistent between wiphy and netdev, both the softmac and the
relevant EXT_FEATURE bit must be checked.

CMD_EXTERNAL_AUTH could potentially be used for FILS for FullMAC cards,
but no hardware supporting this has been identified yet.
This commit is contained in:
Denis Kenzior 2024-08-03 22:18:36 -05:00
parent 16f5bbc20a
commit be7b19d587
2 changed files with 3 additions and 1 deletions

View File

@ -3776,7 +3776,8 @@ static int netdev_handshake_state_setup_connection_type(
case IE_RSN_AKM_SUITE_FT_OVER_FILS_SHA256:
case IE_RSN_AKM_SUITE_FT_OVER_FILS_SHA384:
/* FILS has no offload in any upstream driver */
if (softmac)
if (softmac && wiphy_has_ext_feature(wiphy,
NL80211_EXT_FEATURE_FILS_STA))
goto softmac;
return -ENOTSUP;

View File

@ -277,6 +277,7 @@ enum ie_rsn_akm_suite wiphy_select_akm(struct wiphy *wiphy,
*/
if (security == SECURITY_8021X) {
if (wiphy_has_ext_feature(wiphy, NL80211_EXT_FEATURE_FILS_STA) &&
wiphy->support_cmds_auth_assoc &&
fils_capable_hint) {
if ((info->akm_suites &
IE_RSN_AKM_SUITE_FT_OVER_FILS_SHA384) &&