MdePkg[all]  1.08
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Eap.h File Reference

Data Structures

struct  _EFI_EAP_PROTOCOL
 

Macros

#define EFI_EAP_PROTOCOL_GUID
 
#define EFI_EAP_TYPE_MD5   4
 
#define EFI_EAP_TYPE_OTP   5
 
#define EFI_EAP_TYPE_TOKEN_CARD   6
 
#define EFI_EAP_TYPE_TLS   13
 

Typedefs

typedef struct _EFI_EAP_PROTOCOL EFI_EAP_PROTOCOL
 
typedef VOIDEFI_PORT_HANDLE
 
typedef EFI_STATUS(EFIAPIEFI_EAP_BUILD_RESPONSE_PACKET )(IN EFI_PORT_HANDLE PortNumber, IN UINT8 *RequestBuffer, IN UINTN RequestSize, IN UINT8 *Buffer, IN OUT UINTN *BufferSize)
 
typedef EFI_STATUS(EFIAPIEFI_EAP_SET_DESIRED_AUTHENTICATION_METHOD )(IN EFI_EAP_PROTOCOL *This, IN UINT8 EapAuthType)
 
typedef EFI_STATUS(EFIAPIEFI_EAP_REGISTER_AUTHENTICATION_METHOD )(IN EFI_EAP_PROTOCOL *This, IN UINT8 EapAuthType, IN EFI_EAP_BUILD_RESPONSE_PACKET Handler)
 

Variables

EFI_GUID gEfiEapProtocolGuid
 

Detailed Description

EFI EAP(Extended Authenticaton Protocol) Protocol Definition The EFI EAP Protocol is used to abstract the ability to configure and extend the EAP framework. The definitions in this file are defined in UEFI Specification 2.3.1B, which have not been verified by one implementation yet.

Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Revision Reference:
This Protocol is introduced in UEFI Specification 2.2

Macro Definition Documentation

#define EFI_EAP_PROTOCOL_GUID
Value:
{ \
0x5d9f96db, 0xe731, 0x4caa, {0xa0, 0xd, 0x72, 0xe1, 0x87, 0xcd, 0x77, 0x62 } \
}
#define EFI_EAP_TYPE_MD5   4
#define EFI_EAP_TYPE_OTP   5
#define EFI_EAP_TYPE_TLS   13

EAP Authentication Method Type (RFC 3748)REQUIRED - RFC 5216

#define EFI_EAP_TYPE_TOKEN_CARD   6

Typedef Documentation

typedef EFI_STATUS(EFIAPI * EFI_EAP_BUILD_RESPONSE_PACKET)(IN EFI_PORT_HANDLE PortNumber, IN UINT8 *RequestBuffer, IN UINTN RequestSize, IN UINT8 *Buffer, IN OUT UINTN *BufferSize)

One user provided EAP authentication method.

Build EAP response packet in response to the EAP request packet specified by (RequestBuffer, RequestSize).

Parameters
[in]PortNumberSpecified the Port where the EAP request packet comes.
[in]RequestBufferPointer to the most recently received EAP- Request packet.
[in]RequestSizePacket size in bytes for the most recently received EAP-Request packet.
[in]BufferPointer to the buffer to hold the built packet.
[in,out]BufferSizePointer to the buffer size in bytes. On input, it is the buffer size provided by the caller. On output, it is the buffer size in fact needed to contain the packet.
Return values
EFI_SUCCESSThe required EAP response packet is built successfully.
othersFailures are encountered during the packet building process.
typedef EFI_STATUS(EFIAPI * EFI_EAP_REGISTER_AUTHENTICATION_METHOD)(IN EFI_EAP_PROTOCOL *This, IN UINT8 EapAuthType, IN EFI_EAP_BUILD_RESPONSE_PACKET Handler)

Register an EAP authentication method.

The RegisterAuthMethod() function registers the user provided EAP authentication method, the type of which is EapAuthType and the handler of which is Handler.

If EapAuthType is an invalid EAP authentication type, then EFI_INVALID_PARAMETER is returned. If there is not enough system memory to perform the registration, then EFI_OUT_OF_RESOURCES is returned.

Parameters
[in]ThisA pointer to the EFI_EAP_PROTOCOL instance that indicates the calling context.
[in]EapAuthTypeThe type of the EAP authentication method to register. It should be the type value defined by RFC. See RFC 2284 for details.
[in]HandlerThe handler of the EAP authentication method to register.
Return values
EFI_SUCCESSThe EAP authentication method of EapAuthType is registered successfully.
EFI_INVALID_PARAMETEREapAuthType is an invalid EAP authentication type.
EFI_OUT_OF_RESOURCESThere is not enough system memory to perform the registration.
typedef EFI_STATUS(EFIAPI * EFI_EAP_SET_DESIRED_AUTHENTICATION_METHOD)(IN EFI_EAP_PROTOCOL *This, IN UINT8 EapAuthType)

Set the desired EAP authentication method for the Port.

The SetDesiredAuthMethod() function sets the desired EAP authentication method indicated by EapAuthType for the Port.

If EapAuthType is an invalid EAP authentication type, then EFI_INVALID_PARAMETER is returned. If the EAP authentication method of EapAuthType is unsupported by the Ports, then it will return EFI_UNSUPPORTED. The cryptographic strength of EFI_EAP_TYPE_TLS shall be at least of hash strength SHA-256 and RSA key length of at least 2048 bits.

Parameters
[in]ThisA pointer to the EFI_EAP_PROTOCOL instance that indicates the calling context.
[in]EapAuthTypeThe type of the EAP authentication method to register. It should be the type value defined by RFC. See RFC 2284 for details.
[in]HandlerThe handler of the EAP authentication method to register.
Return values
EFI_SUCCESSThe EAP authentication method of EapAuthType is registered successfully.
EFI_INVALID_PARAMETEREapAuthType is an invalid EAP authentication type.
EFI_UNSUPPORTEDThe EAP authentication method of EapAuthType is unsupported by the Port.

Type for the identification number assigned to the Port by the System in which the Port resides.

Variable Documentation

EFI_GUID gEfiEapProtocolGuid