mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-10-30 23:50:23 +00:00 
			
		
		
		
	 9344f09215
			
		
	
	
		9344f09215
		
	
	
	
	
		
			
			https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
		
			
				
	
	
		
			82 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /** @file
 | |
|   This file defines the EFI EAP Management2 protocol.
 | |
| 
 | |
|   Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
 | |
|   SPDX-License-Identifier: BSD-2-Clause-Patent
 | |
| 
 | |
|   @par Revision Reference:
 | |
|   This Protocol is introduced in UEFI Specification 2.5
 | |
| 
 | |
| **/
 | |
| 
 | |
| #ifndef __EFI_EAP_MANAGEMENT2_PROTOCOL_H__
 | |
| #define __EFI_EAP_MANAGEMENT2_PROTOCOL_H__
 | |
| 
 | |
| #include <Protocol/EapManagement.h>
 | |
| 
 | |
| ///
 | |
| /// This EFI EAP Management2 protocol provides the ability to configure and control EAPOL
 | |
| /// state machine, and retrieve the information, status and the statistics information of
 | |
| /// EAPOL state machine.
 | |
| ///
 | |
| #define EFI_EAP_MANAGEMENT2_PROTOCOL_GUID \
 | |
|   { \
 | |
|     0x5e93c847, 0x456d, 0x40b3, {0xa6, 0xb4, 0x78, 0xb0, 0xc9, 0xcf, 0x7f, 0x20 } \
 | |
|   }
 | |
| 
 | |
| typedef struct _EFI_EAP_MANAGEMENT2_PROTOCOL EFI_EAP_MANAGEMENT2_PROTOCOL;
 | |
| 
 | |
| /**
 | |
|   Return key generated through EAP process.
 | |
| 
 | |
|   The GetKey() function return the key generated through EAP process, so that the 802.11
 | |
|   MAC layer driver can use MSK to derive more keys, e.g. PMK (Pairwise Master Key).
 | |
| 
 | |
|   @param[in]       This           Pointer to the EFI_EAP_MANAGEMENT2_PROTOCOL instance.
 | |
|   @param[in, out]  Msk            Pointer to MSK (Master Session Key) buffer.
 | |
|   @param[in, out]  MskSize        MSK buffer size.
 | |
|   @param[in, out]  Emsk           Pointer to EMSK (Extended Master Session Key) buffer.
 | |
|   @param[in, out]  EmskSize       EMSK buffer size.
 | |
| 
 | |
|   @retval EFI_SUCCESS             The operation completed successfully.
 | |
|   @retval EFI_INVALID_PARAMETER   One or more of the following conditions is TRUE:
 | |
|                                   Msk is NULL.
 | |
|                                   MskSize is NULL.
 | |
|                                   Emsk is NULL.
 | |
|                                   EmskSize is NULL.
 | |
|   @retval EFI_NOT_READY           MSK and EMSK are not generated in current session yet.
 | |
| 
 | |
| **/
 | |
| typedef
 | |
| EFI_STATUS
 | |
| (EFIAPI *EFI_EAP_GET_KEY) (
 | |
|   IN EFI_EAP_MANAGEMENT2_PROTOCOL         *This,
 | |
|   IN OUT UINT8                            *Msk,
 | |
|   IN OUT UINTN                            *MskSize,
 | |
|   IN OUT UINT8                            *Emsk,
 | |
|   IN OUT UINT8                            *EmskSize
 | |
|   );
 | |
| 
 | |
| ///
 | |
| /// The EFI_EAP_MANAGEMENT2_PROTOCOL
 | |
| /// is used to control, configure and monitor EAPOL state machine on a Port, and return
 | |
| /// information of the Port. EAPOL state machine is built on a per-Port basis. Herein, a
 | |
| /// Port means a NIC. For the details of EAPOL, please refer to IEEE 802.1x
 | |
| /// specification.
 | |
| ///
 | |
| struct _EFI_EAP_MANAGEMENT2_PROTOCOL {
 | |
|   EFI_EAP_GET_SYSTEM_CONFIGURATION        GetSystemConfiguration;
 | |
|   EFI_EAP_SET_SYSTEM_CONFIGURATION        SetSystemConfiguration;
 | |
|   EFI_EAP_INITIALIZE_PORT                 InitializePort;
 | |
|   EFI_EAP_USER_LOGON                      UserLogon;
 | |
|   EFI_EAP_USER_LOGOFF                     UserLogoff;
 | |
|   EFI_EAP_GET_SUPPLICANT_STATUS           GetSupplicantStatus;
 | |
|   EFI_EAP_SET_SUPPLICANT_CONFIGURATION    SetSupplicantConfiguration;
 | |
|   EFI_EAP_GET_SUPPLICANT_STATISTICS       GetSupplicantStatistics;
 | |
|   EFI_EAP_GET_KEY                         GetKey;
 | |
| };
 | |
| 
 | |
| extern EFI_GUID gEfiEapManagement2ProtocolGuid;
 | |
| 
 | |
| #endif
 |