1214501Srpaulo/* 2214501Srpaulo * WPA Supplicant - Scanning 3281806Srpaulo * Copyright (c) 2003-2014, Jouni Malinen <j@w1.fi> 4214501Srpaulo * 5252726Srpaulo * This software may be distributed under the terms of the BSD license. 6252726Srpaulo * See README for more details. 7214501Srpaulo */ 8214501Srpaulo 9214501Srpaulo#ifndef SCAN_H 10214501Srpaulo#define SCAN_H 11214501Srpaulo 12252726Srpauloint wpa_supplicant_enabled_networks(struct wpa_supplicant *wpa_s); 13214501Srpaulovoid wpa_supplicant_req_scan(struct wpa_supplicant *wpa_s, int sec, int usec); 14252726Srpauloint wpa_supplicant_delayed_sched_scan(struct wpa_supplicant *wpa_s, 15252726Srpaulo int sec, int usec); 16252726Srpauloint wpa_supplicant_req_sched_scan(struct wpa_supplicant *wpa_s); 17214501Srpaulovoid wpa_supplicant_cancel_scan(struct wpa_supplicant *wpa_s); 18281806Srpaulovoid wpa_supplicant_cancel_delayed_sched_scan(struct wpa_supplicant *wpa_s); 19252726Srpaulovoid wpa_supplicant_cancel_sched_scan(struct wpa_supplicant *wpa_s); 20214501Srpaulovoid wpa_supplicant_notify_scanning(struct wpa_supplicant *wpa_s, 21214501Srpaulo int scanning); 22214501Srpaulostruct wpa_driver_scan_params; 23214501Srpauloint wpa_supplicant_trigger_scan(struct wpa_supplicant *wpa_s, 24214501Srpaulo struct wpa_driver_scan_params *params); 25214501Srpaulostruct wpa_scan_results * 26214501Srpaulowpa_supplicant_get_scan_results(struct wpa_supplicant *wpa_s, 27214501Srpaulo struct scan_info *info, int new_scan); 28214501Srpauloint wpa_supplicant_update_scan_results(struct wpa_supplicant *wpa_s); 29214501Srpauloconst u8 * wpa_scan_get_ie(const struct wpa_scan_res *res, u8 ie); 30214501Srpauloconst u8 * wpa_scan_get_vendor_ie(const struct wpa_scan_res *res, 31214501Srpaulo u32 vendor_type); 32281806Srpauloconst u8 * wpa_scan_get_vendor_ie_beacon(const struct wpa_scan_res *res, 33281806Srpaulo u32 vendor_type); 34214501Srpaulostruct wpabuf * wpa_scan_get_vendor_ie_multi(const struct wpa_scan_res *res, 35214501Srpaulo u32 vendor_type); 36252726Srpauloint wpa_supplicant_filter_bssid_match(struct wpa_supplicant *wpa_s, 37252726Srpaulo const u8 *bssid); 38281806Srpaulovoid wpa_supplicant_update_scan_int(struct wpa_supplicant *wpa_s, int sec); 39281806Srpaulovoid scan_only_handler(struct wpa_supplicant *wpa_s, 40281806Srpaulo struct wpa_scan_results *scan_res); 41281806Srpauloint wpas_scan_scheduled(struct wpa_supplicant *wpa_s); 42281806Srpauloint wpa_supplicant_start_sched_scan(struct wpa_supplicant *wpa_s, 43281806Srpaulo struct wpa_driver_scan_params *params, 44281806Srpaulo int interval); 45281806Srpauloint wpa_supplicant_stop_sched_scan(struct wpa_supplicant *wpa_s); 46281806Srpaulostruct wpa_driver_scan_params * 47281806Srpaulowpa_scan_clone_params(const struct wpa_driver_scan_params *src); 48281806Srpaulovoid wpa_scan_free_params(struct wpa_driver_scan_params *params); 49281806Srpauloint wpas_start_pno(struct wpa_supplicant *wpa_s); 50281806Srpauloint wpas_stop_pno(struct wpa_supplicant *wpa_s); 51214501Srpaulo 52281806Srpaulovoid wpas_mac_addr_rand_scan_clear(struct wpa_supplicant *wpa_s, 53281806Srpaulo unsigned int type); 54281806Srpauloint wpas_mac_addr_rand_scan_set(struct wpa_supplicant *wpa_s, 55281806Srpaulo unsigned int type, const u8 *addr, 56281806Srpaulo const u8 *mask); 57281806Srpaulo 58214501Srpaulo#endif /* SCAN_H */ 59