From: Jouni Malinen Date: Sun, 3 Aug 2008 17:16:59 +0000 (+0300) Subject: Fixed opportunistic key caching (OKC) X-Git-Tag: hostap_0_6_4~6 X-Git-Url: http://www.project-moonshot.org/gitweb/?p=libeap.git;a=commitdiff_plain;h=3ff77e070de25ba9c78528906079e54377e61a95 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. --- diff --git a/src/rsn_supp/wpa.c b/src/rsn_supp/wpa.c index 29d900e..89ca473 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 56fe042..cd08ab8 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