WPS: Fix Probe Request processing to handle missing attribute
WPS IE parsing for PBC mode did not check whether the UUID-E attribute was included before dereferencing the pointer. This could result in the AP crashing when processing and invalid Probe Request frame.
This commit is contained in:
parent
2ea856aab6
commit
dc5a08c053
1 changed files with 5 additions and 0 deletions
|
@ -799,6 +799,11 @@ void wps_registrar_probe_req_rx(struct wps_registrar *reg, const u8 *addr,
|
||||||
|
|
||||||
wpa_printf(MSG_DEBUG, "WPS: Probe Request for PBC received from "
|
wpa_printf(MSG_DEBUG, "WPS: Probe Request for PBC received from "
|
||||||
MACSTR, MAC2STR(addr));
|
MACSTR, MAC2STR(addr));
|
||||||
|
if (attr.uuid_e == NULL) {
|
||||||
|
wpa_printf(MSG_DEBUG, "WPS: Invalid Probe Request WPS IE: No "
|
||||||
|
"UUID-E included");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
wps_registrar_add_pbc_session(reg, addr, attr.uuid_e);
|
wps_registrar_add_pbc_session(reg, addr, attr.uuid_e);
|
||||||
if (wps_registrar_pbc_overlap(reg, addr, attr.uuid_e)) {
|
if (wps_registrar_pbc_overlap(reg, addr, attr.uuid_e)) {
|
||||||
|
|
Loading…
Reference in a new issue