15#ifndef __EFI_HASH2_PROTOCOL_H__
16#define __EFI_HASH2_PROTOCOL_H__
18#define EFI_HASH2_SERVICE_BINDING_PROTOCOL_GUID \
20 0xda836f8d, 0x217f, 0x4ca0, { 0x99, 0xc2, 0x1c, 0xa4, 0xe1, 0x60, 0x77, 0xea } \
23#define EFI_HASH2_PROTOCOL_GUID \
25 0x55b1d734, 0xc5e1, 0x49db, { 0x96, 0x47, 0xb1, 0x6a, 0xfb, 0xe, 0x30, 0x5b } \
45typedef UINT8 EFI_MD5_HASH2[16];
46typedef UINT8 EFI_SHA1_HASH2[20];
47typedef UINT8 EFI_SHA224_HASH2[28];
48typedef UINT8 EFI_SHA256_HASH2[32];
49typedef UINT8 EFI_SHA384_HASH2[48];
50typedef UINT8 EFI_SHA512_HASH2[64];
53 EFI_MD5_HASH2 Md5Hash;
54 EFI_SHA1_HASH2 Sha1Hash;
55 EFI_SHA224_HASH2 Sha224Hash;
56 EFI_SHA256_HASH2 Sha256Hash;
57 EFI_SHA384_HASH2 Sha384Hash;
58 EFI_SHA512_HASH2 Sha512Hash;
193extern EFI_GUID gEfiHash2ServiceBindingProtocolGuid;
194extern EFI_GUID gEfiHash2ProtocolGuid;
EFI_STATUS(EFIAPI * EFI_HASH2_HASH_FINAL)(IN CONST EFI_HASH2_PROTOCOL *This, IN OUT EFI_HASH2_OUTPUT *Hash)
EFI_STATUS(EFIAPI * EFI_HASH2_HASH_INIT)(IN CONST EFI_HASH2_PROTOCOL *This, IN CONST EFI_GUID *HashAlgorithm)
EFI_STATUS(EFIAPI * EFI_HASH2_HASH)(IN CONST EFI_HASH2_PROTOCOL *This, IN CONST EFI_GUID *HashAlgorithm, IN CONST UINT8 *Message, IN UINTN MessageSize, IN OUT EFI_HASH2_OUTPUT *Hash)
EFI_STATUS(EFIAPI * EFI_HASH2_GET_HASH_SIZE)(IN CONST EFI_HASH2_PROTOCOL *This, IN CONST EFI_GUID *HashAlgorithm, OUT UINTN *HashSize)
EFI_STATUS(EFIAPI * EFI_HASH2_HASH_UPDATE)(IN CONST EFI_HASH2_PROTOCOL *This, IN CONST UINT8 *Message, IN UINTN MessageSize)