[PATCH] wpa_supplicant: Fix AP mode frequency initialization

Ilan Peer ilan.peer at intel.com
Wed Aug 7 06:08:43 EDT 2013


From: Avraham Stern <avraham.stern at intel.com>

In AP mode the frequency was initialized only after trying to set up
the AP which caused failure. Move AP frequency initialization to
the right place.

Signed-hostap: Avraham Stern <avraham.stern at intel.com>
---
 wpa_supplicant/ap.c |   20 ++++++++------------
 1 file changed, 8 insertions(+), 12 deletions(-)

diff --git a/wpa_supplicant/ap.c b/wpa_supplicant/ap.c
index c48a286..c8fc098 100644
--- a/wpa_supplicant/ap.c
+++ b/wpa_supplicant/ap.c
@@ -51,18 +51,12 @@ static int wpa_supplicant_conf_ap(struct wpa_supplicant *wpa_s,
 
 	os_strlcpy(bss->iface, wpa_s->ifname, sizeof(bss->iface));
 
-	if (ssid->frequency == 0) {
-		/* default channel 11 */
-		conf->hw_mode = HOSTAPD_MODE_IEEE80211G;
-		conf->channel = 11;
-	} else {
-		conf->hw_mode = ieee80211_freq_to_chan(ssid->frequency,
-						       &conf->channel);
-		if (conf->hw_mode == NUM_HOSTAPD_MODES) {
-			wpa_printf(MSG_ERROR, "Unsupported AP mode frequency: "
-				   "%d MHz", ssid->frequency);
-			return -1;
-		}
+	conf->hw_mode = ieee80211_freq_to_chan(ssid->frequency,
+					       &conf->channel);
+	if (conf->hw_mode == NUM_HOSTAPD_MODES) {
+		wpa_printf(MSG_ERROR, "Unsupported AP mode frequency: "
+			   "%d MHz", ssid->frequency);
+		return -1;
 	}
 
 	/* TODO: enable HT40 if driver supports it;
@@ -461,6 +455,8 @@ int wpa_supplicant_create_ap(struct wpa_supplicant *wpa_s,
 		params.mode = IEEE80211_MODE_AP;
 		break;
 	}
+	if (ssid->frequency == 0)
+		ssid->frequency = 2462; /*default channel 11*/
 	params.freq = ssid->frequency;
 
 	params.wpa_proto = ssid->proto;
-- 
1.7.10.4



More information about the HostAP mailing list