From 546320e8e284b136169e7cf62ce3bdbcf573c2cd Mon Sep 17 00:00:00 2001 From: Ke Huang Date: Thu, 27 Aug 2020 17:43:49 +0800 Subject: [PATCH] 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 --- core/hdd/src/wlan_hdd_hostapd.c | 42 ++++++++++++++++----------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/core/hdd/src/wlan_hdd_hostapd.c b/core/hdd/src/wlan_hdd_hostapd.c index ff7660253fab..bc0696e2dc91 100644 --- a/core/hdd/src/wlan_hdd_hostapd.c +++ b/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);