ctrl_iface: Add wmm_ac_addts and wmm_ac_delts commands
[mech_eap.git] / wpa_supplicant / wnm_sta.h
1 /*
2  * IEEE 802.11v WNM related functions and structures
3  * Copyright (c) 2011-2012, Qualcomm Atheros, Inc.
4  *
5  * This software may be distributed under the terms of the BSD license.
6  * See README for more details.
7  */
8
9 #ifndef WNM_STA_H
10 #define WNM_STA_H
11
12 struct tsf_info {
13         u8 tsf_offset[2];
14         u8 beacon_interval[2];
15 };
16
17 struct condensed_country_string {
18         u8 country_string[2];
19 };
20
21 struct bss_transition_candidate {
22         u8 preference;
23 };
24
25 struct bss_termination_duration {
26         u8 duration[10];
27 };
28
29 struct bearing {
30         u8 bearing[8];
31 };
32
33 struct measurement_pilot {
34         u8 measurement_pilot;
35         u8 subelem_len;
36         u8 subelems[255];
37 };
38
39 struct rrm_enabled_capabilities {
40         u8 capabilities[5];
41 };
42
43 struct multiple_bssid {
44         u8 max_bssid_indicator;
45         u8 subelem_len;
46         u8 subelems[255];
47 };
48
49 struct neighbor_report {
50         u8 bssid[ETH_ALEN];
51         u8 bssid_information[4];
52         u8 regulatory_class;
53         u8 channel_number;
54         u8 phy_type;
55         struct tsf_info *tsf_info;
56         struct condensed_country_string *con_coun_str;
57         struct bss_transition_candidate *bss_tran_can;
58         struct bss_termination_duration *bss_term_dur;
59         struct bearing *bearing;
60         struct measurement_pilot *meas_pilot;
61         struct rrm_enabled_capabilities *rrm_cap;
62         struct multiple_bssid *mul_bssid;
63 };
64
65
66 int ieee802_11_send_wnmsleep_req(struct wpa_supplicant *wpa_s,
67                                  u8 action, u16 intval, struct wpabuf *tfs_req);
68
69 void ieee802_11_rx_wnm_action(struct wpa_supplicant *wpa_s,
70                               const struct ieee80211_mgmt *mgmt, size_t len);
71
72 void wnm_scan_response(struct wpa_supplicant *wpa_s,
73                        struct wpa_scan_results *scan_res);
74
75 int wnm_send_bss_transition_mgmt_query(struct wpa_supplicant *wpa_s,
76                                        u8 query_reason);
77 void wnm_deallocate_memory(struct wpa_supplicant *wpa_s);
78
79 #endif /* WNM_STA_H */