Sorry, missing word in previous email. It should be "following requirement is not embodied in"
Regards, Jian > -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Wang, Jian > J > Sent: Tuesday, July 21, 2020 5:00 PM > To: Zhang, Qi1 <qi1.zh...@intel.com>; devel@edk2.groups.io > Cc: Yao, Jiewen <jiewen....@intel.com> > Subject: Re: [edk2-devel] [PATCH v4 5/6] SecurityPkg/PeiTpmMeasurementLib: > Add PEI instance. > > Qi, > > Two format issues inlined below. > > In addition, according to bz2841, following requirement is embodied in > this patch. Maybe there's discussion before deciding not to implement > it. If so, please update bz2841 to state it explicitly. > > 3) Add more API in TpmMeasurementLib, such as MeasureFirmwareBlob, > MeasureHandoffTable for TPM PFP rev 105 support - add description for > the FirmwareBlob and HandoffTable. > > Regards, > Jian > > > -----Original Message----- > > From: Zhang, Qi1 <qi1.zh...@intel.com> > > Sent: Friday, July 17, 2020 4:50 PM > > To: devel@edk2.groups.io > > Cc: Yao, Jiewen <jiewen....@intel.com>; Wang, Jian J > <jian.j.w...@intel.com>; > > Zhang, Qi1 <qi1.zh...@intel.com> > > Subject: [PATCH v4 5/6] SecurityPkg/PeiTpmMeasurementLib: Add PEI instance. > > > > From: Jiewen Yao <jiewen....@intel.com> > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2841 > > > > Cc: Jiewen Yao <jiewen....@intel.com> > > Cc: Jian J Wang <jian.j.w...@intel.com> > > Cc: Qi Zhang <qi1.zh...@intel.com> > > Signed-off-by: Jiewen Yao <jiewen....@intel.com> > > --- > > .../PeiTpmMeasurementLib.c | 74 +++++++++++++++++++ > > .../PeiTpmMeasurementLib.inf | 50 +++++++++++++ > > .../PeiTpmMeasurementLib.uni | 17 +++++ > > 3 files changed, 141 insertions(+) > > create mode 100644 > > SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.c > > create mode 100644 > > SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.inf > > create mode 100644 > > SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.uni > > > > diff --git > > a/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.c > > b/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.c > > new file mode 100644 > > index 0000000000..1a590e0c9e > > --- /dev/null > > +++ b/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.c > > @@ -0,0 +1,74 @@ > > +/** @file > > > > + This library is used by other modules to measure data to TPM. > > > > + > > > > +Copyright (c) 2020, Intel Corporation. All rights reserved. <BR> > > > > +SPDX-License-Identifier: BSD-2-Clause-Patent > > > > + > > > > +**/ > > > > + > > > > +#include <PiPei.h> > > > > + > > > > +#include <Library/BaseMemoryLib.h> > > > > +#include <Library/PeiServicesLib.h> > > > > +#include <Library/PeiServicesTablePointerLib.h> > > > > +#include <Library/DebugLib.h> > > > > +#include <Library/HobLib.h> > > > > +#include <Library/TpmMeasurementLib.h> > > > > + > > > > +#include <Ppi/Tcg.h> > > > > +#include <IndustryStandard/UefiTcgPlatform.h> > > > > + > > > > +/** > > > > + Tpm measure and log data, and extend the measurement result into a > specific > > PCR. > > > > + > > > > + @param[in] PcrIndex PCR Index. > > > > + @param[in] EventType Event type. > > > > + @param[in] EventLog Measurement event log. > > > > + @param[in] LogLen Event log length in bytes. > > > > + @param[in] HashData The start of the data buffer to be hashed, > > extended. > > > > + @param[in] HashDataLen The length, in bytes, of the buffer > > referenced > by > > HashData > > > > + > > > > + @retval EFI_SUCCESS Operation completed successfully. > > The description of above retval is not aligned with below line. > > > > > + @retval EFI_UNSUPPORTED TPM device not available. > > > > + @retval EFI_OUT_OF_RESOURCES Out of memory. > > > > + @retval EFI_DEVICE_ERROR The operation was unsuccessful. > > > > +**/ > > > > +EFI_STATUS > > > > +EFIAPI > > > > +TpmMeasureAndLogData ( > > > > + IN UINT32 PcrIndex, > > > > + IN UINT32 EventType, > > > > + IN VOID *EventLog, > > > > + IN UINT32 LogLen, > > > > + IN VOID *HashData, > > > > + IN UINT64 HashDataLen > > > > + ) > > > > +{ > > > > + EFI_STATUS Status; > > > > + EDKII_TCG_PPI *TcgPpi; > > > > + TCG_PCR_EVENT_HDR TcgEventHdr; > > > > + > > > > + Status = PeiServicesLocatePpi( > > Missing a space before '(' > > > > > + &gEdkiiTcgPpiGuid, > > > > + 0, > > > > + NULL, > > > > + (VOID**)&TcgPpi > > > > + ); > > > > + if (EFI_ERROR(Status)) { > > > > + return Status; > > > > + } > > > > + > > > > + TcgEventHdr.PCRIndex = PcrIndex; > > > > + TcgEventHdr.EventType = EventType; > > > > + TcgEventHdr.EventSize = LogLen; > > > > + > > > > + Status = TcgPpi->HashLogExtendEvent ( > > > > + TcgPpi, > > > > + 0, > > > > + HashData, > > > > + (UINTN)HashDataLen, > > > > + &TcgEventHdr, > > > > + EventLog > > > > + ); > > > > + return Status; > > > > +} > > > > diff --git > > a/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.inf > > b/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.inf > > new file mode 100644 > > index 0000000000..6625d0fd01 > > --- /dev/null > > +++ > b/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.inf > > @@ -0,0 +1,50 @@ > > +## @file > > > > +# Provides TPM measurement functions for TPM1.2 and TPM 2.0 > > > > +# > > > > +# This library provides TpmMeasureAndLogData() to measure and log data, > > and > > > > +# extend the measurement result into a specific PCR. > > > > +# > > > > +# Copyright (c) 2020, Intel Corporation. All rights reserved.<BR> > > > > +# SPDX-License-Identifier: BSD-2-Clause-Patent > > > > +# > > > > +## > > > > + > > > > +[Defines] > > > > + INF_VERSION = 0x00010005 > > > > + BASE_NAME = PeiTpmMeasurementLib > > > > + FILE_GUID = 9A62C49D-C45A-4322-9F3C-45958DF0056B > > > > + MODULE_TYPE = PEIM > > > > + VERSION_STRING = 1.0 > > > > + LIBRARY_CLASS = TpmMeasurementLib|PEIM > > > > + MODULE_UNI_FILE = PeiTpmMeasurementLib.uni > > > > + > > > > +# > > > > +# The following information is for reference only and not required by the > build > > tools. > > > > +# > > > > +# VALID_ARCHITECTURES = IA32 X64 > > > > +# > > > > + > > > > +[Sources] > > > > + PeiTpmMeasurementLib.c > > > > + > > > > +[Packages] > > > > + MdePkg/MdePkg.dec > > > > + MdeModulePkg/MdeModulePkg.dec > > > > + SecurityPkg/SecurityPkg.dec > > > > + > > > > +[LibraryClasses] > > > > + BaseLib > > > > + BaseMemoryLib > > > > + HobLib > > > > + DebugLib > > > > + PcdLib > > > > + PrintLib > > > > + PeiServicesLib > > > > + PeiServicesTablePointerLib > > > > + > > > > +[Ppis] > > > > + gEdkiiTcgPpiGuid ## > > CONSUMES > > > > + > > > > +[Depex] > > > > + gEfiPeiMasterBootModePpiGuid AND > > > > + gEfiTpmDeviceSelectedGuid > > > > diff --git > > a/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.uni > > b/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.uni > > new file mode 100644 > > index 0000000000..7b4341b449 > > --- /dev/null > > +++ > b/SecurityPkg/Library/PeiTpmMeasurementLib/PeiTpmMeasurementLib.uni > > @@ -0,0 +1,17 @@ > > +// /** @file > > > > +// Provides TPM measurement functions for TPM1.2 and TPM 2.0 > > > > +// > > > > +// This library provides TpmMeasureAndLogData() to to measure and log data, > > and > > > > +// extend the measurement result into a specific PCR. > > > > +// > > > > +// Copyright (c) 2020, Intel Corporation. All rights reserved.<BR> > > > > +// > > > > +// SPDX-License-Identifier: BSD-2-Clause-Patent > > > > +// > > > > +// **/ > > > > + > > > > + > > > > +#string STR_MODULE_ABSTRACT #language en-US "Provides TPM > > measurement functions for TPM1.2 and TPM 2.0" > > > > + > > > > +#string STR_MODULE_DESCRIPTION #language en-US "This library > > provides TpmMeasureAndLogData() to to measure and log data, and extend > the > > measurement result into a specific PCR." > > > > + > > > > -- > > 2.26.2.windows.1 > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#62976): https://edk2.groups.io/g/devel/message/62976 Mute This Topic: https://groups.io/mt/75608836/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-