diff options
author | czhang46 <czhang46@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-08-27 00:52:18 +0000 |
---|---|---|
committer | czhang46 <czhang46@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-08-27 00:52:18 +0000 |
commit | 333a53ee5bba34a2703cba665f70ebd3da124eac (patch) | |
tree | e633dd583ab0b2bb1b2af9071c49bcad4937f0d2 /SecurityPkg | |
parent | 9063c328dff827ef9deb1ce0dde75112c496e072 (diff) | |
download | edk2-platforms-333a53ee5bba34a2703cba665f70ebd3da124eac.tar.xz |
Use firmware version instead of hardcode string for S-CRTM version identifier
Signed-off-by: Chao Zhang <chao.b.zhang@intel.com>
Reviewed-by : Fu, Siyuan <siyuan.fu@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13677 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'SecurityPkg')
-rw-r--r-- | SecurityPkg/Tcg/TcgPei/TcgPei.c | 12 | ||||
-rw-r--r-- | SecurityPkg/Tcg/TcgPei/TcgPei.inf | 3 |
2 files changed, 9 insertions, 6 deletions
diff --git a/SecurityPkg/Tcg/TcgPei/TcgPei.c b/SecurityPkg/Tcg/TcgPei/TcgPei.c index 4732a2a174..08d8293ccb 100644 --- a/SecurityPkg/Tcg/TcgPei/TcgPei.c +++ b/SecurityPkg/Tcg/TcgPei/TcgPei.c @@ -29,6 +29,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. #include <Library/HobLib.h>
#include <Library/PcdLib.h>
#include <Library/PeiServicesTablePointerLib.h>
+#include <Library/BaseLib.h>
#include "TpmComm.h"
@@ -90,8 +91,6 @@ EFI_PEI_NOTIFY_DESCRIPTOR mNotifyList[] = { }
};
-CHAR8 mSCrtmVersion[] = "{D20BC7C6-A1A5-415c-AE85-38290AB6BE04}";
-
EFI_PLATFORM_FIRMWARE_BLOB mMeasuredFvInfo[FixedPcdGet32 (PcdPeiCoreMaxFvSupported)];
UINT32 mMeasuredFvIndex = 0;
@@ -180,20 +179,21 @@ MeasureCRTMVersion ( TCG_PCR_EVENT_HDR TcgEventHdr;
//
- // Here, only a static GUID is measured instead of real CRTM version.
+ // Use FirmwareVersion string to represent CRTM version.
// OEMs should get real CRTM version string and measure it.
//
TcgEventHdr.PCRIndex = 0;
TcgEventHdr.EventType = EV_S_CRTM_VERSION;
- TcgEventHdr.EventSize = sizeof (mSCrtmVersion);
+ TcgEventHdr.EventSize = StrSize((CHAR16*)PcdGetPtr (PcdFirmwareVersionString));
+
return HashLogExtendEvent (
PeiServices,
- (UINT8*)&mSCrtmVersion,
+ (UINT8*)PcdGetPtr (PcdFirmwareVersionString),
TcgEventHdr.EventSize,
TpmHandle,
&TcgEventHdr,
- (UINT8*)&mSCrtmVersion
+ (UINT8*)PcdGetPtr (PcdFirmwareVersionString)
);
}
diff --git a/SecurityPkg/Tcg/TcgPei/TcgPei.inf b/SecurityPkg/Tcg/TcgPei/TcgPei.inf index 5d7da7f5e0..1c4db06ce4 100644 --- a/SecurityPkg/Tcg/TcgPei/TcgPei.inf +++ b/SecurityPkg/Tcg/TcgPei/TcgPei.inf @@ -46,6 +46,8 @@ TimerLib
IoLib
PeiServicesTablePointerLib
+ BaseLib
+ PcdLib
[Guids]
gTcgEventEntryHobGuid
@@ -64,6 +66,7 @@ [FixedPcd]
gEfiSecurityPkgTokenSpaceGuid.PcdHideTpmSupport
gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported ## CONSUMES
+ gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString ## CONSUMES
[Depex]
gEfiPeiMasterBootModePpiGuid AND
|