Dmitry Shmidt | 0494959 | 2012-07-19 12:16:46 -0700 | [diff] [blame] | 1 | /* |
Dmitry Shmidt | f21452a | 2014-02-26 10:55:25 -0800 | [diff] [blame] | 2 | * Copyright (c) 2011-2013, Qualcomm Atheros, Inc. |
Dmitry Shmidt | 0494959 | 2012-07-19 12:16:46 -0700 | [diff] [blame] | 3 | * |
| 4 | * This software may be distributed under the terms of the BSD license. |
| 5 | * See README for more details. |
| 6 | */ |
| 7 | |
| 8 | #ifndef HS20_SUPPLICANT_H |
| 9 | #define HS20_SUPPLICANT_H |
| 10 | |
Dmitry Shmidt | 849734c | 2016-05-27 09:59:01 -0700 | [diff] [blame] | 11 | void hs20_configure_frame_filters(struct wpa_supplicant *wpa_s); |
Dmitry Shmidt | f21452a | 2014-02-26 10:55:25 -0800 | [diff] [blame] | 12 | void wpas_hs20_add_indication(struct wpabuf *buf, int pps_mo_id); |
Roshan Pius | 3a1667e | 2018-07-03 15:17:14 -0700 | [diff] [blame^] | 13 | void wpas_hs20_add_roam_cons_sel(struct wpabuf *buf, |
| 14 | const struct wpa_ssid *ssid); |
Dmitry Shmidt | 0494959 | 2012-07-19 12:16:46 -0700 | [diff] [blame] | 15 | |
| 16 | int hs20_anqp_send_req(struct wpa_supplicant *wpa_s, const u8 *dst, u32 stypes, |
Dmitry Shmidt | 0e58d9b | 2015-12-22 10:59:44 -0800 | [diff] [blame] | 17 | const u8 *payload, size_t payload_len, int inmem); |
Dmitry Shmidt | 1590709 | 2014-03-25 10:42:57 -0700 | [diff] [blame] | 18 | void hs20_put_anqp_req(u32 stypes, const u8 *payload, size_t payload_len, |
| 19 | struct wpabuf *buf); |
Dmitry Shmidt | 0494959 | 2012-07-19 12:16:46 -0700 | [diff] [blame] | 20 | void hs20_parse_rx_hs20_anqp_resp(struct wpa_supplicant *wpa_s, |
Dmitry Shmidt | 432d603 | 2015-01-21 13:19:05 -0800 | [diff] [blame] | 21 | struct wpa_bss *bss, const u8 *sa, |
Dmitry Shmidt | 0e58d9b | 2015-12-22 10:59:44 -0800 | [diff] [blame] | 22 | const u8 *data, size_t slen, u8 dialog_token); |
Dmitry Shmidt | 51b6ea8 | 2013-05-08 10:42:09 -0700 | [diff] [blame] | 23 | int is_hs20_network(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid, |
| 24 | struct wpa_bss *bss); |
Dmitry Shmidt | f21452a | 2014-02-26 10:55:25 -0800 | [diff] [blame] | 25 | int hs20_get_pps_mo_id(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid); |
| 26 | void hs20_notify_parse_done(struct wpa_supplicant *wpa_s); |
| 27 | |
| 28 | void hs20_rx_subscription_remediation(struct wpa_supplicant *wpa_s, |
| 29 | const char *url, u8 osu_method); |
| 30 | void hs20_rx_deauth_imminent_notice(struct wpa_supplicant *wpa_s, u8 code, |
| 31 | u16 reauth_delay, const char *url); |
Roshan Pius | 3a1667e | 2018-07-03 15:17:14 -0700 | [diff] [blame^] | 32 | void hs20_rx_t_c_acceptance(struct wpa_supplicant *wpa_s, const char *url); |
Dmitry Shmidt | f21452a | 2014-02-26 10:55:25 -0800 | [diff] [blame] | 33 | |
| 34 | void hs20_free_osu_prov(struct wpa_supplicant *wpa_s); |
| 35 | void hs20_next_osu_icon(struct wpa_supplicant *wpa_s); |
| 36 | void hs20_osu_icon_fetch(struct wpa_supplicant *wpa_s); |
Dmitry Shmidt | 58d12ad | 2016-07-28 10:07:03 -0700 | [diff] [blame] | 37 | int hs20_fetch_osu(struct wpa_supplicant *wpa_s, int skip_scan); |
Dmitry Shmidt | f21452a | 2014-02-26 10:55:25 -0800 | [diff] [blame] | 38 | void hs20_cancel_fetch_osu(struct wpa_supplicant *wpa_s); |
| 39 | void hs20_icon_fetch_failed(struct wpa_supplicant *wpa_s); |
| 40 | void hs20_start_osu_scan(struct wpa_supplicant *wpa_s); |
Dmitry Shmidt | 0e58d9b | 2015-12-22 10:59:44 -0800 | [diff] [blame] | 41 | void hs20_init(struct wpa_supplicant *wpa_s); |
Dmitry Shmidt | 684785c | 2014-05-12 13:34:29 -0700 | [diff] [blame] | 42 | void hs20_deinit(struct wpa_supplicant *wpa_s); |
Dmitry Shmidt | 0e58d9b | 2015-12-22 10:59:44 -0800 | [diff] [blame] | 43 | int hs20_get_icon(struct wpa_supplicant *wpa_s, const u8 *bssid, |
| 44 | const char *file_name, size_t offset, size_t size, |
| 45 | char *reply, size_t buf_len); |
| 46 | int hs20_del_icon(struct wpa_supplicant *wpa_s, const u8 *bssid, |
| 47 | const char *file_name); |
Dmitry Shmidt | 0494959 | 2012-07-19 12:16:46 -0700 | [diff] [blame] | 48 | |
| 49 | #endif /* HS20_SUPPLICANT_H */ |