summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDandan Bi <dandan.bi@intel.com>2016-05-09 19:53:00 +0800
committerJeff Fan <jeff.fan@intel.com>2016-12-09 13:36:03 +0800
commit472a3f04b97983912f6f7648896aa4478b2affc4 (patch)
tree26fe311e685fe60ef07cf408f454e16f0c3e08dd
parent9e47bc0c793d7f3b73db3d297e5529c5e9dea06c (diff)
downloadedk2-472a3f04b97983912f6f7648896aa4478b2affc4.zip
edk2-472a3f04b97983912f6f7648896aa4478b2affc4.tar.gz
edk2-472a3f04b97983912f6f7648896aa4478b2affc4.tar.bz2
Security/OpalPasswordDxe: Enhance the logic in RouteConfig/ExtractConfig
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> (cherry picked from commit eafbd7a2325e39480c5be71cc8f456c78f1bfed0)
-rw-r--r--SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c b/SecurityPkg/Tcg/Opal/OpalPasswordDxe/OpalHii.c
index 1a762f2..4f82c1c 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;
//
@@ -1232,6 +1234,13 @@ RouteConfig(
return (EFI_INVALID_PARAMETER);
}
+ *Progress = Configuration;
+ if (!HiiIsConfigHdrMatch (Configuration, &gHiiSetupVariableGuid, OpalPasswordStorageName)) {
+ return EFI_NOT_FOUND;
+ }
+
+ *Progress = Configuration + StrLen (Configuration);
+
return EFI_SUCCESS;
}
@@ -1279,6 +1288,12 @@ ExtractConfig(
return (EFI_INVALID_PARAMETER);
}
+ *Progress = Request;
+ if ((Request != NULL) &&
+ !HiiIsConfigHdrMatch (Request, &gHiiSetupVariableGuid, OpalPasswordStorageName)) {
+ return EFI_NOT_FOUND;
+ }
+
//
// Convert Buffer Data to <ConfigResp> by helper function BlockToConfig( )
//