From faf0fef1dc1898b16d03b96aa2f39028f7faa528 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Fri, 24 Mar 2017 23:34:19 +0200 Subject: [PATCH] wlantest: Fix EAPOL-Key Key Data padding removal Signed-off-by: Jouni Malinen --- wlantest/rx_eapol.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/wlantest/rx_eapol.c b/wlantest/rx_eapol.c index 3366ad4c7..27011cbaa 100644 --- a/wlantest/rx_eapol.c +++ b/wlantest/rx_eapol.c @@ -653,10 +653,17 @@ static void rx_data_eapol_key_3_of_4(struct wlantest *wt, const u8 *dst, if (p[0] == 0xdd && p[1] == 0x00) { /* Remove padding */ plain_len = p - decrypted; + p = NULL; break; } p += 2 + p[1]; } + if (p && p > decrypted && *p == 0xdd && + p + 1 == decrypted + decrypted_len) { + /* Remove padding */ + p--; + plain_len = p - decrypted; + } os_memset(buf, 0, sizeof(buf)); h = (struct ieee80211_hdr *) buf;