mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-12-01 15:49:49 +01:00
eapol: Check for "No Group Traffic" group cipher suite
This commit is contained in:
parent
2c565019c7
commit
ffcda135d2
10
src/eapol.c
10
src/eapol.c
@ -1268,10 +1268,8 @@ static void eapol_handle_ptk_3_of_4(struct eapol_sm *sm,
|
|||||||
override);
|
override);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
if (!sm->handshake->wpa_ie && sm->handshake->group_cipher !=
|
||||||
* TODO: Handle IE_RSN_CIPHER_SUITE_NO_GROUP_TRAFFIC case
|
IE_RSN_CIPHER_SUITE_NO_GROUP_TRAFFIC) {
|
||||||
*/
|
|
||||||
if (!sm->handshake->wpa_ie) {
|
|
||||||
gtk = handshake_util_find_gtk_kde(decrypted_key_data,
|
gtk = handshake_util_find_gtk_kde(decrypted_key_data,
|
||||||
decrypted_key_data_size,
|
decrypted_key_data_size,
|
||||||
>k_len);
|
>k_len);
|
||||||
@ -1555,6 +1553,10 @@ static void eapol_key_handle(struct eapol_sm *sm,
|
|||||||
if (!sm->handshake->ptk_complete)
|
if (!sm->handshake->ptk_complete)
|
||||||
goto done;
|
goto done;
|
||||||
|
|
||||||
|
if (sm->handshake->group_cipher ==
|
||||||
|
IE_RSN_CIPHER_SUITE_NO_GROUP_TRAFFIC)
|
||||||
|
goto done;
|
||||||
|
|
||||||
if (!decrypted_key_data)
|
if (!decrypted_key_data)
|
||||||
goto done;
|
goto done;
|
||||||
|
|
||||||
|
@ -70,6 +70,9 @@ static struct l_queue *wiphy_list = NULL;
|
|||||||
|
|
||||||
enum ie_rsn_cipher_suite wiphy_select_cipher(struct wiphy *wiphy, uint16_t mask)
|
enum ie_rsn_cipher_suite wiphy_select_cipher(struct wiphy *wiphy, uint16_t mask)
|
||||||
{
|
{
|
||||||
|
if (mask == IE_RSN_CIPHER_SUITE_NO_GROUP_TRAFFIC)
|
||||||
|
return IE_RSN_CIPHER_SUITE_NO_GROUP_TRAFFIC;
|
||||||
|
|
||||||
mask &= wiphy->supported_ciphers;
|
mask &= wiphy->supported_ciphers;
|
||||||
|
|
||||||
/* CCMP is our first choice, TKIP second */
|
/* CCMP is our first choice, TKIP second */
|
||||||
|
Loading…
Reference in New Issue
Block a user