wpa_supplicant - WPA definitions More...
#include "defs.h"#include "eapol_common.h"#include "wpa_common.h"

Go to the source code of this file.
Data Structures | |
| struct | wpa_sm_ctx |
| struct | rsn_supp_config |
Defines | |
| #define | ETH_P_RSN_PREAUTH 0x88c7 |
Enumerations | |
| enum | wpa_sm_conf_params { RSNA_PMK_LIFETIME, RSNA_PMK_REAUTH_THRESHOLD, RSNA_SA_TIMEOUT, WPA_PARAM_PROTO, WPA_PARAM_PAIRWISE, WPA_PARAM_GROUP, WPA_PARAM_KEY_MGMT, WPA_PARAM_MGMT_GROUP, WPA_PARAM_RSN_ENABLED } |
Functions | |
| struct wpa_sm * | wpa_sm_init (struct wpa_sm_ctx *ctx) |
| Initialize WPA state machine. | |
| void | wpa_sm_deinit (struct wpa_sm *sm) |
| Deinitialize WPA state machine. | |
| void | wpa_sm_notify_assoc (struct wpa_sm *sm, const u8 *bssid) |
| Notify WPA state machine about association. | |
| void | wpa_sm_notify_disassoc (struct wpa_sm *sm) |
| Notify WPA state machine about disassociation. | |
| void | wpa_sm_set_pmk (struct wpa_sm *sm, const u8 *pmk, size_t pmk_len) |
| Set PMK. | |
| void | wpa_sm_set_pmk_from_pmksa (struct wpa_sm *sm) |
| Set PMK based on the current PMKSA. | |
| void | wpa_sm_set_fast_reauth (struct wpa_sm *sm, int fast_reauth) |
| Set fast reauthentication (EAP) enabled/disabled. | |
| void | wpa_sm_set_scard_ctx (struct wpa_sm *sm, void *scard_ctx) |
| Set context pointer for smartcard callbacks. | |
| void | wpa_sm_set_config (struct wpa_sm *sm, struct rsn_supp_config *config) |
| Notification of current configration change. | |
| void | wpa_sm_set_own_addr (struct wpa_sm *sm, const u8 *addr) |
| Set own MAC address. | |
| void | wpa_sm_set_ifname (struct wpa_sm *sm, const char *ifname, const char *bridge_ifname) |
| Set network interface name. | |
| void | wpa_sm_set_eapol (struct wpa_sm *sm, struct eapol_sm *eapol) |
| Set EAPOL state machine pointer. | |
| int | wpa_sm_set_assoc_wpa_ie (struct wpa_sm *sm, const u8 *ie, size_t len) |
| Set own WPA/RSN IE from (Re)AssocReq. | |
| int | wpa_sm_set_assoc_wpa_ie_default (struct wpa_sm *sm, u8 *wpa_ie, size_t *wpa_ie_len) |
| Generate own WPA/RSN IE from configuration. | |
| int | wpa_sm_set_ap_wpa_ie (struct wpa_sm *sm, const u8 *ie, size_t len) |
| Set AP WPA IE from Beacon/ProbeResp. | |
| int | wpa_sm_set_ap_rsn_ie (struct wpa_sm *sm, const u8 *ie, size_t len) |
| Set AP RSN IE from Beacon/ProbeResp. | |
| int | wpa_sm_get_mib (struct wpa_sm *sm, char *buf, size_t buflen) |
| int | wpa_sm_set_param (struct wpa_sm *sm, enum wpa_sm_conf_params param, unsigned int value) |
| Set WPA state machine parameters. | |
| unsigned int | wpa_sm_get_param (struct wpa_sm *sm, enum wpa_sm_conf_params param) |
| Get WPA state machine parameters. | |
| int | wpa_sm_get_status (struct wpa_sm *sm, char *buf, size_t buflen, int verbose) |
| Get WPA state machine. | |
| void | wpa_sm_key_request (struct wpa_sm *sm, int error, int pairwise) |
| Send EAPOL-Key Request. | |
| int | wpa_parse_wpa_ie (const u8 *wpa_ie, size_t wpa_ie_len, struct wpa_ie_data *data) |
| Parse WPA/RSN IE. | |
| void | wpa_sm_aborted_cached (struct wpa_sm *sm) |
| Notify WPA that PMKSA caching was aborted. | |
| int | wpa_sm_rx_eapol (struct wpa_sm *sm, const u8 *src_addr, const u8 *buf, size_t len) |
| Process received WPA EAPOL frames. | |
| int | wpa_sm_parse_own_wpa_ie (struct wpa_sm *sm, struct wpa_ie_data *data) |
| Parse own WPA/RSN IE. | |
| int | wpa_sm_pmksa_cache_list (struct wpa_sm *sm, char *buf, size_t len) |
wpa_supplicant - WPA definitions
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.
Definition in file wpa.h.
| int wpa_parse_wpa_ie | ( | const u8 * | wpa_ie, | |
| size_t | wpa_ie_len, | |||
| struct wpa_ie_data * | data | |||
| ) |
Parse WPA/RSN IE.
| wpa_ie | Pointer to WPA or RSN IE | |
| wpa_ie_len | Length of the WPA/RSN IE | |
| data | Pointer to data area for parsing results |
Parse the contents of WPA or RSN IE and write the parsed data into data.
Definition at line 174 of file wpa_ie.c.

| void wpa_sm_aborted_cached | ( | struct wpa_sm * | sm | ) |
Notify WPA that PMKSA caching was aborted.
| sm | Pointer to WPA state machine data from wpa_sm_init() |
Definition at line 1322 of file wpa.c.

| void wpa_sm_deinit | ( | struct wpa_sm * | sm | ) |
Deinitialize WPA state machine.
| sm | Pointer to WPA state machine data from wpa_sm_init() |
Definition at line 1844 of file wpa.c.

| unsigned int wpa_sm_get_param | ( | struct wpa_sm * | sm, | |
| enum wpa_sm_conf_params | param | |||
| ) |
Get WPA state machine parameters.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| param | Parameter field |
| int wpa_sm_get_status | ( | struct wpa_sm * | sm, | |
| char * | buf, | |||
| size_t | buflen, | |||
| int | verbose | |||
| ) |
Get WPA state machine.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| buf | Buffer for status information | |
| buflen | Maximum buffer length | |
| verbose | Whether to include verbose status information |
Query WPA state machine for status information. This function fills in a text area with current status information. If the buffer (buf) is not large enough, status information will be truncated to fit the buffer.
Definition at line 2201 of file wpa.c.

| struct wpa_sm* wpa_sm_init | ( | struct wpa_sm_ctx * | ctx | ) | [read] |
Initialize WPA state machine.
| ctx | Context pointer for callbacks; this needs to be an allocated buffer |
This function is used to allocate a new WPA state machine and the returned value is passed to all WPA state machine calls.
Definition at line 1813 of file wpa.c.

| void wpa_sm_key_request | ( | struct wpa_sm * | sm, | |
| int | error, | |||
| int | pairwise | |||
| ) |
Send EAPOL-Key Request.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| error | Indicate whether this is an Michael MIC error report | |
| pairwise | 1 = error report for pairwise packet, 0 = for group packet |
Send an EAPOL-Key Request to the current authenticator. This function is used to request rekeying and it is usually called when a local Michael MIC failure is detected.
Definition at line 88 of file wpa.c.

| void wpa_sm_notify_assoc | ( | struct wpa_sm * | sm, | |
| const u8 * | bssid | |||
| ) |
Notify WPA state machine about association.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| bssid | The BSSID of the new association |
This function is called to let WPA state machine know that the connection was established.
Definition at line 1869 of file wpa.c.

| void wpa_sm_notify_disassoc | ( | struct wpa_sm * | sm | ) |
Notify WPA state machine about disassociation.
| sm | Pointer to WPA state machine data from wpa_sm_init() |
This function is called to let WPA state machine know that the connection was lost. This will abort any existing pre-authentication session.
| int wpa_sm_parse_own_wpa_ie | ( | struct wpa_sm * | sm, | |
| struct wpa_ie_data * | data | |||
| ) |
Parse own WPA/RSN IE.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| data | Pointer to data area for parsing results |
Parse the contents of the own WPA or RSN IE from (Re)AssocReq and write the parsed data into data.
Definition at line 2379 of file wpa.c.

| int wpa_sm_rx_eapol | ( | struct wpa_sm * | sm, | |
| const u8 * | src_addr, | |||
| const u8 * | buf, | |||
| size_t | len | |||
| ) |
Process received WPA EAPOL frames.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| src_addr | Source MAC address of the EAPOL packet | |
| buf | Pointer to the beginning of the EAPOL data (EAPOL header) | |
| len | Length of the EAPOL frame |
This function is called for each received EAPOL frame. Other than EAPOL-Key frames can be skipped if filtering is done elsewhere. wpa_sm_rx_eapol() is only processing WPA and WPA2 EAPOL-Key frames.
The received EAPOL-Key packets are validated and valid packets are replied to. In addition, key material (PTK, GTK) is configured at the end of a successful key handshake.
Definition at line 1382 of file wpa.c.

| int wpa_sm_set_ap_rsn_ie | ( | struct wpa_sm * | sm, | |
| const u8 * | ie, | |||
| size_t | len | |||
| ) |
Set AP RSN IE from Beacon/ProbeResp.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| ie | Pointer to IE data (starting from id) | |
| len | IE length |
Inform WPA state machine about the RSN IE used in Beacon / Probe Response frame.
Definition at line 2345 of file wpa.c.

| int wpa_sm_set_ap_wpa_ie | ( | struct wpa_sm * | sm, | |
| const u8 * | ie, | |||
| size_t | len | |||
| ) |
Set AP WPA IE from Beacon/ProbeResp.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| ie | Pointer to IE data (starting from id) | |
| len | IE length |
Inform WPA state machine about the WPA IE used in Beacon / Probe Response frame.
Definition at line 2310 of file wpa.c.

| int wpa_sm_set_assoc_wpa_ie | ( | struct wpa_sm * | sm, | |
| const u8 * | ie, | |||
| size_t | len | |||
| ) |
Set own WPA/RSN IE from (Re)AssocReq.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| ie | Pointer to IE data (starting from id) | |
| len | IE length |
Inform WPA state machine about the WPA/RSN IE used in (Re)Association Request frame. The IE will be used to override the default value generated with wpa_sm_set_assoc_wpa_ie_default().
Definition at line 2275 of file wpa.c.

| int wpa_sm_set_assoc_wpa_ie_default | ( | struct wpa_sm * | sm, | |
| u8 * | wpa_ie, | |||
| size_t * | wpa_ie_len | |||
| ) |
Generate own WPA/RSN IE from configuration.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| wpa_ie | Pointer to buffer for WPA/RSN IE | |
| wpa_ie_len | Pointer to the length of the wpa_ie buffer |
Definition at line 2229 of file wpa.c.

| void wpa_sm_set_config | ( | struct wpa_sm * | sm, | |
| struct rsn_supp_config * | config | |||
| ) |
Notification of current configration change.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| config | Pointer to current network configuration |
Notify WPA state machine that configuration has changed. config will be stored as a backpointer to network configuration. This can be NULL to clear the stored pointed.
| void wpa_sm_set_eapol | ( | struct wpa_sm * | sm, | |
| struct eapol_sm * | eapol | |||
| ) |
Set EAPOL state machine pointer.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| eapol | Pointer to EAPOL state machine allocated with eapol_sm_init() |
| void wpa_sm_set_fast_reauth | ( | struct wpa_sm * | sm, | |
| int | fast_reauth | |||
| ) |
Set fast reauthentication (EAP) enabled/disabled.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| fast_reauth | Whether fast reauthentication (EAP) is allowed |
| void wpa_sm_set_ifname | ( | struct wpa_sm * | sm, | |
| const char * | ifname, | |||
| const char * | bridge_ifname | |||
| ) |
Set network interface name.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| ifname | Interface name | |
| bridge_ifname | Optional bridge interface name (for pre-auth) |
| void wpa_sm_set_own_addr | ( | struct wpa_sm * | sm, | |
| const u8 * | addr | |||
| ) |
Set own MAC address.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| addr | Own MAC address |
| int wpa_sm_set_param | ( | struct wpa_sm * | sm, | |
| enum wpa_sm_conf_params | param, | |||
| unsigned int | value | |||
| ) |
Set WPA state machine parameters.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| param | Parameter field | |
| value | Parameter value |
| void wpa_sm_set_pmk | ( | struct wpa_sm * | sm, | |
| const u8 * | pmk, | |||
| size_t | pmk_len | |||
| ) |
Set PMK.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| pmk | The new PMK | |
| pmk_len | The length of the new PMK in bytes |
Configure the PMK for WPA state machine.
| void wpa_sm_set_pmk_from_pmksa | ( | struct wpa_sm * | sm | ) |
Set PMK based on the current PMKSA.
| sm | Pointer to WPA state machine data from wpa_sm_init() |
Take the PMK from the current PMKSA into use. If no PMKSA is active, the PMK will be cleared.
| void wpa_sm_set_scard_ctx | ( | struct wpa_sm * | sm, | |
| void * | scard_ctx | |||
| ) |
Set context pointer for smartcard callbacks.
| sm | Pointer to WPA state machine data from wpa_sm_init() | |
| scard_ctx | Context pointer for smartcard related callback functions |
1.6.1