wlan: Fix Static analysis error.
Fix Static analysis errors as below:
1) Handle return value in WLANDXE_StartLogTransfer and
WDTS_openTransport
2) Removed dead code in wlan_hdd_cfg80211_set_ie
3) Limit check for rateIdx in hdd_mon_add_rx_radiotap_hdr
4) Null check for pHddCtx in hdd_rx_packet_monitor_cbk
5) Memory leak in __iw_setint_getnone,
limHandleDelBssInReAssocContext and __limProcessSmeScanReq
Change-Id: I9dc0c630d62c06fb55e953f9506b04dbeff9bd51
CRs-Fixed: 919502
diff --git a/CORE/HDD/src/wlan_hdd_tx_rx.c b/CORE/HDD/src/wlan_hdd_tx_rx.c
index 3ba8640..06730d5 100644
--- a/CORE/HDD/src/wlan_hdd_tx_rx.c
+++ b/CORE/HDD/src/wlan_hdd_tx_rx.c
@@ -2347,6 +2347,12 @@
rateIdx-=202;
if( rateIdx >= 218 && rateIdx <= 225 )
rateIdx-=210;
+
+ if(rateIdx > (sizeof(gRatefromIdx)/ sizeof(int))) {
+ VOS_TRACE( VOS_MODULE_ID_HDD_DATA, VOS_TRACE_LEVEL_ERROR,
+ "%s: invalid rateIdx %d make it 0", __func__, rateIdx);
+ rateIdx = 0;
+ }
currentRSSI0 = WDA_GETRSSI0(pRxPacket) - 100;
currentRSSI1 = WDA_GETRSSI1(pRxPacket) - 100;
currentRSSI = (currentRSSI0 > currentRSSI1) ? currentRSSI0 : currentRSSI1;
@@ -2411,6 +2417,15 @@
}
pHddCtx = (hdd_context_t *)vos_get_context( VOS_MODULE_ID_HDD, vosContext );
+
+ if (NULL == pHddCtx)
+ {
+ VOS_TRACE(VOS_MODULE_ID_HDD_DATA, VOS_TRACE_LEVEL_ERROR,
+ FL("Failed to get pHddCtx from vosContext"));
+ vos_pkt_return_packet( pVosPacket );
+ return VOS_STATUS_E_FAILURE;
+ }
+
pAdapter = hdd_get_adapter(pHddCtx,WLAN_HDD_MONITOR);
if ((NULL == pAdapter) || (WLAN_HDD_ADAPTER_MAGIC != pAdapter->magic) )
{