From 2e8483bf125d53eda8b437dc5eaace7431542aec Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Sat, 12 Jan 2013 17:21:50 +0200 Subject: [PATCH] Fix authenticator PMKSA cache expiration timer setup The PMKSA cache expiration timer was not actually ever initialized since the only place for registering the timeout was in the timeout handler. Fix this by initializing the timer whenever a new PMKSA cache entry is added to the beginning of the list (i.e., when it was the first entry or expires before the entry that was previously going to expire first). [Bug 393] Signed-hostap: Jouni Malinen --- src/ap/pmksa_cache_auth.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ap/pmksa_cache_auth.c b/src/ap/pmksa_cache_auth.c index 3a9cc7b4e..d27fd302b 100644 --- a/src/ap/pmksa_cache_auth.c +++ b/src/ap/pmksa_cache_auth.c @@ -209,6 +209,8 @@ static void pmksa_cache_link_entry(struct rsn_pmksa_cache *pmksa, pmksa->pmkid[PMKID_HASH(entry->pmkid)] = entry; pmksa->pmksa_count++; + if (prev == NULL) + pmksa_cache_set_expiration(pmksa); wpa_printf(MSG_DEBUG, "RSN: added PMKSA cache entry for " MACSTR, MAC2STR(entry->spa)); wpa_hexdump(MSG_DEBUG, "RSN: added PMKID", entry->pmkid, PMKID_LEN);