qcacmn: Add support for new key mgmt

Add support for FILS, OWE & DPP key mgmt.

Change-Id: I51b899e86a0d29051af55c422e64764d762767d3
Crs-Fixed: 2243109
This commit is contained in:
Ashok Ponnaiah
2018-05-16 16:25:05 +05:30
committed by nshrivas
parent 8bc5042785
commit c6d591092d
3 changed files with 40 additions and 2 deletions

View File

@@ -165,6 +165,12 @@ typedef enum wlan_crypto_key_mgmt {
WLAN_CRYPTO_KEY_MGMT_OSEN = 15,
WLAN_CRYPTO_KEY_MGMT_IEEE8021X_SUITE_B = 16,
WLAN_CRYPTO_KEY_MGMT_IEEE8021X_SUITE_B_192 = 17,
WLAN_CRYPTO_KEY_MGMT_FILS_SHA256 = 18,
WLAN_CRYPTO_KEY_MGMT_FILS_SHA384 = 19,
WLAN_CRYPTO_KEY_MGMT_FT_FILS_SHA256 = 20,
WLAN_CRYPTO_KEY_MGMT_FT_FILS_SHA384 = 21,
WLAN_CRYPTO_KEY_MGMT_OWE = 22,
WLAN_CRYPTO_KEY_MGMT_DPP = 23,
} wlan_crypto_key_mgmt;
/**

View File

@@ -247,9 +247,17 @@ static inline void wlan_crypto_put_be64(u8 *a, u64 val)
WLAN_RSN_SEL(12)
#define RSN_AUTH_KEY_MGMT_FT_802_1X_SUITE_B_192\
WLAN_RSN_SEL(13)
#define RSN_AUTH_KEY_MGMT_FILS_SHA256 WLAN_RSN_SEL(14)
#define RSN_AUTH_KEY_MGMT_FILS_SHA384 WLAN_RSN_SEL(15)
#define RSN_AUTH_KEY_MGMT_FT_FILS_SHA256\
WLAN_RSN_SEL(16)
#define RSN_AUTH_KEY_MGMT_FT_FILS_SHA384\
WLAN_RSN_SEL(17)
#define RSN_AUTH_KEY_MGMT_OWE WLAN_RSN_SEL(18)
#define RSN_AUTH_KEY_MGMT_CCKM WLAN_RSN_CCKM_AKM
#define RSN_AUTH_KEY_MGMT_OSEN (0x019a6f50)
#define RSN_AUTH_KEY_MGMT_CCKM (WLAN_RSN_CCKM_AKM)
#define RSN_AUTH_KEY_MGMT_OSEN (0x019a6f50)
#define RSN_AUTH_KEY_MGMT_DPP (WLAN_RSN_DPP_AKM)
#define RSN_CIPHER_SUITE_NONE WLAN_RSN_SEL(WLAN_CSE_NONE)
#define RSN_CIPHER_SUITE_WEP40 WLAN_RSN_SEL(WLAN_CSE_WEP40)

View File

@@ -1838,6 +1838,18 @@ wlan_crypto_rsn_keymgmt_to_suite(uint32_t keymgmt)
return RSN_AUTH_KEY_MGMT_CCKM;
case WLAN_CRYPTO_KEY_MGMT_OSEN:
return RSN_AUTH_KEY_MGMT_OSEN;
case WLAN_CRYPTO_KEY_MGMT_FILS_SHA256:
return RSN_AUTH_KEY_MGMT_FILS_SHA256;
case WLAN_CRYPTO_KEY_MGMT_FILS_SHA384:
return RSN_AUTH_KEY_MGMT_FILS_SHA384;
case WLAN_CRYPTO_KEY_MGMT_FT_FILS_SHA256:
return RSN_AUTH_KEY_MGMT_FT_FILS_SHA256;
case WLAN_CRYPTO_KEY_MGMT_FT_FILS_SHA384:
return RSN_AUTH_KEY_MGMT_FT_FILS_SHA384;
case WLAN_CRYPTO_KEY_MGMT_OWE:
return RSN_AUTH_KEY_MGMT_OWE;
case WLAN_CRYPTO_KEY_MGMT_DPP:
return RSN_AUTH_KEY_MGMT_DPP;
}
return status;
@@ -1978,6 +1990,18 @@ static int32_t wlan_crypto_rsn_suite_to_keymgmt(uint8_t *sel)
return WLAN_CRYPTO_KEY_MGMT_CCKM;
case RSN_AUTH_KEY_MGMT_OSEN:
return WLAN_CRYPTO_KEY_MGMT_OSEN;
case RSN_AUTH_KEY_MGMT_FILS_SHA256:
return WLAN_CRYPTO_KEY_MGMT_FILS_SHA256;
case RSN_AUTH_KEY_MGMT_FILS_SHA384:
return WLAN_CRYPTO_KEY_MGMT_FILS_SHA384;
case RSN_AUTH_KEY_MGMT_FT_FILS_SHA256:
return WLAN_CRYPTO_KEY_MGMT_FT_FILS_SHA256;
case RSN_AUTH_KEY_MGMT_FT_FILS_SHA384:
return WLAN_CRYPTO_KEY_MGMT_FT_FILS_SHA384;
case RSN_AUTH_KEY_MGMT_OWE:
return WLAN_CRYPTO_KEY_MGMT_OWE;
case RSN_AUTH_KEY_MGMT_DPP:
return WLAN_CRYPTO_KEY_MGMT_DPP;
}
return status;