Commit
c5b26e33c1829c62c3b5872865ca202f6c42436e broke the processing
of the candidate list entries when an old entry was either removed or
reused. The entry needs to be removed from the list to avoid leaving
pointers to freed memory.
http://bugs.gentoo.org/show_bug.cgi?id=330085
http://w1.fi/bugz/show_bug.cgi?id=372
return;
dl_list_for_each_safe(entry, n, &sm->pmksa_candidates,
- struct rsn_pmksa_candidate, list)
+ struct rsn_pmksa_candidate, list) {
+ dl_list_del(&entry->list);
os_free(entry);
+ }
}
}
if (cand) {
+ dl_list_del(&cand->list);
if (prio < PMKID_CANDIDATE_PRIO_SCAN)
cand->priority = prio;
} else {