]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkModulePkg/Universal/BdsDxe/BootMaint/BootOption.c
IntelFrameworkModulePkg BdsDxe: Remove redundant functions
[mirror_edk2.git] / IntelFrameworkModulePkg / Universal / BdsDxe / BootMaint / BootOption.c
index 5898fb31bb2b71909fd2c5480845878c19b5c2de..c4a0e17f3bf1b21f3dc175570b26618b3a1b2288 100644 (file)
@@ -5,7 +5,7 @@
 \r
   Boot option manipulation\r
 \r
-Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>\r
 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
@@ -872,7 +872,7 @@ BOpt_GetBootOptions (
   EFI_DEVICE_PATH_PROTOCOL  *DevicePath;\r
   UINTN                     MenuCount;\r
   UINT8                     *Ptr;\r
-  \r
+\r
   MenuCount         = 0;\r
   BootOrderListSize = 0;\r
   BootNextSize      = 0;\r
@@ -893,7 +893,7 @@ BOpt_GetBootOptions (
   if (BootOrderList == NULL) {\r
     return EFI_NOT_FOUND;\r
   }\r
-  \r
+\r
   //\r
   // Get the BootNext from the Var\r
   //\r
@@ -1007,7 +1007,7 @@ BOpt_GetBootOptions (
 \r
     NewLoadContext->FilePathListLength = *(UINT16 *) LoadOptionPtr;\r
     LoadOptionPtr += sizeof (UINT16);\r
-    \r
+\r
     StringSize = StrSize((UINT16*)LoadOptionPtr);\r
 \r
     NewLoadContext->Description = AllocateCopyPool (StrSize((UINT16*)LoadOptionPtr), LoadOptionPtr);\r
@@ -1099,7 +1099,7 @@ BOpt_AppendFileName (
   Str   = AllocateZeroPool (MaxLen * sizeof (CHAR16));\r
   ASSERT (Str != NULL);\r
 \r
-  TmpStr = AllocateZeroPool (MaxLen * sizeof (CHAR16)); \r
+  TmpStr = AllocateZeroPool (MaxLen * sizeof (CHAR16));\r
   ASSERT (TmpStr != NULL);\r
 \r
   StrCatS (Str, MaxLen, Str1);\r
@@ -1120,11 +1120,11 @@ BOpt_AppendFileName (
       //\r
 \r
       //\r
-      // Use TmpStr as a backup, as StrCpyS in BaseLib does not handle copy of two strings \r
+      // Use TmpStr as a backup, as StrCpyS in BaseLib does not handle copy of two strings\r
       // that overlap.\r
       //\r
       StrCpyS (TmpStr, MaxLen, Ptr + 3);\r
-      StrCpyS (LastSlash, MaxLen - (UINTN) (LastSlash - Str), TmpStr);\r
+      StrCpyS (LastSlash, MaxLen - ((UINTN) LastSlash - (UINTN) Str) / sizeof (CHAR16), TmpStr);\r
       Ptr = LastSlash;\r
     } else if (*Ptr == '\\' && *(Ptr + 1) == '.' && *(Ptr + 2) == '\\') {\r
       //\r
@@ -1132,11 +1132,11 @@ BOpt_AppendFileName (
       //\r
 \r
       //\r
-      // Use TmpStr as a backup, as StrCpyS in BaseLib does not handle copy of two strings \r
+      // Use TmpStr as a backup, as StrCpyS in BaseLib does not handle copy of two strings\r
       // that overlap.\r
       //\r
       StrCpyS (TmpStr, MaxLen, Ptr + 2);\r
-      StrCpyS (Ptr, MaxLen - (UINTN) (Ptr - Str), TmpStr);\r
+      StrCpyS (Ptr, MaxLen - ((UINTN) Ptr - (UINTN) Str) / sizeof (CHAR16), TmpStr);\r
       Ptr = LastSlash;\r
     } else if (*Ptr == '\\') {\r
       LastSlash = Ptr;\r
@@ -1146,7 +1146,7 @@ BOpt_AppendFileName (
   }\r
 \r
   FreePool (TmpStr);\r
-  \r
+\r
   return Str;\r
 }\r
 \r
@@ -1192,69 +1192,7 @@ BOpt_IsEfiImageName (
   return FALSE;\r
 }\r
 \r
-/**\r
-\r
-  Check whether current FileName point to a valid Efi Application\r
-\r
-  @param Dir       Pointer to current Directory\r
-  @param FileName  Pointer to current File name.\r
 \r
-  @retval TRUE      Is a valid Efi Application\r
-  @retval FALSE     not a valid Efi Application\r
-\r
-**/\r
-BOOLEAN\r
-BOpt_IsEfiApp (\r
-  IN EFI_FILE_HANDLE Dir,\r
-  IN UINT16          *FileName\r
-  )\r
-{\r
-  UINTN                       BufferSize;\r
-  EFI_IMAGE_DOS_HEADER        DosHdr;\r
-  UINT16                      Subsystem;\r
-  EFI_FILE_HANDLE             File;\r
-  EFI_STATUS                  Status;\r
-  EFI_IMAGE_OPTIONAL_HEADER_UNION PeHdr;\r
-\r
-  Status = Dir->Open (Dir, &File, FileName, EFI_FILE_MODE_READ, 0);\r
-\r
-  if (EFI_ERROR (Status)) {\r
-    return FALSE;\r
-  }\r
-\r
-  BufferSize = sizeof (EFI_IMAGE_DOS_HEADER);\r
-  File->Read (File, &BufferSize, &DosHdr);\r
-  if (DosHdr.e_magic != EFI_IMAGE_DOS_SIGNATURE) {\r
-    File->Close (File);\r
-    return FALSE;\r
-  }\r
-\r
-  File->SetPosition (File, DosHdr.e_lfanew);\r
-  BufferSize = sizeof (EFI_IMAGE_OPTIONAL_HEADER_UNION);\r
-  File->Read (File, &BufferSize, &PeHdr);\r
-  if (PeHdr.Pe32.Signature != EFI_IMAGE_NT_SIGNATURE) {\r
-    File->Close (File);\r
-    return FALSE;\r
-  }\r
-  //\r
-  // Determine PE type and read subsytem\r
-  //\r
-  if (PeHdr.Pe32.OptionalHeader.Magic == EFI_IMAGE_NT_OPTIONAL_HDR32_MAGIC) {\r
-    Subsystem = PeHdr.Pe32.OptionalHeader.Subsystem;\r
-  } else if (PeHdr.Pe32.OptionalHeader.Magic == EFI_IMAGE_NT_OPTIONAL_HDR64_MAGIC) {\r
-    Subsystem = PeHdr.Pe32Plus.OptionalHeader.Subsystem;\r
-  } else {\r
-    return FALSE;\r
-  }\r
-\r
-  if (Subsystem == EFI_IMAGE_SUBSYSTEM_EFI_APPLICATION) {\r
-    File->Close (File);\r
-    return TRUE;\r
-  } else {\r
-    File->Close (File);\r
-    return FALSE;\r
-  }\r
-}\r
 \r
 /**\r
 \r
@@ -1497,7 +1435,7 @@ BOpt_GetDriverOptions (
   if (DriverOrderList == NULL) {\r
     return EFI_NOT_FOUND;\r
   }\r
-  \r
+\r
   for (Index = 0; Index < DriverOrderListSize / sizeof (UINT16); Index++) {\r
     UnicodeSPrint (\r
       DriverString,\r
@@ -1676,20 +1614,20 @@ GetLegacyDeviceOrder (
   UINTN                     Index;\r
   UINTN                     OptionIndex;\r
   UINT16                    PageIdList[5];\r
-  UINTN                     PageNum;  \r
+  UINTN                     PageNum;\r
   UINTN                     VarSize;\r
-  UINT8                     *VarData;     \r
-  UINT8                     *WorkingVarData; \r
+  UINT8                     *VarData;\r
+  UINT8                     *WorkingVarData;\r
   LEGACY_DEV_ORDER_ENTRY    *DevOrder;\r
-  UINT16                    VarDevOrder;  \r
-  UINT8                     *DisMap;  \r
+  UINT16                    VarDevOrder;\r
+  UINT8                     *DisMap;\r
   BM_MENU_OPTION            *OptionMenu;\r
   BBS_TYPE                  BbsType;\r
   UINT8                     *LegacyOrder;\r
-  UINT8                     *OldData;  \r
+  UINT8                     *OldData;\r
   UINTN                     Pos;\r
   UINTN                     Bit;\r
-  \r
+\r
   ASSERT (CallbackData != NULL);\r
 \r
   PageIdList[0] = FORM_SET_FD_ORDER_ID;\r
@@ -1711,7 +1649,7 @@ GetLegacyDeviceOrder (
 \r
   for (Index = 0; Index < PageNum; Index++) {\r
     switch (PageIdList[Index]) {\r
-      \r
+\r
     case FORM_SET_FD_ORDER_ID:\r
       OptionMenu  = (BM_MENU_OPTION *) &LegacyFDMenu;\r
       BbsType     = BBS_FLOPPY;\r
@@ -1725,14 +1663,14 @@ GetLegacyDeviceOrder (
       LegacyOrder = CallbackData->BmmFakeNvData.LegacyHD;\r
       OldData     = CallbackData->BmmOldFakeNVData.LegacyHD;\r
       break;\r
-    \r
+\r
     case FORM_SET_CD_ORDER_ID:\r
       OptionMenu  = (BM_MENU_OPTION *) &LegacyCDMenu;\r
       BbsType     = BBS_CDROM;\r
       LegacyOrder = CallbackData->BmmFakeNvData.LegacyCD;\r
       OldData     = CallbackData->BmmOldFakeNVData.LegacyCD;\r
       break;\r
-    \r
+\r
     case FORM_SET_NET_ORDER_ID:\r
       OptionMenu  = (BM_MENU_OPTION *) &LegacyNETMenu;\r
       BbsType     = BBS_EMBED_NETWORK;\r
@@ -1748,7 +1686,7 @@ GetLegacyDeviceOrder (
       OldData     = CallbackData->BmmOldFakeNVData.LegacyBEV;\r
       break;\r
     }\r
-    \r
+\r
     if (NULL != VarData) {\r
       WorkingVarData = VarData;\r
       DevOrder    = (LEGACY_DEV_ORDER_ENTRY *) WorkingVarData;\r
@@ -1756,11 +1694,11 @@ GetLegacyDeviceOrder (
         if (DevOrder->BbsType == BbsType) {\r
           break;\r
         }\r
-    \r
+\r
         WorkingVarData  = (UINT8 *)((UINTN)WorkingVarData + sizeof (BBS_TYPE));\r
         WorkingVarData += *(UINT16 *) WorkingVarData;\r
         DevOrder = (LEGACY_DEV_ORDER_ENTRY *) WorkingVarData;\r
-      } \r
+      }\r
       for (OptionIndex = 0; OptionIndex < OptionMenu->MenuNumber; OptionIndex++) {\r
         VarDevOrder = *(UINT16 *) ((UINTN) DevOrder + sizeof (BBS_TYPE) + sizeof (UINT16) + OptionIndex * sizeof (UINT16));\r
          if (0xFF00 == (VarDevOrder & 0xFF00)) {\r
@@ -1771,17 +1709,17 @@ GetLegacyDeviceOrder (
         } else {\r
           LegacyOrder[OptionIndex] = (UINT8) (VarDevOrder & 0xFF);\r
         }\r
-      } \r
+      }\r
       CopyMem (OldData, LegacyOrder, 100);\r
     }\r
-  }  \r
+  }\r
 }\r
 \r
 /**\r
   Get driver option order from globalc DriverOptionMenu.\r
 \r
   @param CallbackData    The BMM context data.\r
-  \r
+\r
 **/\r
 VOID\r
 GetDriverOrder (\r