From af8b633fcb9f484b4ef982f38ccb12626179d4ef Mon Sep 17 00:00:00 2001 From: Sandeep Puligilla Date: Tue, 1 May 2018 01:14:37 -0700 Subject: [PATCH] qcacld-3.0: Add validation check for Access category Add validation check for access category in sme_qos_find_matching_tspec_lfr3() API. Change-Id: I93cf061aabf207ea826009d81f457dbb966e2167 CRs-Fixed: 2232750 --- core/sme/src/qos/sme_qos.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/core/sme/src/qos/sme_qos.c b/core/sme/src/qos/sme_qos.c index 41f92f481d1b..184ddc1dcd0a 100644 --- a/core/sme/src/qos/sme_qos.c +++ b/core/sme/src/qos/sme_qos.c @@ -3836,6 +3836,10 @@ static QDF_STATUS sme_qos_find_matching_tspec_lfr3(tpAniSirGlobal mac_ctx, QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_DEBUG, FL("invoked on session %d"), sessionid); + if (ac == SME_QOS_EDCA_AC_MAX) { + sme_err("Invalid AC %d", ac); + return QDF_STATUS_E_FAILURE; + } ric_data = ric_data_desc; ric_len = ric_rsplen; ac_info = &qos_session->ac_info[ac]; @@ -3849,10 +3853,10 @@ static QDF_STATUS sme_qos_find_matching_tspec_lfr3(tpAniSirGlobal mac_ctx, do { ac1 = sme_qos_up_to_ac( ric_data->WMMTSPEC.user_priority); - if (ac == SME_QOS_EDCA_AC_MAX) { + if (ac1 == SME_QOS_EDCA_AC_MAX) { QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_ERROR, - FL("Invalid AC %d UP %d"), ac, + FL("Invalid AC %d UP %d"), ac1, ric_data->WMMTSPEC.user_priority); break; }