wlan: Add support for OWE
propagation from qcacld-3.0 to prima
Add AKM suite changes to support Opportunistic Wireless
Encryption. Also, add changes to populate OWE IE's if
OWE AKM is present.
Change-Id: I3cf9e5b0a5980e4f535034127dbc4c6e54764da6
CRs-Fixed: 2531177
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c
index a3ed21f..bf90fe1 100644
--- a/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -16405,8 +16405,13 @@
pWextState->authKeyMgmt |= IW_AUTH_KEY_MGMT_802_1X;
break;
+ case WLAN_AKM_SUITE_OWE_1:
+ hddLog(LOG1, "setting key mgmt type to OWE");
+ pWextState->authKeyMgmt |= IW_AUTH_KEY_MGMT_802_1X;
+ break;
+
default:
- hddLog(VOS_TRACE_LEVEL_ERROR, "%s: Unsupported key mgmt type %d",
+ hddLog(VOS_TRACE_LEVEL_ERROR, "%s: Unsupported key mgmt type %x",
__func__, key_mgmt);
return -EINVAL;
@@ -16880,6 +16885,32 @@
}
break;
#endif
+ case SIR_MAC_REQUEST_EID_MAX:
+ if (genie[0] == SIR_DH_PARAMETER_ELEMENT_EXT_EID)
+ {
+ v_U16_t curAddIELen = pWextState->assocAddIE.length;
+ if (SIR_MAC_MAX_ADD_IE_LENGTH <
+ (pWextState->assocAddIE.length + eLen))
+ {
+ hddLog(VOS_TRACE_LEVEL_FATAL, "Cannot accommodate assocAddIE "
+ "Need bigger buffer space");
+ VOS_ASSERT(0);
+ return -ENOMEM;
+ }
+ hddLog(VOS_TRACE_LEVEL_INFO, "Set DH EXT IE(len %d)",
+ eLen + 2);
+ memcpy( pWextState->assocAddIE.addIEdata + curAddIELen,
+ genie - 2, eLen + 2);
+ pWextState->assocAddIE.length += eLen + 2;
+ pWextState->roamProfile.pAddIEAssoc =
+ pWextState->assocAddIE.addIEdata;
+ pWextState->roamProfile.nAddIEAssocLength =
+ pWextState->assocAddIE.length;
+ }else {
+ hddLog(VOS_TRACE_LEVEL_FATAL, "UNKNOWN EID: %X", genie[0]);
+ }
+ break;
+
default:
hddLog (VOS_TRACE_LEVEL_ERROR,
"%s Set UNKNOWN IE %X", __func__, elementId);