From eafbd7a2325e39480c5be71cc8f456c78f1bfed0 Mon Sep 17 00:00:00 2001 From: Dandan Bi Date: Mon, 9 May 2016 19:53:00 +0800 Subject: Security/OpalPasswordDxe: Enhance the logic in RouteConfig/ExtractConfig Make the implementation of RouteConfig/ExtractConfig function follow the UEFI spec. Cc: Eric Dong Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi Reviewed-by: Eric Dong --- SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'SecurityPkg/Tcg/Opal') diff --git a/SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c b/SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c index 3fb3553f27..33f74dd4a3 100644 --- a/SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c +++ b/SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c @@ -30,6 +30,8 @@ extern UINT8 OpalPasswordFormBin[]; // extern UINT8 OpalPasswordDxeStrings[]; +CHAR16 OpalPasswordStorageName[] = L"OpalHiiConfig"; + EFI_HII_CONFIG_ACCESS_PROTOCOL gHiiConfigAccessProtocol; // @@ -1145,6 +1147,13 @@ RouteConfig( return (EFI_INVALID_PARAMETER); } + *Progress = Configuration; + if (!HiiIsConfigHdrMatch (Configuration, &gHiiSetupVariableGuid, OpalPasswordStorageName)) { + return EFI_NOT_FOUND; + } + + *Progress = Configuration + StrLen (Configuration); + return EFI_SUCCESS; } @@ -1192,6 +1201,12 @@ ExtractConfig( return (EFI_INVALID_PARAMETER); } + *Progress = Request; + if ((Request != NULL) && + !HiiIsConfigHdrMatch (Request, &gHiiSetupVariableGuid, OpalPasswordStorageName)) { + return EFI_NOT_FOUND; + } + // // Convert Buffer Data to by helper function BlockToConfig( ) // -- cgit v1.2.3