qcacmn: Add sanity check for phase values length
Add length sanity check for ibf cal value & phase delta to ensure HOST always align with target defined length. Also remove the REPORT_AOA_FOR_RCC flag usage. Change-Id: I06e4a430143df1534849b8ec974e38932cff3ef1 CRs-Fixed: 2997030
This commit is contained in:

committed by
Madan Koyyalamudi

parent
a6e6827a7a
commit
799ebe40d7
@@ -228,7 +228,6 @@ static QDF_STATUS send_cfr_rcc_cmd_tlv(wmi_unified_t wmi_handle,
|
||||
return status;
|
||||
}
|
||||
|
||||
#ifdef REPORT_AOA_FOR_RCC
|
||||
static QDF_STATUS
|
||||
extract_cfr_phase_param_tlv(wmi_unified_t wmi_handle,
|
||||
void *evt_buf,
|
||||
@@ -257,27 +256,28 @@ extract_cfr_phase_param_tlv(wmi_unified_t wmi_handle,
|
||||
|
||||
param->chain_phase_mask = (phase_event->chainInfo >> 16) & 0xFFFF;
|
||||
|
||||
if ((sizeof(param->ibf_cal_val)) <
|
||||
(sizeof(phase_event->perChainIbfCalVal))) {
|
||||
wmi_err("ibf_cal_val can not hold all values from event data");
|
||||
return QDF_STATUS_E_RANGE;
|
||||
}
|
||||
|
||||
if ((sizeof(param->phase_delta)) <
|
||||
(sizeof(phase_event->phasedelta))) {
|
||||
wmi_err("phase_delta can not hold all values from event data");
|
||||
return QDF_STATUS_E_RANGE;
|
||||
}
|
||||
|
||||
qdf_mem_copy(param->ibf_cal_val,
|
||||
phase_event->perChainIbfCalVal,
|
||||
(sizeof(uint32_t) * WMI_MAX_CHAINS_FOR_AOA_RCC));
|
||||
sizeof(param->ibf_cal_val));
|
||||
|
||||
qdf_mem_copy(param->phase_delta,
|
||||
phase_event->phasedelta,
|
||||
(sizeof(uint32_t) *
|
||||
WMI_MAX_CHAINS_FOR_AOA_RCC *
|
||||
MAX_AOA_PHASEDELTA));
|
||||
sizeof(param->phase_delta));
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#else
|
||||
static QDF_STATUS
|
||||
extract_cfr_phase_param_tlv(wmi_unified_t wmi_handle,
|
||||
void *evt_buf,
|
||||
struct wmi_cfr_phase_delta_param *param)
|
||||
{
|
||||
return QDF_STATUS_E_NOSUPPORT;
|
||||
}
|
||||
#endif /* REPORT_AOA_FOR_RCC */
|
||||
#endif
|
||||
|
||||
static QDF_STATUS send_peer_cfr_capture_cmd_tlv(wmi_unified_t wmi_handle,
|
||||
|
@@ -16081,10 +16081,8 @@ event_ids[wmi_roam_scan_chan_list_id] =
|
||||
#endif
|
||||
event_ids[wmi_pdev_get_halphy_cal_status_event_id] =
|
||||
WMI_PDEV_GET_HALPHY_CAL_STATUS_EVENTID;
|
||||
#ifdef REPORT_AOA_FOR_RCC
|
||||
event_ids[wmi_pdev_aoa_phasedelta_event_id] =
|
||||
WMI_PDEV_AOA_PHASEDELTA_EVENTID;
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef WLAN_FEATURE_LINK_LAYER_STATS
|
||||
@@ -16499,10 +16497,8 @@ static void populate_tlv_service(uint32_t *wmi_service)
|
||||
WMI_SERVICE_RTT_AP_INITIATOR_STAGGERED_MODE_SUPPORTED;
|
||||
wmi_service[wmi_service_rtt_ap_initiator_bursted_mode_supported] =
|
||||
WMI_SERVICE_RTT_AP_INITIATOR_BURSTED_MODE_SUPPORTED;
|
||||
#ifdef REPORT_AOA_FOR_RCC
|
||||
wmi_service[wmi_service_aoa_for_rcc_supported] =
|
||||
WMI_SERVICE_AOA_FOR_RCC_SUPPORTED;
|
||||
#endif
|
||||
#ifdef WLAN_FEATURE_P2P_P2P_STA
|
||||
wmi_service[wmi_service_p2p_p2p_cc_support] =
|
||||
WMI_SERVICE_P2P_P2P_CONCURRENCY_SUPPORT;
|
||||
|
Reference in New Issue
Block a user