mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-26 02:19:26 +01:00
eapol: Add support for Transition Disable
If this indication is received in message 3/4, forward the contents as a HANDSHAKE_EVENT_TRANSITION_DISABLE
This commit is contained in:
parent
47ba837e98
commit
51b437bbfe
11
src/eapol.c
11
src/eapol.c
@ -1607,6 +1607,8 @@ static void eapol_handle_ptk_3_of_4(struct eapol_sm *sm,
|
|||||||
size_t igtk_len;
|
size_t igtk_len;
|
||||||
const uint8_t *rsne;
|
const uint8_t *rsne;
|
||||||
const uint8_t *optional_rsne = NULL;
|
const uint8_t *optional_rsne = NULL;
|
||||||
|
const uint8_t *transition_disable;
|
||||||
|
size_t transition_disable_len;
|
||||||
uint8_t gtk_key_index;
|
uint8_t gtk_key_index;
|
||||||
uint16_t igtk_key_index;
|
uint16_t igtk_key_index;
|
||||||
|
|
||||||
@ -1815,6 +1817,15 @@ static void eapol_handle_ptk_3_of_4(struct eapol_sm *sm,
|
|||||||
l_debug("Authenticator ignored our IP Address Request");
|
l_debug("Authenticator ignored our IP Address Request");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
transition_disable =
|
||||||
|
handshake_util_find_kde(HANDSHAKE_KDE_TRANSITION_DISABLE,
|
||||||
|
decrypted_key_data,
|
||||||
|
decrypted_key_data_size,
|
||||||
|
&transition_disable_len);
|
||||||
|
if (transition_disable)
|
||||||
|
handshake_event(hs, HANDSHAKE_EVENT_TRANSITION_DISABLE,
|
||||||
|
transition_disable, transition_disable_len);
|
||||||
|
|
||||||
retransmit:
|
retransmit:
|
||||||
/*
|
/*
|
||||||
* 802.11-2016, Section 12.7.6.4:
|
* 802.11-2016, Section 12.7.6.4:
|
||||||
|
@ -44,6 +44,8 @@ enum handshake_kde {
|
|||||||
/* Wi-Fi P2P Technical Specification v1.7 4.2.8 */
|
/* Wi-Fi P2P Technical Specification v1.7 4.2.8 */
|
||||||
HANDSHAKE_KDE_IP_ADDRESS_REQ = 0x506f9a04,
|
HANDSHAKE_KDE_IP_ADDRESS_REQ = 0x506f9a04,
|
||||||
HANDSHAKE_KDE_IP_ADDRESS_ALLOC = 0x506f9a05,
|
HANDSHAKE_KDE_IP_ADDRESS_ALLOC = 0x506f9a05,
|
||||||
|
/* Wi-Fi WPA3 Specification v3.0 Table 4 */
|
||||||
|
HANDSHAKE_KDE_TRANSITION_DISABLE = 0x506f9a20,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum handshake_event {
|
enum handshake_event {
|
||||||
|
Loading…
Reference in New Issue
Block a user