9 #ifndef IEEE802_11_COMMON_H 10 #define IEEE802_11_COMMON_H 14 #define MAX_NOF_MB_IES_SUPPORTED 5 20 } ies[MAX_NOF_MB_IES_SUPPORTED];
31 const u8 *ext_supp_rates;
37 const u8 *supp_channels;
40 const u8 *timeout_int;
41 const u8 *ht_capabilities;
42 const u8 *ht_operation;
43 const u8 *mesh_config;
46 const u8 *vht_capabilities;
47 const u8 *vht_operation;
48 const u8 *vht_opmode_notif;
49 const u8 *vendor_ht_cap;
54 const u8 *interworking;
55 const u8 *qos_map_set;
58 const u8 *bss_max_idle_period;
64 const u8 *pref_freq_list;
65 const u8 *supp_op_classes;
66 const u8 *rrm_enabled;
71 const u8 *assoc_delay_info;
72 const u8 *fils_req_params;
73 const u8 *fils_key_confirm;
74 const u8 *fils_session;
76 const u8 *fils_ip_addr_assign;
77 const u8 *key_delivery;
78 const u8 *fils_wrapped_data;
85 u8 ext_supp_rates_len;
110 u8 pref_freq_list_len;
111 u8 supp_op_classes_len;
116 u8 fils_req_params_len;
117 u8 fils_key_confirm_len;
119 u8 fils_ip_addr_assign_len;
121 u8 fils_wrapped_data_len;
127 typedef enum { ParseOK = 0, ParseUnknown = 1, ParseFailed = -1 } ParseRes;
129 ParseRes ieee802_11_parse_elems(
const u8 *start,
size_t len,
132 int ieee802_11_ie_count(
const u8 *ies,
size_t ies_len);
133 struct wpabuf * ieee802_11_vendor_ie_concat(
const u8 *ies,
size_t ies_len,
136 const u8 * get_hdr_bssid(
const struct ieee80211_hdr *hdr,
size_t len);
143 int admission_control_mandatory;
147 const char *name,
const char *val);
148 enum hostapd_hw_mode ieee80211_freq_to_chan(
int freq, u8 *channel);
149 int ieee80211_chan_to_freq(
const char *country, u8 op_class, u8 chan);
150 enum hostapd_hw_mode ieee80211_freq_to_channel_ext(
unsigned int freq,
151 int sec_channel,
int vht,
152 u8 *op_class, u8 *channel);
153 int ieee80211_is_dfs(
int freq);
154 enum phy_type ieee80211_get_phy_type(
int freq,
int ht,
int vht);
157 int mb_ies_info_by_ies(
struct mb_ies_info *info,
const u8 *ies_buf,
161 const char * fc2str(u16 fc);
164 enum hostapd_hw_mode mode;
169 enum { BW20, BW40PLUS, BW40MINUS, BW80, BW2160, BW160, BW80P80 } bw;
170 enum { P2P_SUPP, NO_P2P_SUPP } p2p;
174 extern size_t global_op_class_size;
176 const u8 * get_ie(
const u8 *ies,
size_t len, u8 eid);
178 size_t mbo_add_ie(u8 *buf,
size_t len,
const u8 *attr,
size_t attr_len);
185 u8 country_to_global_op_class(
const char *country, u8 op_class);
187 const struct oper_class_map * get_oper_class(
const char *country, u8 op_class);
Definition: ieee802_11_common.h:180
Definition: ieee802_11_common.h:163
Definition: ieee802_11_defs.h:751
Definition: ieee802_11_common.h:25
Definition: ieee802_11_common.h:138
Definition: ieee802_11_common.h:16