From 0c3a1db40f982d243b8e2c67ee4e8109a0737d34 Mon Sep 17 00:00:00 2001 From: lzeng14 Date: Tue, 29 May 2012 05:22:01 +0000 Subject: Update DxeCore and FwVolDxe drivers to inherit authentication status for the FV image, if the image came from an FV image file and section in another firmware volume. Signed-off-by: Star Zeng Reviewed-by: Liming Gao Reviewed-by: Chao Zhang git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13368 6f19259b-4bc3-4df7-8a09-765794883524 --- .../Universal/FirmwareVolume/FwVolDxe/FwVolRead.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolRead.c') diff --git a/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolRead.c b/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolRead.c index 1e8ba91581..8e2706bb8a 100644 --- a/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolRead.c +++ b/IntelFrameworkModulePkg/Universal/FirmwareVolume/FwVolDxe/FwVolRead.c @@ -1,7 +1,7 @@ /** @file Implements functions to read firmware file. - Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.
+ Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions @@ -510,6 +510,7 @@ FvReadFileSection ( ) { EFI_STATUS Status; + FV_DEVICE *FvDevice; EFI_FV_ATTRIBUTES FvAttributes; EFI_FV_FILETYPE FileType; EFI_FV_FILE_ATTRIBUTES FileAttributes; @@ -522,6 +523,8 @@ FvReadFileSection ( return EFI_INVALID_PARAMETER; } + FvDevice = FV_DEVICE_FROM_THIS (This); + Status = This->GetVolumeAttributes (This, &FvAttributes); if (EFI_ERROR (Status)) { return Status; @@ -607,6 +610,14 @@ FvReadFileSection ( AuthenticationStatus ); } + + if (!EFI_ERROR (Status)) { + // + // Inherit the authentication status. + // + *AuthenticationStatus |= FvDevice->AuthenticationStatus; + } + // // Handle AuthenticationStatus if necessary // -- cgit v1.2.3