P2P: Use group formation timeout on persistent group GO

Previously, GO considered the group to be fully re-invoked after
starting beaconing on successful invitation exchange. This would leave
the group running until idle timeout (which may not be enabled) or
explicit removal if the client fails to connect for any reason. Since
the client is expected to connect immediately after the invitation
exchange that ends with status=0 (i.e., either client initiated the
exchange or it responded with success), extend group formation timeout
to cover that period until the first successfully completed data
connection. This allows the GO to remove the group automatically if the
client devices does not connect within
P2P_MAX_INITIAL_CONN_WAIT_GO_REINVOKE (15) seconds.

Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
Jouni Malinen 2013-09-26 21:24:09 +03:00 committed by Jouni Malinen
parent 41f853235f
commit bbc6c729a5
5 changed files with 41 additions and 6 deletions

View file

@ -648,6 +648,7 @@ struct wpa_supplicant {
unsigned int p2p_go_ht40:1;
unsigned int user_initiated_pd:1;
unsigned int p2p_go_group_formation_completed:1;
int p2p_first_connection_timeout;
int p2p_persistent_go_freq;
int p2p_persistent_id;
int p2p_go_intent;