From 3ff77e070de25ba9c78528906079e54377e61a95 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Sun, 3 Aug 2008 20:16:59 +0300 Subject: [PATCH] Fixed opportunistic key caching (OKC) wpa_sm_set_config() can be called even if the network block does not change. However, the previous version ended up calling pmksa_cache_notify_reconfig() every time and this cleared the network context from PMKSA cache entries. This prevented OKC from ever being used. Do not call pmksa_cache_notify_reconfig() if the network context remains unchanged to allow OKC to be used. --- src/rsn_supp/wpa.c | 3 ++- wpa_supplicant/ChangeLog | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c index 29d900e29..89ca4731a 100644 --- a/src/rsn_supp/wpa.c +++ b/src/rsn_supp/wpa.c @@ -2014,7 +2014,8 @@ void wpa_sm_set_config(struct wpa_sm *sm, struct rsn_supp_config *config) sm->eap_conf_ctx = NULL; sm->ssid_len = 0; } - pmksa_cache_notify_reconfig(sm->pmksa); + if (config == NULL || config->network_ctx != sm->network_ctx) + pmksa_cache_notify_reconfig(sm->pmksa); } diff --git a/wpa_supplicant/ChangeLog b/wpa_supplicant/ChangeLog index 56fe04267..cd08ab8c1 100644 --- a/wpa_supplicant/ChangeLog +++ b/wpa_supplicant/ChangeLog @@ -16,6 +16,7 @@ ChangeLog for wpa_supplicant calculations (CONFIG_INTERNAL_LIBTOMMATH_FAST=y) * fixed race condition between disassociation event and group key handshake to avoid getting stuck in incorrect state [Bug 261] + * fixed opportunistic key caching (proactive_key_caching) 2008-02-22 - v0.6.3 * removed 'nai' and 'eappsk' network configuration variables that were