hostapd: Avoid crashing on station mode disassoc event
Some driver wrappers may end up indicating a disassociation or deauthentication event without the address of the station, e.g., based on a previous non-AP mode event. Avoid crashing hostapd by verifying that the require address parameter is available in the event before processing it.
This commit is contained in:
parent
f19858f5a8
commit
83e843e830
1 changed files with 13 additions and 0 deletions
|
@ -195,6 +195,19 @@ void hostapd_notif_disassoc(struct hostapd_data *hapd, const u8 *addr)
|
|||
{
|
||||
struct sta_info *sta;
|
||||
|
||||
if (addr == NULL) {
|
||||
/*
|
||||
* This could potentially happen with unexpected event from the
|
||||
* driver wrapper. This was seen at least in one case where the
|
||||
* driver ended up reporting a station mode event while hostapd
|
||||
* was running, so better make sure we stop processing such an
|
||||
* event here.
|
||||
*/
|
||||
wpa_printf(MSG_DEBUG, "hostapd_notif_disassoc: Skip event "
|
||||
"with no address");
|
||||
return -1;
|
||||
}
|
||||
|
||||
hostapd_logger(hapd, addr, HOSTAPD_MODULE_IEEE80211,
|
||||
HOSTAPD_LEVEL_INFO, "disassociated");
|
||||
|
||||
|
|
Loading…
Reference in a new issue