From: Alexander Wetzel Date: Mon, 23 Mar 2020 18:42:28 +0000 (+0100) Subject: STA: Fix wpa_clear_keys() PTK key deletion logic X-Git-Tag: hostap_2_10~1557 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8ca6f924d6665427f50a1c81c7cc7835af2e1684;p=thirdparty%2Fhostap.git STA: Fix wpa_clear_keys() PTK key deletion logic We have to delete PTK keys when either BIT(0) or BIT(15) are zero and not only when both are zero. Signed-off-by: Alexander Wetzel --- diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c index f11bac017..a01a3e748 100644 --- a/wpa_supplicant/wpa_supplicant.c +++ b/wpa_supplicant/wpa_supplicant.c @@ -749,7 +749,7 @@ void wpa_clear_keys(struct wpa_supplicant *wpa_s, const u8 *addr) NULL, 0, KEY_FLAG_GROUP); } /* Pairwise Key ID 1 for Extended Key ID is tracked in bit 15 */ - if (!(wpa_s->keys_cleared & (BIT(0) | BIT(15))) && addr && + if (~wpa_s->keys_cleared & (BIT(0) | BIT(15)) && addr && !is_zero_ether_addr(addr)) { if (!(wpa_s->keys_cleared & BIT(0))) wpa_drv_set_key(wpa_s, WPA_ALG_NONE, addr, 0, 0, NULL,