mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-29 13:59:24 +01:00
station: make station_can_fast_transition more robust
Check that the current handshake is using an FT AKM and that the target BSS AKM suites contain an FT AKM.
This commit is contained in:
parent
9a3639f2fa
commit
7fc0a8fc0f
@ -1796,10 +1796,23 @@ static bool station_can_fast_transition(struct handshake_state *hs,
|
|||||||
&mdid, NULL, NULL) < 0)
|
&mdid, NULL, NULL) < 0)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if (bss->mde_present && l_get_le16(bss->mde) == mdid)
|
if (!(bss->mde_present && l_get_le16(bss->mde) == mdid))
|
||||||
return true;
|
return false;
|
||||||
|
|
||||||
return false;
|
if (hs->supplicant_ie != NULL) {
|
||||||
|
struct ie_rsn_info rsn_info;
|
||||||
|
|
||||||
|
if (!IE_AKM_IS_FT(hs->akm_suite))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (scan_bss_get_rsn_info(bss, &rsn_info) < 0)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (!IE_AKM_IS_FT(rsn_info.akm_suites))
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void station_transition_start(struct station *station,
|
static void station_transition_start(struct station *station,
|
||||||
|
Loading…
Reference in New Issue
Block a user