|
MdeModulePkg[all]
0.98
|
Macros | |
| #define | LOCK_BOX_ATTRIBUTE_RESTORE_IN_PLACE BIT0 |
| #define | LOCK_BOX_ATTRIBUTE_RESTORE_IN_S3_ONLY BIT1 |
Functions | |
| RETURN_STATUS EFIAPI | SaveLockBox (IN GUID *Guid, IN VOID *Buffer, IN UINTN Length) |
| RETURN_STATUS EFIAPI | SetLockBoxAttributes (IN GUID *Guid, IN UINT64 Attributes) |
| RETURN_STATUS EFIAPI | UpdateLockBox (IN GUID *Guid, IN UINTN Offset, IN VOID *Buffer, IN UINTN Length) |
| RETURN_STATUS EFIAPI | RestoreLockBox (IN GUID *Guid, IN VOID *Buffer, IN OUT UINTN *Length) |
| RETURN_STATUS EFIAPI | RestoreAllLockBoxInPlace (VOID) |
This library is only intended to be used by DXE modules that need save confidential information to LockBox and get it by PEI modules in S3 phase.
Copyright (c) 2010 - 2019, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
| #define LOCK_BOX_ATTRIBUTE_RESTORE_IN_PLACE BIT0 |
| #define LOCK_BOX_ATTRIBUTE_RESTORE_IN_S3_ONLY BIT1 |
| RETURN_STATUS EFIAPI RestoreAllLockBoxInPlace | ( | VOID | ) |
This function will restore confidential information from all lockbox which have RestoreInPlace attribute.
| RETURN_SUCCESS | the information is restored successfully. |
| RETURN_NOT_STARTED | it is too early to invoke this interface |
| RETURN_UNSUPPORTED | the service is not supported by implementaion. |
This function will restore confidential information from lockbox.
| Guid | the guid to identify the confidential information |
| Buffer | the address of the restored confidential information NULL means restored to original address, Length MUST be NULL at same time. |
| Length | the length of the restored confidential information |
| RETURN_SUCCESS | the information is restored successfully. |
| RETURN_INVALID_PARAMETER | the Guid is NULL, or one of Buffer and Length is NULL. |
| RETURN_WRITE_PROTECTED | Buffer and Length are NULL, but the LockBox has no LOCK_BOX_ATTRIBUTE_RESTORE_IN_PLACE attribute. |
| RETURN_BUFFER_TOO_SMALL | the Length is too small to hold the confidential information. |
| RETURN_NOT_FOUND | the requested GUID not found. |
| RETURN_NOT_STARTED | it is too early to invoke this interface |
| RETURN_ACCESS_DENIED | not allow to restore to the address |
| RETURN_UNSUPPORTED | the service is not supported by implementaion. |
This function will save confidential information to lockbox.
| Guid | the guid to identify the confidential information |
| Buffer | the address of the confidential information |
| Length | the length of the confidential information |
| RETURN_SUCCESS | the information is saved successfully. |
| RETURN_INVALID_PARAMETER | the Guid is NULL, or Buffer is NULL, or Length is 0 |
| RETURN_ALREADY_STARTED | the requested GUID already exist. |
| RETURN_OUT_OF_RESOURCES | no enough resource to save the information. |
| RETURN_ACCESS_DENIED | it is too late to invoke this interface |
| RETURN_NOT_STARTED | it is too early to invoke this interface |
| RETURN_UNSUPPORTED | the service is not supported by implementaion. |
| RETURN_STATUS EFIAPI SetLockBoxAttributes | ( | IN GUID * | Guid, |
| IN UINT64 | Attributes | ||
| ) |
This function will set lockbox attributes.
| Guid | the guid to identify the confidential information |
| Attributes | the attributes of the lockbox |
| RETURN_SUCCESS | the information is saved successfully. |
| RETURN_INVALID_PARAMETER | attributes is invalid. |
| RETURN_NOT_FOUND | the requested GUID not found. |
| RETURN_ACCESS_DENIED | it is too late to invoke this interface |
| RETURN_NOT_STARTED | it is too early to invoke this interface |
| RETURN_UNSUPPORTED | the service is not supported by implementaion. |
| RETURN_STATUS EFIAPI UpdateLockBox | ( | IN GUID * | Guid, |
| IN UINTN | Offset, | ||
| IN VOID * | Buffer, | ||
| IN UINTN | Length | ||
| ) |
This function will update confidential information to lockbox.
| Guid | the guid to identify the original confidential information |
| Offset | the offset of the original confidential information |
| Buffer | the address of the updated confidential information |
| Length | the length of the updated confidential information |
| RETURN_SUCCESS | the information is saved successfully. |
| RETURN_INVALID_PARAMETER | the Guid is NULL, or Buffer is NULL, or Length is 0. |
| RETURN_NOT_FOUND | the requested GUID not found. |
| RETURN_BUFFER_TOO_SMALL | for lockbox without attribute LOCK_BOX_ATTRIBUTE_RESTORE_IN_S3_ONLY, the original buffer to too small to hold new information. |
| RETURN_OUT_OF_RESOURCES | for lockbox with attribute LOCK_BOX_ATTRIBUTE_RESTORE_IN_S3_ONLY, no enough resource to save the information. |
| RETURN_ACCESS_DENIED | it is too late to invoke this interface |
| RETURN_NOT_STARTED | it is too early to invoke this interface |
| RETURN_UNSUPPORTED | the service is not supported by implementaion. |