os_memset(¶ms, 0, sizeof(params));
params.meshid = ssid->ssid;
params.meshid_len = ssid->ssid_len;
- params.freq = ssid->frequency;
- wpa_s->mesh_ht_enabled = ssid->mesh_ht_mode > CHAN_NO_HT;
- switch (ssid->mesh_ht_mode) {
- case CHAN_HT20:
- params.freq.ht_enabled = 1;
- break;
- case CHAN_HT40PLUS:
- params.freq.ht_enabled = 1;
- params.freq.sec_channel_offset = 1;
- break;
- case CHAN_HT40MINUS:
- params.freq.ht_enabled = 1;
- params.freq.sec_channel_offset = -1;
- break;
- default:
- break;
- }
+ ibss_mesh_setup_freq(wpa_s, ssid, ¶ms.freq);
+ wpa_s->mesh_ht_enabled = !!params.freq.ht_enabled;
if (ssid->beacon_int > 0)
params.beacon_int = ssid->beacon_int;
else if (wpa_s->conf->beacon_int > 0)
}
-static void ibss_mesh_setup_freq(struct wpa_supplicant *wpa_s,
- const struct wpa_ssid *ssid,
- struct hostapd_freq_params *freq)
+void ibss_mesh_setup_freq(struct wpa_supplicant *wpa_s,
+ const struct wpa_ssid *ssid,
+ struct hostapd_freq_params *freq)
{
enum hostapd_hw_mode hw_mode;
struct hostapd_hw_modes *mode = NULL;
const char *field,
const char *value);
+void ibss_mesh_setup_freq(struct wpa_supplicant *wpa_s,
+ const struct wpa_ssid *ssid,
+ struct hostapd_freq_params *freq);
+
/* events.c */
void wpa_supplicant_mark_disassoc(struct wpa_supplicant *wpa_s);
int wpa_supplicant_connect(struct wpa_supplicant *wpa_s,