1f05cddf9SRui Paulo /* 2*5b9c547cSRui Paulo * Copyright (c) 2011-2013, Qualcomm Atheros, Inc. 3f05cddf9SRui Paulo * 4f05cddf9SRui Paulo * This software may be distributed under the terms of the BSD license. 5f05cddf9SRui Paulo * See README for more details. 6f05cddf9SRui Paulo */ 7f05cddf9SRui Paulo 8f05cddf9SRui Paulo #ifndef HS20_SUPPLICANT_H 9f05cddf9SRui Paulo #define HS20_SUPPLICANT_H 10f05cddf9SRui Paulo 11*5b9c547cSRui Paulo void wpas_hs20_add_indication(struct wpabuf *buf, int pps_mo_id); 12f05cddf9SRui Paulo 13f05cddf9SRui Paulo int hs20_anqp_send_req(struct wpa_supplicant *wpa_s, const u8 *dst, u32 stypes, 14f05cddf9SRui Paulo const u8 *payload, size_t payload_len); 15f05cddf9SRui Paulo struct wpabuf * hs20_build_anqp_req(u32 stypes, const u8 *payload, 16f05cddf9SRui Paulo size_t payload_len); 17*5b9c547cSRui Paulo void hs20_put_anqp_req(u32 stypes, const u8 *payload, size_t payload_len, 18*5b9c547cSRui Paulo struct wpabuf *buf); 19f05cddf9SRui Paulo void hs20_parse_rx_hs20_anqp_resp(struct wpa_supplicant *wpa_s, 20*5b9c547cSRui Paulo struct wpa_bss *bss, const u8 *sa, 21*5b9c547cSRui Paulo const u8 *data, size_t slen); 22*5b9c547cSRui Paulo int is_hs20_network(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid, 23*5b9c547cSRui Paulo struct wpa_bss *bss); 24*5b9c547cSRui Paulo int hs20_get_pps_mo_id(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid); 25*5b9c547cSRui Paulo void hs20_notify_parse_done(struct wpa_supplicant *wpa_s); 26*5b9c547cSRui Paulo 27*5b9c547cSRui Paulo void hs20_rx_subscription_remediation(struct wpa_supplicant *wpa_s, 28*5b9c547cSRui Paulo const char *url, u8 osu_method); 29*5b9c547cSRui Paulo void hs20_rx_deauth_imminent_notice(struct wpa_supplicant *wpa_s, u8 code, 30*5b9c547cSRui Paulo u16 reauth_delay, const char *url); 31*5b9c547cSRui Paulo 32*5b9c547cSRui Paulo void hs20_free_osu_prov(struct wpa_supplicant *wpa_s); 33*5b9c547cSRui Paulo void hs20_next_osu_icon(struct wpa_supplicant *wpa_s); 34*5b9c547cSRui Paulo void hs20_osu_icon_fetch(struct wpa_supplicant *wpa_s); 35*5b9c547cSRui Paulo int hs20_fetch_osu(struct wpa_supplicant *wpa_s); 36*5b9c547cSRui Paulo void hs20_cancel_fetch_osu(struct wpa_supplicant *wpa_s); 37*5b9c547cSRui Paulo void hs20_icon_fetch_failed(struct wpa_supplicant *wpa_s); 38*5b9c547cSRui Paulo void hs20_start_osu_scan(struct wpa_supplicant *wpa_s); 39*5b9c547cSRui Paulo void hs20_deinit(struct wpa_supplicant *wpa_s); 40f05cddf9SRui Paulo 41f05cddf9SRui Paulo #endif /* HS20_SUPPLICANT_H */ 42