MdePkg[all]
1.08
|
Data Structures | |
union | EFI_HASH_OUTPUT |
struct | _EFI_HASH_PROTOCOL |
Macros | |
#define | EFI_HASH_SERVICE_BINDING_PROTOCOL_GUID |
#define | EFI_HASH_PROTOCOL_GUID |
#define | EFI_HASH_ALGORITHM_SHA1_GUID |
#define | EFI_HASH_ALGORITHM_SHA224_GUID |
#define | EFI_HASH_ALGORITHM_SHA256_GUID |
#define | EFI_HASH_ALGORITHM_SHA384_GUID |
#define | EFI_HASH_ALGORITHM_SHA512_GUID |
#define | EFI_HASH_ALGORTIHM_MD5_GUID |
#define | EFI_HASH_ALGORITHM_SHA1_NOPAD_GUID |
#define | EFI_HASH_ALGORITHM_SHA256_NOPAD_GUID |
Typedefs | |
typedef struct _EFI_HASH_PROTOCOL | EFI_HASH_PROTOCOL |
typedef UINT8 | EFI_MD5_HASH [16] |
typedef UINT8 | EFI_SHA1_HASH [20] |
typedef UINT8 | EFI_SHA224_HASH [28] |
typedef UINT8 | EFI_SHA256_HASH [32] |
typedef UINT8 | EFI_SHA384_HASH [48] |
typedef UINT8 | EFI_SHA512_HASH [64] |
typedef EFI_STATUS(EFIAPI * | EFI_HASH_GET_HASH_SIZE )(IN CONST EFI_HASH_PROTOCOL *This, IN CONST EFI_GUID *HashAlgorithm, OUT UINTN *HashSize) |
typedef EFI_STATUS(EFIAPI * | EFI_HASH_HASH )(IN CONST EFI_HASH_PROTOCOL *This, IN CONST EFI_GUID *HashAlgorithm, IN BOOLEAN Extend, IN CONST UINT8 *Message, IN UINT64 MessageSize, IN OUT EFI_HASH_OUTPUT *Hash) |
EFI_HASH_SERVICE_BINDING_PROTOCOL as defined in UEFI 2.0. EFI_HASH_PROTOCOL as defined in UEFI 2.0. The EFI Hash Service Binding Protocol is used to locate hashing services support provided by a driver and to create and destroy instances of the EFI Hash Protocol so that a multiple drivers can use the underlying hashing services.
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
#define EFI_HASH_ALGORITHM_SHA1_GUID |
#define EFI_HASH_ALGORITHM_SHA1_NOPAD_GUID |
#define EFI_HASH_ALGORITHM_SHA224_GUID |
#define EFI_HASH_ALGORITHM_SHA256_GUID |
#define EFI_HASH_ALGORITHM_SHA256_NOPAD_GUID |
#define EFI_HASH_ALGORITHM_SHA384_GUID |
#define EFI_HASH_ALGORITHM_SHA512_GUID |
#define EFI_HASH_ALGORTIHM_MD5_GUID |
#define EFI_HASH_PROTOCOL_GUID |
#define EFI_HASH_SERVICE_BINDING_PROTOCOL_GUID |
typedef EFI_STATUS(EFIAPI * EFI_HASH_GET_HASH_SIZE)(IN CONST EFI_HASH_PROTOCOL *This, IN CONST EFI_GUID *HashAlgorithm, OUT UINTN *HashSize) |
Returns the size of the hash which results from a specific algorithm.
[in] | This | Points to this instance of EFI_HASH_PROTOCOL. |
[in] | HashAlgorithm | Points to the EFI_GUID which identifies the algorithm to use. |
[out] | HashSize | Holds the returned size of the algorithm's hash. |
EFI_SUCCESS | Hash size returned successfully. |
EFI_INVALID_PARAMETER | HashSize is NULL or HashAlgorithm is NULL. |
EFI_UNSUPPORTED | The algorithm specified by HashAlgorithm is not supported by this driver. |
typedef EFI_STATUS(EFIAPI * EFI_HASH_HASH)(IN CONST EFI_HASH_PROTOCOL *This, IN CONST EFI_GUID *HashAlgorithm, IN BOOLEAN Extend, IN CONST UINT8 *Message, IN UINT64 MessageSize, IN OUT EFI_HASH_OUTPUT *Hash) |
Creates a hash for the specified message text.
[in] | This | Points to this instance of EFI_HASH_PROTOCOL. |
[in] | HashAlgorithm | Points to the EFI_GUID which identifies the algorithm to use. |
[in] | Extend | Specifies whether to create a new hash (FALSE) or extend the specified existing hash (TRUE). |
[in] | Message | Points to the start of the message. |
[in] | MessageSize | The size of Message, in bytes. |
[in,out] | Hash | On input, if Extend is TRUE, then this parameter holds a pointer to a pointer to an array containing the hash to extend. If Extend is FALSE, then this parameter holds a pointer to a pointer to a caller-allocated array that will receive the result of the hash computation. On output (regardless of the value of Extend), the array will contain the result of the hash computation. |
EFI_SUCCESS | Hash returned successfully. |
EFI_INVALID_PARAMETER | Message or Hash, HashAlgorithm is NULL or MessageSize is 0. MessageSize is not an integer multiple of block size. |
EFI_UNSUPPORTED | The algorithm specified by HashAlgorithm is not supported by this driver. Or, Extend is TRUE, and the algorithm doesn't support extending the hash. |
typedef struct _EFI_HASH_PROTOCOL EFI_HASH_PROTOCOL |
typedef UINT8 EFI_MD5_HASH[16] |
typedef UINT8 EFI_SHA1_HASH[20] |
typedef UINT8 EFI_SHA224_HASH[28] |
typedef UINT8 EFI_SHA256_HASH[32] |
typedef UINT8 EFI_SHA384_HASH[48] |
typedef UINT8 EFI_SHA512_HASH[64] |
EFI_GUID gEfiHashAlgorithmMD5Guid |
EFI_GUID gEfiHashAlgorithmSha1Guid |
EFI_GUID gEfiHashAlgorithmSha1NoPadGuid |
EFI_GUID gEfiHashAlgorithmSha224Guid |
EFI_GUID gEfiHashAlgorithmSha256Guid |
EFI_GUID gEfiHashAlgorithmSha256NoPadGuid |
EFI_GUID gEfiHashAlgorithmSha384Guid |
EFI_GUID gEfiHashAlgorithmSha512Guid |
EFI_GUID gEfiHashProtocolGuid |
EFI_GUID gEfiHashServiceBindingProtocolGuid |