diff options
author | Peter Oh <poh@qca.qualcomm.com> | 2016-04-29 22:04:41 (GMT) |
---|---|---|
committer | Jouni Malinen <j@w1.fi> | 2016-05-13 16:57:15 (GMT) |
commit | baa12136495ac72a9e34d9053c3f21efd87876b9 (patch) | |
tree | 2c0e872f9b8ce5829af2c6f444e45e1f64581c06 | |
parent | e8a1b6b8e9022f33b1b1f431758fd05b9be4fb8e (diff) | |
download | hostap-baa12136495ac72a9e34d9053c3f21efd87876b9.zip hostap-baa12136495ac72a9e34d9053c3f21efd87876b9.tar.gz hostap-baa12136495ac72a9e34d9053c3f21efd87876b9.tar.bz2 |
mesh: Add missing action to cancel timer
IEEE Std 802.11-2012 Table 13-2, MPM finite state machine requires to
clear retryTimer when CNF_ACPT event occurs in OPN_SNT state which is
missing, so add it to comply with the standard.
This was found while debugging an MTK issue and this commit fixes a
potential issue that mesh sends invalid event (PLINK_OPEN) which will
lead another invalid timer register such as MeshConfirm Timer. This
behaviour might lead to undefined mesh state.
Signed-off-by: Peter Oh <poh@qca.qualcomm.com>
-rw-r--r-- | wpa_supplicant/mesh_mpm.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/wpa_supplicant/mesh_mpm.c b/wpa_supplicant/mesh_mpm.c index c014eaf..6292e62 100644 --- a/wpa_supplicant/mesh_mpm.c +++ b/wpa_supplicant/mesh_mpm.c @@ -874,6 +874,7 @@ static void mesh_mpm_fsm(struct wpa_supplicant *wpa_s, struct sta_info *sta, break; case CNF_ACPT: wpa_mesh_set_plink_state(wpa_s, sta, PLINK_CNF_RCVD); + eloop_cancel_timeout(plink_timer, wpa_s, sta); eloop_register_timeout( conf->dot11MeshConfirmTimeout / 1000, (conf->dot11MeshConfirmTimeout % 1000) * 1000, |