xref: /dragonfly/contrib/wpa_supplicant/src/common/gas.h (revision 3a84a4273475ed07d0ab1c2dfeffdfedef35d9cd)
1 /*
2  * Generic advertisement service (GAS) (IEEE 802.11u)
3  * Copyright (c) 2009, Atheros Communications
4  * Copyright (c) 2011-2012, Qualcomm Atheros
5  *
6  * This software may be distributed under the terms of the BSD license.
7  * See README for more details.
8  */
9 
10 #ifndef GAS_H
11 #define GAS_H
12 
13 struct wpabuf * gas_build_initial_req(u8 dialog_token, size_t size);
14 struct wpabuf * gas_build_comeback_req(u8 dialog_token);
15 struct wpabuf * gas_build_initial_resp(u8 dialog_token, u16 status_code,
16                                                u16 comeback_delay, size_t size);
17 struct wpabuf *
18 gas_build_comeback_resp(u8 dialog_token, u16 status_code, u8 frag_id, u8 more,
19                               u16 comeback_delay, size_t size);
20 struct wpabuf * gas_anqp_build_initial_req(u8 dialog_token, size_t size);
21 struct wpabuf * gas_anqp_build_initial_resp(u8 dialog_token, u16 status_code,
22                                                       u16 comeback_delay, size_t size);
23 struct wpabuf * gas_anqp_build_initial_resp_buf(u8 dialog_token,
24                                                             u16 status_code,
25                                                             u16 comeback_delay,
26                                                             struct wpabuf *payload);
27 struct wpabuf * gas_anqp_build_comeback_resp(u8 dialog_token, u16 status_code,
28                                                        u8 frag_id, u8 more,
29                                                        u16 comeback_delay, size_t size);
30 struct wpabuf * gas_anqp_build_comeback_resp_buf(u8 dialog_token,
31                                                              u16 status_code,
32                                                              u8 frag_id, u8 more,
33                                                              u16 comeback_delay,
34                                                              struct wpabuf *payload);
35 void gas_anqp_set_len(struct wpabuf *buf);
36 
37 u8 * gas_anqp_add_element(struct wpabuf *buf, u16 info_id);
38 void gas_anqp_set_element_len(struct wpabuf *buf, u8 *len_pos);
39 
40 #endif /* GAS_H */
41