1252190Srpaulo/*
2252190Srpaulo * Generic advertisement service (GAS) (IEEE 802.11u)
3252190Srpaulo * Copyright (c) 2009, Atheros Communications
4252190Srpaulo * Copyright (c) 2011-2012, Qualcomm Atheros
5252190Srpaulo *
6252190Srpaulo * This software may be distributed under the terms of the BSD license.
7252190Srpaulo * See README for more details.
8252190Srpaulo */
9252190Srpaulo
10252190Srpaulo#ifndef GAS_H
11252190Srpaulo#define GAS_H
12252190Srpaulo
13252190Srpaulostruct wpabuf * gas_build_initial_req(u8 dialog_token, size_t size);
14252190Srpaulostruct wpabuf * gas_build_comeback_req(u8 dialog_token);
15252190Srpaulostruct wpabuf * gas_build_initial_resp(u8 dialog_token, u16 status_code,
16252190Srpaulo				       u16 comeback_delay, size_t size);
17252190Srpaulostruct wpabuf * gas_anqp_build_initial_req(u8 dialog_token, size_t size);
18252190Srpaulostruct wpabuf * gas_anqp_build_initial_resp(u8 dialog_token, u16 status_code,
19252190Srpaulo					    u16 comeback_delay, size_t size);
20252190Srpaulostruct wpabuf * gas_anqp_build_initial_resp_buf(u8 dialog_token,
21252190Srpaulo						u16 status_code,
22252190Srpaulo						u16 comeback_delay,
23252190Srpaulo						struct wpabuf *payload);
24252190Srpaulostruct wpabuf * gas_anqp_build_comeback_resp(u8 dialog_token, u16 status_code,
25252190Srpaulo					     u8 frag_id, u8 more,
26252190Srpaulo					     u16 comeback_delay, size_t size);
27252190Srpaulostruct wpabuf * gas_anqp_build_comeback_resp_buf(u8 dialog_token,
28252190Srpaulo						 u16 status_code,
29252190Srpaulo						 u8 frag_id, u8 more,
30252190Srpaulo						 u16 comeback_delay,
31252190Srpaulo						 struct wpabuf *payload);
32252190Srpaulovoid gas_anqp_set_len(struct wpabuf *buf);
33252190Srpaulo
34252190Srpaulou8 * gas_anqp_add_element(struct wpabuf *buf, u16 info_id);
35252190Srpaulovoid gas_anqp_set_element_len(struct wpabuf *buf, u8 *len_pos);
36252190Srpaulo
37252190Srpaulo#endif /* GAS_H */
38