]> git.proxmox.com Git - mirror_edk2.git/commitdiff
enhanced security check.
authorvanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 13 Feb 2009 03:36:02 +0000 (03:36 +0000)
committervanjeff <vanjeff@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 13 Feb 2009 03:36:02 +0000 (03:36 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@7516 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassImpl.c
MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.c
MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c
MdeModulePkg/Universal/SetupBrowserDxe/Setup.c

index 15fdad573d91f2c151175f2ba098cba47e5d2e67..f80895bda4567afb58c29f65bf1297377383c1d6 100644 (file)
@@ -14,14 +14,14 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 \r
 #include "UsbMassImpl.h"\r
 \r
+#define USB_MASS_TRANSPORT_COUNT    3\r
 //\r
 // Array of USB transport interfaces. \r
 //\r
-USB_MASS_TRANSPORT *mUsbMassTransport[] = {\r
+USB_MASS_TRANSPORT *mUsbMassTransport[USB_MASS_TRANSPORT_COUNT] = {\r
   &mUsbCbi0Transport,\r
   &mUsbCbi1Transport,\r
   &mUsbBotTransport,\r
-  NULL\r
 };\r
 \r
 EFI_DRIVER_BINDING_PROTOCOL gUSBMassDriverBinding = {\r
@@ -424,7 +424,7 @@ UsbMassInitTransport (
   // If not found, return EFI_UNSUPPORTED.\r
   // If found, execute USB_MASS_TRANSPORT.Init() to initialize the transport context.\r
   //\r
-  for (Index = 0; mUsbMassTransport[Index] != NULL; Index++) {\r
+  for (Index = 0; Index < USB_MASS_TRANSPORT_COUNT; Index++) {\r
     *Transport = mUsbMassTransport[Index];\r
 \r
     if (Interface.InterfaceProtocol == (*Transport)->Protocol) {\r
@@ -780,7 +780,7 @@ USBMassDriverBindingSupported (
   // If not found, return EFI_UNSUPPORTED.\r
   // If found, execute USB_MASS_TRANSPORT.Init() to initialize the transport context.\r
   //\r
-  for (Index = 0; mUsbMassTransport[Index] != NULL; Index++) {\r
+  for (Index = 0; Index < USB_MASS_TRANSPORT_COUNT; Index++) {\r
     Transport = mUsbMassTransport[Index];\r
     if (Interface.InterfaceProtocol == Transport->Protocol) {\r
       Status = Transport->Init (UsbIo, NULL);\r
index 24abaa654bd3ad3e4c71f91e0adf6cc5abb62f2a..86c1891668c7af0854d731adfcccbe053c52cfff 100644 (file)
@@ -82,7 +82,7 @@ LIST_ENTRY                   mMappingDataBase = INITIALIZE_LIST_HEAD_VARIABLE (m
 EFI_HANDLE                   *mDevicePathHandleBuffer;\r
 EFI_HANDLE                   *mDriverImageHandleBuffer;\r
 \r
-UINTN                        mSelectedCtrIndex;\r
+INTN                         mSelectedCtrIndex;\r
 EFI_STRING_ID                mControllerToken[MAX_CHOICE_NUM];\r
 UINTN                        mDriverImageHandleCount;\r
 EFI_STRING_ID                mDriverImageToken[MAX_CHOICE_NUM];\r
@@ -630,7 +630,8 @@ UpdateBindingDriverSelectPage (
   // Switch the item callback key value to its NO. in mDevicePathHandleBuffer\r
   //\r
   mSelectedCtrIndex = KeyValue - KEY_VALUE_DEVICE_OFFSET;\r
-  ASSERT (mSelectedCtrIndex < MAX_CHOICE_NUM);\r
+  ASSERT (mSelectedCtrIndex > 0 && mSelectedCtrIndex < MAX_CHOICE_NUM);\r
+\r
   mLastSavedDriverImageNum = 0;\r
   //\r
   // Clear all the content in dynamic page\r
@@ -927,6 +928,7 @@ UpdatePrioritySelectPage (
       // Check the driver DriverImage's order number in mapping database\r
       //\r
       DriverImageNO = 0;\r
+      ASSERT (mSelectedCtrIndex < MAX_CHOICE_NUM);\r
       CheckMapping (\r
               mControllerDevicePathProtocol[mSelectedCtrIndex],\r
               LoadedImageDevicePath,\r
@@ -1027,6 +1029,7 @@ CommintChanges (
   //  Following code will be run if user select 'commint changes' in third page\r
   //  user enter 'Commit Changes' to save the mapping database\r
   //\r
+  ASSERT (mSelectedCtrIndex < MAX_CHOICE_NUM);\r
   DeleteDriverImage (mControllerDevicePathProtocol[mSelectedCtrIndex], NULL, &mMappingDataBase);\r
   for (SelectedDriverImageNum = 0; SelectedDriverImageNum < mSelectedDriverImageNum; SelectedDriverImageNum++) {\r
     //\r
index e9fd15e7d904c938de210e08c2a36f806c68e268..a1367574b0df0c7f11957def1b57ff1c882f0675 100644 (file)
@@ -188,8 +188,8 @@ DisplayPageFrame (
   CHAR16                 *StrFrontPageBanner;\r
   UINTN                  Row;\r
   EFI_SCREEN_DESCRIPTOR  LocalScreen;\r
-  UINTN                  RowIdx;\r
-  UINTN                  ColumnIdx;\r
+  UINT8                  RowIdx;\r
+  UINT8                  ColumnIdx;\r
 \r
   ZeroMem (&LocalScreen, sizeof (EFI_SCREEN_DESCRIPTOR));\r
   gST->ConOut->QueryMode (gST->ConOut, gST->ConOut->Mode->Mode, &LocalScreen.RightColumn, &LocalScreen.BottomRow);\r
index c1a79ab951b8d79563a6558cb7239e679b32ddbb..83feb0f9fef5ef66ae70ec08d3696df55f562ded 100644 (file)
@@ -2166,7 +2166,8 @@ GetIfrBinaryData (
   if (EFI_ERROR (Status)) {\r
     return Status;\r
   }\r
-\r
+  ASSERT (HiiPackageList != NULL);\r
+  \r
   //\r
   // Get Form package from this HII package List\r
   //\r