]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalDriver.c
SecurityPkg OpalPasswordDxe: Use PP actions to enable BlockSID
[mirror_edk2.git] / SecurityPkg / Tcg / Opal / OpalPasswordDxe / OpalDriver.c
index bd12d5ad8010f3ecd9c5ab905ad82ae34c1876a1..cd0c5a4096a083d5eebb8baa66ac1d81ab4e7d12 100644 (file)
@@ -240,6 +240,7 @@ OpalDriverPopUpHddPassword (
   }\r
 \r
   UnicodeStrToAsciiStrS (Unicode, Ascii, MAX_PASSWORD_SIZE + 1);\r
+  ZeroMem (Unicode, sizeof (Unicode));\r
 \r
   return Ascii;\r
 }\r
@@ -416,28 +417,15 @@ ReadyToBootCallback (
   IN VOID             *Context\r
   )\r
 {\r
-  EFI_STATUS          Status;\r
-  OPAL_DRIVER_DEVICE* Itr;\r
-  TCG_RESULT          Result;\r
-  OPAL_EXTRA_INFO_VAR OpalExtraInfo;\r
-  UINTN               DataSize;\r
-  OPAL_SESSION        Session;\r
+  OPAL_DRIVER_DEVICE                         *Itr;\r
+  TCG_RESULT                                 Result;\r
+  OPAL_SESSION                               Session;\r
+  UINT32                                     PpStorageFlag;\r
 \r
   gBS->CloseEvent (Event);\r
 \r
-  DataSize = sizeof (OPAL_EXTRA_INFO_VAR);\r
-  Status = gRT->GetVariable (\r
-                  OPAL_EXTRA_INFO_VAR_NAME,\r
-                  &gOpalExtraInfoVariableGuid,\r
-                  NULL,\r
-                  &DataSize,\r
-                  &OpalExtraInfo\r
-                  );\r
-  if (EFI_ERROR (Status)) {\r
-    return;\r
-  }\r
-\r
-  if (OpalExtraInfo.EnableBlockSid == TRUE) {\r
+  PpStorageFlag = Tcg2PhysicalPresenceLibGetManagementFlags ();\r
+  if ((PpStorageFlag & TCG2_BIOS_STORAGE_MANAGEMENT_FLAG_ENABLE_BLOCK_SID) != 0) {\r
     //\r
     // Send BlockSID command to each Opal disk\r
     //\r