Avoid hostapd segfault on invalid driver association event
Running hostapd and wpa_supplicant on the same interface at the same time is not expected to work, but it should not cause hostapd to crash. Ignore station mode association events (no addr field) to avoid this.
This commit is contained in:
parent
99f4ae67b7
commit
68532a9ceb
1 changed files with 13 additions and 0 deletions
|
@ -40,6 +40,19 @@ int hostapd_notif_assoc(struct hostapd_data *hapd, const u8 *addr,
|
||||||
int new_assoc, res;
|
int new_assoc, res;
|
||||||
struct ieee802_11_elems elems;
|
struct ieee802_11_elems elems;
|
||||||
|
|
||||||
|
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 being set to station mode while hostapd was
|
||||||
|
* running, so better make sure we stop processing such an
|
||||||
|
* event here.
|
||||||
|
*/
|
||||||
|
wpa_printf(MSG_DEBUG, "hostapd_notif_assoc: Skip event with "
|
||||||
|
"no address");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
hostapd_logger(hapd, addr, HOSTAPD_MODULE_IEEE80211,
|
hostapd_logger(hapd, addr, HOSTAPD_MODULE_IEEE80211,
|
||||||
HOSTAPD_LEVEL_INFO, "associated");
|
HOSTAPD_LEVEL_INFO, "associated");
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue