]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/PlatformDriverOverride/PlatOverMngr/PlatOverMngr.c
enhanced security check.
[mirror_edk2.git] / MdeModulePkg / Universal / PlatformDriverOverride / PlatOverMngr / PlatOverMngr.c
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