Browse Source

P2P: Use group formation timeout (but longer one) with join-a-group

This allows the pending group interface to be removed if we fail
to join a running group. A longer than 15 second timeout is needed
here since the GO may not have authorized our connection yet.
Jouni Malinen 14 years ago
parent
commit
3094d4837a
1 changed files with 9 additions and 0 deletions
  1. 9 0
      wpa_supplicant/p2p_supplicant.c

+ 9 - 0
wpa_supplicant/p2p_supplicant.c

@@ -2504,6 +2504,15 @@ static int wpas_p2p_join_start(struct wpa_supplicant *wpa_s)
 	res.wps_method = wpa_s->pending_join_wps_method;
 	wpas_start_wps_enrollee(group, &res);
 
+	/*
+	 * Allow a longer timeout for join-a-running-group than normal 15
+	 * second group formation timeout since the GO may not have authorized
+	 * our connection yet.
+	 */
+	eloop_cancel_timeout(wpas_p2p_group_formation_timeout, wpa_s, NULL);
+	eloop_register_timeout(60, 0, wpas_p2p_group_formation_timeout,
+			       wpa_s, NULL);
+
 	return 0;
 }