Skip to content

Commit 52b622e

Browse files
rado17rlubos
authored andcommitted
[nrf noup] modules: hostap: Support Wi-Fi EAP-TLS mode
Support Wi-Fi enterprise mode with NRF_SECURITY. Signed-off-by: Ravi Dondaputi <[email protected]> (cherry picked from commit 371c48b)
1 parent a59500f commit 52b622e

File tree

2 files changed

+45
-4
lines changed

2 files changed

+45
-4
lines changed

modules/hostap/CMakeLists.txt

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -612,15 +612,20 @@ zephyr_library_sources_ifdef(CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE
612612
)
613613
endif()
614614

615-
if(CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT)
615+
if(DEFINED ONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT OR
616+
DEFINED CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT_LEGACY_NCS)
616617
zephyr_include_directories(
617618
${HOSTAP_BASE}/port/mbedtls
618619
)
619620

620621
zephyr_library_sources(
621622
${HOSTAP_SRC_BASE}/crypto/crypto_mbedtls_alt.c
622-
${HOSTAP_SRC_BASE}/crypto/tls_mbedtls_alt.c
623623
${HOSTAP_SRC_BASE}/crypto/rc4.c
624+
${HOSTAP_SRC_BASE}/crypto/aes-wrap.c
625+
${HOSTAP_SRC_BASE}/crypto/aes-unwrap.c
626+
${HOSTAP_SRC_BASE}/crypto/aes-internal-dec.c
627+
${HOSTAP_SRC_BASE}/crypto/aes-internal.c
628+
${HOSTAP_SRC_BASE}/crypto/aes-internal-enc.c
624629
)
625630

626631
zephyr_library_sources_ifdef(CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_MBEDTLS_PSA
@@ -634,8 +639,14 @@ zephyr_library_sources_ifdef(CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE
634639
${HOSTAP_SRC_BASE}/crypto/sha1-internal.c
635640
${HOSTAP_SRC_BASE}/crypto/fips_prf_internal.c
636641
${HOSTAP_SRC_BASE}/crypto/milenage.c
642+
${HOSTAP_SRC_BASE}/crypto/tls_mbedtls_alt.c
637643
)
638644

645+
zephyr_library_sources_ifndef(CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE
646+
${HOSTAP_SRC_BASE}/crypto/tls_none.c
647+
)
648+
649+
639650
zephyr_library_sources_ifdef(CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_TEST
640651
${HOSTAP_SRC_BASE}/crypto/crypto_module_tests.c
641652
${HOSTAP_SRC_BASE}/crypto/fips_prf_internal.c

modules/hostap/Kconfig

Lines changed: 32 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -109,8 +109,8 @@ config WIFI_NM_WPA_SUPPLICANT_WEP
109109

110110
choice WIFI_NM_WPA_SUPPLICANT_CRYPTO_BACKEND
111111
prompt "WPA supplicant crypto implementation"
112-
default WIFI_NM_WPA_SUPPLICANT_CRYPTO_LEGACY_NCS
113112
default WIFI_NM_WPA_SUPPLICANT_CRYPTO_LEGACY_NCS_PSA if SOC_SERIES_NRF54LX
113+
default WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT_LEGACY_NCS
114114
help
115115
Select the crypto implementation to use for WPA supplicant.
116116
WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT supports enterprise mode
@@ -211,6 +211,26 @@ config WIFI_NM_WPA_SUPPLICANT_CRYPTO_LEGACY_NCS_PSA
211211
select MBEDTLS_PKCS5_C
212212
select MBEDTLS_ECP_DP_SECP256R1_ENABLED
213213

214+
config WIFI_NM_WPA_SUPPLICANT_CRYPTO_ALT_LEGACY_NCS
215+
bool "Legacy Crypto support for WiFi using nRF security"
216+
select MBEDTLS
217+
select NRF_SECURITY
218+
select MBEDTLS_CIPHER_MODE_CBC
219+
select MBEDTLS_CIPHER_MODE_CTR
220+
select MBEDTLS_LEGACY_CRYPTO_C
221+
select MBEDTLS_ENTROPY_C
222+
select MBEDTLS_CIPHER
223+
select MBEDTLS_ECP_C
224+
select MBEDTLS_CTR_DRBG_C
225+
select MBEDTLS_PK_WRITE_C
226+
select MBEDTLS_HKDF_C
227+
select MBEDTLS_KEY_EXCHANGE_ALL_ENABLED
228+
select MBEDTLS_MD_C
229+
select MBEDTLS_MD5_C
230+
select MBEDTLS_ENTROPY_C
231+
select MBEDTLS_CIPHER_PADDING_PKCS7
232+
select MBEDTLS_PKCS5_C
233+
214234
config WIFI_NM_WPA_SUPPLICANT_CRYPTO_NONE
215235
bool "No Crypto support for WiFi"
216236

@@ -223,7 +243,17 @@ config WIFI_NM_WPA_SUPPLICANT_CRYPTO_MBEDTLS_PSA
223243

224244
config WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE
225245
bool "Enterprise Crypto support for WiFi"
226-
select MBEDTLS_PEM_CERTIFICATE_FORMAT
246+
select MBEDTLS_ECDH_C
247+
select MBEDTLS_ECDSA_C
248+
select MBEDTLS_DHM_C
249+
select MBEDTLS_SSL_TLS_C
250+
select MBEDTLS_SSL_SRV_C
251+
select MBEDTLS_SSL_CLI_C
252+
select MBEDTLS_X509_LIBRARY
253+
select MBEDTLS_TLS_LIBRARY
254+
select MBEDTLS_X509_CRL_PARSE_C
255+
select MBEDTLS_TLS_VERSION_1_2
256+
select MBEDTLS_RSA_C
227257
depends on !WIFI_NM_WPA_SUPPLICANT_CRYPTO_NONE
228258

229259
config EAP_TLS

0 commit comments

Comments
 (0)