qcacld-3.0: Do not enable BTM for MBO BSS without PMF
Disable the bss transition cap in the extended capabilities IE, if the AP supports MBO without PMF. Change-Id: Iaaacb95e74aa1d4f5f4a651eafe7370e6ed78627 CRs-Fixed: 3716299
This commit is contained in:

committad av
Ravindra Konda

förälder
448aaddcd7
incheckning
c1eddbf6bb
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 2012-2021 The Linux Foundation. All rights reserved.
|
* Copyright (c) 2012-2021 The Linux Foundation. All rights reserved.
|
||||||
* Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
* Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
*
|
*
|
||||||
* Permission to use, copy, modify, and/or distribute this software for
|
* Permission to use, copy, modify, and/or distribute this software for
|
||||||
* any purpose with or without fee is hereby granted, provided that the
|
* any purpose with or without fee is hereby granted, provided that the
|
||||||
@@ -12177,11 +12177,19 @@ QDF_STATUS populate_dot11f_btm_extended_caps(struct mac_context *mac_ctx,
|
|||||||
if (QDF_IS_STATUS_ERROR(status)) {
|
if (QDF_IS_STATUS_ERROR(status)) {
|
||||||
p_ext_cap->bss_transition = 0;
|
p_ext_cap->bss_transition = 0;
|
||||||
pe_debug("Disable btm for roaming not suppprted");
|
pe_debug("Disable btm for roaming not suppprted");
|
||||||
} else {
|
|
||||||
p_ext_cap->bss_transition = 1;
|
|
||||||
pe_debug("Enable btm for roaming suppprted");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!pe_session->lim_join_req)
|
||||||
|
goto compute_len;
|
||||||
|
|
||||||
|
if (p_ext_cap->bss_transition && !cm_is_open_mode(pe_session->vdev) &&
|
||||||
|
pe_session->lim_join_req->bssDescription.mbo_oce_enabled_ap &&
|
||||||
|
!pe_session->limRmfEnabled) {
|
||||||
|
pe_debug("Disable BTM as the MBO AP doesn't support PMF");
|
||||||
|
p_ext_cap->bss_transition = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
compute_len:
|
||||||
dot11f->num_bytes = lim_compute_ext_cap_ie_length(dot11f);
|
dot11f->num_bytes = lim_compute_ext_cap_ie_length(dot11f);
|
||||||
if (!dot11f->num_bytes) {
|
if (!dot11f->num_bytes) {
|
||||||
dot11f->present = 0;
|
dot11f->present = 0;
|
||||||
|
Referens i nytt ärende
Block a user