diff options
author | Jian J Wang <jian.j.wang@intel.com> | 2018-02-06 13:12:36 +0800 |
---|---|---|
committer | Ruiyu Ni <ruiyu.ni@intel.com> | 2018-02-08 12:47:17 +0800 |
commit | 7823611cdad37cc3821526d325bc120f322a2d96 (patch) | |
tree | 776299e1e5b75f59424566f8d7b9e6e618d1379f | |
parent | a012bf6e3e08d1fc878ffb271932e3cbce4a71f6 (diff) | |
download | edk2-7823611cdad37cc3821526d325bc120f322a2d96.tar.gz edk2-7823611cdad37cc3821526d325bc120f322a2d96.tar.bz2 edk2-7823611cdad37cc3821526d325bc120f322a2d96.zip |
MdeModulePkg/PiSmmCore: add API parameter check
The Heap Guard feature wrapped SmmInternalFreePagesEx with
SmmInternalFreePagesExWithGuard but didn't add necessary
parameter check. This patch fixes this situation.
Cc: Star Zeng <star.zeng@intel.com>
Cc: Eric Dong <eric.dong@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jian J Wang <jian.j.wang@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
-rw-r--r-- | MdeModulePkg/Core/PiSmmCore/HeapGuard.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/MdeModulePkg/Core/PiSmmCore/HeapGuard.c b/MdeModulePkg/Core/PiSmmCore/HeapGuard.c index 063a330b18..c5ffb26342 100644 --- a/MdeModulePkg/Core/PiSmmCore/HeapGuard.c +++ b/MdeModulePkg/Core/PiSmmCore/HeapGuard.c @@ -1205,6 +1205,10 @@ SmmInternalFreePagesExWithGuard ( EFI_PHYSICAL_ADDRESS MemoryToFree;
UINTN PagesToFree;
+ if (((Memory & EFI_PAGE_MASK) != 0) || (Memory == 0) || (NumberOfPages == 0)) {
+ return EFI_INVALID_PARAMETER;
+ }
+
MemoryToFree = Memory;
PagesToFree = NumberOfPages;
|