| /* |
| * WPA Supplicant - auto scan |
| * Copyright (c) 2012, Intel Corporation. All rights reserved. |
| * |
| * This software may be distributed under the terms of the BSD license. |
| * See README for more details. |
| */ |
| |
| #ifndef AUTOSCAN_H |
| #define AUTOSCAN_H |
| |
| struct wpa_supplicant; |
| |
| struct autoscan_ops { |
| const char *name; |
| |
| void * (*init)(struct wpa_supplicant *wpa_s, const char *params); |
| void (*deinit)(void *priv); |
| |
| int (*notify_scan)(void *priv, struct wpa_scan_results *scan_res); |
| }; |
| |
| #ifdef CONFIG_AUTOSCAN |
| |
| int autoscan_init(struct wpa_supplicant *wpa_s, int req_scan); |
| void autoscan_deinit(struct wpa_supplicant *wpa_s); |
| int autoscan_notify_scan(struct wpa_supplicant *wpa_s, |
| struct wpa_scan_results *scan_res); |
| |
| /* Available autoscan modules */ |
| |
| #ifdef CONFIG_AUTOSCAN_EXPONENTIAL |
| extern const struct autoscan_ops autoscan_exponential_ops; |
| #endif /* CONFIG_AUTOSCAN_EXPONENTIAL */ |
| |
| #ifdef CONFIG_AUTOSCAN_PERIODIC |
| extern const struct autoscan_ops autoscan_periodic_ops; |
| #endif /* CONFIG_AUTOSCAN_PERIODIC */ |
| |
| #else /* CONFIG_AUTOSCAN */ |
| |
| static inline int autoscan_init(struct wpa_supplicant *wpa_s, int req_scan) |
| { |
| return 0; |
| } |
| |
| static inline void autoscan_deinit(struct wpa_supplicant *wpa_s) |
| { |
| } |
| |
| static inline int autoscan_notify_scan(struct wpa_supplicant *wpa_s, |
| struct wpa_scan_results *scan_res) |
| { |
| return 0; |
| } |
| |
| #endif /* CONFIG_AUTOSCAN */ |
| |
| #endif /* AUTOSCAN_H */ |