diff options
| author | Abhishek Singh <absingh@qti.qualcomm.com> | 2015-05-19 16:10:18 -0700 |
|---|---|---|
| committer | AnjaneeDevi Kapparapu <c_akappa@qti.qualcomm.com> | 2015-05-21 16:14:30 +0530 |
| commit | b1ade64b94a5fe6211cdff22d2eec2cc0c65e88a (patch) | |
| tree | a96dea2689828fdc2e3a01c8800b6e2be1c22eff | |
| parent | 8edf0c27350e05999c191657e03e27ca26c045af (diff) | |
qcacld-2.0: Ignore Ext Cap from supplicant if interworking is not set
This is a prima to qcacld-2.0 propagation.
Driver is only interested in the interworkingService bit
of Ext Cap received from supplicant. So in case interworkingService
bit is not set in Ext Cap received from supplicant, it should not
be merged with the Ext Cap prepared by driver.
Add a check to ignore Ext Cap from supplicant if interworking bit
is not set.
CRs-Fixed: 810398
Change-Id: I0657589d49a632c044f4252d6cde705a9df2fef2
| -rw-r--r-- | CORE/HDD/src/wlan_hdd_cfg80211.c | 11 | ||||
| -rw-r--r-- | CORE/MAC/src/pe/lim/limSendManagementFrames.c | 10 |
2 files changed, 20 insertions, 1 deletions
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c index a719c2347d7c..7430811e1c3f 100644 --- a/CORE/HDD/src/wlan_hdd_cfg80211.c +++ b/CORE/HDD/src/wlan_hdd_cfg80211.c @@ -14202,7 +14202,16 @@ int wlan_hdd_cfg80211_set_ie(hdd_adapter_t *pAdapter, pWextState->roamProfile.pRSNReqIE = pWextState->WPARSNIE; pWextState->roamProfile.nRSNReqIELength = eLen + 2; //ie_len; break; - /* Appending Extended Capabilities with Interworking bit set in Assoc Req */ + /* Appending Extended Capabilities with Interworking bit set + * in Assoc Req. + * + * In assoc req this EXT Cap will only be taken into account if + * interworkingService bit is set to 1. Currently + * driver is only interested in interworkingService capability + * from supplicant. If in future any other EXT Cap info is + * required from supplicat, it needs to be handled while + * sending Assoc Req in LIM. + */ case DOT11F_EID_EXTCAP: { v_U16_t curAddIELen = pWextState->assocAddIE.length; diff --git a/CORE/MAC/src/pe/lim/limSendManagementFrames.c b/CORE/MAC/src/pe/lim/limSendManagementFrames.c index d8ddc0283591..23c13801305c 100644 --- a/CORE/MAC/src/pe/lim/limSendManagementFrames.c +++ b/CORE/MAC/src/pe/lim/limSendManagementFrames.c @@ -2174,6 +2174,16 @@ limSendAssocReqMgmtFrame(tpAniSirGlobal pMac, extractedExtCap.bytes; if (p_ext_cap->interworkingService) p_ext_cap->qosMap = 1; + else { + /* No need to merge the EXT Cap from Supplicant + * if interworkingService is not set, as currently + * driver is only interested in interworkingService + * capability from supplicant. if in + * future any other EXT Cap info is required from + * supplicant it needs to be handled here. + */ + extractedExtCapFlag = eANI_BOOLEAN_FALSE; + } } caps = pMlmAssocReq->capabilityInfo; |
