Ignore auth/assoc timeout events in mesh configuration
It was possible for auth/assoc timeout/failure event from the driver to result in unexpected processing during mesh group setup if that operation was started before the previously started driver operation to association/connect had completed. Since those events cannot happen in mesh cases, ignore them to avoid issues due to this corner case. For example, monitor_iface_unknown_sta followed by wpas_mesh_secure test case resulted in failure without this change. Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
parent
0a11409c00
commit
9a700ff9ef
1 changed files with 14 additions and 0 deletions
|
@ -3110,10 +3110,24 @@ void wpa_supplicant_event(void *ctx, enum wpa_event_type event,
|
|||
}
|
||||
break;
|
||||
case EVENT_AUTH_TIMED_OUT:
|
||||
/* It is possible to get this event from earlier connection */
|
||||
if (wpa_s->current_ssid &&
|
||||
wpa_s->current_ssid->mode == WPAS_MODE_MESH) {
|
||||
wpa_dbg(wpa_s, MSG_DEBUG,
|
||||
"Ignore AUTH_TIMED_OUT in mesh configuration");
|
||||
break;
|
||||
}
|
||||
if (wpa_s->drv_flags & WPA_DRIVER_FLAGS_SME)
|
||||
sme_event_auth_timed_out(wpa_s, data);
|
||||
break;
|
||||
case EVENT_ASSOC_TIMED_OUT:
|
||||
/* It is possible to get this event from earlier connection */
|
||||
if (wpa_s->current_ssid &&
|
||||
wpa_s->current_ssid->mode == WPAS_MODE_MESH) {
|
||||
wpa_dbg(wpa_s, MSG_DEBUG,
|
||||
"Ignore ASSOC_TIMED_OUT in mesh configuration");
|
||||
break;
|
||||
}
|
||||
if (wpa_s->drv_flags & WPA_DRIVER_FLAGS_SME)
|
||||
sme_event_assoc_timed_out(wpa_s, data);
|
||||
break;
|
||||
|
|
Loading…
Reference in a new issue