diff options
author | Jouni Malinen <j@w1.fi> | 2014-11-30 13:42:26 (GMT) |
---|---|---|
committer | Jouni Malinen <j@w1.fi> | 2014-11-30 13:53:11 (GMT) |
commit | 9a700ff9efadc7f817b6aea01f8bdaf363ccc29d (patch) | |
tree | 0d80dca2d6069c00c8e819dc0080335c1216e6c0 /wpa_supplicant/events.c | |
parent | 0a11409c00769026b4e89c5cbb089118256d3475 (diff) | |
download | hostap-9a700ff9efadc7f817b6aea01f8bdaf363ccc29d.zip hostap-9a700ff9efadc7f817b6aea01f8bdaf363ccc29d.tar.gz hostap-9a700ff9efadc7f817b6aea01f8bdaf363ccc29d.tar.bz2 |
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>
Diffstat (limited to 'wpa_supplicant/events.c')
-rw-r--r-- | wpa_supplicant/events.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/wpa_supplicant/events.c b/wpa_supplicant/events.c index 06b09ef..5ef64e6 100644 --- a/wpa_supplicant/events.c +++ b/wpa_supplicant/events.c @@ -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; |