xref: /dflybsd-src/contrib/wpa_supplicant/src/common/gas.h (revision 3a84a4273475ed07d0ab1c2dfeffdfedef35d9cd)
13ff40c12SJohn Marino /*
23ff40c12SJohn Marino  * Generic advertisement service (GAS) (IEEE 802.11u)
33ff40c12SJohn Marino  * Copyright (c) 2009, Atheros Communications
43ff40c12SJohn Marino  * Copyright (c) 2011-2012, Qualcomm Atheros
53ff40c12SJohn Marino  *
63ff40c12SJohn Marino  * This software may be distributed under the terms of the BSD license.
73ff40c12SJohn Marino  * See README for more details.
83ff40c12SJohn Marino  */
93ff40c12SJohn Marino 
103ff40c12SJohn Marino #ifndef GAS_H
113ff40c12SJohn Marino #define GAS_H
123ff40c12SJohn Marino 
133ff40c12SJohn Marino struct wpabuf * gas_build_initial_req(u8 dialog_token, size_t size);
143ff40c12SJohn Marino struct wpabuf * gas_build_comeback_req(u8 dialog_token);
153ff40c12SJohn Marino struct wpabuf * gas_build_initial_resp(u8 dialog_token, u16 status_code,
163ff40c12SJohn Marino 				       u16 comeback_delay, size_t size);
17*a1157835SDaniel Fojt struct wpabuf *
18*a1157835SDaniel Fojt gas_build_comeback_resp(u8 dialog_token, u16 status_code, u8 frag_id, u8 more,
19*a1157835SDaniel Fojt 			u16 comeback_delay, size_t size);
203ff40c12SJohn Marino struct wpabuf * gas_anqp_build_initial_req(u8 dialog_token, size_t size);
213ff40c12SJohn Marino struct wpabuf * gas_anqp_build_initial_resp(u8 dialog_token, u16 status_code,
223ff40c12SJohn Marino 					    u16 comeback_delay, size_t size);
233ff40c12SJohn Marino struct wpabuf * gas_anqp_build_initial_resp_buf(u8 dialog_token,
243ff40c12SJohn Marino 						u16 status_code,
253ff40c12SJohn Marino 						u16 comeback_delay,
263ff40c12SJohn Marino 						struct wpabuf *payload);
273ff40c12SJohn Marino struct wpabuf * gas_anqp_build_comeback_resp(u8 dialog_token, u16 status_code,
283ff40c12SJohn Marino 					     u8 frag_id, u8 more,
293ff40c12SJohn Marino 					     u16 comeback_delay, size_t size);
303ff40c12SJohn Marino struct wpabuf * gas_anqp_build_comeback_resp_buf(u8 dialog_token,
313ff40c12SJohn Marino 						 u16 status_code,
323ff40c12SJohn Marino 						 u8 frag_id, u8 more,
333ff40c12SJohn Marino 						 u16 comeback_delay,
343ff40c12SJohn Marino 						 struct wpabuf *payload);
353ff40c12SJohn Marino void gas_anqp_set_len(struct wpabuf *buf);
363ff40c12SJohn Marino 
373ff40c12SJohn Marino u8 * gas_anqp_add_element(struct wpabuf *buf, u16 info_id);
383ff40c12SJohn Marino void gas_anqp_set_element_len(struct wpabuf *buf, u8 *len_pos);
393ff40c12SJohn Marino 
403ff40c12SJohn Marino #endif /* GAS_H */
41