mirror of https://github.com/acidanthera/audk.git
51 lines
1.3 KiB
C
51 lines
1.3 KiB
C
/** @file -- VarCheckPolicyLibTraditional.c
|
|
This is an instance of a VarCheck lib constructor for traditional SMM.
|
|
|
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
|
|
|
**/
|
|
|
|
#include <Library/SmmMemLib.h>
|
|
|
|
#include "VarCheckPolicyLib.h"
|
|
|
|
/**
|
|
Traditional constructor function of VarCheckPolicyLib to invoke common
|
|
constructor routine.
|
|
|
|
@param[in] ImageHandle The firmware allocated handle for the EFI image.
|
|
@param[in] SystemTable A pointer to the EFI System Table.
|
|
|
|
@retval EFI_SUCCESS The constructor executed correctly.
|
|
|
|
**/
|
|
EFI_STATUS
|
|
EFIAPI
|
|
VarCheckPolicyLibTraditionalConstructor (
|
|
IN EFI_HANDLE ImageHandle,
|
|
IN EFI_SYSTEM_TABLE *SystemTable
|
|
)
|
|
{
|
|
return VarCheckPolicyLibCommonConstructor ();
|
|
}
|
|
|
|
/**
|
|
This function is wrapper function to validate the buffer.
|
|
|
|
@param Buffer The buffer start address to be checked.
|
|
@param Length The buffer length to be checked.
|
|
|
|
@retval TRUE This buffer is valid per processor architecture and not overlap with SMRAM.
|
|
@retval FALSE This buffer is not valid per processor architecture or overlap with SMRAM.
|
|
**/
|
|
BOOLEAN
|
|
EFIAPI
|
|
VarCheckPolicyIsBufferOutsideValid (
|
|
IN EFI_PHYSICAL_ADDRESS Buffer,
|
|
IN UINT64 Length
|
|
)
|
|
{
|
|
return SmmIsBufferOutsideSmmValid (Buffer, Length);
|
|
}
|