#include "includes.h"
#include "common.h"
#include "eapol_sm.h"
#include "eap.h"
#include "wpa.h"
#include "eloop.h"
#include "wpa_supplicant.h"
#include "config.h"
#include "l2_packet.h"
#include "wpa_supplicant_i.h"
#include "ctrl_iface.h"
#include "ctrl_iface_dbus.h"
#include "pcsc_funcs.h"
#include "version.h"
#include "preauth.h"
#include "pmksa_cache.h"
#include "wpa_ctrl.h"
#include "mlme.h"
Include dependency graph for wpa_supplicant.c:
Go to the source code of this file.
Defines | |
#define | SCAN_AP_LIMIT 128 |
Functions | |
wpa_blacklist * | wpa_blacklist_get (struct wpa_supplicant *wpa_s, const u8 *bssid) |
Get the blacklist entry for a BSSID. | |
int | wpa_blacklist_add (struct wpa_supplicant *wpa_s, const u8 *bssid) |
Add an BSSID to the blacklist. | |
void | wpa_blacklist_clear (struct wpa_supplicant *wpa_s) |
Clear the blacklist of all entries. | |
void | wpa_supplicant_req_scan (struct wpa_supplicant *wpa_s, int sec, int usec) |
Schedule a scan for neighboring access points. | |
void | wpa_supplicant_cancel_scan (struct wpa_supplicant *wpa_s) |
Cancel a scheduled scan request. | |
void | wpa_supplicant_req_auth_timeout (struct wpa_supplicant *wpa_s, int sec, int usec) |
Schedule a timeout for authentication. | |
void | wpa_supplicant_cancel_auth_timeout (struct wpa_supplicant *wpa_s) |
Cancel authentication timeout. | |
void | wpa_supplicant_initiate_eapol (struct wpa_supplicant *wpa_s) |
Configure EAPOL state machine. | |
void | wpa_supplicant_set_non_wpa_policy (struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid) |
Set WPA parameters to non-WPA mode. | |
void | wpa_clear_keys (struct wpa_supplicant *wpa_s, const u8 *addr) |
Clear keys configured for the driver. | |
const char * | wpa_supplicant_state_txt (int state) |
Get the connection state name as a text string. | |
void | wpa_supplicant_set_state (struct wpa_supplicant *wpa_s, wpa_states state) |
Set current connection state. | |
wpa_states | wpa_supplicant_get_state (struct wpa_supplicant *wpa_s) |
Get the connection state. | |
int | wpa_supplicant_reload_configuration (struct wpa_supplicant *wpa_s) |
Reload configuration data. | |
int | wpa_supplicant_set_suites (struct wpa_supplicant *wpa_s, struct wpa_scan_result *bss, struct wpa_ssid *ssid, u8 *wpa_ie, size_t *wpa_ie_len) |
Set authentication and encryption parameters. | |
void | wpa_supplicant_associate (struct wpa_supplicant *wpa_s, struct wpa_scan_result *bss, struct wpa_ssid *ssid) |
Request association. | |
void | wpa_supplicant_disassociate (struct wpa_supplicant *wpa_s, int reason_code) |
Disassociate the current connection. | |
void | wpa_supplicant_deauthenticate (struct wpa_supplicant *wpa_s, int reason_code) |
Deauthenticate the current connection. | |
int | wpa_supplicant_get_scan_results (struct wpa_supplicant *wpa_s) |
Get scan results. | |
wpa_ssid * | wpa_supplicant_get_ssid (struct wpa_supplicant *wpa_s) |
Get a pointer to the current network structure. | |
void | wpa_supplicant_rx_eapol (void *ctx, const u8 *src_addr, const u8 *buf, size_t len) |
Deliver a received EAPOL frame to wpa_supplicant. | |
int | wpa_supplicant_driver_init (struct wpa_supplicant *wpa_s, int wait_for_interface) |
Initialize driver interface parameters. | |
wpa_supplicant * | wpa_supplicant_add_iface (struct wpa_global *global, struct wpa_interface *iface) |
Add a new network interface. | |
int | wpa_supplicant_remove_iface (struct wpa_global *global, struct wpa_supplicant *wpa_s) |
Remove a network interface. | |
wpa_supplicant * | wpa_supplicant_get_iface (struct wpa_global *global, const char *ifname) |
Get a new network interface. | |
wpa_global * | wpa_supplicant_init (struct wpa_params *params) |
Initialize wpa_supplicant. | |
int | wpa_supplicant_run (struct wpa_global *global) |
Run the wpa_supplicant main event loop. | |
void | wpa_supplicant_deinit (struct wpa_global *global) |
Deinitialize wpa_supplicant. | |
Variables | |
const char * | wpa_supplicant_version |
const char * | wpa_supplicant_license |
const char * | wpa_supplicant_full_license1 |
const char * | wpa_supplicant_full_license2 |
const char * | wpa_supplicant_full_license3 |
const char * | wpa_supplicant_full_license4 |
const char * | wpa_supplicant_full_license5 |
wpa_driver_ops * | wpa_supplicant_drivers [] |
int | wpa_debug_use_file |
int | wpa_debug_level |
int | wpa_debug_show_keys |
int | wpa_debug_timestamp |
Alternatively, this software may be distributed under the terms of BSD license.
See README and COPYING for more details.
This file implements functions for registering and unregistering wpa_supplicant interfaces. In addition, this file contains number of functions for managing network connections.
Definition in file wpa_supplicant.c.
|
Add an BSSID to the blacklist.
This blacklist is used to force wpa_supplicant to go through all available BSSes before retrying to associate with an BSS that rejected or timed out association. It does not prevent the listed BSS from being used; it only changes the order in which they are tried. Definition at line 418 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Clear the blacklist of all entries.
Definition at line 474 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Get the blacklist entry for a BSSID.
Definition at line 385 of file wpa_supplicant.c. |
|
Clear keys configured for the driver.
Definition at line 739 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Add a new network interface.
Definition at line 2386 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Request association.
Definition at line 1336 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Cancel authentication timeout.
Definition at line 573 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Cancel a scheduled scan request.
Definition at line 517 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Deauthenticate the current connection.
Definition at line 1604 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Deinitialize wpa_supplicant.
Definition at line 2608 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Disassociate the current connection.
Definition at line 1573 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Initialize driver interface parameters.
Definition at line 1981 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Get a new network interface.
Definition at line 2471 of file wpa_supplicant.c. |
|
Get scan results.
Definition at line 1636 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Get a pointer to the current network structure.
Definition at line 1743 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Get the connection state.
Definition at line 851 of file wpa_supplicant.c. |
|
Initialize wpa_supplicant.
Definition at line 2494 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Configure EAPOL state machine.
Definition at line 589 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Reload configuration data.
Definition at line 892 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Remove a network interface.
Definition at line 2438 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Schedule a timeout for authentication.
Definition at line 550 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Schedule a scan for neighboring access points.
Definition at line 500 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Run the wpa_supplicant main event loop.
Definition at line 2576 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Deliver a received EAPOL frame to wpa_supplicant.
Definition at line 1924 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Set WPA parameters to non-WPA mode.
Definition at line 642 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Set current connection state.
Definition at line 814 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Set authentication and encryption parameters.
Definition at line 1177 of file wpa_supplicant.c. Here is the call graph for this function: |
|
Get the connection state name as a text string.
Definition at line 780 of file wpa_supplicant.c. |
|
Initial value: "This program is free software; you can redistribute it and/or modify\n" "it under the terms of the GNU General Public License version 2 as\n" "published by the Free Software Foundation.\n" "\n" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" "GNU General Public License for more details.\n" "\n" Definition at line 58 of file wpa_supplicant.c. |
|
Initial value: "You should have received a copy of the GNU General Public License\n" "along with this program; if not, write to the Free Software\n" "Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA\n" "\n" "Alternatively, this software may be distributed under the terms of the\n" "BSD license.\n" "\n" "Redistribution and use in source and binary forms, with or without\n" "modification, are permitted provided that the following conditions are\n" "met:\n" "\n" Definition at line 68 of file wpa_supplicant.c. |
|
Initial value: "1. Redistributions of source code must retain the above copyright\n" " notice, this list of conditions and the following disclaimer.\n" "\n" "2. Redistributions in binary form must reproduce the above copyright\n" " notice, this list of conditions and the following disclaimer in the\n" " documentation and/or other materials provided with the distribution.\n" "\n" Definition at line 80 of file wpa_supplicant.c. |
|
Initial value: "3. Neither the name(s) of the above-listed copyright holder(s) nor the\n" " names of its contributors may be used to endorse or promote products\n" " derived from this software without specific prior written permission.\n" "\n" "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n" "\"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n" "LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n" "A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n" Definition at line 88 of file wpa_supplicant.c. |
|
Initial value: "OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n" "SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n" "LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n" "DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n" "THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n" "(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n" "OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n" "\n" Definition at line 97 of file wpa_supplicant.c. |
|
Initial value: "This program is free software. You can distribute it and/or modify it\n" "under the terms of the GNU General Public License version 2.\n" "\n" "Alternatively, this software may be distributed under the terms of the\n" "BSD license. See README and COPYING for more details.\n" Definition at line 44 of file wpa_supplicant.c. |
|
Initial value: "wpa_supplicant v" VERSION_STR "\n" "Copyright (c) 2003-2006, Jouni Malinen <[email protected]> and contributors" Definition at line 40 of file wpa_supplicant.c. |