[edk2-devel] [PATCH v2 9/9] SecurityPkg/Tcg2: handle PRE HASH and LOG ONLY

Liming Gao liming.gao at intel.com
Tue Aug 11 01:20:28 UTC 2020


Qi:
  EccPlugin will be enabled in open CI. Then, ECC result can be checked in open CI result. Now, I use the standalone EccCheck.py from https://github.com/shenglei10/edk2/tree/ecc_script to check the patch set. 

Thanks
Liming
-----Original Message-----
From: Zhang, Qi1 <qi1.zhang at intel.com> 
Sent: 2020年8月11日 8:54
To: Gao, Liming <liming.gao at intel.com>; devel at edk2.groups.io
Cc: Yao, Jiewen <jiewen.yao at intel.com>; Wang, Jian J <jian.j.wang at intel.com>; Kumar, Rahul1 <rahul1.kumar at intel.com>
Subject: RE: [edk2-devel] [PATCH v2 9/9] SecurityPkg/Tcg2: handle PRE HASH and LOG ONLY

Hi, Liming

Thanks for your comments! Is there any wiki of how to run ECC plugin?

BRs
Qi Zhang

> -----Original Message-----
> From: Gao, Liming <liming.gao at intel.com>
> Sent: Tuesday, August 11, 2020 8:19 AM
> To: devel at edk2.groups.io; Zhang, Qi1 <qi1.zhang at intel.com>
> Cc: Yao, Jiewen <jiewen.yao at intel.com>; Wang, Jian J 
> <jian.j.wang at intel.com>; Kumar, Rahul1 <rahul1.kumar at intel.com>
> Subject: RE: [edk2-devel] [PATCH v2 9/9] SecurityPkg/Tcg2: handle PRE 
> HASH and LOG ONLY
> 
> Qi:
>   I run ECC plugin (https://edk2.groups.io/g/devel/message/63271) for 
> this patch set. It reports below issues. Can you help update the patches to fix them?
> 
> EFI coding style error
>   *Error code: 3002
>   *Non-Boolean comparisons should use a compare operator (==, !=, >, < >=, <=)
>   *file: D:\AllPkg\edk2\SecurityPkg\Tcg\Tcg2Pei\Tcg2Pei.c
>   *Line number: 456
>   *Predicate Expression: (Flags & EDKII_TCG_PRE_HASH EFI coding style error
>   *Error code: 3002
>   *Non-Boolean comparisons should use a compare operator (==, !=, >, < >=, <=)
>   *file: D:\AllPkg\edk2\SecurityPkg\Tcg\Tcg2Pei\Tcg2Pei.c
>   *Line number: 456
>   *Predicate Expression: Flags & EDKII_TCG_PRE_HASH_LOG_ONLY EFI 
> coding style error
>   *Error code: 3002
>   *Non-Boolean comparisons should use a compare operator (==, !=, >, < >=, <=)
>   *file: D:\AllPkg\edk2\SecurityPkg\Tcg\Tcg2Pei\Tcg2Pei.c
>   *Line number: 459
>   *Predicate Expression: Flags & EDKII_TCG_PRE_HASH EFI coding style error
>   *Error code: 4002
>   *Function header doesn't exist
>   *file:
> D:\AllPkg\edk2\IntelFsp2WrapperPkg\Library\BaseFspMeasurementLib\FspMe
> asurementLib.c
>   *Line number: 279
>   *Function [mFspFindFspHeader] has NO comment immediately preceding it.
> EFI coding style error
>   *Error code: 8005
>   *Variable name does not follow the rules: 1. First character should 
> be upper case 2. Must contain lower case characters 3. No white space characters 4.
> Global variable name must start with a 'g'
>   *file:
> D:\AllPkg\edk2\IntelFsp2WrapperPkg\Library\BaseFspMeasurementLib\FspMe
> asurementLib.c
>   *Line number: 178
>   *The variable name [*UPDEventLo] does not follow the rules EFI 
> coding style error
>   *Error code: 8006
>   *Function name does not follow the rules: 1. First character should 
> be upper case 2. Must contain lower case characters 3. No white space characters
>   *file:
> D:\AllPkg\edk2\IntelFsp2WrapperPkg\Library\BaseFspMeasurementLib\FspMe
> asurementLib.c
>   *Line number: 279
>   *The function name [mFspFindFspHeader] does not follow the rules EFI 
> coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\IntelFsp2WrapperPkg\Library\BaseFspMeasurementLib\FspMe
> asurementLib.c
>   *Line number: 149
>   *Comment does NOT have tail **/
> EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\IntelFsp2WrapperPkg\Library\BaseFspMeasurementLib\FspMe
> asurementLib.c
>   *Line number: 312
>   *Comment does NOT have tail **/
> EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\SecurityPkg\Library\PeiTpmMeasurementLib\EventLogRecord.c
>   *Line number: 86
>   *Comment does NOT have tail **/
> EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\SecurityPkg\Library\PeiTpmMeasurementLib\EventLogRecord.c
>   *Line number: 155
>   *Comment does NOT have tail **/
> EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\SecurityPkg\Library\DxeTpmMeasurementLib\EventLogRecord.
> c
>   *Line number: 86
>   *Comment does NOT have tail **/
> EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\SecurityPkg\Library\DxeTpmMeasurementLib\EventLogRecord.
> c
>   *Line number: 155
>   *Comment does NOT have tail **/
> EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\MdeModulePkg\Library\TpmMeasurementLibNull\TpmMeasur
> ementLibNull.c
>   *Line number: 43
>   *Comment does NOT have tail **/
> EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\MdeModulePkg\Library\TpmMeasurementLibNull\TpmMeasur
> ementLibNull.c
>   *Line number: 43
>   *in Comment, <@param[in] Descrption> does NOT consistent with 
> parameter name PcrIndex EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\MdeModulePkg\Library\TpmMeasurementLibNull\TpmMeasur
> ementLibNull.c
>   *Line number: 43
>   *in Comment, <@param[in] FirmwareBlobBase> does NOT consistent with 
> parameter name Description EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\MdeModulePkg\Library\TpmMeasurementLibNull\TpmMeasur
> ementLibNull.c
>   *Line number: 43
>   *in Comment, <@param[in] FirmwareBlobLength> does NOT consistent 
> with parameter name FirmwareBlobBase EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\MdeModulePkg\Library\TpmMeasurementLibNull\TpmMeasur
> ementLibNull.c
>   *Line number: 43
>   *in Comment, <@retval EFI_SUCCESS> does NOT consistent with 
> parameter name FirmwareBlobLength EFI coding style error
>   *Error code: 9002
>   *The function headers should follow Doxygen special documentation 
> blocks in section 2.3.5
>   *file:
> D:\AllPkg\edk2\MdeModulePkg\Library\TpmMeasurementLibNull\TpmMeasur
> ementLibNull.c
>   *Line number: 70
>   *Comment does NOT have tail **/
> 
> Thanks
> Liming
> -----Original Message-----
> From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of Qi 
> Zhang
> Sent: 2020年8月6日 8:34
> To: devel at edk2.groups.io
> Cc: Zhang, Qi1 <qi1.zhang at intel.com>; Yao, Jiewen 
> <jiewen.yao at intel.com>; Wang, Jian J <jian.j.wang at intel.com>; Kumar, 
> Rahul1 <rahul1.kumar at intel.com>
> Subject: [edk2-devel] [PATCH v2 9/9] SecurityPkg/Tcg2: handle PRE HASH 
> and LOG ONLY
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2376
> 
> Cc: Jiewen Yao <jiewen.yao at intel.com>
> Cc: Jian J Wang <jian.j.wang at intel.com>
> Cc: Qi Zhang <qi1.zhang at intel.com>
> Cc: Rahul Kumar <rahul1.kumar at intel.com>
> Signed-off-by: Qi Zhang <qi1.zhang at intel.com>
> ---
>  SecurityPkg/Include/Ppi/Tcg.h     |  5 +++++
>  SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c | 12 +++++++-----
>  2 files changed, 12 insertions(+), 5 deletions(-)
> 
> diff --git a/SecurityPkg/Include/Ppi/Tcg.h 
> b/SecurityPkg/Include/Ppi/Tcg.h index
> 0e943f2465..22f47f9817 100644
> --- a/SecurityPkg/Include/Ppi/Tcg.h
> +++ b/SecurityPkg/Include/Ppi/Tcg.h
> @@ -18,6 +18,11 @@ typedef struct _EDKII_TCG_PPI EDKII_TCG_PPI;  // 
> #define EDKII_TCG_PRE_HASH  0x0000000000000001 +//+// This bit is 
> shall be set when HashData is the pre-hash digest and log only.+//+#define
> EDKII_TCG_PRE_HASH_LOG_ONLY  0x0000000000000002+ /**   Tpm measure
> and log data, and extend the measurement result into a specific PCR. 
> diff --git a/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c 
> b/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c
> index 246968bb7f..b56b03746c 100644
> --- a/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c
> +++ b/SecurityPkg/Tcg/Tcg2Pei/Tcg2Pei.c
> @@ -453,13 +453,15 @@ HashLogExtendEvent (
>      return EFI_DEVICE_ERROR;   } -  if(Flags & EDKII_TCG_PRE_HASH) {+  if
> ((Flags & EDKII_TCG_PRE_HASH) || (Flags & EDKII_TCG_PRE_HASH_LOG_ONLY))
> {     ZeroMem (&DigestList, sizeof(DigestList));     CopyMem (&DigestList,
> HashData, sizeof(DigestList));-    Status = Tpm2PcrExtend (-             0,-
> &DigestList-             );+    if (Flags & EDKII_TCG_PRE_HASH) {+      Status =
> Tpm2PcrExtend (+               NewEventHdr->PCRIndex,+
> &DigestList+               );+    }   } else {     Status = HashAndExtend
> (                NewEventHdr->PCRIndex,--
> 2.26.2.windows.1
> 
> 
> -=-=-=-=-=-=
> Groups.io Links: You receive all messages sent to this group.
> 
> View/Reply Online (#63760): 
> https://edk2.groups.io/g/devel/message/63760
> Mute This Topic: https://groups.io/mt/76019593/1759384
> Group Owner: devel+owner at edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub  
> [liming.gao at intel.com] -=- =-=-=-=-=


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#63938): https://edk2.groups.io/g/devel/message/63938
Mute This Topic: https://groups.io/mt/76019593/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-





More information about the edk2-devel-archive mailing list