eap_full_auth_fsm.h File Reference

EAP full authenticator state machine. More...

#include <limits.h>
#include "authenticator/authenticator.h"

Go to the source code of this file.

Macros

#define EAP_CURRENT_ID_NONE   UINT_MAX
 

Enumerations

enum  EapFullAuthState {
  EAP_FULL_AUTH_STATE_DISABLED = 0 , EAP_FULL_AUTH_STATE_INITIALIZE = 1 , EAP_FULL_AUTH_STATE_IDLE = 2 , EAP_FULL_AUTH_STATE_RETRANSMIT = 3 ,
  EAP_FULL_AUTH_STATE_RECEIVED = 4 , EAP_FULL_AUTH_STATE_NAK = 5 , EAP_FULL_AUTH_STATE_SELECT_ACTION = 6 , EAP_FULL_AUTH_STATE_INTEGRITY_CHECK = 7 ,
  EAP_FULL_AUTH_STATE_METHOD_RESPONSE = 8 , EAP_FULL_AUTH_STATE_PROPOSE_METHOD = 9 , EAP_FULL_AUTH_STATE_METHOD_REQUEST = 10 , EAP_FULL_AUTH_STATE_DISCARD = 11 ,
  EAP_FULL_AUTH_STATE_SEND_REQUEST = 12 , EAP_FULL_AUTH_STATE_TIMEOUT_FAILURE = 13 , EAP_FULL_AUTH_STATE_FAILURE = 14 , EAP_FULL_AUTH_STATE_SUCCESS = 15 ,
  EAP_FULL_AUTH_STATE_INITIALIZE_PASSTHROUGH = 16 , EAP_FULL_AUTH_STATE_IDLE2 = 17 , EAP_FULL_AUTH_STATE_RETRANSMIT2 = 18 , EAP_FULL_AUTH_STATE_RECEIVED2 = 19 ,
  EAP_FULL_AUTH_STATE_AAA_REQUEST = 20 , EAP_FULL_AUTH_STATE_AAA_IDLE = 21 , EAP_FULL_AUTH_STATE_AAA_RESPONSE = 22 , EAP_FULL_AUTH_STATE_DISCARD2 = 23 ,
  EAP_FULL_AUTH_STATE_SEND_REQUEST2 = 24 , EAP_FULL_AUTH_STATE_TIMEOUT_FAILURE2 = 25 , EAP_FULL_AUTH_STATE_FAILURE2 = 26 , EAP_FULL_AUTH_STATE_SUCCESS2 = 27
}
 EAP full authenticator states. More...
 
enum  EapMethodState {
  EAP_METHOD_STATE_NONE = 0 , EAP_METHOD_STATE_CONTINUE = 1 , EAP_METHOD_STATE_PROPOSED = 2 , EAP_METHOD_STATE_END = 3 ,
  EAP_METHOD_STATE_NONE = 0 , EAP_METHOD_STATE_INIT = 1 , EAP_METHOD_STATE_CONT = 2 , EAP_METHOD_STATE_MAY_CONT = 3 ,
  EAP_METHOD_STATE_DONE = 4
}
 EAP method states. More...
 
enum  EapDecision {
  EAP_DECISION_FAILURE = 0 , EAP_DECISION_SUCCESS = 1 , EAP_DECISION_CONTINUE = 2 , EAP_DECISION_PASSTHROUGH = 3 ,
  EAP_DECISION_FAIL = 1 , EAP_DECISION_COND_SUCC = 2 , EAP_DECISION_UNCOND_SUCC = 3
}
 Decisions. More...
 

Functions

void eapFullAuthInitFsm (AuthenticatorPort *port)
 EAP full authenticator state machine initialization. More...
 
void eapFullAuthFsm (AuthenticatorPort *port)
 EAP full authenticator state machine implementation. More...
 
void eapFullAuthChangeState (AuthenticatorPort *port, EapFullAuthState newState)
 Update EAP full authenticator state. More...
 

Detailed Description

EAP full authenticator state machine.

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2022-2024 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneEAP Open.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
2.4.0

Definition in file eap_full_auth_fsm.h.

Macro Definition Documentation

◆ EAP_CURRENT_ID_NONE

#define EAP_CURRENT_ID_NONE   UINT_MAX

Definition at line 39 of file eap_full_auth_fsm.h.

Enumeration Type Documentation

◆ EapDecision

Decisions.

Enumerator
EAP_DECISION_FAILURE 
EAP_DECISION_SUCCESS 
EAP_DECISION_CONTINUE 
EAP_DECISION_PASSTHROUGH 
EAP_DECISION_FAIL 
EAP_DECISION_COND_SUCC 
EAP_DECISION_UNCOND_SUCC 

Definition at line 101 of file eap_full_auth_fsm.h.

◆ EapFullAuthState

EAP full authenticator states.

Enumerator
EAP_FULL_AUTH_STATE_DISABLED 
EAP_FULL_AUTH_STATE_INITIALIZE 
EAP_FULL_AUTH_STATE_IDLE 
EAP_FULL_AUTH_STATE_RETRANSMIT 
EAP_FULL_AUTH_STATE_RECEIVED 
EAP_FULL_AUTH_STATE_NAK 
EAP_FULL_AUTH_STATE_SELECT_ACTION 
EAP_FULL_AUTH_STATE_INTEGRITY_CHECK 
EAP_FULL_AUTH_STATE_METHOD_RESPONSE 
EAP_FULL_AUTH_STATE_PROPOSE_METHOD 
EAP_FULL_AUTH_STATE_METHOD_REQUEST 
EAP_FULL_AUTH_STATE_DISCARD 
EAP_FULL_AUTH_STATE_SEND_REQUEST 
EAP_FULL_AUTH_STATE_TIMEOUT_FAILURE 
EAP_FULL_AUTH_STATE_FAILURE 
EAP_FULL_AUTH_STATE_SUCCESS 
EAP_FULL_AUTH_STATE_INITIALIZE_PASSTHROUGH 
EAP_FULL_AUTH_STATE_IDLE2 
EAP_FULL_AUTH_STATE_RETRANSMIT2 
EAP_FULL_AUTH_STATE_RECEIVED2 
EAP_FULL_AUTH_STATE_AAA_REQUEST 
EAP_FULL_AUTH_STATE_AAA_IDLE 
EAP_FULL_AUTH_STATE_AAA_RESPONSE 
EAP_FULL_AUTH_STATE_DISCARD2 
EAP_FULL_AUTH_STATE_SEND_REQUEST2 
EAP_FULL_AUTH_STATE_TIMEOUT_FAILURE2 
EAP_FULL_AUTH_STATE_FAILURE2 
EAP_FULL_AUTH_STATE_SUCCESS2 

Definition at line 51 of file eap_full_auth_fsm.h.

◆ EapMethodState

EAP method states.

Enumerator
EAP_METHOD_STATE_NONE 
EAP_METHOD_STATE_CONTINUE 
EAP_METHOD_STATE_PROPOSED 
EAP_METHOD_STATE_END 
EAP_METHOD_STATE_NONE 
EAP_METHOD_STATE_INIT 
EAP_METHOD_STATE_CONT 
EAP_METHOD_STATE_MAY_CONT 
EAP_METHOD_STATE_DONE 

Definition at line 88 of file eap_full_auth_fsm.h.

Function Documentation

◆ eapFullAuthChangeState()

void eapFullAuthChangeState ( AuthenticatorPort port,
EapFullAuthState  newState 
)

Update EAP full authenticator state.

Parameters
[in]portPointer to the port context
[in]newStateNew state to switch to

Definition at line 465 of file eap_full_auth_fsm.c.

◆ eapFullAuthFsm()

void eapFullAuthFsm ( AuthenticatorPort port)

EAP full authenticator state machine implementation.

Parameters
[in]portPointer to the port context

Definition at line 97 of file eap_full_auth_fsm.c.

◆ eapFullAuthInitFsm()

void eapFullAuthInitFsm ( AuthenticatorPort port)

EAP full authenticator state machine initialization.

Parameters
[in]portPointer to the port context

Definition at line 85 of file eap_full_auth_fsm.c.