diff --git a/core/wma/src/wma_mgmt.c b/core/wma/src/wma_mgmt.c index 0a9ae0c04c11..f4c70f039981 100644 --- a/core/wma/src/wma_mgmt.c +++ b/core/wma/src/wma_mgmt.c @@ -2652,9 +2652,9 @@ static QDF_STATUS wma_store_bcn_tmpl(tp_wma_handle wma, uint8_t vdev_id, } len = *(u32 *) &bcn_info->beacon[0]; - if (len > SIR_MAX_BEACON_SIZE) { - WMA_LOGE("%s: Received beacon len %d exceeding max limit %d", - __func__, len, SIR_MAX_BEACON_SIZE); + if (len > SIR_MAX_BEACON_SIZE - sizeof(uint32_t)) { + WMA_LOGE("%s: Received beacon len %u exceeding max limit %lu", + __func__, len, SIR_MAX_BEACON_SIZE - sizeof(uint32_t)); return QDF_STATUS_E_INVAL; } WMA_LOGD("%s: Storing received beacon template buf to local buffer",