summaryrefslogtreecommitdiff
path: root/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c
diff options
context:
space:
mode:
authorjcarsey <jcarsey@6f19259b-4bc3-4df7-8a09-765794883524>2011-03-30 19:33:03 +0000
committerjcarsey <jcarsey@6f19259b-4bc3-4df7-8a09-765794883524>2011-03-30 19:33:03 +0000
commit33c031ee2092282a069ce07d30202082ceaf61fe (patch)
treeaf76c06a5c4f476e9dfe23096ff2bc0295beaee1 /ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c
parent6b825919f1c16b07b5cac7fc5e298fbeb530d888 (diff)
downloadedk2-platforms-33c031ee2092282a069ce07d30202082ceaf61fe.tar.xz
pointer verification (not NULL) and buffer overrun fixes.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11459 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c')
-rw-r--r--ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c
index 226dd90397..cccec126b4 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c
@@ -310,7 +310,9 @@ ConvertStringToGuid (
TempCopy = StrnCatGrow(&TempCopy, NULL, StringGuid, 0);
Walker = TempCopy;
TempSpot = StrStr(Walker, L"-");
- *TempSpot = CHAR_NULL;
+ if (TempSpot != NULL) {
+ *TempSpot = CHAR_NULL;
+ }
Status = ShellConvertStringToUint64(Walker, &TempVal, TRUE, FALSE);
if (EFI_ERROR(Status)) {
FreePool(TempCopy);
@@ -319,7 +321,9 @@ ConvertStringToGuid (
Guid->Data1 = (UINT32)TempVal;
Walker += 9;
TempSpot = StrStr(Walker, L"-");
- *TempSpot = CHAR_NULL;
+ if (TempSpot != NULL) {
+ *TempSpot = CHAR_NULL;
+ }
Status = ShellConvertStringToUint64(Walker, &TempVal, TRUE, FALSE);
if (EFI_ERROR(Status)) {
FreePool(TempCopy);
@@ -328,7 +332,9 @@ ConvertStringToGuid (
Guid->Data2 = (UINT16)TempVal;
Walker += 5;
TempSpot = StrStr(Walker, L"-");
- *TempSpot = CHAR_NULL;
+ if (TempSpot != NULL) {
+ *TempSpot = CHAR_NULL;
+ }
Status = ShellConvertStringToUint64(Walker, &TempVal, TRUE, FALSE);
if (EFI_ERROR(Status)) {
FreePool(TempCopy);