]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdeModulePkg/EbcDebugger: Add check for invalid 'CommandArg'
authorHao Wu <hao.a.wu@intel.com>
Thu, 24 Nov 2016 02:26:06 +0000 (10:26 +0800)
committerHao Wu <hao.a.wu@intel.com>
Fri, 25 Nov 2016 05:34:17 +0000 (13:34 +0800)
Add checks for the return value of function Atoi() in EdbCmdBreakpoint.c.
If the input parameter 'CommandArg' contains non-digit character, print
corresponding error message.

Cc: Jiewen Yao <jiewen.yao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
MdeModulePkg/Universal/EbcDxe/EbcDebugger/EdbCmdBreakpoint.c

index 4be6dd42b6c23ee061d01abd025a8b95cde8c51d..f06963f7d751fb374ce1d16de4fc7c07de9c024e 100644 (file)
@@ -1,6 +1,6 @@
 /*++\r
 \r
-Copyright (c) 2007, Intel Corporation\r
+Copyright (c) 2007 - 2016, Intel Corporation\r
 All rights reserved. This program and the accompanying materials\r
 are licensed and made available under the terms and conditions of the BSD License\r
 which accompanies this distribution.  The full text of the license may be found at\r
@@ -461,6 +461,10 @@ Returns:
   // Get breakpoint index\r
   //\r
   Index = Atoi(CommandArg);\r
+  if (Index == (UINTN) -1) {\r
+    EDBPrint (L"BreakpointClear Argument error!\n");\r
+    return EFI_DEBUG_CONTINUE;\r
+  }\r
 \r
   if ((Index >= EFI_DEBUGGER_BREAKPOINT_MAX) ||\r
       (Index >= DebuggerPrivate->DebuggerBreakpointCount)) {\r
@@ -534,6 +538,10 @@ Returns:
   // Get breakpoint index\r
   //\r
   Index = Atoi(CommandArg);\r
+  if (Index == (UINTN) -1) {\r
+    EDBPrint (L"BreakpointDisable Argument error!\n");\r
+    return EFI_DEBUG_CONTINUE;\r
+  }\r
 \r
   //\r
   // Disable breakpoint\r
@@ -598,6 +606,10 @@ Returns:
   // Get breakpoint index\r
   //\r
   Index = Atoi(CommandArg);\r
+  if (Index == (UINTN) -1) {\r
+    EDBPrint (L"BreakpointEnable Argument error!\n");\r
+    return EFI_DEBUG_CONTINUE;\r
+  }\r
 \r
   //\r
   // Enable breakpoint\r