From e803554654b6e13d56faedaed6fb8f76ec340e42 Mon Sep 17 00:00:00 2001 From: jgujarathi Date: Wed, 26 Apr 2023 14:26:49 +0530 Subject: [PATCH] wpa_supplicant : Fix scan results for GCMP and GCMP-256 cipher. Add support for recognising GCMP and GCMP-256 ciphers if used by AP. Update the scan example to show the correct cipher. --- components/wpa_supplicant/src/rsn_supp/wpa.c | 6 ++++++ examples/wifi/scan/main/scan.c | 21 ++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/components/wpa_supplicant/src/rsn_supp/wpa.c b/components/wpa_supplicant/src/rsn_supp/wpa.c index a5ebab6017..5f56da1067 100644 --- a/components/wpa_supplicant/src/rsn_supp/wpa.c +++ b/components/wpa_supplicant/src/rsn_supp/wpa.c @@ -110,6 +110,12 @@ wifi_cipher_type_t cipher_type_map_supp_to_public(unsigned wpa_cipher) case WPA_CIPHER_SMS4: return WIFI_CIPHER_TYPE_SMS4; + case WPA_CIPHER_GCMP: + return WIFI_CIPHER_TYPE_GCMP; + + case WPA_CIPHER_GCMP_256: + return WIFI_CIPHER_TYPE_GCMP256; + default: return WIFI_CIPHER_TYPE_UNKNOWN; } diff --git a/examples/wifi/scan/main/scan.c b/examples/wifi/scan/main/scan.c index 3461e3525d..121946c5ed 100644 --- a/examples/wifi/scan/main/scan.c +++ b/examples/wifi/scan/main/scan.c @@ -79,6 +79,18 @@ static void print_cipher_type(int pairwise_cipher, int group_cipher) case WIFI_CIPHER_TYPE_TKIP_CCMP: ESP_LOGI(TAG, "Pairwise Cipher \tWIFI_CIPHER_TYPE_TKIP_CCMP"); break; + case WIFI_CIPHER_TYPE_AES_CMAC128: + ESP_LOGI(TAG, "Pairwise Cipher \tWIFI_CIPHER_TYPE_AES_CMAC128"); + break; + case WIFI_CIPHER_TYPE_SMS4: + ESP_LOGI(TAG, "Pairwise Cipher \tWIFI_CIPHER_TYPE_SMS4"); + break; + case WIFI_CIPHER_TYPE_GCMP: + ESP_LOGI(TAG, "Pairwise Cipher \tWIFI_CIPHER_TYPE_GCMP"); + break; + case WIFI_CIPHER_TYPE_GCMP256: + ESP_LOGI(TAG, "Pairwise Cipher \tWIFI_CIPHER_TYPE_GCMP256"); + break; default: ESP_LOGI(TAG, "Pairwise Cipher \tWIFI_CIPHER_TYPE_UNKNOWN"); break; @@ -103,6 +115,15 @@ static void print_cipher_type(int pairwise_cipher, int group_cipher) case WIFI_CIPHER_TYPE_TKIP_CCMP: ESP_LOGI(TAG, "Group Cipher \tWIFI_CIPHER_TYPE_TKIP_CCMP"); break; + case WIFI_CIPHER_TYPE_SMS4: + ESP_LOGI(TAG, "Group Cipher \tWIFI_CIPHER_TYPE_SMS4"); + break; + case WIFI_CIPHER_TYPE_GCMP: + ESP_LOGI(TAG, "Group Cipher \tWIFI_CIPHER_TYPE_GCMP"); + break; + case WIFI_CIPHER_TYPE_GCMP256: + ESP_LOGI(TAG, "Group Cipher \tWIFI_CIPHER_TYPE_GCMP256"); + break; default: ESP_LOGI(TAG, "Group Cipher \tWIFI_CIPHER_TYPE_UNKNOWN"); break;