wpa_supplicant / hostapd  2.5
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Data Structures | Functions
ieee802_1x.c File Reference

hostapd / IEEE 802.1X-2004 Authenticator More...

#include "utils/includes.h"
#include "utils/common.h"
#include "utils/eloop.h"
#include "crypto/md5.h"
#include "crypto/crypto.h"
#include "crypto/random.h"
#include "common/ieee802_11_defs.h"
#include "radius/radius.h"
#include "radius/radius_client.h"
#include "eap_server/eap.h"
#include "eap_common/eap_wsc_common.h"
#include "eapol_auth/eapol_auth_sm.h"
#include "eapol_auth/eapol_auth_sm_i.h"
#include "p2p/p2p.h"
#include "hostapd.h"
#include "accounting.h"
#include "sta_info.h"
#include "wpa_auth.h"
#include "preauth_auth.h"
#include "pmksa_cache_auth.h"
#include "ap_config.h"
#include "ap_drv_ops.h"
#include "wps_hostapd.h"
#include "hs20.h"
#include "ieee802_1x.h"

Data Structures

struct  sta_id_search
 

Functions

void ieee802_1x_set_sta_authorized (struct hostapd_data *hapd, struct sta_info *sta, int authorized)
 
const char * radius_mode_txt (struct hostapd_data *hapd)
 
int radius_sta_rate (struct hostapd_data *hapd, struct sta_info *sta)
 
int add_common_radius_attr (struct hostapd_data *hapd, struct hostapd_radius_attr *req_attr, struct sta_info *sta, struct radius_msg *msg)
 
void ieee802_1x_receive (struct hostapd_data *hapd, const u8 *sa, const u8 *buf, size_t len)
 Process the EAPOL frames from the Supplicant. More...
 
void ieee802_1x_new_station (struct hostapd_data *hapd, struct sta_info *sta)
 Start IEEE 802.1X authentication. More...
 
void ieee802_1x_free_station (struct sta_info *sta)
 
void ieee802_1x_abort_auth (struct hostapd_data *hapd, struct sta_info *sta)
 
int ieee802_1x_init (struct hostapd_data *hapd)
 
void ieee802_1x_erp_flush (struct hostapd_data *hapd)
 
void ieee802_1x_deinit (struct hostapd_data *hapd)
 
int ieee802_1x_tx_status (struct hostapd_data *hapd, struct sta_info *sta, const u8 *buf, size_t len, int ack)
 
int ieee802_1x_eapol_tx_status (struct hostapd_data *hapd, struct sta_info *sta, const u8 *buf, int len, int ack)
 
u8 * ieee802_1x_get_identity (struct eapol_state_machine *sm, size_t *len)
 
u8 * ieee802_1x_get_radius_class (struct eapol_state_machine *sm, size_t *len, int idx)
 
struct wpabufieee802_1x_get_radius_cui (struct eapol_state_machine *sm)
 
const u8 * ieee802_1x_get_key (struct eapol_state_machine *sm, size_t *len)
 
void ieee802_1x_notify_port_enabled (struct eapol_state_machine *sm, int enabled)
 
void ieee802_1x_notify_port_valid (struct eapol_state_machine *sm, int valid)
 
void ieee802_1x_notify_pre_auth (struct eapol_state_machine *sm, int pre_auth)
 
int ieee802_1x_get_mib (struct hostapd_data *hapd, char *buf, size_t buflen)
 
int ieee802_1x_get_mib_sta (struct hostapd_data *hapd, struct sta_info *sta, char *buf, size_t buflen)
 

Detailed Description

hostapd / IEEE 802.1X-2004 Authenticator

Function Documentation

void ieee802_1x_new_station ( struct hostapd_data hapd,
struct sta_info sta 
)

Start IEEE 802.1X authentication.

Parameters
hapdhostapd BSS data
staThe station

This function is called to start IEEE 802.1X authentication when a new station completes IEEE 802.11 association.

void ieee802_1x_receive ( struct hostapd_data hapd,
const u8 *  sa,
const u8 *  buf,
size_t  len 
)

Process the EAPOL frames from the Supplicant.

Parameters
hapdhostapd BSS data
saSource address (sender of the EAPOL frame)
bufEAPOL frame
lenLength of buf in octets

This function is called for each incoming EAPOL frame from the interface