TianoCore EDK2 master
Loading...
Searching...
No Matches
VarCheck.h
Go to the documentation of this file.
1
9#ifndef _VARIABLE_CHECK_H_
10#define _VARIABLE_CHECK_H_
11
12#include <Uefi/UefiSpec.h>
13
15
16#define EDKII_VAR_CHECK_PROTOCOL_GUID {\
17 0xaf23b340, 0x97b4, 0x4685, { 0x8d, 0x4f, 0xa3, 0xf2, 0x81, 0x69, 0xb2, 0x1d } \
18};
19
20typedef EFI_SET_VARIABLE VAR_CHECK_SET_VARIABLE_CHECK_HANDLER;
21
37typedef
40 IN VAR_CHECK_SET_VARIABLE_CHECK_HANDLER Handler
41 );
42
43#define VAR_CHECK_VARIABLE_PROPERTY_REVISION 0x0001
44//
45// 1. Set by VariableLock PROTOCOL
46// 2. Set by VarCheck PROTOCOL
47//
48// If set, other fields for check will be ignored.
49//
50#define VAR_CHECK_VARIABLE_PROPERTY_READ_ONLY BIT0
51
52typedef struct {
53 UINT16 Revision;
54 UINT16 Property;
55 UINT32 Attributes;
56 UINTN MinSize;
57 UINTN MaxSize;
59
60typedef struct {
61 EFI_GUID *Guid;
62 CHAR16 *Name;
63 VAR_CHECK_VARIABLE_PROPERTY VariableProperty;
65
83typedef
86 IN CHAR16 *Name,
87 IN EFI_GUID *Guid,
88 IN VAR_CHECK_VARIABLE_PROPERTY *VariableProperty
89 );
90
103typedef
106 IN CHAR16 *Name,
107 IN EFI_GUID *Guid,
108 OUT VAR_CHECK_VARIABLE_PROPERTY *VariableProperty
109 );
110
112 EDKII_VAR_CHECK_REGISTER_SET_VARIABLE_CHECK_HANDLER RegisterSetVariableCheckHandler;
113 EDKII_VAR_CHECK_VARIABLE_PROPERTY_SET VariablePropertySet;
114 EDKII_VAR_CHECK_VARIABLE_PROPERTY_GET VariablePropertyGet;
115};
116
117extern EFI_GUID gEdkiiVarCheckProtocolGuid;
118
119#endif
UINT64 UINTN
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
EFI_STATUS(EFIAPI * EFI_SET_VARIABLE)(IN CHAR16 *VariableName, IN EFI_GUID *VendorGuid, IN UINT32 Attributes, IN UINTN DataSize, IN VOID *Data)
Definition: UefiSpec.h:781
EFI_STATUS(EFIAPI * EDKII_VAR_CHECK_REGISTER_SET_VARIABLE_CHECK_HANDLER)(IN VAR_CHECK_SET_VARIABLE_CHECK_HANDLER Handler)
Definition: VarCheck.h:39
EFI_STATUS(EFIAPI * EDKII_VAR_CHECK_VARIABLE_PROPERTY_GET)(IN CHAR16 *Name, IN EFI_GUID *Guid, OUT VAR_CHECK_VARIABLE_PROPERTY *VariableProperty)
Definition: VarCheck.h:105
EFI_STATUS(EFIAPI * EDKII_VAR_CHECK_VARIABLE_PROPERTY_SET)(IN CHAR16 *Name, IN EFI_GUID *Guid, IN VAR_CHECK_VARIABLE_PROPERTY *VariableProperty)
Definition: VarCheck.h:85
Definition: Base.h:213