TianoCore EDK2 master
Loading...
Searching...
No Matches
FvReportPei.h
Go to the documentation of this file.
1
9#ifndef __FV_REPORT_PEI_H__
10#define __FV_REPORT_PEI_H__
11
12#include <PiPei.h>
13
15
18
20#include <Library/PcdLib.h>
21#include <Library/HobLib.h>
22#include <Library/DebugLib.h>
27
28#define HASH_INFO_PTR(PreHashedFvPpi) \
29 (HASH_INFO *)((UINT8 *)(PreHashedFvPpi) + sizeof (EDKII_PEI_FIRMWARE_VOLUME_INFO_PREHASHED_FV_PPI))
30
31#define HASH_VALUE_PTR(HashInfo) \
32 (VOID *)((UINT8 *)(HashInfo) + sizeof (HASH_INFO))
33
50typedef
51BOOLEAN
52(EFIAPI *HASH_ALL_METHOD)(
53 IN CONST VOID *Data,
54 IN UINTN DataSize,
55 OUT UINT8 *HashValue
56 );
57
68typedef
69BOOLEAN
70(EFIAPI *HASH_INIT_METHOD)(
71 OUT VOID *HashContext
72 );
73
86typedef
87BOOLEAN
88(EFIAPI *HASH_UPDATE_METHOD)(
89 IN OUT VOID *HashContext,
90 IN CONST VOID *Data,
91 IN UINTN DataSize
92 );
93
106typedef
107BOOLEAN
108(EFIAPI *HASH_FINAL_METHOD)(
109 IN OUT VOID *HashContext,
110 OUT UINT8 *HashValue
111 );
112
113typedef struct {
114 UINT16 HashAlgId;
115 UINTN HashSize;
116 HASH_INIT_METHOD HashInit;
118 HASH_FINAL_METHOD HashFinal;
119 HASH_ALL_METHOD HashAll;
121
122#endif //__FV_REPORT_PEI_H__
UINT64 UINTN
BOOLEAN(EFIAPI * HASH_ALL_METHOD)(IN CONST VOID *Data, IN UINTN DataSize, OUT UINT8 *HashValue)
Definition: FvReportPei.h:52
BOOLEAN(EFIAPI * HASH_INIT_METHOD)(OUT VOID *HashContext)
Definition: FvReportPei.h:70
BOOLEAN(EFIAPI * HASH_FINAL_METHOD)(IN OUT VOID *HashContext, OUT UINT8 *HashValue)
Definition: FvReportPei.h:108
BOOLEAN(EFIAPI * HASH_UPDATE_METHOD)(IN OUT VOID *HashContext, IN CONST VOID *Data, IN UINTN DataSize)
Definition: FvReportPei.h:88
EFI_STATUS EFIAPI HashUpdate(IN HASH_HANDLE HashHandle, IN VOID *DataToHash, IN UINTN DataToHashLen)
Definition: HashLibTdx.c:69
#define CONST
Definition: Base.h:259
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284