[PATCH] WPS: reset ClientTimeout to 30 seconds in eap_wsc_init
Mon Dec 20 12:40:42 PST 2010
Commit 9301f651 reduces ClientTimeout from 30 seconds to 2 seconds
whenever provisioning step has been completed (either successfully or
unsuccessfully). Subsequent attempts to complete provisioning may
prematurely timeout and fail because ClientTimeout is never reset back
to 30 seconds.
I was trying to use P2P on two embedded devices under heavy system load.
The initial P2P connection attempt always succeeded but subsequent
attempts to re-run the protocol were failing during WPS provisioning because
of an EAP-Failure on the STA immediately after the STA sent M1. I was able
to reproduce the same problem on the STA if I used hostapd/wpa_supplicant
with WPS instead of P2P.
src/eap_peer/eap_wsc.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/src/eap_peer/eap_wsc.c b/src/eap_peer/eap_wsc.c
index 09d8a1c..2c53b58 100644
@@ -237,8 +237,7 @@ static void * eap_wsc_init(struct eap_sm *sm)
/* Use reduced client timeout for WPS to avoid long wait */
- if (sm->ClientTimeout > 30)
- sm->ClientTimeout = 30;
+ sm->ClientTimeout = 30;
More information about the Hostap