]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Security/OpalPasswordDxe: Enhance the logic in RouteConfig/ExtractConfig
authorDandan Bi <dandan.bi@intel.com>
Mon, 9 May 2016 11:53:00 +0000 (19:53 +0800)
committerStar Zeng <star.zeng@intel.com>
Wed, 11 May 2016 03:25:52 +0000 (11:25 +0800)
Make the implementation of RouteConfig/ExtractConfig function
follow the UEFI spec.

Cc: Eric Dong <eric.dong@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c

index 3fb3553f27f807debdc07f6aad5fe1ddf46e18ac..33f74dd4a3475ae9e3ada018604b09e9d286ddd7 100644 (file)
@@ -30,6 +30,8 @@ extern UINT8  OpalPasswordFormBin[];
 //\r
 extern UINT8  OpalPasswordDxeStrings[];\r
 \r
+CHAR16  OpalPasswordStorageName[] = L"OpalHiiConfig";\r
+\r
 EFI_HII_CONFIG_ACCESS_PROTOCOL gHiiConfigAccessProtocol;\r
 \r
 //\r
@@ -1145,6 +1147,13 @@ RouteConfig(
     return (EFI_INVALID_PARAMETER);\r
   }\r
 \r
+  *Progress = Configuration;\r
+  if (!HiiIsConfigHdrMatch (Configuration, &gHiiSetupVariableGuid, OpalPasswordStorageName)) {\r
+    return EFI_NOT_FOUND;\r
+  }\r
+\r
+  *Progress = Configuration + StrLen (Configuration);\r
+\r
   return EFI_SUCCESS;\r
 }\r
 \r
@@ -1192,6 +1201,12 @@ ExtractConfig(
     return (EFI_INVALID_PARAMETER);\r
   }\r
 \r
+  *Progress = Request;\r
+  if ((Request != NULL) &&\r
+    !HiiIsConfigHdrMatch (Request, &gHiiSetupVariableGuid, OpalPasswordStorageName)) {\r
+    return EFI_NOT_FOUND;\r
+  }\r
+\r
   //\r
   // Convert Buffer Data to <ConfigResp> by helper function BlockToConfig( )\r
   //\r