diff options
author | ydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-05-30 07:36:00 +0000 |
---|---|---|
committer | ydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-05-30 07:36:00 +0000 |
commit | bf4a3dbd4751b6411bdfc98bf3ac2c4f928bdfdf (patch) | |
tree | 1b7421c8c108caff2ee9ef1ade0126b249421a36 /SecurityPkg | |
parent | 650b87cc1be916e416965d5f58db921819cc199b (diff) | |
download | edk2-bf4a3dbd4751b6411bdfc98bf3ac2c4f928bdfdf.zip edk2-bf4a3dbd4751b6411bdfc98bf3ac2c4f928bdfdf.tar.gz edk2-bf4a3dbd4751b6411bdfc98bf3ac2c4f928bdfdf.tar.bz2 |
Add new interface GetVariable2 and GetEfiGlobalVariable2 to return more info. Also replace old interface with new one.
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13375 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'SecurityPkg')
4 files changed, 19 insertions, 14 deletions
diff --git a/SecurityPkg/Library/DxeDeferImageLoadLib/DxeDeferImageLoadLib.c b/SecurityPkg/Library/DxeDeferImageLoadLib/DxeDeferImageLoadLib.c index f7fe594..b5b51b4 100644 --- a/SecurityPkg/Library/DxeDeferImageLoadLib/DxeDeferImageLoadLib.c +++ b/SecurityPkg/Library/DxeDeferImageLoadLib/DxeDeferImageLoadLib.c @@ -1,7 +1,7 @@ /** @file
Implement defer image load services for user identification in UEFI2.2.
-Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@@ -532,7 +532,7 @@ IsBootOption ( // Try to find the DevicePath in BootOption
//
UnicodeSPrint (StrTemp, sizeof (StrTemp), L"Boot%04x", Index);
- OptionBuffer = GetEfiGlobalVariable (StrTemp);
+ GetEfiGlobalVariable2 (StrTemp, &OptionBuffer, NULL);
if (OptionBuffer == NULL) {
continue;
}
diff --git a/SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.c b/SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.c index 843ca2a..ec18a1b 100644 --- a/SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.c +++ b/SecurityPkg/Library/DxeImageVerificationLib/DxeImageVerificationLib.c @@ -1065,7 +1065,7 @@ VerifyCertUefiGuid ( //
// Get KEK database variable.
//
- KekList = GetEfiGlobalVariable (EFI_KEY_EXCHANGE_KEY_NAME);
+ GetEfiGlobalVariable2 (EFI_KEY_EXCHANGE_KEY_NAME, &KekList, NULL);
if (KekList == NULL) {
return EFI_SECURITY_VIOLATION;
}
@@ -1260,7 +1260,7 @@ DxeImageVerificationHandler ( return EFI_ACCESS_DENIED;
}
- SecureBootEnable = GetVariable (EFI_SECURE_BOOT_ENABLE_NAME, &gEfiSecureBootEnableDisableGuid);
+ GetVariable2 (EFI_SECURE_BOOT_ENABLE_NAME, &gEfiSecureBootEnableDisableGuid, &SecureBootEnable, NULL);
//
// Skip verification if SecureBootEnable variable doesn't exist.
//
@@ -1278,7 +1278,7 @@ DxeImageVerificationHandler ( FreePool (SecureBootEnable);
- SetupMode = GetEfiGlobalVariable (EFI_SETUP_MODE_NAME);
+ GetEfiGlobalVariable2 (EFI_SETUP_MODE_NAME, &SetupMode, NULL);
//
// SetupMode doesn't exist means no AuthVar driver is dispatched,
@@ -1544,7 +1544,7 @@ VariableWriteCallBack ( // If this library is built-in, it means firmware has capability to perform
// driver signing verification.
//
- SecureBootModePtr = GetEfiGlobalVariable (EFI_SECURE_BOOT_MODE_NAME);
+ GetEfiGlobalVariable2 (EFI_SECURE_BOOT_MODE_NAME, &SecureBootModePtr, NULL);
if (SecureBootModePtr == NULL) {
SecureBootMode = SECURE_BOOT_MODE_DISABLE;
//
diff --git a/SecurityPkg/UserIdentification/UserProfileManagerDxe/ModifyAccessPolicy.c b/SecurityPkg/UserIdentification/UserProfileManagerDxe/ModifyAccessPolicy.c index d73f77e..8585c72 100644 --- a/SecurityPkg/UserIdentification/UserProfileManagerDxe/ModifyAccessPolicy.c +++ b/SecurityPkg/UserIdentification/UserProfileManagerDxe/ModifyAccessPolicy.c @@ -410,7 +410,7 @@ DisplayLoadPermit( // Get driver device path.
//
UnicodeSPrint (VarName, sizeof (VarName), L"Driver%04x", Order[Index]);
- Var = GetEfiGlobalVariable (VarName);
+ GetEfiGlobalVariable2 (VarName, &Var, NULL);
if (Var == NULL) {
continue;
}
@@ -655,7 +655,7 @@ AddToForbidLoad ( // Get loadable driver device path.
//
UnicodeSPrint (VarName, sizeof (VarName), L"Driver%04x", DriverIndex);
- Var = GetEfiGlobalVariable (VarName);
+ GetEfiGlobalVariable2 (VarName, &Var, NULL);
if (Var == NULL) {
return;
}
diff --git a/SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigImpl.c b/SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigImpl.c index f740c0a..0dc9c2b 100644 --- a/SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigImpl.c +++ b/SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigImpl.c @@ -215,7 +215,7 @@ DeleteVariable ( UINTN DataSize;
UINT32 Attr;
- Variable = GetVariable (VariableName, VendorGuid);
+ GetVariable2 (VariableName, VendorGuid, &Variable, NULL);
if (Variable == NULL) {
return EFI_SUCCESS;
}
@@ -2064,7 +2064,7 @@ SecureBootExtractConfigFromVariable ( //
// Get the SecureBootEnable Variable
//
- SecureBootEnable = GetVariable (EFI_SECURE_BOOT_ENABLE_NAME, &gEfiSecureBootEnableDisableGuid);
+ GetVariable2 (EFI_SECURE_BOOT_ENABLE_NAME, &gEfiSecureBootEnableDisableGuid, &SecureBootEnable, NULL);
//
// If the SecureBootEnable Variable doesn't exist, hide the SecureBoot Enable/Disable
@@ -2088,7 +2088,7 @@ SecureBootExtractConfigFromVariable ( //
// If there is no PK then the Delete Pk button will be gray.
//
- SetupMode = GetVariable (EFI_SETUP_MODE_NAME, &gEfiGlobalVariableGuid);
+ GetVariable2 (EFI_SETUP_MODE_NAME, &gEfiGlobalVariableGuid, &SetupMode, NULL);
if (SetupMode == NULL || (*SetupMode) == 1) {
ConfigData->HasPk = FALSE;
} else {
@@ -2098,7 +2098,7 @@ SecureBootExtractConfigFromVariable ( //
// Get the SecureBootMode from CustomMode variable.
//
- SecureBootMode = GetVariable (EFI_CUSTOM_MODE_NAME, &gEfiCustomModeEnableGuid);
+ GetVariable2 (EFI_CUSTOM_MODE_NAME, &gEfiCustomModeEnableGuid, &SecureBootMode, NULL);
if (SecureBootMode == NULL) {
ConfigData->SecureBootMode = STANDARD_SECURE_BOOT_MODE;
} else {
@@ -2298,6 +2298,9 @@ SecureBootCallback ( UINTN BufferSize;
SECUREBOOT_CONFIGURATION *IfrNvData;
UINT16 LabelId;
+ UINT8 *SecureBootEnable;
+
+ SecureBootEnable = NULL;
if ((This == NULL) || (Value == NULL) || (ActionRequest == NULL)) {
return EFI_INVALID_PARAMETER;
@@ -2326,7 +2329,8 @@ SecureBootCallback ( switch (QuestionId) {
case KEY_SECURE_BOOT_ENABLE:
- if (NULL != GetVariable (EFI_SECURE_BOOT_ENABLE_NAME, &gEfiSecureBootEnableDisableGuid)) {
+ GetVariable2 (EFI_SECURE_BOOT_ENABLE_NAME, &gEfiSecureBootEnableDisableGuid, &SecureBootEnable, NULL);
+ if (NULL != SecureBootEnable) {
if (EFI_ERROR (SaveSecureBootVariable (Value->u8))) {
CreatePopUp (
EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE,
@@ -2513,7 +2517,8 @@ SecureBootCallback ( break;
case KEY_SECURE_BOOT_MODE:
- if (NULL != GetVariable (EFI_CUSTOM_MODE_NAME, &gEfiCustomModeEnableGuid)) {
+ GetVariable2 (EFI_CUSTOM_MODE_NAME, &gEfiCustomModeEnableGuid, &SecureBootEnable, NULL);
+ if (NULL != SecureBootEnable) {
Status = gRT->SetVariable (
EFI_CUSTOM_MODE_NAME,
&gEfiCustomModeEnableGuid,
|