X-Git-Url: http://www.project-moonshot.org/gitweb/?p=mech_eap.git;a=blobdiff_plain;f=wpa_supplicant%2Fbgscan.c;h=f74cdbf24a450c0eb1fec8e45914cff004471b40;hp=a0d98dbfb186b9b598877d48103523a654aa0efe;hb=6013bbe04f138f7d5d750a3e1939732cbde0426a;hpb=c2594c3677c8f529febe31600afb95e61d8b39bb diff --git a/wpa_supplicant/bgscan.c b/wpa_supplicant/bgscan.c index a0d98db..f74cdbf 100644 --- a/wpa_supplicant/bgscan.c +++ b/wpa_supplicant/bgscan.c @@ -2,14 +2,8 @@ * WPA Supplicant - background scan and roaming interface * Copyright (c) 2009-2010, Jouni Malinen * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * Alternatively, this software may be distributed under the terms of BSD - * license. - * - * See README and COPYING for more details. + * This software may be distributed under the terms of the BSD license. + * See README for more details. */ #include "includes.h" @@ -22,18 +16,24 @@ #ifdef CONFIG_BGSCAN_SIMPLE extern const struct bgscan_ops bgscan_simple_ops; #endif /* CONFIG_BGSCAN_SIMPLE */ +#ifdef CONFIG_BGSCAN_LEARN +extern const struct bgscan_ops bgscan_learn_ops; +#endif /* CONFIG_BGSCAN_LEARN */ static const struct bgscan_ops * bgscan_modules[] = { #ifdef CONFIG_BGSCAN_SIMPLE &bgscan_simple_ops, #endif /* CONFIG_BGSCAN_SIMPLE */ +#ifdef CONFIG_BGSCAN_LEARN + &bgscan_learn_ops, +#endif /* CONFIG_BGSCAN_LEARN */ NULL }; -int bgscan_init(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid) +int bgscan_init(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid, + const char *name) { - const char *name = ssid->bgscan; const char *params; size_t nlen; int i; @@ -41,7 +41,7 @@ int bgscan_init(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid) bgscan_deinit(wpa_s); if (name == NULL) - return 0; + return -1; params = os_strchr(name, ':'); if (params == NULL) { @@ -105,8 +105,13 @@ void bgscan_notify_beacon_loss(struct wpa_supplicant *wpa_s) } -void bgscan_notify_signal_change(struct wpa_supplicant *wpa_s, int above) +void bgscan_notify_signal_change(struct wpa_supplicant *wpa_s, int above, + int current_signal, int current_noise, + int current_txrate) { if (wpa_s->bgscan && wpa_s->bgscan_priv) - wpa_s->bgscan->notify_signal_change(wpa_s->bgscan_priv, above); + wpa_s->bgscan->notify_signal_change(wpa_s->bgscan_priv, above, + current_signal, + current_noise, + current_txrate); }