mirror of
https://github.com/vanhoefm/fragattacks.git
synced 2024-11-25 00:38:24 -05:00
Add EDMG parameters to set_freq functions
This updates the frequency parameter setting functions to include argument for EDMG. Signed-off-by: Alexei Avshalom Lazar <ailizaro@codeaurora.org>
This commit is contained in:
parent
fdd0fef2c6
commit
bebd91e9c4
@ -538,7 +538,8 @@ int hostapd_flush(struct hostapd_data *hapd)
|
|||||||
|
|
||||||
|
|
||||||
int hostapd_set_freq(struct hostapd_data *hapd, enum hostapd_hw_mode mode,
|
int hostapd_set_freq(struct hostapd_data *hapd, enum hostapd_hw_mode mode,
|
||||||
int freq, int channel, int ht_enabled, int vht_enabled,
|
int freq, int channel, int edmg, u8 edmg_channel,
|
||||||
|
int ht_enabled, int vht_enabled,
|
||||||
int he_enabled,
|
int he_enabled,
|
||||||
int sec_channel_offset, int oper_chwidth,
|
int sec_channel_offset, int oper_chwidth,
|
||||||
int center_segment0, int center_segment1)
|
int center_segment0, int center_segment1)
|
||||||
@ -546,7 +547,8 @@ int hostapd_set_freq(struct hostapd_data *hapd, enum hostapd_hw_mode mode,
|
|||||||
struct hostapd_freq_params data;
|
struct hostapd_freq_params data;
|
||||||
struct hostapd_hw_modes *cmode = hapd->iface->current_mode;
|
struct hostapd_hw_modes *cmode = hapd->iface->current_mode;
|
||||||
|
|
||||||
if (hostapd_set_freq_params(&data, mode, freq, channel, ht_enabled,
|
if (hostapd_set_freq_params(&data, mode, freq, channel, edmg,
|
||||||
|
edmg_channel, ht_enabled,
|
||||||
vht_enabled, he_enabled, sec_channel_offset,
|
vht_enabled, he_enabled, sec_channel_offset,
|
||||||
oper_chwidth,
|
oper_chwidth,
|
||||||
center_segment0, center_segment1,
|
center_segment0, center_segment1,
|
||||||
@ -808,7 +810,8 @@ int hostapd_start_dfs_cac(struct hostapd_iface *iface,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hostapd_set_freq_params(&data, mode, freq, channel, ht_enabled,
|
if (hostapd_set_freq_params(&data, mode, freq, channel, 0, 0,
|
||||||
|
ht_enabled,
|
||||||
vht_enabled, he_enabled, sec_channel_offset,
|
vht_enabled, he_enabled, sec_channel_offset,
|
||||||
oper_chwidth, center_segment0,
|
oper_chwidth, center_segment0,
|
||||||
center_segment1,
|
center_segment1,
|
||||||
|
@ -62,7 +62,8 @@ int hostapd_get_seqnum(const char *ifname, struct hostapd_data *hapd,
|
|||||||
const u8 *addr, int idx, u8 *seq);
|
const u8 *addr, int idx, u8 *seq);
|
||||||
int hostapd_flush(struct hostapd_data *hapd);
|
int hostapd_flush(struct hostapd_data *hapd);
|
||||||
int hostapd_set_freq(struct hostapd_data *hapd, enum hostapd_hw_mode mode,
|
int hostapd_set_freq(struct hostapd_data *hapd, enum hostapd_hw_mode mode,
|
||||||
int freq, int channel, int ht_enabled, int vht_enabled,
|
int freq, int channel, int edmg, u8 edmg_channel,
|
||||||
|
int ht_enabled, int vht_enabled,
|
||||||
int he_enabled, int sec_channel_offset, int oper_chwidth,
|
int he_enabled, int sec_channel_offset, int oper_chwidth,
|
||||||
int center_segment0, int center_segment1);
|
int center_segment0, int center_segment1);
|
||||||
int hostapd_set_rts(struct hostapd_data *hapd, int rts);
|
int hostapd_set_rts(struct hostapd_data *hapd, int rts);
|
||||||
|
@ -1434,7 +1434,8 @@ int ieee802_11_set_beacon(struct hostapd_data *hapd)
|
|||||||
|
|
||||||
if (cmode &&
|
if (cmode &&
|
||||||
hostapd_set_freq_params(&freq, iconf->hw_mode, iface->freq,
|
hostapd_set_freq_params(&freq, iconf->hw_mode, iface->freq,
|
||||||
iconf->channel, iconf->ieee80211n,
|
iconf->channel, iconf->enable_edmg,
|
||||||
|
iconf->edmg_channel, iconf->ieee80211n,
|
||||||
iconf->ieee80211ac, iconf->ieee80211ax,
|
iconf->ieee80211ac, iconf->ieee80211ax,
|
||||||
iconf->secondary_channel,
|
iconf->secondary_channel,
|
||||||
hostapd_get_oper_chwidth(iconf),
|
hostapd_get_oper_chwidth(iconf),
|
||||||
|
@ -960,6 +960,8 @@ static int hostapd_dfs_start_channel_switch(struct hostapd_iface *iface)
|
|||||||
iface->conf->hw_mode,
|
iface->conf->hw_mode,
|
||||||
channel->freq,
|
channel->freq,
|
||||||
channel->chan,
|
channel->chan,
|
||||||
|
iface->conf->enable_edmg,
|
||||||
|
iface->conf->edmg_channel,
|
||||||
iface->conf->ieee80211n,
|
iface->conf->ieee80211n,
|
||||||
iface->conf->ieee80211ac,
|
iface->conf->ieee80211ac,
|
||||||
iface->conf->ieee80211ax,
|
iface->conf->ieee80211ax,
|
||||||
|
@ -1914,6 +1914,8 @@ static int hostapd_setup_interface_complete_sync(struct hostapd_iface *iface,
|
|||||||
if (!delay_apply_cfg &&
|
if (!delay_apply_cfg &&
|
||||||
hostapd_set_freq(hapd, hapd->iconf->hw_mode, iface->freq,
|
hostapd_set_freq(hapd, hapd->iconf->hw_mode, iface->freq,
|
||||||
hapd->iconf->channel,
|
hapd->iconf->channel,
|
||||||
|
hapd->iconf->enable_edmg,
|
||||||
|
hapd->iconf->edmg_channel,
|
||||||
hapd->iconf->ieee80211n,
|
hapd->iconf->ieee80211n,
|
||||||
hapd->iconf->ieee80211ac,
|
hapd->iconf->ieee80211ac,
|
||||||
hapd->iconf->ieee80211ax,
|
hapd->iconf->ieee80211ax,
|
||||||
@ -3282,7 +3284,8 @@ static int hostapd_change_config_freq(struct hostapd_data *hapd,
|
|||||||
if (old_params &&
|
if (old_params &&
|
||||||
hostapd_set_freq_params(old_params, conf->hw_mode,
|
hostapd_set_freq_params(old_params, conf->hw_mode,
|
||||||
hostapd_hw_get_freq(hapd, conf->channel),
|
hostapd_hw_get_freq(hapd, conf->channel),
|
||||||
conf->channel, conf->ieee80211n,
|
conf->channel, conf->enable_edmg,
|
||||||
|
conf->edmg_channel, conf->ieee80211n,
|
||||||
conf->ieee80211ac, conf->ieee80211ax,
|
conf->ieee80211ac, conf->ieee80211ax,
|
||||||
conf->secondary_channel,
|
conf->secondary_channel,
|
||||||
hostapd_get_oper_chwidth(conf),
|
hostapd_get_oper_chwidth(conf),
|
||||||
|
@ -360,7 +360,8 @@ int check_40mhz_2g4(struct hostapd_hw_modes *mode,
|
|||||||
|
|
||||||
int hostapd_set_freq_params(struct hostapd_freq_params *data,
|
int hostapd_set_freq_params(struct hostapd_freq_params *data,
|
||||||
enum hostapd_hw_mode mode,
|
enum hostapd_hw_mode mode,
|
||||||
int freq, int channel, int ht_enabled,
|
int freq, int channel, int enable_edmg,
|
||||||
|
u8 edmg_channel, int ht_enabled,
|
||||||
int vht_enabled, int he_enabled,
|
int vht_enabled, int he_enabled,
|
||||||
int sec_channel_offset,
|
int sec_channel_offset,
|
||||||
int oper_chwidth, int center_segment0,
|
int oper_chwidth, int center_segment0,
|
||||||
@ -381,6 +382,9 @@ int hostapd_set_freq_params(struct hostapd_freq_params *data,
|
|||||||
data->center_freq2 = 0;
|
data->center_freq2 = 0;
|
||||||
data->bandwidth = sec_channel_offset ? 40 : 20;
|
data->bandwidth = sec_channel_offset ? 40 : 20;
|
||||||
|
|
||||||
|
hostapd_encode_edmg_chan(enable_edmg, edmg_channel, channel,
|
||||||
|
&data->edmg);
|
||||||
|
|
||||||
if (data->vht_enabled) switch (oper_chwidth) {
|
if (data->vht_enabled) switch (oper_chwidth) {
|
||||||
case CHANWIDTH_USE_HT:
|
case CHANWIDTH_USE_HT:
|
||||||
if (center_segment1 ||
|
if (center_segment1 ||
|
||||||
|
@ -31,7 +31,8 @@ int check_40mhz_2g4(struct hostapd_hw_modes *mode,
|
|||||||
int sec_chan);
|
int sec_chan);
|
||||||
int hostapd_set_freq_params(struct hostapd_freq_params *data,
|
int hostapd_set_freq_params(struct hostapd_freq_params *data,
|
||||||
enum hostapd_hw_mode mode,
|
enum hostapd_hw_mode mode,
|
||||||
int freq, int channel, int ht_enabled,
|
int freq, int channel, int edmg, u8 edmg_channel,
|
||||||
|
int ht_enabled,
|
||||||
int vht_enabled, int he_enabled,
|
int vht_enabled, int he_enabled,
|
||||||
int sec_channel_offset,
|
int sec_channel_offset,
|
||||||
int oper_chwidth, int center_segment0,
|
int oper_chwidth, int center_segment0,
|
||||||
|
@ -2433,7 +2433,8 @@ skip_ht40:
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (hostapd_set_freq_params(&vht_freq, mode->mode, freq->freq,
|
if (hostapd_set_freq_params(&vht_freq, mode->mode, freq->freq,
|
||||||
freq->channel, freq->ht_enabled,
|
freq->channel, ssid->enable_edmg,
|
||||||
|
ssid->edmg_channel, freq->ht_enabled,
|
||||||
vht_freq.vht_enabled, freq->he_enabled,
|
vht_freq.vht_enabled, freq->he_enabled,
|
||||||
freq->sec_channel_offset,
|
freq->sec_channel_offset,
|
||||||
chwidth, seg0, seg1, vht_caps,
|
chwidth, seg0, seg1, vht_caps,
|
||||||
|
Loading…
Reference in New Issue
Block a user