mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 13:22:23 +00:00
rtlwifi: kfree entry until after entry->bssid has been accessed
The current code kfree's entry and then dereferences it by accessing entry->bssid. Avoid the dereference-after-free by moving the kfree after the access to entry->bssid. Detected by CoverityScan, CID#1448600 ("Read from pointer after free") Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
4b5dde2d62
commit
d0116f6f7b
@ -1735,12 +1735,12 @@ void rtl_scan_list_expire(struct ieee80211_hw *hw)
|
||||
continue;
|
||||
|
||||
list_del(&entry->list);
|
||||
kfree(entry);
|
||||
rtlpriv->scan_list.num--;
|
||||
|
||||
RT_TRACE(rtlpriv, COMP_SCAN, DBG_LOUD,
|
||||
"BSSID=%pM is expire in scan list (total=%d)\n",
|
||||
entry->bssid, rtlpriv->scan_list.num);
|
||||
kfree(entry);
|
||||
}
|
||||
|
||||
spin_unlock_irqrestore(&rtlpriv->locks.scan_list_lock, flags);
|
||||
|
Loading…
Reference in New Issue
Block a user