2 EFI_AUTHENTICATION_INFO_PROTOCOL as defined in UEFI 2.0.
3 This protocol is used on any device handle to obtain authentication information
4 associated with the physical or logical device.
6 Copyright (c) 2006, Intel Corporation
7 All rights reserved. This program and the accompanying materials
8 are licensed and made available under the terms and conditions of the BSD License
9 which accompanies this distribution. The full text of the license may be found at
10 http://opensource.org/licenses/bsd-license.php
12 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
17 #ifndef __AUTHENTICATION_INFO_H__
18 #define __AUTHENTICATION_INFO_H__
20 #define EFI_AUTHENTICATION_INFO_PROTOCOL_GUID \
22 0x7671d9d0, 0x53db, 0x4173, {0xaa, 0x69, 0x23, 0x27, 0xf2, 0x1f, 0x0b, 0xc7 } \
25 #define EFI_AUTHENTICATION_CHAP_RADIUS_GUID \
27 0xd6062b50, 0x15ca, 0x11da, {0x92, 0x19, 0x00, 0x10, 0x83, 0xff, 0xca, 0x4d } \
30 #define EFI_AUTHENTICATION_CHAP_LOCAL_GUID \
32 0xc280c73e, 0x15ca, 0x11da, {0xb0, 0xca, 0x00, 0x10, 0x83, 0xff, 0xca, 0x4d } \
35 typedef struct _EFI_AUTHENTICATION_INFO_PROTOCOL EFI_AUTHENTICATION_INFO_PROTOCOL
;
43 AUTH_NODE_HEADER Header
;
44 EFI_IPv6_ADDRESS RadiusIpAddr
; // IPv4 or IPv6 address
46 EFI_IPv6_ADDRESS NasIpAddr
; // IPv4 or IPv6 address
47 UINT16 NasSecretLength
;
49 UINT16 ChapSecretLength
;
51 UINT16 ChapNameLength
;
53 } CHAP_RADIUS_AUTH_NODE
;
56 AUTH_NODE_HEADER Header
;
58 UINT16 UserSecretLength
;
60 UINT16 UserNameLength
;
62 UINT16 ChapSecretLength
;
64 UINT16 ChapNameLength
;
66 } CHAP_LOCAL_AUTH_NODE
;
69 Retrieves the Authentication information associated with a particular controller handle.
71 @param This Pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL
72 @param ControllerHandle Handle to the Controller
73 @param Buffer Pointer to the authentication information.
75 @retval EFI_SUCCESS Successfully retrieved Authentication information for the given ControllerHandle
76 @retval EFI_INVALID_PARAMETER No matching Authentication information found for the given ControllerHandle
77 @retval EFI_DEVICE_ERROR The authentication information could not be retrieved due to a
83 (EFIAPI
*EFI_AUTHENTICATION_PROTOCOL_INFO_GET
) (
84 IN EFI_AUTHENTICATION_INFO_PROTOCOL
*This
,
85 IN EFI_HANDLE
*ControllerHandle
,
91 Set the Authentication information for a given controller handle.
93 @param This Pointer to the EFI_AUTHENTICATION_INFO_PROTOCOL
94 @param ControllerHandle Handle to the Controller
95 @param Buffer Pointer to the authentication information.
97 @retval EFI_SUCCESS Successfully set Authentication information for the given ControllerHandle
98 @retval EFI_UNSUPPORTED If the platform policies do not allow setting of the Authentication
100 @retval EFI_DEVICE_ERROR The authentication information could not be configured due to a
102 @retval EFI_OUT_OF_RESOURCES Not enough storage is available to hold the data.
107 (EFIAPI
*EFI_AUTHENTICATION_PROTOCOL_INFO_SET
) (
108 IN EFI_AUTHENTICATION_INFO_PROTOCOL
*This
,
109 IN EFI_HANDLE
*ControllerHandle
,
114 struct _EFI_AUTHENTICATION_INFO_PROTOCOL
{
115 EFI_AUTHENTICATION_PROTOCOL_INFO_GET Get
;
116 EFI_AUTHENTICATION_PROTOCOL_INFO_SET Set
;
119 extern EFI_GUID gEfiAuthenticationInfoProtocolGuid
;
120 extern EFI_GUID gEfiAuthenticationChapRadiusGuid
;
121 extern EFI_GUID gEfiAuthenticationChapLocalGuid
;