Browse Source

Remove unneeded scan delay on connection-in-progress

This type of protection against concurrent connection and scan
operations is now enforced through the wpa_radio work mechanism, so this
separate protection mechanism is not needed anymore.

Signed-hostap: Jouni Malinen <j@w1.fi>
Jouni Malinen 11 years ago
parent
commit
6470f471e4
3 changed files with 1 additions and 38 deletions
  1. 1 1
      wpa_supplicant/scan.c
  2. 0 36
      wpa_supplicant/wpa_supplicant.c
  3. 0 1
      wpa_supplicant/wpa_supplicant_i.h

+ 1 - 1
wpa_supplicant/scan.c

@@ -574,7 +574,7 @@ static void wpa_supplicant_scan(void *eloop_ctx, void *timeout_ctx)
 	}
 
 #ifdef CONFIG_P2P
-	if (wpas_p2p_in_progress(wpa_s) || wpas_wpa_is_in_progress(wpa_s, 0)) {
+	if (wpas_p2p_in_progress(wpa_s)) {
 		wpa_dbg(wpa_s, MSG_DEBUG, "Delay station mode scan while P2P operation is in progress");
 		wpa_supplicant_req_scan(wpa_s, 5, 0);
 		return;

+ 0 - 36
wpa_supplicant/wpa_supplicant.c

@@ -4346,42 +4346,6 @@ void wpas_request_connection(struct wpa_supplicant *wpa_s)
 }
 
 
-static int wpas_conn_in_progress(struct wpa_supplicant *wpa_s)
-{
-	return wpa_s->wpa_state >= WPA_AUTHENTICATING &&
-		wpa_s->wpa_state != WPA_COMPLETED;
-}
-
-
-/**
- * wpas_wpa_is_in_progress - Check whether a connection is in progress
- * @wpa_s: Pointer to wpa_supplicant data
- * @include_current: Whether to consider specified interface
- *
- * This function is to check if the wpa state is in beginning of the connection
- * during 4-way handshake or group key handshake with WPA on any shared
- * interface.
- */
-int wpas_wpa_is_in_progress(struct wpa_supplicant *wpa_s, int include_current)
-{
-	struct wpa_supplicant *ifs;
-
-	dl_list_for_each(ifs, &wpa_s->radio->ifaces, struct wpa_supplicant,
-			 radio_list) {
-		if (!include_current && ifs == wpa_s)
-			continue;
-
-		if (wpas_conn_in_progress(ifs)) {
-			wpa_dbg(wpa_s, MSG_DEBUG, "Connection is in progress "
-				"on interface %s - defer", ifs->ifname);
-			return 1;
-		}
-	}
-
-	return 0;
-}
-
-
 void dump_freq_array(struct wpa_supplicant *wpa_s, const char *title,
 		     int *freq_array, unsigned int len)
 {

+ 0 - 1
wpa_supplicant/wpa_supplicant_i.h

@@ -881,7 +881,6 @@ int disallowed_ssid(struct wpa_supplicant *wpa_s, const u8 *ssid,
 		    size_t ssid_len);
 void wpas_request_connection(struct wpa_supplicant *wpa_s);
 int wpas_build_ext_capab(struct wpa_supplicant *wpa_s, u8 *buf);
-int wpas_wpa_is_in_progress(struct wpa_supplicant *wpa_s, int include_current);
 
 /**
  * wpa_supplicant_ctrl_iface_ctrl_rsp_handle - Handle a control response