Remove forgotted STAKey related functionality in EAPOL-Key Request

The use of a MAC KDE in the Key Data field of an EAPOL-Key Request frame
was only for the STAKey handshake. That handshake was implemented in
2005 as an experimental functionality and it was then removed in 2006.
However, this part of the functionality was forgotten. This does not do
anything in practice, so simplify the implementation and remove it.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2024-01-28 19:15:08 +02:00
parent 846534c2a3
commit 14c5f401f0

View file

@ -1248,7 +1248,6 @@ void wpa_receive(struct wpa_authenticator *wpa_auth,
u16 key_info, ver, key_data_length; u16 key_info, ver, key_data_length;
enum eapol_key_msg msg; enum eapol_key_msg msg;
const char *msgtxt; const char *msgtxt;
struct wpa_eapol_ie_parse kde;
const u8 *key_data; const u8 *key_data;
size_t keyhdrlen, mic_len; size_t keyhdrlen, mic_len;
u8 *mic; u8 *mic;
@ -1533,11 +1532,6 @@ void wpa_receive(struct wpa_authenticator *wpa_auth,
goto out; goto out;
} }
/*
* TODO: should decrypt key data field if encryption was used;
* even though MAC address KDE is not normally encrypted,
* supplicant is allowed to encrypt it.
*/
if (key_info & WPA_KEY_INFO_ERROR) { if (key_info & WPA_KEY_INFO_ERROR) {
if (wpa_receive_error_report( if (wpa_receive_error_report(
wpa_auth, sm, wpa_auth, sm,
@ -1548,10 +1542,6 @@ void wpa_receive(struct wpa_authenticator *wpa_auth,
LOGGER_INFO, LOGGER_INFO,
"received EAPOL-Key Request for new 4-Way Handshake"); "received EAPOL-Key Request for new 4-Way Handshake");
wpa_request_new_ptk(sm); wpa_request_new_ptk(sm);
} else if (key_data_length > 0 &&
wpa_parse_kde_ies(key_data, key_data_length,
&kde) == 0 &&
kde.mac_addr) {
} else { } else {
wpa_auth_logger(wpa_auth, wpa_auth_get_spa(sm), wpa_auth_logger(wpa_auth, wpa_auth_get_spa(sm),
LOGGER_INFO, LOGGER_INFO,