diff --git a/components/umac/mlme/connection_mgr/core/src/wlan_cm_roam_fw_sync.c b/components/umac/mlme/connection_mgr/core/src/wlan_cm_roam_fw_sync.c index 1c5b6c9f1b..191312ade5 100644 --- a/components/umac/mlme/connection_mgr/core/src/wlan_cm_roam_fw_sync.c +++ b/components/umac/mlme/connection_mgr/core/src/wlan_cm_roam_fw_sync.c @@ -655,10 +655,11 @@ static QDF_STATUS cm_process_roam_keys(struct wlan_objmgr_vdev *vdev, } qdf_mem_zero(pmkid_cache, sizeof(*pmkid_cache)); qdf_mem_free(pmkid_cache); - } else { + } + + if (roaming_info->auth_status != ROAM_AUTH_STATUS_AUTHENTICATED) cm_update_wait_for_key_timer(vdev, vdev_id, WAIT_FOR_KEY_TIMEOUT_PERIOD); - } end: return status; } diff --git a/core/hdd/src/wlan_hdd_cm_connect.c b/core/hdd/src/wlan_hdd_cm_connect.c index 8a1d51fd5e..0c5c648239 100644 --- a/core/hdd/src/wlan_hdd_cm_connect.c +++ b/core/hdd/src/wlan_hdd_cm_connect.c @@ -985,9 +985,7 @@ static bool hdd_cm_is_roam_auth_required(struct hdd_station_ctx *sta_ctx, if (!rsp->roaming_info) return false; - if (rsp->roaming_info->auth_status == ROAM_AUTH_STATUS_AUTHENTICATED || - sta_ctx->conn_info.auth_type == eCSR_AUTH_TYPE_SAE || - sta_ctx->conn_info.auth_type == eCSR_AUTH_TYPE_OWE) + if (rsp->roaming_info->auth_status == ROAM_AUTH_STATUS_AUTHENTICATED) return false; return true; diff --git a/core/sme/src/csr/csr_api_roam.c b/core/sme/src/csr/csr_api_roam.c index 4c3a33f4d0..5c8867fb0e 100644 --- a/core/sme/src/csr/csr_api_roam.c +++ b/core/sme/src/csr/csr_api_roam.c @@ -16945,7 +16945,9 @@ csr_process_roam_sync_callback(struct mac_context *mac_ctx, } qdf_mem_zero(pmkid_cache, sizeof(*pmkid_cache)); qdf_mem_free(pmkid_cache); - } else { + } + + if (roam_synch_data->auth_status != ROAM_AUTH_STATUS_AUTHENTICATED) { roam_info->fAuthRequired = true; cm_update_wait_for_key_timer(vdev, session_id, WAIT_FOR_KEY_TIMEOUT_PERIOD);