diff options
| author | Cy Schubert <cy@FreeBSD.org> | 2019-08-22 02:58:49 +0000 | 
|---|---|---|
| committer | Cy Schubert <cy@FreeBSD.org> | 2019-08-22 02:58:49 +0000 | 
| commit | 61ba7d6203bdf21c1e14dda217e1bcbe7b35abf6 (patch) | |
| tree | 1a98b35c0a77ae6d183c5ad2e1f4322ad057f642 /wpa_supplicant/mesh.c | |
| parent | 6e6d0eb51ef7b7487340bae7f20097ee5a57dbf4 (diff) | |
Diffstat (limited to 'wpa_supplicant/mesh.c')
| -rw-r--r-- | wpa_supplicant/mesh.c | 18 | 
1 files changed, 11 insertions, 7 deletions
| diff --git a/wpa_supplicant/mesh.c b/wpa_supplicant/mesh.c index 92600211ac2df..7354c1b791612 100644 --- a/wpa_supplicant/mesh.c +++ b/wpa_supplicant/mesh.c @@ -208,6 +208,7 @@ static int wpas_mesh_complete(struct wpa_supplicant *wpa_s)  		wpa_printf(MSG_ERROR,  			   "mesh: RSN initialization failed - deinit mesh");  		wpa_supplicant_mesh_deinit(wpa_s); +		wpa_drv_leave_mesh(wpa_s);  		return -1;  	} @@ -333,14 +334,14 @@ static int wpa_supplicant_mesh_init(struct wpa_supplicant *wpa_s,  		if (ssid->max_oper_chwidth != DEFAULT_MAX_OPER_CHWIDTH)  			conf->vht_oper_chwidth = ssid->max_oper_chwidth;  		switch (conf->vht_oper_chwidth) { -		case VHT_CHANWIDTH_80MHZ: -		case VHT_CHANWIDTH_80P80MHZ: +		case CHANWIDTH_80MHZ: +		case CHANWIDTH_80P80MHZ:  			ieee80211_freq_to_chan(  				frequency,  				&conf->vht_oper_centr_freq_seg0_idx);  			conf->vht_oper_centr_freq_seg0_idx += ssid->ht40 * 2;  			break; -		case VHT_CHANWIDTH_160MHZ: +		case CHANWIDTH_160MHZ:  			ieee80211_freq_to_chan(  				frequency,  				&conf->vht_oper_centr_freq_seg0_idx); @@ -455,6 +456,7 @@ int wpa_supplicant_join_mesh(struct wpa_supplicant *wpa_s,  	ibss_mesh_setup_freq(wpa_s, ssid, ¶ms->freq);  	wpa_s->mesh_ht_enabled = !!params->freq.ht_enabled;  	wpa_s->mesh_vht_enabled = !!params->freq.vht_enabled; +	wpa_s->mesh_he_enabled = !!params->freq.he_enabled;  	if (params->freq.ht_enabled && params->freq.sec_channel_offset)  		ssid->ht40 = params->freq.sec_channel_offset; @@ -464,21 +466,23 @@ int wpa_supplicant_join_mesh(struct wpa_supplicant *wpa_s,  		switch (params->freq.bandwidth) {  		case 80:  			if (params->freq.center_freq2) { -				ssid->max_oper_chwidth = VHT_CHANWIDTH_80P80MHZ; +				ssid->max_oper_chwidth = CHANWIDTH_80P80MHZ;  				ssid->vht_center_freq2 =  					params->freq.center_freq2;  			} else { -				ssid->max_oper_chwidth = VHT_CHANWIDTH_80MHZ; +				ssid->max_oper_chwidth = CHANWIDTH_80MHZ;  			}  			break;  		case 160: -			ssid->max_oper_chwidth = VHT_CHANWIDTH_160MHZ; +			ssid->max_oper_chwidth = CHANWIDTH_160MHZ;  			break;  		default: -			ssid->max_oper_chwidth = VHT_CHANWIDTH_USE_HT; +			ssid->max_oper_chwidth = CHANWIDTH_USE_HT;  			break;  		}  	} +	if (wpa_s->mesh_he_enabled) +		ssid->he = 1;  	if (ssid->beacon_int > 0)  		params->beacon_int = ssid->beacon_int;  	else if (wpa_s->conf->beacon_int > 0) | 
