소스 검색

qcacld-3.0: Update probe/asso rsp ie before beacon data updated

qcacld-2.0 to qcacld-3.0 propagation

The probe rsp ie will not updated after beacon updated.
This will cause the probe rsp ie not appear in probe rsp
tags even the ie appears in beacon.
Put the updating of probe/asso rsp ahead of beacon updated.

Change-Id: If55f72ce788f4e0f162bb0c13fcff7b2129bf423
CRs-Fixed: 2648396
Ke Huang 4 년 전
부모
커밋
546320e8e2
1개의 변경된 파일21개의 추가작업 그리고 21개의 파일을 삭제
  1. 21 21
      core/hdd/src/wlan_hdd_hostapd.c

+ 21 - 21
core/hdd/src/wlan_hdd_hostapd.c

@@ -4344,27 +4344,6 @@ int wlan_hdd_cfg80211_update_apies(struct hdd_adapter *adapter)
 	qdf_copy_macaddr(&update_ie.bssid, &adapter->mac_addr);
 	update_ie.vdev_id = adapter->vdev_id;
 
-	if (test_bit(SOFTAP_BSS_STARTED, &adapter->event_flags)) {
-		update_ie.ieBufferlength = total_ielen;
-		update_ie.pAdditionIEBuffer = genie;
-		update_ie.append = false;
-		update_ie.notify = true;
-		if (sme_update_add_ie(mac_handle,
-				      &update_ie,
-				      eUPDATE_IE_PROBE_BCN) ==
-		    QDF_STATUS_E_FAILURE) {
-			hdd_err("Could not pass on Add Ie probe beacon data");
-			ret = -EINVAL;
-			goto done;
-		}
-		wlansap_reset_sap_config_add_ie(config, eUPDATE_IE_PROBE_BCN);
-	} else {
-		wlansap_update_sap_config_add_ie(config,
-						 genie,
-						 total_ielen,
-						 eUPDATE_IE_PROBE_BCN);
-	}
-
 	/* Added for Probe Response IE */
 	proberesp_ies = qdf_mem_malloc(beacon->proberesp_ies_len +
 				      MAX_GENIE_LEN);
@@ -4424,6 +4403,27 @@ int wlan_hdd_cfg80211_update_apies(struct hdd_adapter *adapter)
 						 eUPDATE_IE_ASSOC_RESP);
 	}
 
+	if (test_bit(SOFTAP_BSS_STARTED, &adapter->event_flags)) {
+		update_ie.ieBufferlength = total_ielen;
+		update_ie.pAdditionIEBuffer = genie;
+		update_ie.append = false;
+		update_ie.notify = true;
+		if (sme_update_add_ie(mac_handle,
+				      &update_ie,
+				      eUPDATE_IE_PROBE_BCN) ==
+		    QDF_STATUS_E_FAILURE) {
+			hdd_err("Could not pass on Add Ie probe beacon data");
+			ret = -EINVAL;
+			goto done;
+		}
+		wlansap_reset_sap_config_add_ie(config, eUPDATE_IE_PROBE_BCN);
+	} else {
+		wlansap_update_sap_config_add_ie(config,
+						 genie,
+						 total_ielen,
+						 eUPDATE_IE_PROBE_BCN);
+	}
+
 done:
 	qdf_mem_free(genie);
 	qdf_mem_free(proberesp_ies);