Browse Source

qcacmn: Add NULL check for peer mac

Add NULL check for peer mac before accessing it.

Change-Id: I039aa22d81c0e6a192c816c395cebefa4eaf3b82
CRs-Fixed: 2622011
Jeevan Kukkalli 5 years ago
parent
commit
e795cc17aa
1 changed files with 12 additions and 3 deletions
  1. 12 3
      dp/wifi3.0/dp_main.c

+ 12 - 3
dp/wifi3.0/dp_main.c

@@ -7370,9 +7370,18 @@ static QDF_STATUS
 dp_get_host_peer_stats(struct cdp_soc_t *soc, uint8_t *mac_addr)
 dp_get_host_peer_stats(struct cdp_soc_t *soc, uint8_t *mac_addr)
 {
 {
 	QDF_STATUS status = QDF_STATUS_SUCCESS;
 	QDF_STATUS status = QDF_STATUS_SUCCESS;
-	struct dp_peer *peer = dp_peer_find_hash_find((struct dp_soc *)soc,
-						      mac_addr, 0,
-						      DP_VDEV_ALL);
+	struct dp_peer *peer = NULL;
+
+	if (!mac_addr) {
+		QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_ERROR,
+			  "%s: NULL peer mac addr\n", __func__);
+		status = QDF_STATUS_E_FAILURE;
+		goto fail;
+	}
+
+	peer = dp_peer_find_hash_find((struct dp_soc *)soc,
+				      mac_addr, 0,
+				      DP_VDEV_ALL);
 	if (!peer || peer->delete_in_progress) {
 	if (!peer || peer->delete_in_progress) {
 		QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_ERROR,
 		QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_ERROR,
 			  "%s: Invalid peer\n", __func__);
 			  "%s: Invalid peer\n", __func__);