#include "utils/includes.h"
#include "utils/common.h"
#include "utils/eloop.h"
#include "utils/state_machine.h"
#include "common/ieee802_11_defs.h"
#include "crypto/aes_wrap.h"
#include "crypto/crypto.h"
#include "crypto/sha1.h"
#include "crypto/sha256.h"
#include "eapol_auth/eapol_auth_sm.h"
#include "ap_config.h"
#include "ieee802_11.h"
#include "wpa_auth.h"
#include "pmksa_cache_auth.h"
#include "wpa_auth_i.h"
#include "wpa_auth_ie.h"
Go to the source code of this file.
Defines | |
#define | RSN_SUITE "%02x-%02x-%02x-%d" |
#define | RSN_SUITE_ARG(s) ((s) >> 24) & 0xff, ((s) >> 16) & 0xff, ((s) >> 8) & 0xff, (s) & 0xff |
#define | STATE_MACHINE_ADDR sm->addr |
#define | STATE_MACHINE_DATA struct wpa_state_machine |
#define | STATE_MACHINE_DEBUG_PREFIX "WPA" |
Functions | |
void | __wpa_send_eapol (struct wpa_authenticator *wpa_auth, struct wpa_state_machine *sm, int key_info, const u8 *key_rsc, const u8 *nonce, const u8 *kde, size_t kde_len, int keyidx, int encr, int force_version) |
static u8 * | ieee80211w_kde_add (struct wpa_state_machine *sm, u8 *pos) |
static int | ieee80211w_kde_len (struct wpa_state_machine *sm) |
SM_STATE (WPA_PTK, INITIALIZE) | |
SM_STATE (WPA_PTK, DISCONNECT) | |
SM_STATE (WPA_PTK, DISCONNECTED) | |
SM_STATE (WPA_PTK, AUTHENTICATION) | |
SM_STATE (WPA_PTK, AUTHENTICATION2) | |
SM_STATE (WPA_PTK, INITPMK) | |
SM_STATE (WPA_PTK, INITPSK) | |
SM_STATE (WPA_PTK, PTKSTART) | |
SM_STATE (WPA_PTK, PTKCALCNEGOTIATING) | |
SM_STATE (WPA_PTK, PTKCALCNEGOTIATING2) | |
SM_STATE (WPA_PTK, PTKINITNEGOTIATING) | |
SM_STATE (WPA_PTK, PTKINITDONE) | |
SM_STATE (WPA_PTK_GROUP, IDLE) | |
SM_STATE (WPA_PTK_GROUP, REKEYNEGOTIATING) | |
SM_STATE (WPA_PTK_GROUP, REKEYESTABLISHED) | |
SM_STATE (WPA_PTK_GROUP, KEYERROR) | |
SM_STEP (WPA_PTK) | |
SM_STEP (WPA_PTK_GROUP) | |
static enum wpa_alg | wpa_alg_enum (int alg) |
static struct wpa_group * | wpa_auth_add_group (struct wpa_authenticator *wpa_auth, int vlan_id) |
void | wpa_auth_countermeasures_start (struct wpa_authenticator *wpa_auth) |
int | wpa_auth_for_each_auth (struct wpa_authenticator *wpa_auth, int(*cb)(struct wpa_authenticator *a, void *ctx), void *cb_ctx) |
int | wpa_auth_for_each_sta (struct wpa_authenticator *wpa_auth, int(*cb)(struct wpa_state_machine *sm, void *ctx), void *cb_ctx) |
static int | wpa_auth_get_eapol (struct wpa_authenticator *wpa_auth, const u8 *addr, wpa_eapol_variable var) |
static int | wpa_auth_get_msk (struct wpa_authenticator *wpa_auth, const u8 *addr, u8 *msk, size_t *len) |
int | wpa_auth_get_pairwise (struct wpa_state_machine *sm) |
static const u8 * | wpa_auth_get_psk (struct wpa_authenticator *wpa_auth, const u8 *addr, const u8 *prev_psk) |
static int | wpa_auth_get_seqnum (struct wpa_authenticator *wpa_auth, const u8 *addr, int idx, u8 *seq) |
const u8 * | wpa_auth_get_wpa_ie (struct wpa_authenticator *wpa_auth, size_t *len) |
void | wpa_auth_logger (struct wpa_authenticator *wpa_auth, const u8 *addr, logger_level level, const char *txt) |
static void | wpa_auth_mic_failure_report (struct wpa_authenticator *wpa_auth, const u8 *addr) |
int | wpa_auth_pairwise_set (struct wpa_state_machine *sm) |
int | wpa_auth_pmksa_add (struct wpa_state_machine *sm, const u8 *pmk, int session_timeout, struct eapol_state_machine *eapol) |
int | wpa_auth_pmksa_add_preauth (struct wpa_authenticator *wpa_auth, const u8 *pmk, size_t len, const u8 *sta_addr, int session_timeout, struct eapol_state_machine *eapol) |
static int | wpa_auth_pmksa_clear_cb (struct wpa_state_machine *sm, void *ctx) |
static void | wpa_auth_pmksa_free_cb (struct rsn_pmksa_cache_entry *entry, void *ctx) |
static int | wpa_auth_send_eapol (struct wpa_authenticator *wpa_auth, const u8 *addr, const u8 *data, size_t data_len, int encrypt) |
static void | wpa_auth_set_eapol (struct wpa_authenticator *wpa_auth, const u8 *addr, wpa_eapol_variable var, int value) |
static int | wpa_auth_set_key (struct wpa_authenticator *wpa_auth, int vlan_id, enum wpa_alg alg, const u8 *addr, int idx, u8 *key, size_t key_len) |
int | wpa_auth_sm_event (struct wpa_state_machine *sm, wpa_event event) |
void | wpa_auth_sm_notify (struct wpa_state_machine *sm) |
int | wpa_auth_sta_associated (struct wpa_authenticator *wpa_auth, struct wpa_state_machine *sm) |
int | wpa_auth_sta_clear_pmksa (struct wpa_state_machine *sm, struct rsn_pmksa_cache_entry *entry) |
void | wpa_auth_sta_deinit (struct wpa_state_machine *sm) |
struct rsn_pmksa_cache_entry * | wpa_auth_sta_get_pmksa (struct wpa_state_machine *sm) |
struct wpa_state_machine * | wpa_auth_sta_init (struct wpa_authenticator *wpa_auth, const u8 *addr) |
int | wpa_auth_sta_key_mgmt (struct wpa_state_machine *sm) |
void | wpa_auth_sta_local_mic_failure_report (struct wpa_state_machine *sm) |
void | wpa_auth_sta_no_wpa (struct wpa_state_machine *sm) |
int | wpa_auth_sta_set_vlan (struct wpa_state_machine *sm, int vlan_id) |
int | wpa_auth_sta_wpa_version (struct wpa_state_machine *sm) |
void | wpa_auth_vlogger (struct wpa_authenticator *wpa_auth, const u8 *addr, logger_level level, const char *fmt,...) |
static const char * | wpa_bool_txt (int bool) |
static int | wpa_cipher_bits (int cipher) |
void | wpa_deinit (struct wpa_authenticator *wpa_auth) |
static int | wpa_derive_ptk (struct wpa_state_machine *sm, const u8 *pmk, struct wpa_ptk *ptk) |
static void | wpa_free_sta_sm (struct wpa_state_machine *sm) |
int | wpa_get_mib (struct wpa_authenticator *wpa_auth, char *buf, size_t buflen) |
int | wpa_get_mib_sta (struct wpa_state_machine *sm, char *buf, size_t buflen) |
static void | wpa_gmk_to_gtk (const u8 *gmk, const u8 *addr, const u8 *gnonce, u8 *gtk, size_t gtk_len) |
static void | wpa_group_gtk_init (struct wpa_authenticator *wpa_auth, struct wpa_group *group) |
static struct wpa_group * | wpa_group_init (struct wpa_authenticator *wpa_auth, int vlan_id) |
static void | wpa_group_set_key_len (struct wpa_group *group, int cipher) |
static void | wpa_group_setkeys (struct wpa_authenticator *wpa_auth, struct wpa_group *group) |
static void | wpa_group_setkeysdone (struct wpa_authenticator *wpa_auth, struct wpa_group *group) |
static void | wpa_group_sm_step (struct wpa_authenticator *wpa_auth, struct wpa_group *group) |
static int | wpa_group_update_sta (struct wpa_state_machine *sm, void *ctx) |
void | wpa_gtk_rekey (struct wpa_authenticator *wpa_auth) |
static int | wpa_gtk_update (struct wpa_authenticator *wpa_auth, struct wpa_group *group) |
struct wpa_authenticator * | wpa_init (const u8 *addr, struct wpa_auth_config *conf, struct wpa_auth_callbacks *cb) |
void | wpa_receive (struct wpa_authenticator *wpa_auth, struct wpa_state_machine *sm, u8 *data, size_t data_len) |
int | wpa_reconfig (struct wpa_authenticator *wpa_auth, struct wpa_auth_config *conf) |
static void | wpa_rekey_gmk (void *eloop_ctx, void *timeout_ctx) |
static void | wpa_rekey_gtk (void *eloop_ctx, void *timeout_ctx) |
static void | wpa_rekey_ptk (void *eloop_ctx, void *timeout_ctx) |
void | wpa_remove_ptk (struct wpa_state_machine *sm) |
static int | wpa_replay_counter_valid (struct wpa_state_machine *sm, const u8 *replay_counter) |
static void | wpa_request_new_ptk (struct wpa_state_machine *sm) |
static void | wpa_send_eapol (struct wpa_authenticator *wpa_auth, struct wpa_state_machine *sm, int key_info, const u8 *key_rsc, const u8 *nonce, const u8 *kde, size_t kde_len, int keyidx, int encr) |
static void | wpa_send_eapol_timeout (void *eloop_ctx, void *timeout_ctx) |
static void | wpa_sm_call_step (void *eloop_ctx, void *timeout_ctx) |
static int | wpa_sm_step (struct wpa_state_machine *sm) |
static void | wpa_sta_disconnect (struct wpa_authenticator *wpa_auth, const u8 *addr) |
static int | wpa_use_aes_cmac (struct wpa_state_machine *sm) |
static int | wpa_verify_key_mic (struct wpa_ptk *PTK, u8 *data, size_t data_len) |
Variables | |
static const u32 | dot11RSNAConfigGroupUpdateCount = 4 |
static const u32 | dot11RSNAConfigPairwiseUpdateCount = 4 |
static const int | dot11RSNAConfigPMKLifetime = 43200 |
static const int | dot11RSNAConfigPMKReauthThreshold = 70 |
static const int | dot11RSNAConfigSATimeout = 60 |
static const u32 | eapol_key_timeout_first = 100 |
static const u32 | eapol_key_timeout_subseq = 1000 |
#define RSN_SUITE "%02x-%02x-%02x-%d" |
Definition at line 2322 of file wpa_auth.c.
#define RSN_SUITE_ARG | ( | s | ) | ((s) >> 24) & 0xff, ((s) >> 16) & 0xff, ((s) >> 8) & 0xff, (s) & 0xff |
Definition at line 2323 of file wpa_auth.c.
#define STATE_MACHINE_ADDR sm->addr |
Definition at line 35 of file wpa_auth.c.
#define STATE_MACHINE_DATA struct wpa_state_machine |
Definition at line 33 of file wpa_auth.c.
#define STATE_MACHINE_DEBUG_PREFIX "WPA" |
Definition at line 34 of file wpa_auth.c.
void __wpa_send_eapol | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_state_machine * | sm, | ||
int | key_info, | ||
const u8 * | key_rsc, | ||
const u8 * | nonce, | ||
const u8 * | kde, | ||
size_t | kde_len, | ||
int | keyidx, | ||
int | encr, | ||
int | force_version | ||
) |
Definition at line 1031 of file wpa_auth.c.
static u8* ieee80211w_kde_add | ( | struct wpa_state_machine * | sm, |
u8 * | pos | ||
) | [static] |
Definition at line 1653 of file wpa_auth.c.
static int ieee80211w_kde_len | ( | struct wpa_state_machine * | sm | ) | [static] |
Definition at line 1647 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
INITIALIZE | |||
) |
Definition at line 1339 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
DISCONNECT | |||
) |
Definition at line 1369 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
DISCONNECTED | |||
) |
Definition at line 1377 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
AUTHENTICATION | |||
) |
Definition at line 1384 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
AUTHENTICATION2 | |||
) |
Definition at line 1396 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
INITPMK | |||
) |
Definition at line 1410 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
INITPSK | |||
) |
Definition at line 1449 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
PTKSTART | |||
) |
Definition at line 1465 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
PTKCALCNEGOTIATING | |||
) |
Definition at line 1531 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
PTKCALCNEGOTIATING2 | |||
) |
Definition at line 1606 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
PTKINITNEGOTIATING | |||
) |
Definition at line 1661 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK | , |
PTKINITDONE | |||
) |
Definition at line 1793 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK_GROUP | , |
IDLE | |||
) |
Definition at line 1951 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK_GROUP | , |
REKEYNEGOTIATING | |||
) |
Definition at line 1963 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK_GROUP | , |
REKEYESTABLISHED | |||
) |
Definition at line 2017 of file wpa_auth.c.
SM_STATE | ( | WPA_PTK_GROUP | , |
KEYERROR | |||
) |
Definition at line 2033 of file wpa_auth.c.
SM_STEP | ( | WPA_PTK | ) |
Definition at line 1854 of file wpa_auth.c.
SM_STEP | ( | WPA_PTK_GROUP | ) |
Definition at line 2043 of file wpa_auth.c.
static enum wpa_alg wpa_alg_enum | ( | int | alg | ) | [static] |
Definition at line 1323 of file wpa_auth.c.
static struct wpa_group* wpa_auth_add_group | ( | struct wpa_authenticator * | wpa_auth, |
int | vlan_id | ||
) | [static, read] |
Definition at line 2585 of file wpa_auth.c.
void wpa_auth_countermeasures_start | ( | struct wpa_authenticator * | wpa_auth | ) |
Definition at line 2484 of file wpa_auth.c.
int wpa_auth_for_each_auth | ( | struct wpa_authenticator * | wpa_auth, |
int(*)(struct wpa_authenticator *a, void *ctx) | cb, | ||
void * | cb_ctx | ||
) |
Definition at line 145 of file wpa_auth.c.
int wpa_auth_for_each_sta | ( | struct wpa_authenticator * | wpa_auth, |
int(*)(struct wpa_state_machine *sm, void *ctx) | cb, | ||
void * | cb_ctx | ||
) |
Definition at line 135 of file wpa_auth.c.
static int wpa_auth_get_eapol | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr, | ||
wpa_eapol_variable | var | ||
) | [inline, static] |
Definition at line 76 of file wpa_auth.c.
static int wpa_auth_get_msk | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr, | ||
u8 * | msk, | ||
size_t * | len | ||
) | [inline, static] |
Definition at line 94 of file wpa_auth.c.
int wpa_auth_get_pairwise | ( | struct wpa_state_machine * | sm | ) |
Definition at line 2497 of file wpa_auth.c.
static const u8* wpa_auth_get_psk | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr, | ||
const u8 * | prev_psk | ||
) | [inline, static] |
Definition at line 85 of file wpa_auth.c.
static int wpa_auth_get_seqnum | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr, | ||
int | idx, | ||
u8 * | seq | ||
) | [inline, static] |
Definition at line 115 of file wpa_auth.c.
const u8* wpa_auth_get_wpa_ie | ( | struct wpa_authenticator * | wpa_auth, |
size_t * | len | ||
) |
Definition at line 2543 of file wpa_auth.c.
void wpa_auth_logger | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr, | ||
logger_level | level, | ||
const char * | txt | ||
) |
Definition at line 155 of file wpa_auth.c.
static void wpa_auth_mic_failure_report | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr | ||
) | [inline, static] |
Definition at line 59 of file wpa_auth.c.
int wpa_auth_pairwise_set | ( | struct wpa_state_machine * | sm | ) |
Definition at line 2491 of file wpa_auth.c.
int wpa_auth_pmksa_add | ( | struct wpa_state_machine * | sm, |
const u8 * | pmk, | ||
int | session_timeout, | ||
struct eapol_state_machine * | eapol | ||
) |
Definition at line 2552 of file wpa_auth.c.
int wpa_auth_pmksa_add_preauth | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | pmk, | ||
size_t | len, | ||
const u8 * | sta_addr, | ||
int | session_timeout, | ||
struct eapol_state_machine * | eapol | ||
) |
Definition at line 2567 of file wpa_auth.c.
static int wpa_auth_pmksa_clear_cb | ( | struct wpa_state_machine * | sm, |
void * | ctx | ||
) | [static] |
Definition at line 264 of file wpa_auth.c.
static void wpa_auth_pmksa_free_cb | ( | struct rsn_pmksa_cache_entry * | entry, |
void * | ctx | ||
) | [static] |
Definition at line 272 of file wpa_auth.c.
static int wpa_auth_send_eapol | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr, | ||
const u8 * | data, | ||
size_t | data_len, | ||
int | encrypt | ||
) | [inline, static] |
Definition at line 125 of file wpa_auth.c.
static void wpa_auth_set_eapol | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr, | ||
wpa_eapol_variable | var, | ||
int | value | ||
) | [inline, static] |
Definition at line 67 of file wpa_auth.c.
static int wpa_auth_set_key | ( | struct wpa_authenticator * | wpa_auth, |
int | vlan_id, | ||
enum wpa_alg | alg, | ||
const u8 * | addr, | ||
int | idx, | ||
u8 * | key, | ||
size_t | key_len | ||
) | [inline, static] |
Definition at line 103 of file wpa_auth.c.
int wpa_auth_sm_event | ( | struct wpa_state_machine * | sm, |
wpa_event | event | ||
) |
Definition at line 1257 of file wpa_auth.c.
void wpa_auth_sm_notify | ( | struct wpa_state_machine * | sm | ) |
Definition at line 2267 of file wpa_auth.c.
int wpa_auth_sta_associated | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_state_machine * | sm | ||
) |
Definition at line 494 of file wpa_auth.c.
int wpa_auth_sta_clear_pmksa | ( | struct wpa_state_machine * | sm, |
struct rsn_pmksa_cache_entry * | entry | ||
) |
Definition at line 2519 of file wpa_auth.c.
void wpa_auth_sta_deinit | ( | struct wpa_state_machine * | sm | ) |
Definition at line 551 of file wpa_auth.c.
struct rsn_pmksa_cache_entry* wpa_auth_sta_get_pmksa | ( | struct wpa_state_machine * | sm | ) | [read] |
Definition at line 2530 of file wpa_auth.c.
struct wpa_state_machine* wpa_auth_sta_init | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr | ||
) | [read] |
Definition at line 478 of file wpa_auth.c.
int wpa_auth_sta_key_mgmt | ( | struct wpa_state_machine * | sm | ) |
Definition at line 2503 of file wpa_auth.c.
void wpa_auth_sta_local_mic_failure_report | ( | struct wpa_state_machine * | sm | ) |
Definition at line 2536 of file wpa_auth.c.
void wpa_auth_sta_no_wpa | ( | struct wpa_state_machine * | sm | ) |
Definition at line 528 of file wpa_auth.c.
int wpa_auth_sta_set_vlan | ( | struct wpa_state_machine * | sm, |
int | vlan_id | ||
) |
Definition at line 2605 of file wpa_auth.c.
int wpa_auth_sta_wpa_version | ( | struct wpa_state_machine * | sm | ) |
Definition at line 2511 of file wpa_auth.c.
void wpa_auth_vlogger | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr, | ||
logger_level | level, | ||
const char * | fmt, | ||
... | |||
) |
Definition at line 164 of file wpa_auth.c.
static const char* wpa_bool_txt | ( | int | bool | ) | [static] |
Definition at line 2299 of file wpa_auth.c.
static int wpa_cipher_bits | ( | int | cipher | ) | [static] |
Definition at line 2305 of file wpa_auth.c.
void wpa_deinit | ( | struct wpa_authenticator * | wpa_auth | ) |
wpa_deinit - Deinitialize WPA authenticator : Pointer to WPA authenticator data from wpa_init()
Definition at line 412 of file wpa_auth.c.
static int wpa_derive_ptk | ( | struct wpa_state_machine * | sm, |
const u8 * | pmk, | ||
struct wpa_ptk * | ptk | ||
) | [static] |
Definition at line 1513 of file wpa_auth.c.
static void wpa_free_sta_sm | ( | struct wpa_state_machine * | sm | ) | [static] |
Definition at line 540 of file wpa_auth.c.
int wpa_get_mib | ( | struct wpa_authenticator * | wpa_auth, |
char * | buf, | ||
size_t | buflen | ||
) |
Definition at line 2326 of file wpa_auth.c.
int wpa_get_mib_sta | ( | struct wpa_state_machine * | sm, |
char * | buf, | ||
size_t | buflen | ||
) |
Definition at line 2413 of file wpa_auth.c.
static void wpa_gmk_to_gtk | ( | const u8 * | gmk, |
const u8 * | addr, | ||
const u8 * | gnonce, | ||
u8 * | gtk, | ||
size_t | gtk_len | ||
) | [static] |
Definition at line 998 of file wpa_auth.c.
static void wpa_group_gtk_init | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_group * | group | ||
) | [static] |
Definition at line 2102 of file wpa_auth.c.
static struct wpa_group* wpa_group_init | ( | struct wpa_authenticator * | wpa_auth, |
int | vlan_id | ||
) | [static, read] |
Definition at line 299 of file wpa_auth.c.
static void wpa_group_set_key_len | ( | struct wpa_group * | group, |
int | cipher | ||
) | [static] |
Definition at line 280 of file wpa_auth.c.
static void wpa_group_setkeys | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_group * | group | ||
) | [static] |
Definition at line 2147 of file wpa_auth.c.
static void wpa_group_setkeysdone | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_group * | group | ||
) | [static] |
Definition at line 2176 of file wpa_auth.c.
static void wpa_group_sm_step | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_group * | group | ||
) | [static] |
Definition at line 2199 of file wpa_auth.c.
static int wpa_group_update_sta | ( | struct wpa_state_machine * | sm, |
void * | ctx | ||
) | [static] |
Definition at line 2123 of file wpa_auth.c.
void wpa_gtk_rekey | ( | struct wpa_authenticator * | wpa_auth | ) |
Definition at line 2275 of file wpa_auth.c.
static int wpa_gtk_update | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_group * | group | ||
) | [static] |
Definition at line 2074 of file wpa_auth.c.
struct wpa_authenticator* wpa_init | ( | const u8 * | addr, |
struct wpa_auth_config * | conf, | ||
struct wpa_auth_callbacks * | cb | ||
) | [read] |
wpa_init - Initialize WPA authenticator : Authenticator address : Configuration for WPA authenticator : Callback functions for WPA authenticator Returns: Pointer to WPA authenticator data or NULL on failure
Definition at line 348 of file wpa_auth.c.
void wpa_receive | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_state_machine * | sm, | ||
u8 * | data, | ||
size_t | data_len | ||
) |
Definition at line 654 of file wpa_auth.c.
int wpa_reconfig | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_auth_config * | conf | ||
) |
wpa_reconfig - Update WPA authenticator configuration : Pointer to WPA authenticator data from wpa_init() : Configuration for WPA authenticator
Definition at line 449 of file wpa_auth.c.
static void wpa_rekey_gmk | ( | void * | eloop_ctx, |
void * | timeout_ctx | ||
) | [static] |
Definition at line 214 of file wpa_auth.c.
static void wpa_rekey_gtk | ( | void * | eloop_ctx, |
void * | timeout_ctx | ||
) | [static] |
Definition at line 232 of file wpa_auth.c.
static void wpa_rekey_ptk | ( | void * | eloop_ctx, |
void * | timeout_ctx | ||
) | [static] |
Definition at line 253 of file wpa_auth.c.
void wpa_remove_ptk | ( | struct wpa_state_machine * | sm | ) |
Definition at line 1246 of file wpa_auth.c.
static int wpa_replay_counter_valid | ( | struct wpa_state_machine * | sm, |
const u8 * | replay_counter | ||
) | [static] |
Definition at line 589 of file wpa_auth.c.
static void wpa_request_new_ptk | ( | struct wpa_state_machine * | sm | ) | [static] |
Definition at line 579 of file wpa_auth.c.
static void wpa_send_eapol | ( | struct wpa_authenticator * | wpa_auth, |
struct wpa_state_machine * | sm, | ||
int | key_info, | ||
const u8 * | key_rsc, | ||
const u8 * | nonce, | ||
const u8 * | kde, | ||
size_t | kde_len, | ||
int | keyidx, | ||
int | encr | ||
) | [static] |
Definition at line 1195 of file wpa_auth.c.
static void wpa_send_eapol_timeout | ( | void * | eloop_ctx, |
void * | timeout_ctx | ||
) | [static] |
Definition at line 1020 of file wpa_auth.c.
static void wpa_sm_call_step | ( | void * | eloop_ctx, |
void * | timeout_ctx | ||
) | [static] |
Definition at line 2260 of file wpa_auth.c.
static int wpa_sm_step | ( | struct wpa_state_machine * | sm | ) | [static] |
Definition at line 2219 of file wpa_auth.c.
static void wpa_sta_disconnect | ( | struct wpa_authenticator * | wpa_auth, |
const u8 * | addr | ||
) | [static] |
Definition at line 189 of file wpa_auth.c.
static int wpa_use_aes_cmac | ( | struct wpa_state_machine * | sm | ) | [static] |
Definition at line 199 of file wpa_auth.c.
static int wpa_verify_key_mic | ( | struct wpa_ptk * | PTK, |
u8 * | data, | ||
size_t | data_len | ||
) | [static] |
Definition at line 1221 of file wpa_auth.c.
const u32 dot11RSNAConfigGroupUpdateCount = 4 [static] |
Definition at line 48 of file wpa_auth.c.
const u32 dot11RSNAConfigPairwiseUpdateCount = 4 [static] |
Definition at line 49 of file wpa_auth.c.
const int dot11RSNAConfigPMKLifetime = 43200 [static] |
Definition at line 54 of file wpa_auth.c.
const int dot11RSNAConfigPMKReauthThreshold = 70 [static] |
Definition at line 55 of file wpa_auth.c.
const int dot11RSNAConfigSATimeout = 60 [static] |
Definition at line 56 of file wpa_auth.c.
const u32 eapol_key_timeout_first = 100 [static] |
Definition at line 50 of file wpa_auth.c.
const u32 eapol_key_timeout_subseq = 1000 [static] |
Definition at line 51 of file wpa_auth.c.