[WCNCR00166525] misc: fix coverity issues
[Description]
Fix CID
2496642 Dereference null return value
4065171 Calling risky function
4077560 Array compared against 0
Change-Id: I9eb3036e682aa66ab8eb2ee30184f5eae323419d
CR-Id: WCNCR00166525
Feature: misc
Signed-off-by: guo-jie.wang <guo-jie.wang@mediatek.com>
Reviewed-on: http://gerrit.mediatek.inc:8080/1228393
CheckPatch: Check Patch <srv_checkpatch@mediatek.com>
Reviewed-by: Sarick Jiang <sarick.jiang@mediatek.com>
Reviewed-by: George Kuo <george.kuo@mediatek.com>
Build: srv_neptune_adm <srv_neptune_adm@mediatek.com>
diff --git a/mgmt/p2p_role_state.c b/mgmt/p2p_role_state.c
index 7525eaa..185baa9 100644
--- a/mgmt/p2p_role_state.c
+++ b/mgmt/p2p_role_state.c
@@ -85,8 +85,7 @@
prP2pDevFsmInfo = prAdapter->rWifiVar.prP2pDevFsmInfo;
if (prP2pDevFsmInfo) {
prDevScanReqInfo = &(prP2pDevFsmInfo->rScanReqInfo);
- if ((prDevScanReqInfo->u4BufLength != 0) &&
- (prDevScanReqInfo->aucIEBuf)) {
+ if (prDevScanReqInfo->u4BufLength != 0) {
/* IE Buffer */
kalMemCopy(prScanReqInfo->aucIEBuf, prDevScanReqInfo->aucIEBuf,
prDevScanReqInfo->u4BufLength);
diff --git a/mgmt/rsn.c b/mgmt/rsn.c
index 3e8d554..cc0bc86 100644
--- a/mgmt/rsn.c
+++ b/mgmt/rsn.c
@@ -2833,6 +2833,11 @@
prRxFrame = (P_ACTION_SA_QUERY_FRAME) prSwRfb->pvHeader;
prStaRec = cnmGetStaRecByIndex(prAdapter, prSwRfb->ucStaRecIdx);
+ if (!prStaRec) {
+ DBGLOG(RSN, WARN, "NULL prStaRec!\n");
+ return;
+ }
+
DBGLOG(RSN, TRACE, "AP PMF SAQ action enter from " MACSTR "\n", MAC2STR(prStaRec->aucMacAddr));
if (prSwRfb->u2PacketLen < ACTION_SA_QUERY_TR_ID_LEN) {
DBGLOG(RSN, INFO, "IEEE 802.11: Too short SA Query Action frame (len=%lu)\n",
diff --git a/os/linux/gl_wext_priv.c b/os/linux/gl_wext_priv.c
index 7071cf7..241f047 100644
--- a/os/linux/gl_wext_priv.c
+++ b/os/linux/gl_wext_priv.c
@@ -9094,13 +9094,17 @@
for (cIdx2 = 0; cIdx2 < ucChannelNum; cIdx2++) {
if (prChnLoadInfo->rChnRankList[cIdx].ucChannel ==
prChannelList[cIdx2].ucChannelNum) {
- u4Offset = kalSprintf(pcCommand + i4BytesWritten,
+ u4Offset = kalSnprintf(pcCommand + i4BytesWritten,
+ i4TotalLen - i4BytesWritten,
"\nch %03u -> dirtiness %lu",
prChnLoadInfo->rChnRankList[cIdx].ucChannel,
prChnLoadInfo->rChnRankList[cIdx].u4Dirtiness);
i4BytesWritten += u4Offset;
break;
}
+
+ if (i4BytesWritten >= i4TotalLen)
+ return i4BytesWritten;
}
}