summaryrefslogtreecommitdiffstats
path: root/SecurityPkg/Tcg/TcgDxe
diff options
context:
space:
mode:
authorczhang46 <czhang46@6f19259b-4bc3-4df7-8a09-765794883524>2012-08-23 03:17:33 +0000
committerczhang46 <czhang46@6f19259b-4bc3-4df7-8a09-765794883524>2012-08-23 03:17:33 +0000
commit15f2d7390106f4e697f44e8f93aa949c8003040b (patch)
treefb4b588028da036902c8f40bd29369f101682b8c /SecurityPkg/Tcg/TcgDxe
parenta66e0c7da759ce41b2615529f9d69627e23e5b08 (diff)
downloadedk2-15f2d7390106f4e697f44e8f93aa949c8003040b.tar.gz
edk2-15f2d7390106f4e697f44e8f93aa949c8003040b.tar.bz2
edk2-15f2d7390106f4e697f44e8f93aa949c8003040b.zip
Add TcgDxeHashLogExtendEvent EventLogLastEntry parameter update logic
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com> Reviewed-by : Dong Guo <guo.dong@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13669 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'SecurityPkg/Tcg/TcgDxe')
-rw-r--r--SecurityPkg/Tcg/TcgDxe/TcgDxe.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/SecurityPkg/Tcg/TcgDxe/TcgDxe.c b/SecurityPkg/Tcg/TcgDxe/TcgDxe.c
index 5ef34d0ba2..aa16641fde 100644
--- a/SecurityPkg/Tcg/TcgDxe/TcgDxe.c
+++ b/SecurityPkg/Tcg/TcgDxe/TcgDxe.c
@@ -505,6 +505,7 @@ TcgDxeHashLogExtendEvent (
)
{
TCG_DXE_DATA *TcgData;
+ EFI_STATUS Status;
if (TCGLogData == NULL || EventLogLastEntry == NULL){
return EFI_INVALID_PARAMETER;
@@ -520,13 +521,19 @@ TcgDxeHashLogExtendEvent (
return EFI_UNSUPPORTED;
}
- return TcgDxeHashLogExtendEventI (
- TcgData,
- (UINT8 *) (UINTN) HashData,
- HashDataLen,
- (TCG_PCR_EVENT_HDR*)TCGLogData,
- TCGLogData->Event
- );
+ Status = TcgDxeHashLogExtendEventI (
+ TcgData,
+ (UINT8 *) (UINTN) HashData,
+ HashDataLen,
+ (TCG_PCR_EVENT_HDR*)TCGLogData,
+ TCGLogData->Event
+ );
+
+ if (!EFI_ERROR(Status)){
+ *EventLogLastEntry = (EFI_PHYSICAL_ADDRESS)(UINTN) TcgData->LastEvent;
+ }
+
+ return Status;
}
TCG_DXE_DATA mTcgDxeData = {