Verify that the MAC Address KDE includes enough data to contain a MAC
address as a part of the parsing function so that each caller would not
need to verify this separately. None of the existing users of this
parser actually needed the MAC address value, so there was not any use
for the length field before. The updated design is more robust for
future uses and gets rid of that unused length field as well.
Signed-off-by: Jouni Malinen <quic_jouni@quicinc.com>
return 0;
}
- if (left > 2 && selector == RSN_KEY_DATA_MAC_ADDR) {
+ if (left >= ETH_ALEN && selector == RSN_KEY_DATA_MAC_ADDR) {
ie->mac_addr = p;
- ie->mac_addr_len = left;
- wpa_hexdump(MSG_DEBUG, "WPA: MAC Address in EAPOL-Key",
- pos, dlen);
+ wpa_printf(MSG_DEBUG, "WPA: MAC Address in EAPOL-Key: " MACSTR,
+ MAC2STR(ie->mac_addr));
return 0;
}
const u8 *gtk;
size_t gtk_len;
const u8 *mac_addr;
- size_t mac_addr_len;
const u8 *igtk;
size_t igtk_len;
const u8 *bigtk;