The FreeRADIUS server $Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
|
Declarations for EAP-AKA. More...
#include <freeradius-devel/eap_aka_sim/base.h>
Go to the source code of this file.
Data Structures | |
struct | eap_aka_sim_actions_t |
Cache sections to call on various protocol events. More... | |
union | eap_aka_sim_actions_t.__unnamed25__ |
struct | eap_aka_sim_actions_t.__unnamed25__.__unnamed27__ |
struct | eap_aka_sim_actions_t.__unnamed25__.__unnamed29__ |
struct | eap_aka_sim_process_conf_t |
struct | eap_aka_sim_session_s |
Typedefs | |
typedef struct eap_aka_sim_session_s | eap_aka_sim_session_t |
Functions | |
unlang_action_t | eap_aka_sim_state_machine_process (rlm_rcode_t *p_result, module_ctx_t const *mctx, request_t *request) |
Resumes the state machine when receiving a new response packet. | |
Declarations for EAP-AKA.
Definition in file state_machine.h.
struct eap_aka_sim_actions_t |
Cache sections to call on various protocol events.
Definition at line 98 of file state_machine.h.
Data Fields | ||
---|---|---|
union eap_aka_sim_actions_t.__unnamed25__ | __unnamed__ | |
CONF_SECTION * | clear_pseudonym | Clear pseudonym to permanent ID mapping. |
CONF_SECTION * | clear_session | Clear authentication vectors. |
CONF_SECTION * | load_pseudonym | Resolve a pseudonym to a permanent ID. |
CONF_SECTION * | load_session | Load cached authentication vectors. |
CONF_SECTION * | recv_common_client_error | Called if the supplicant experiences an error of some kind. |
CONF_SECTION * | recv_common_failure_notification_ack | Called when the supplicant ACKs our failure notification. |
CONF_SECTION * | recv_common_identity_response | Called when we receive a new identity. |
CONF_SECTION * | recv_common_reauthentication_response | Process the reauthentication response from the supplicant. |
CONF_SECTION * | recv_common_success_notification_ack | Called when the supplicant ACKs our success notification. |
CONF_SECTION * | send_common_failure_notification | Called when we're about to send a failure notification. |
CONF_SECTION * | send_common_identity_request | Called when we're about to request a different identity. |
CONF_SECTION * | send_common_reauthentication_request | Challenge the supplicant with an MK from an existing session. |
CONF_SECTION * | send_common_success_notification | Called when we're about to send a success notification. |
CONF_SECTION * | send_eap_failure | Called when we send an EAP-Failure message. |
CONF_SECTION * | send_eap_success | Called when we send an EAP-Success message. |
CONF_SECTION * | store_pseudonym | Store a permanent ID to pseudonym mapping. |
CONF_SECTION * | store_session | Store authentication vectors. |
union eap_aka_sim_actions_t.__unnamed25__ |
Definition at line 99 of file state_machine.h.
Data Fields | ||
---|---|---|
struct eap_aka_sim_actions_t.__unnamed25__.__unnamed27__ | __unnamed__ | |
struct eap_aka_sim_actions_t.__unnamed25__.__unnamed29__ | __unnamed__ |
struct eap_aka_sim_actions_t.__unnamed25__.__unnamed27__ |
Definition at line 104 of file state_machine.h.
Data Fields | ||
---|---|---|
CONF_SECTION * | recv_aka_authentication_reject | Called if the supplicant rejects the authentication attempt. |
CONF_SECTION * | recv_aka_challenge_response | Called when we receive a response to a previous challenge. |
CONF_SECTION * | recv_aka_identity_response | Called when we receive a new identity. |
CONF_SECTION * | recv_aka_synchronization_failure |
Called if the supplicant determines. the AUTN value is invalid. Usually used for resyncing with the HLR. |
CONF_SECTION * | send_aka_challenge_request | Called when we're about to send a a challenge. |
CONF_SECTION * | send_aka_identity_request | Called when we're about to request a different identity. |
struct eap_aka_sim_actions_t.__unnamed25__.__unnamed29__ |
Definition at line 126 of file state_machine.h.
Data Fields | ||
---|---|---|
CONF_SECTION * | recv_sim_challenge_response | Called when we receive a response to a previous challenge. |
CONF_SECTION * | recv_sim_start_response | Called when we receive a new identity. |
CONF_SECTION * | send_sim_challenge_request | Called when we're about to send a a challenge. |
CONF_SECTION * | send_sim_start_request | Called when we're about to request a different identity. |
struct eap_aka_sim_process_conf_t |
Definition at line 187 of file state_machine.h.
Data Fields | ||
---|---|---|
eap_aka_sim_actions_t | actions | Pre-compiled virtual server sections. |
size_t | ephemeral_id_length | The length of any identities we're generating. |
EVP_MD const * | hmac_md |
The hmac used for validating packets. EVP_sha1() for EAP-AKA, EVP_sha256() for EAP-AKA'. |
char const * | network_name | Network ID as described by RFC 5448. |
bool | protected_success | Send a success notification as well as and EAP-Success packet. |
fr_aka_sim_id_req_type_t | request_identity | Whether we always request the identity of the subscriber. |
bool | strip_permanent_identity_hint | Control whether the hint byte is stripped when populating Permanent-Identity. |
eap_type_t | type | The preferred EAP-Type of this instance of the EAP-SIM/AKA/AKA' state machine. |
struct eap_aka_sim_session_s |
Definition at line 37 of file state_machine.h.
Data Fields | ||
---|---|---|
bool | allow_encrypted | Whether we can send encrypted attributes at this phase of the attempt. |
bool | challenge_success | Whether we received the correct challenge response. |
uint16_t | failure_type |
One of the following values:
|
char * | fastauth_sent | Fastauth value we sent. |
fr_aka_sim_id_req_type_t | id_req | The type of identity we're requesting. |
uint16_t | kdf | The key derivation function used to derive session keys. |
fr_aka_sim_keys_t | keys | Various EAP-AKA/AKA'/SIMkeys. |
fr_aka_sim_id_req_type_t | last_id_req | The last identity request we sent. |
EVP_MD const * | mac_md |
HMAC-MD we use to generate the MAC. EVP_sha1() for EAP-AKA, EVP_sha256() for EAP-AKA'. |
module_method_t | next | Resumption function to call after executing common code. |
bool | prev_recv_sync_failure | We only allow one sync failure per session for sanity. |
char * | pseudonym_sent | Pseudonym value we sent. |
bool | reauthentication_success | Whether we got a valid reauthentication response. |
bool | send_result_ind | Say that we would like to use protected result indications (AKA-Notification-Success). |
module_method_t | state | The process function to run when we receive the next round of EAP-SIM/AKA/AKA'. |
eap_type_t | type | Either FR_TYPE_AKA, or FR_TYPE_AKA_PRIME. |
typedef struct eap_aka_sim_session_s eap_aka_sim_session_t |
Definition at line 35 of file state_machine.h.
unlang_action_t eap_aka_sim_state_machine_process | ( | rlm_rcode_t * | p_result, |
module_ctx_t const * | mctx, | ||
request_t * | request | ||
) |
Resumes the state machine when receiving a new response packet.
Definition at line 3677 of file state_machine.c.