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