summaryrefslogtreecommitdiffstats
path: root/include/hardware_legacy/gscan.h
diff options
context:
space:
mode:
authorEtan Cohen <etancohen@google.com>2015-04-02 03:07:28 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-04-02 03:07:55 +0000
commit408f8f2978f262007f879d63c3e31f03a91ddf09 (patch)
treea37a6c69fede64a1f77805a9a9ca29fe429bab35 /include/hardware_legacy/gscan.h
parentb329b2499de1ba3459c724e53fd0f6532845282a (diff)
parent546cfd47e74d4a537329ae32db7cf8d7d929855c (diff)
downloadhardware_libhardware_legacy-408f8f2978f262007f879d63c3e31f03a91ddf09.zip
hardware_libhardware_legacy-408f8f2978f262007f879d63c3e31f03a91ddf09.tar.gz
hardware_libhardware_legacy-408f8f2978f262007f879d63c3e31f03a91ddf09.tar.bz2
Merge "Merge commit '4c50959717fcf4b5bf10721b4dda0d2c2f423eaf' into merge"
Diffstat (limited to 'include/hardware_legacy/gscan.h')
-rw-r--r--include/hardware_legacy/gscan.h28
1 files changed, 27 insertions, 1 deletions
diff --git a/include/hardware_legacy/gscan.h b/include/hardware_legacy/gscan.h
index 9dfceb1..3d7d5da 100644
--- a/include/hardware_legacy/gscan.h
+++ b/include/hardware_legacy/gscan.h
@@ -20,7 +20,7 @@ const unsigned MAX_CHANNELS = 16;
const unsigned MAX_BUCKETS = 16;
const unsigned MAX_HOTLIST_APS = 128;
const unsigned MAX_SIGNIFICANT_CHANGE_APS = 64;
-const unsigned MAX_PNO_SSID = 128;
+const unsigned MAX_PNO_SSID = 64;
const unsigned MAX_HOTLIST_SSID = 8;
const unsigned MAX_BLACKLIST_BSSID = 16;
@@ -422,5 +422,31 @@ typedef struct {
wifi_error wifi_set_bssid_preference(wifi_request_id id, wifi_interface_handle iface,
int num_bssid, wifi_bssid_preference *prefs);
+typedef struct {
+ int id; // identifier of this network block, report this in event
+ char realm[256]; // null terminated UTF8 encoded realm, 0 if unspecified
+ int64_t roamingConsortiumIds[16]; // roaming consortium ids to match, 0s if unspecified
+ byte plmn[3]; // mcc/mnc combination as per rules, 0s if unspecified
+} wifi_passpoint_network;
+
+typedef struct {
+ void (*on_passpoint_network_found)(
+ wifi_request_id id,
+ int net_id, // network block identifier for the matched network
+ wifi_scan_result *result, // scan result, with channel and beacon information
+ int anqp_len, // length of ANQP blob
+ byte *anqp // ANQP data, in the information_element format
+ );
+} wifi_passpoint_event_handler;
+
+/* Sets a list for passpoint networks for PNO purposes; it should be matched
+ * against any passpoint networks (designated by Interworking element) found
+ * during regular PNO scan. */
+wifi_error wifi_set_passpoint_list(wifi_request_id id, wifi_interface_handle iface, int num,
+ wifi_passpoint_network *networks, wifi_passpoint_event_handler handler);
+
+/* Reset passpoint network list - no Passpoint networks should be matched after this */
+wifi_error wifi_reset_passpoint_list(wifi_request_id id, wifi_interface_handle iface);
+
#endif