bgscan.h revision 214501
1214501Srpaulo/* 2214501Srpaulo * WPA Supplicant - background scan and roaming interface 3214501Srpaulo * Copyright (c) 2009-2010, Jouni Malinen <j@w1.fi> 4214501Srpaulo * 5214501Srpaulo * This program is free software; you can redistribute it and/or modify 6214501Srpaulo * it under the terms of the GNU General Public License version 2 as 7214501Srpaulo * published by the Free Software Foundation. 8214501Srpaulo * 9214501Srpaulo * Alternatively, this software may be distributed under the terms of BSD 10214501Srpaulo * license. 11214501Srpaulo * 12214501Srpaulo * See README and COPYING for more details. 13214501Srpaulo */ 14214501Srpaulo 15214501Srpaulo#ifndef BGSCAN_H 16214501Srpaulo#define BGSCAN_H 17214501Srpaulo 18214501Srpaulostruct wpa_supplicant; 19214501Srpaulostruct wpa_ssid; 20214501Srpaulo 21214501Srpaulostruct bgscan_ops { 22214501Srpaulo const char *name; 23214501Srpaulo 24214501Srpaulo void * (*init)(struct wpa_supplicant *wpa_s, const char *params, 25214501Srpaulo const struct wpa_ssid *ssid); 26214501Srpaulo void (*deinit)(void *priv); 27214501Srpaulo 28214501Srpaulo int (*notify_scan)(void *priv); 29214501Srpaulo void (*notify_beacon_loss)(void *priv); 30214501Srpaulo void (*notify_signal_change)(void *priv, int above); 31214501Srpaulo}; 32214501Srpaulo 33214501Srpaulo#ifdef CONFIG_BGSCAN 34214501Srpaulo 35214501Srpauloint bgscan_init(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid); 36214501Srpaulovoid bgscan_deinit(struct wpa_supplicant *wpa_s); 37214501Srpauloint bgscan_notify_scan(struct wpa_supplicant *wpa_s); 38214501Srpaulovoid bgscan_notify_beacon_loss(struct wpa_supplicant *wpa_s); 39214501Srpaulovoid bgscan_notify_signal_change(struct wpa_supplicant *wpa_s, int above); 40214501Srpaulo 41214501Srpaulo#else /* CONFIG_BGSCAN */ 42214501Srpaulo 43214501Srpaulostatic inline int bgscan_init(struct wpa_supplicant *wpa_s, 44214501Srpaulo struct wpa_ssid *ssid) 45214501Srpaulo{ 46214501Srpaulo return 0; 47214501Srpaulo} 48214501Srpaulo 49214501Srpaulostatic inline void bgscan_deinit(struct wpa_supplicant *wpa_s) 50214501Srpaulo{ 51214501Srpaulo} 52214501Srpaulo 53214501Srpaulostatic inline int bgscan_notify_scan(struct wpa_supplicant *wpa_s) 54214501Srpaulo{ 55214501Srpaulo return 0; 56214501Srpaulo} 57214501Srpaulo 58214501Srpaulostatic inline void bgscan_notify_beacon_loss(struct wpa_supplicant *wpa_s) 59214501Srpaulo{ 60214501Srpaulo} 61214501Srpaulo 62214501Srpaulostatic inline void bgscan_notify_signal_change(struct wpa_supplicant *wpa_s, 63214501Srpaulo int above) 64214501Srpaulo{ 65214501Srpaulo} 66214501Srpaulo 67214501Srpaulo#endif /* CONFIG_BGSCAN */ 68214501Srpaulo 69214501Srpaulo#endif /* BGSCAN_H */ 70