diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c index fb8a8c2a12..2b8ccb1968 100644 --- a/core/sme/src/common/sme_api.c +++ b/core/sme/src/common/sme_api.c @@ -15213,6 +15213,7 @@ QDF_STATUS sme_fast_reassoc(tHalHandle hal, tCsrRoamProfile *profile, QDF_STATUS status; struct wma_roam_invoke_cmd *fastreassoc; struct scheduler_msg msg = {0}; + tpAniSirGlobal mac_ctx = PMAC_STRUCT(hal); fastreassoc = qdf_mem_malloc(sizeof(*fastreassoc)); if (NULL == fastreassoc) { @@ -15250,6 +15251,16 @@ QDF_STATUS sme_fast_reassoc(tHalHandle hal, tCsrRoamProfile *profile, fastreassoc->frame_len = 0; } + if (csr_is_auth_type_ese(mac_ctx->roam.roamSession[vdev_id]. + connectedProfile.AuthType)) { + sme_debug("Beacon is not required for ESE"); + if (fastreassoc->frame_len) { + qdf_mem_free(fastreassoc->frame_buf); + fastreassoc->frame_buf = NULL; + fastreassoc->frame_len = 0; + } + } + msg.type = SIR_HAL_ROAM_INVOKE; msg.reserved = 0; msg.bodyptr = fastreassoc;