wlan: Resolve static analysis issues
Resolved static analysis issues, variable initialization,
return on failure, validate data before using.
Change-Id: Ia6ffd422ae3f9bc8419f32aa914839a091841335
CRs-Fixed: 975049
diff --git a/CORE/BAP/src/btampHCI.c b/CORE/BAP/src/btampHCI.c
index 0c6d85e..157b8d4 100644
--- a/CORE/BAP/src/btampHCI.c
+++ b/CORE/BAP/src/btampHCI.c
@@ -795,7 +795,7 @@
else
{
/* Maximum of 5 triplets allowed, based on size of triplets definition */
- if (tlvlen / 3 > 5)
+ if (tlvlen > 15)
{
tlvlen = 15;
}
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c
index 23c114d..066efbf 100644
--- a/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -17888,7 +17888,8 @@
{
VOS_STATUS status;
long ret;
- tCsrTdlsLinkEstablishParams tdlsLinkEstablishParams;
+ tCsrTdlsLinkEstablishParams tdlsLinkEstablishParams = { {0}, 0,
+ 0, 0, 0, 0, 0, 0, {0}, 0, {0} };
WLAN_STADescType staDesc;
tANI_U16 numCurrTdlsPeers = 0;
hddTdlsPeer_t *connPeer = NULL;
diff --git a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
index 6bfb583..17997c0 100644
--- a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
+++ b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -1137,6 +1137,7 @@
// Log error
limLog(pMac, LOGP,
FL("call to AllocateMemory failed for eWNI_SME_AUTH_IND"));
+ return;
}
limCopyU16((tANI_U8 *) &pSirSmeAuthInd->messageType, eWNI_SME_AUTH_IND);
limAuthIndSerDes(pMac, (tpLimMlmAuthInd) pMsgBuf,
diff --git a/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c b/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c
index 4dcf9cf..3a33168 100644
--- a/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c
+++ b/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c
@@ -3498,7 +3498,7 @@
void limProcessSmeGetAssocSTAsInfo(tpAniSirGlobal pMac, tANI_U32 *pMsgBuf)
{
- tSirSmeGetAssocSTAsReq getAssocSTAsReq;
+ tSirSmeGetAssocSTAsReq getAssocSTAsReq = {0};
tpDphHashNode pStaDs = NULL;
tpPESession psessionEntry = NULL;
tSap_Event sapEvent;
diff --git a/CORE/MAC/src/pe/sch/schBeaconProcess.c b/CORE/MAC/src/pe/sch/schBeaconProcess.c
index 6687aec..8cf7e46 100644
--- a/CORE/MAC/src/pe/sch/schBeaconProcess.c
+++ b/CORE/MAC/src/pe/sch/schBeaconProcess.c
@@ -337,7 +337,7 @@
tUpdateBeaconParams beaconParams;
tANI_U8 sendProbeReq = FALSE;
tpDphHashNode pStaDs = NULL;
- tANI_U32 channelBondingMode;
+ tANI_U32 channelBondingMode = 0;
#ifdef WLAN_FEATURE_11AC
tpSirMacMgmtHdr pMh = WDA_GET_RX_MAC_HEADER(pRxPacketInfo);
tANI_U16 aid;
diff --git a/CORE/SYS/legacy/src/utils/src/parserApi.c b/CORE/SYS/legacy/src/utils/src/parserApi.c
index cc39dd9..848e5f7 100644
--- a/CORE/SYS/legacy/src/utils/src/parserApi.c
+++ b/CORE/SYS/legacy/src/utils/src/parserApi.c
@@ -3079,14 +3079,19 @@
retStatus = eSIR_FAILURE;
goto err_bcnrep;
}
- *pos = SIR_MAC_RATESET_EID;
- pos++;
- *pos = eseBcnReportMandatoryIe.supportedRates.numRates;
- pos++;
- vos_mem_copy(pos, (tANI_U8*)eseBcnReportMandatoryIe.supportedRates.rate,
- eseBcnReportMandatoryIe.supportedRates.numRates);
- pos += eseBcnReportMandatoryIe.supportedRates.numRates;
- freeBytes -= (1 + 1 + eseBcnReportMandatoryIe.supportedRates.numRates);
+ if (eseBcnReportMandatoryIe.supportedRates.numRates <=
+ SIR_MAC_RATESET_EID_MAX) {
+ *pos = SIR_MAC_RATESET_EID;
+ pos++;
+ *pos = eseBcnReportMandatoryIe.supportedRates.numRates;
+ pos++;
+ vos_mem_copy(pos,
+ (tANI_U8*)eseBcnReportMandatoryIe.supportedRates.rate,
+ eseBcnReportMandatoryIe.supportedRates.numRates);
+ pos += eseBcnReportMandatoryIe.supportedRates.numRates;
+ freeBytes -= (1 + 1 +
+ eseBcnReportMandatoryIe.supportedRates.numRates);
+ }
}
/* Fill FH Parameter set IE */
diff --git a/CORE/TL/src/wlan_qct_tl.c b/CORE/TL/src/wlan_qct_tl.c
index 3690d79..10459f2 100644
--- a/CORE/TL/src/wlan_qct_tl.c
+++ b/CORE/TL/src/wlan_qct_tl.c
@@ -8448,6 +8448,8 @@
TLLOGE(VOS_TRACE( VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_ERROR,
"WLAN TL:Invalid tid %d (Station ID %d) on %s",
ucTid, ucSTAId, __func__));
+ vos_pkt_return_packet(vosDataBuff);
+ return VOS_STATUS_E_FAILURE;
}
TLLOG2(VOS_TRACE( VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_INFO_HIGH,
@@ -8850,6 +8852,8 @@
TLLOGE(VOS_TRACE( VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_ERROR,
"WLAN TL:Invalid tid %d (Station ID %d) on %s",
ucTid, ucSTAId, __func__));
+ vos_pkt_return_packet(vosDataBuff);
+ return VOS_STATUS_E_FAILURE;
}
/*------------------------------------------------------------------------