Changeset 108794 in vbox for trunk/src/VBox/Devices/EFI/FirmwareNew/RedfishPkg/RedfishCredentialDxe/RedfishCredentialDxe.h
- Timestamp:
- Mar 31, 2025 11:31:09 AM (2 weeks ago)
- svn:sync-xref-src-repo-rev:
- 168237
- Location:
- trunk/src/VBox/Devices/EFI/FirmwareNew
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/EFI/FirmwareNew
-
Property svn:mergeinfo
changed from (toggle deleted branches)
to (toggle deleted branches)/vendor/edk2/current 103735-103757,103769-103776,129194-164365 /vendor/edk2/current 103735-103757,103769-103776,129194-168232
-
Property svn:mergeinfo
changed from (toggle deleted branches)
-
trunk/src/VBox/Devices/EFI/FirmwareNew/RedfishPkg/RedfishCredentialDxe/RedfishCredentialDxe.h
r99404 r108794 3 3 4 4 (C) Copyright 2020 Hewlett Packard Enterprise Development LP<BR> 5 (C) Copyright 2024 American Megatrends International LLC<BR> 6 Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved. 5 7 6 8 SPDX-License-Identifier: BSD-2-Clause-Patent … … 11 13 #define EDKII_REDFISH_CREDENTIAL_DXE_H_ 12 14 13 #include <Protocol/EdkIIRedfishCredential.h> 15 #include <RedfishCommon.h> 16 #include <Protocol/EdkIIRedfishCredential2.h> 14 17 15 18 #include <Library/BaseLib.h> … … 19 22 #include <Library/UefiLib.h> 20 23 #include <Library/UefiBootServicesTableLib.h> 24 #include <Library/RedfishHttpLib.h> 25 #include <Library/BaseLib.h> 26 #include <Library/BaseMemoryLib.h> 27 #include <Library/MemoryAllocationLib.h> 28 #include <Library/RedfishDebugLib.h> 21 29 22 /** 23 Retrieve platform's Redfish authentication information. 30 #define REDFISH_CREDENTIAL_DEBUG DEBUG_VERBOSE 31 #define REDFISH_MANAGER_ACCOUNT_COLLECTION_URI L"AccountService/Accounts" 32 #define REDFISH_URI_LENGTH 128 24 33 25 This functions returns the Redfish authentication method together with the user Id and 26 password. 27 - For AuthMethodNone, the UserId and Password could be used for HTTP header authentication 28 as defined by RFC7235. 29 - For AuthMethodRedfishSession, the UserId and Password could be used for Redfish 30 session login as defined by Redfish API specification (DSP0266). 34 /// 35 /// Definition of REDFISH_SERVICE_LIST 36 /// 37 typedef struct { 38 LIST_ENTRY NextInstance; 39 REDFISH_SERVICE RedfishService; 40 } REDFISH_SERVICE_LIST; 31 41 32 Callers are responsible for and freeing the returned string storage. 33 34 @param[in] This Pointer to EDKII_REDFISH_CREDENTIAL_PROTOCOL instance. 35 @param[out] AuthMethod Type of Redfish authentication method. 36 @param[out] UserId The pointer to store the returned UserId string. 37 @param[out] Password The pointer to store the returned Password string. 38 39 @retval EFI_SUCCESS Get the authentication information successfully. 40 @retval EFI_ACCESS_DENIED SecureBoot is disabled after EndOfDxe. 41 @retval EFI_INVALID_PARAMETER This or AuthMethod or UserId or Password is NULL. 42 @retval EFI_OUT_OF_RESOURCES There are not enough memory resources. 43 @retval EFI_UNSUPPORTED Unsupported authentication method is found. 44 45 **/ 46 EFI_STATUS 47 EFIAPI 48 RedfishCredentialGetAuthInfo ( 49 IN EDKII_REDFISH_CREDENTIAL_PROTOCOL *This, 50 OUT EDKII_REDFISH_AUTH_METHOD *AuthMethod, 51 OUT CHAR8 **UserId, 52 OUT CHAR8 **Password 53 ); 54 55 /** 56 Notify the Redfish service provide to stop provide configuration service to this platform. 57 58 This function should be called when the platfrom is about to leave the safe environment. 59 It will notify the Redfish service provider to abort all logined session, and prohibit 60 further login with original auth info. GetAuthInfo() will return EFI_UNSUPPORTED once this 61 function is returned. 62 63 @param[in] This Pointer to EDKII_REDFISH_CREDENTIAL_PROTOCOL instance. 64 65 @retval EFI_SUCCESS Service has been stoped successfully. 66 @retval EFI_INVALID_PARAMETER This is NULL. 67 @retval Others Some error happened. 68 69 **/ 70 EFI_STATUS 71 EFIAPI 72 RedfishCredentialStopService ( 73 IN EDKII_REDFISH_CREDENTIAL_PROTOCOL *This, 74 IN EDKII_REDFISH_CREDENTIAL_STOP_SERVICE_TYPE ServiceStopType 75 ); 42 // 43 // Definitions of REDFISH_BOOTSTRAP_ACCOUNT_PRIVATE 44 // 45 typedef struct { 46 EFI_HANDLE Handle; 47 EFI_EVENT EndOfDxeEvent; 48 EFI_EVENT ExitBootServiceEvent; 49 EDKII_REDFISH_AUTH_METHOD AuthMethod; 50 CHAR8 *AccountName; 51 EDKII_REDFISH_CREDENTIAL_PROTOCOL RedfishCredentialProtocol; 52 EDKII_REDFISH_CREDENTIAL2_PROTOCOL RedfishCredential2Protocol; 53 LIST_ENTRY RedfishServiceList; 54 } REDFISH_CREDENTIAL_PRIVATE; 76 55 77 56 #endif
Note:
See TracChangeset
for help on using the changeset viewer.