summaryrefslogtreecommitdiff
path: root/MdeModulePkg
diff options
context:
space:
mode:
authoreric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524>2009-12-22 07:16:55 +0000
committereric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524>2009-12-22 07:16:55 +0000
commit48a0e6bfbd736ecd28726308808f5a8e736c0657 (patch)
treede2529c7307d269c239a6748d2e551ec65cd86c4 /MdeModulePkg
parent81c5255cdfb07ebd5fea5ccc1c00f544e70f7977 (diff)
downloadedk2-48a0e6bfbd736ecd28726308808f5a8e736c0657.zip
edk2-48a0e6bfbd736ecd28726308808f5a8e736c0657.tar.gz
edk2-48a0e6bfbd736ecd28726308808f5a8e736c0657.tar.bz2
add error handling for input parameter.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9583 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg')
-rw-r--r--MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c5
-rw-r--r--MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c7
2 files changed, 11 insertions, 1 deletions
diff --git a/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c b/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c
index fd0228d..ee562d7 100644
--- a/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c
+++ b/MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariable.c
@@ -1153,6 +1153,11 @@ EmuSetVariable (
if (VariableName == NULL || VariableName[0] == 0 || VendorGuid == NULL) {
return EFI_INVALID_PARAMETER;
}
+
+ if (DataSize != 0 && Data == NULL) {
+ return EFI_INVALID_PARAMETER;
+ }
+
//
// Make sure if runtime bit is set, boot service bit is set also
//
diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
index a4a2637..99fd235 100644
--- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
+++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
@@ -1928,7 +1928,12 @@ RuntimeServiceSetVariable (
//
if (VariableName == NULL || VariableName[0] == 0 || VendorGuid == NULL) {
return EFI_INVALID_PARAMETER;
- }
+ }
+
+ if (DataSize != 0 && Data == NULL) {
+ return EFI_INVALID_PARAMETER;
+ }
+
//
// Make sure if runtime bit is set, boot service bit is set also
//