blob: 3d22292618b2200fc8bdc1d2bb0925c8eef3a3bd [file] [log] [blame]
yuezonghe824eb0c2024-06-27 02:32:26 -07001/*
2 * Interworking (IEEE 802.11u)
3 * Copyright (c) 2011-2012, Qualcomm Atheros
4 *
5 * This software may be distributed under the terms of the BSD license.
6 * See README for more details.
7 */
8
9#ifndef INTERWORKING_H
10#define INTERWORKING_H
11
12enum gas_query_result;
13
14int anqp_send_req(struct wpa_supplicant *wpa_s, const u8 *dst,
15 u16 info_ids[], size_t num_ids, u32 subtypes,
16 int get_cell_pref);
17void anqp_resp_cb(void *ctx, const u8 *dst, u8 dialog_token,
18 enum gas_query_result result,
19 const struct wpabuf *adv_proto,
20 const struct wpabuf *resp, u16 status_code);
21int gas_send_request(struct wpa_supplicant *wpa_s, const u8 *dst,
22 const struct wpabuf *adv_proto,
23 const struct wpabuf *query);
24int interworking_fetch_anqp(struct wpa_supplicant *wpa_s);
25void interworking_stop_fetch_anqp(struct wpa_supplicant *wpa_s);
26int interworking_select(struct wpa_supplicant *wpa_s, int auto_select,
27 int *freqs);
28int interworking_connect(struct wpa_supplicant *wpa_s, struct wpa_bss *bss,
29 int only_add);
30void interworking_start_fetch_anqp(struct wpa_supplicant *wpa_s);
31int interworking_home_sp_cred(struct wpa_supplicant *wpa_s,
32 struct wpa_cred *cred,
33 struct wpabuf *domain_names);
34int domain_name_list_contains(struct wpabuf *domain_names,
35 const char *domain, int exact_match);
36
37#endif /* INTERWORKING_H */