]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Library/VarCheckPolicyLib/VarCheckPolicyLib.h
MdeModulePkg/VarCheckPolicyLib: implement standalone MM version
[mirror_edk2.git] / MdeModulePkg / Library / VarCheckPolicyLib / VarCheckPolicyLib.h
1 /** @file -- VarCheckPolicyLib.h
2 This internal header file defines the common interface of constructor for
3 VarCheckPolicyLib.
4
5 Copyright (c) Microsoft Corporation. All rights reserved.
6 SPDX-License-Identifier: BSD-2-Clause-Patent
7
8 **/
9
10 #ifndef _VAR_CHECK_POLICY_LIB_H_
11 #define _VAR_CHECK_POLICY_LIB_H_
12
13 /**
14 Common constructor function of VarCheckPolicyLib to register VarCheck handler
15 and SW MMI handlers.
16
17 @retval EFI_SUCCESS The constructor executed correctly.
18
19 **/
20 EFI_STATUS
21 EFIAPI
22 VarCheckPolicyLibCommonConstructor (
23 VOID
24 );
25
26 /**
27 This function is wrapper function to validate the buffer.
28
29 @param Buffer The buffer start address to be checked.
30 @param Length The buffer length to be checked.
31
32 @retval TRUE This buffer is valid per processor architecture and not overlap with SMRAM/MMRAM.
33 @retval FALSE This buffer is not valid per processor architecture or overlap with SMRAM/MMRAM.
34 **/
35 BOOLEAN
36 EFIAPI
37 VarCheckPolicyIsBufferOutsideValid (
38 IN EFI_PHYSICAL_ADDRESS Buffer,
39 IN UINT64 Length
40 );
41
42 #endif // _VAR_CHECK_POLICY_LIB_H_