Ver Fonte

qcacld-3.0: Avoid NULL pointer exception in wlan_hdd_allow_sap_add()

When trying to add multiple softap interfaces, sanity checks in
wlan_hdd_allow_sap_add() are trying to access dev in adapter without
NULL check which can lead to NULL pointer exception.

To fix this, add NULL check for dev before access of its attributes.

Change-Id: I57577da1b60443a42e273f87e9f4feac123bc686
CRs-Fixed: 2232394
Rajeev Kumar Sirasanagandla há 7 anos atrás
pai
commit
0a266177ff
1 ficheiros alterados com 2 adições e 1 exclusões
  1. 2 1
      core/hdd/src/wlan_hdd_p2p.c

+ 2 - 1
core/hdd/src/wlan_hdd_p2p.c

@@ -582,6 +582,7 @@ wlan_hdd_allow_sap_add(struct hdd_context *hdd_ctx, const char *name,
 	hdd_for_each_adapter(hdd_ctx, adapter) {
 		if (adapter->device_mode == QDF_SAP_MODE &&
 		    test_bit(NET_DEVICE_REGISTERED, &adapter->event_flags) &&
+		    adapter->dev &&
 		    !strncmp(adapter->dev->name, name, IFNAMSIZ)) {
 			struct hdd_beacon_data *beacon =
 						adapter->session.ap.beacon;
@@ -591,7 +592,7 @@ wlan_hdd_allow_sap_add(struct hdd_context *hdd_ctx, const char *name,
 				adapter->session.ap.beacon = NULL;
 				qdf_mem_free(beacon);
 			}
-			if (adapter->dev && adapter->dev->ieee80211_ptr) {
+			if (adapter->dev->ieee80211_ptr) {
 				*sap_dev = adapter->dev->ieee80211_ptr;
 				return false;
 			}