From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.94]) by mx.groups.io with SMTP id smtpd.web10.12884.1596517518290707383 for ; Mon, 03 Aug 2020 22:05:18 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@microsoft.com header.s=selector2 header.b=XUQwfJF9; spf=pass (domain: microsoft.com, ip: 40.107.244.94, mailfrom: bret.barkelew@microsoft.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V/cGjcik8B1EQrqSsHU4tiDXojxFDj48BegZgqopKm7I36L2LCs37h3M6sxMZ6ZEfjadQuqmpPwm05tfLCwPYWtMwf1H3A6MuZOrls+T5FR1j7dQy9z9NNouO9OOEbCzjyuclmLAwCyr1j/UpBOqOXgJBGJRpo1xPaIxLSqPwMtLuqn36jKVgyOIOrNyr1anaxsThv/Lv19p3K7weDFfCQVw9xSIJqj+PkZ24sVFSDc1UUO1CNvfaUpAH1NYYZep8Uo9trrj8AVhdMoY1Ea4cqTYCfG9iYctUbqWYlu/eau3/FEG94fIabAjdI9uGLkEB2K8DBJf6Mg0l93ScBiupA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Iq/uA7wghxgSTygYqr9gNroLpAm2oUf5TY+fS4KATWs=; b=YPeIUFjQfURRlqcYMOveV0kg1Y7Ht6D/R/FxtMLmddsevhS7wpnbTL2RXTYqXXPLaJSCcsqHt0AM3zB84pEj+ZZxZRS8IR6wKbCUEPX+BEWmaMVrl5zTH5vfb4lYExeaRg1CUy9WhWj1ovufvyeDq5kjv9Q8Qxq+zEKIMr1UPkPSOqFsO9PDlNffUbwoZvRMAHT1wR7lcLhhPCrSwua2UuItHV2vjmlLMO7Stnn9fWAGMJtcHBrsTsRTHfmXme2eAXjD3443QEsx577Ipi5JvLUcmDL24UsrRiCKsbS7sVZhQaAlxDm+M59whMd8fnCsuc5rg8t+YNNP5CD5Bu2Bqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Iq/uA7wghxgSTygYqr9gNroLpAm2oUf5TY+fS4KATWs=; b=XUQwfJF9PFhbovp9DVgjDZjXYlEX7C0y6zqs4c6rIdNLZd/q5woYrLx0/6P5nwC5xI65wPLLFEJQflYbNlM/PsQYq4llK70kBrBsq3k6nBAZPJcgtpI6300Xh9hH5r+RJ2zDp5H/VEgdBEDa4HgkCKkvtHE96BPClvI6vUiWzk8= Received: from CY4PR21MB0743.namprd21.prod.outlook.com (2603:10b6:903:b2::9) by CY4PR21MB1537.namprd21.prod.outlook.com (2603:10b6:910:8d::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3283.1; Tue, 4 Aug 2020 05:05:16 +0000 Received: from CY4PR21MB0743.namprd21.prod.outlook.com ([fe80::2ca0:7d3e:e918:c47a]) by CY4PR21MB0743.namprd21.prod.outlook.com ([fe80::2ca0:7d3e:e918:c47a%11]) with mapi id 15.20.3283.003; Tue, 4 Aug 2020 05:05:15 +0000 From: "Bret Barkelew" To: "Yao, Jiewen" , "devel@edk2.groups.io" , "Zhang, Qi1" , Bret Barkelew CC: "Wang, Jian J" Subject: Re: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi: Add TcgPpi header file. Thread-Topic: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi: Add TcgPpi header file. Thread-Index: AQHWWmYAxetJOuwOX0KyQ1AKacXqKakIFgLAgAAPF4CAAJOIMIAAClzQgAACVz6AHr9O3w== Date: Tue, 4 Aug 2020 05:05:15 +0000 Message-ID: References: <20200714064922.7025-1-qi1.zhang@intel.com> <20200714064922.7025-2-qi1.zhang@intel.com>, <1621F444E3AD18DD.16458@groups.io>,, In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=True;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2020-08-04T05:05:16.486Z;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=General;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Standard; authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=microsoft.com; x-originating-ip: [174.21.66.92] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 822e202c-9779-4a2d-fee7-08d83833f9a1 x-ms-traffictypediagnostic: CY4PR21MB1537: x-ms-exchange-transport-forked: True x-ld-processed: 72f988bf-86f1-41af-91ab-2d7cd011db47,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: mfByR5A0aQ9S4eNTATvEFszXiWRWR9UJc+LDxXSE1XTHnlHVb3qtNXH4NzevT4zl+INsoIaZXKMIAsSnq8/U+eba1gF5U+Uj/HRYU/N01GIqIxdVwlMmeunT8Uz3aZfrTIasWhjB5OzZtF1nkij/0t5+nryTg/e55LUVrUdtUzXzmCBaF1HFjlxIteGe9cP7SDaqbDg4fe8DHp0MuF4+Jde7Py+FsE/8OwvIfiW9OucOSPDPBPws+Z/bQQ5Lnou8YacZIQnzOn+9IPa2i6lnBobrD7kM5qmGUkTHtFWZCzd1ukqr69y66m+3rpOJv+MrJALLcos8u885rxm4yLqpu2aYUcpGyQLhREQ7xa9fj4lGk2Lcl3ECDY7ycFpkOWg4Gld0pIkl7x63/r20ZLbKvg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY4PR21MB0743.namprd21.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(376002)(366004)(396003)(346002)(39860400002)(136003)(91956017)(55016002)(66616009)(33656002)(4326008)(99936003)(9686003)(86362001)(76236003)(110136005)(82950400001)(15650500001)(82960400001)(478600001)(10290500003)(8990500004)(19627405001)(8936002)(64756008)(316002)(83380400001)(966005)(52536014)(5660300002)(71200400001)(166002)(66446008)(66556008)(76116006)(53546011)(8676002)(26005)(6506007)(2906002)(66946007)(7696005)(66476007)(186003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: OjdXSwaafNsgQ3GSw+Ok4aC1NjsOsrrTfw+bvPhaPNlIU/Wq06cmP3DLa15NsVzs1qBW4h/ErhDX6gnKcglNt9IDGX00dHfyxjWk78r8jnyrY1YOTS9Q7C+9GiXQqG4CmxnU6vsJ7gyz0tYhrYDfwCQY7ZLyPNmKVoyLenpCP0PacZEjBmZ+CFtlD3h1sZG5tIw77O11qUgNw0VSNTLWdwX7lFOc8IYIAWF2yXgoU/7Mv8zewsI+IysTdweC/xrlcjUqf3mwxCxuZI7GFYVrSMxTT5Ys7w4B18MMjAJMz2w98xv5wNzYINjoQuYkc5d2lYEncPT8S6EE3jYhla7qGCEH26zjjyQjRnqKiNnAQUJzJxvhPn+m3GBYnzM49GeBkx0Ius6u8+Qf/JY1JwkLbQ3TwA/JOweOjxxOpi4pk96bRP4bBI+tcH8A7U13pajPFZfsz8/dQRGlM0tJ1HagnkHYAlOS3YzPOAEn1HBimsEZCQ0OEgChTahmy9LCJnwDb7sHrqeR31SDi/2teEoObs5F79uiENKdbX3BIUB/QNzvsC/dP+wnZlQ5J7dsjyDGqAnE0XvqZu/Nl5CTRYRqcv0ZmXtBFGj+/+V+jwWt9ndaQyxzd51ZuMElOkLJTK6FCP1jc7HScfdyE7Wz7FeayQ== MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY4PR21MB0743.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 822e202c-9779-4a2d-fee7-08d83833f9a1 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Aug 2020 05:05:15.3876 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: +mz+vN4+kl+euOfbIcCfRRB4ccJJr9xEwcb5fEMIvKP1XnIqynPygVjJP0cUA7Ipd6w8hY8KBxi0IjT89+LzRQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR21MB1537 X-Groupsio-MsgNum: 63691 Content-Language: en-US Content-Type: multipart/related; boundary="_004_CY4PR21MB07436BD5FD8881B119F27AAFEF4A0CY4PR21MB0743namp_"; type="multipart/alternative" --_004_CY4PR21MB07436BD5FD8881B119F27AAFEF4A0CY4PR21MB0743namp_ Content-Type: multipart/alternative; boundary="_000_CY4PR21MB07436BD5FD8881B119F27AAFEF4A0CY4PR21MB0743namp_" --_000_CY4PR21MB07436BD5FD8881B119F27AAFEF4A0CY4PR21MB0743namp_ Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable The more I think about it, the more I like your idea of registering early a= nd allowing a PPI notification callback. Is that something we could get in this change, or would it be best to open= a new BZ to track that request? Thanks! - Bret ________________________________ From: devel@edk2.groups.io on behalf of Bret Barkel= ew via groups.io Sent: Wednesday, July 15, 2020 8:32 AM To: Yao, Jiewen ; devel@edk2.groups.io ; Zhang, Qi1 Cc: Wang, Jian J Subject: [EXTERNAL] Re: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi: Add T= cgPpi header file. Yeah, that=92s kinda what I was thinking. It seemed like there was a littl= e of overlap that might eliminate the need for the extra libs (in our curre= nt solution). I=92ll try to get a more detailed problem statement today, but I think you= = =92ve got the right idea there. - Bret From: Yao, Jiewen Sent: Wednesday, July 15, 2020 8:20 AM To: devel@edk2.groups.io; Yao, Jiewen; Bret Barkelew; Z= hang, Qi1 Cc: Wang, Jian J Subject: [EXTERNAL] RE: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi: Add T= cgPpi header file. Maybe we can let TCG PEIM install the TCG_PPI *before* any measurement rec= ord, then the other PEIM can register a callback to record the HW ROT measu= rement ? Thank you Yao Jiewen From: devel@edk2.groups.io On Behalf Of Yao, Jiewen Sent: Wednesday, July 15, 2020 10:45 PM To: Bret Barkelew ; devel@edk2.groups.io; Zha= ng, Qi1 Cc: Wang, Jian J Subject: Re: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi: Add TcgPpi heade= r file. Hi Bret Do you have a full problem statement or Bugzilla? If we are resolving same problem, we can resolve altogether. If we are talking different problem, we can resolve one by one. Thank you Yao Jiewen From: Bret Barkelew > Sent: Wednesday, July 15, 2020 1:53 PM To: devel@edk2.groups.io; Yao, Jiewen >; Zhang, Qi1 > Cc: Wang, Jian J > Subject: Re: [PATCH 1/6] SecurityPkg/TcgPpi: Add TcgPpi header file. Since we=92re working on early boot TCG interfaces, is this a good time to= discuss a standard way to init the log with measurements made by the HW ro= ot of trust prior to Tcg2Pei? We were using a NULL lib and a registration p= attern on the PEIM, but I=92m open to other ideas, too. Thoughts? - Bret From: devel@edk2.groups.io > on behalf of Yao, Jiewen via groups.io > Sent: Tuesday, July 14, 2020 10:08:30 PM To: Zhang, Qi1 >; devel@ed= k2.groups.io > Cc: Wang, Jian J > Subject: [EXTERNAL] Re: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi: Add T= cgPpi header file. Thanks Qi. I just thought one use case that a PEIM may already have a calculated hash= (https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgith= ub.com%2Ftianocore%2Fedk2%2Fblob%2Fmaster%2FSecurityPkg%2FTcg%2FTcg2Pei%2FT= cg2Pei.c%23L652&data=3D02%7C01%7CBret.Barkelew%40microsoft.com%7Cbe2bb9= ca3e0c4dd95a0a08d8287d21ec%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637= 303865193113145&sdata=3DV3ofX%2Fvs6Pp%2Bc79cQx4iSB6K324Lyptqrj7FtvmDwsc= %3D&reserved=3D0) We may need add a flag to support this pre-hash use case. Such as: > +(EFIAPI *EDKII_TCG_HASH_LOG_EXTEND_EVENT)( > > + IN EDKII_TCG_PPI *This, > > + IN UINT64 Flags, // new field. BIT0 =3D 0 mea= ns HashData is the data to be hashed; BIT0 =3D 1 means HashData is the pre-= hash digest. > > + IN UINT8 *HashData, > > + IN UINTN HashDataLen, > > + IN TCG_PCR_EVENT_HDR *NewEventHdr, > > + IN UINT8 *NewEventData > > + ); > -----Original Message----- > From: Zhang, Qi1 > > Sent: Tuesday, July 14, 2020 2:49 PM > To: devel@edk2.groups.io > Cc: Yao, Jiewen >; Wan= g, Jian J >; > Zhang, Chao B > > Subject: [PATCH 1/6] SecurityPkg/TcgPpi: Add TcgPpi header file. > > From: Jiewen Yao > > > REF: https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2= Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D2841&data=3D02%7C01%7CBre= t.Barkelew%40microsoft.com%7Cbe2bb9ca3e0c4dd95a0a08d8287d21ec%7C72f988bf86f= 141af91ab2d7cd011db47%7C1%7C0%7C637303865193113145&sdata=3DVgWc2LNPqJRl= Bisa%2Bvuqq2THVK62f66uzzqh4cle4Rs%3D&reserved=3D0 > > Cc: Jiewen Yao > > Cc: Jian J Wang > > Cc: Chao Zhang > > Signed-off-by: Jiewen Yao > > --- > SecurityPkg/Include/Ppi/Tcg.h | 50 +++++++++++++++++++++++++++++++++++ > 1 file changed, 50 insertions(+) > create mode 100644 SecurityPkg/Include/Ppi/Tcg.h > > diff --git a/SecurityPkg/Include/Ppi/Tcg.h b/SecurityPkg/Include/Ppi/Tcg= .h > new file mode 100644 > index 0000000000..4eacd57166 > --- /dev/null > +++ b/SecurityPkg/Include/Ppi/Tcg.h > @@ -0,0 +1,50 @@ > +/** @file > > + TCG PPI services. > > + > > +Copyright (c) 2020, Intel Corporation. All rights reserved.
> > +SPDX-License-Identifier: BSD-2-Clause-Patent > > + > > +**/ > > + > > +#ifndef _TCG_PPI_H_ > > +#define _TCG_PPI_H_ > > + > > +#include > > + > > +typedef struct _EDKII_TCG_PPI EDKII_TCG_PPI; > > + > > +/** > > + Tpm measure and log data, and extend the measurement result into a sp= ecific > PCR. > > + > > + @param[in] This Indicates the calling context > > + @param[in] HashData Physical address of the start of the da= ta buffer > > + to be hashed, extended, and logged. > > + @param[in] HashDataLen The length, in bytes, of the buffer ref= erenced by > HashData. > > + @param[in] NewEventHdr Pointer to a TCG_PCR_EVENT_HDR data > structure. > > + @param[in] NewEventData Pointer to the new event data. > > + > > + @retval EFI_SUCCESS Operation completed successfully. > > + @retval EFI_UNSUPPORTED TPM device not available. > > + @retval EFI_OUT_OF_RESOURCES Out of memory. > > + @retval EFI_DEVICE_ERROR The operation was unsuccessful. > > +**/ > > +typedef > > +EFI_STATUS > > +(EFIAPI *EDKII_TCG_HASH_LOG_EXTEND_EVENT)( > > + IN EDKII_TCG_PPI *This, > > + IN UINT8 *HashData, > > + IN UINTN HashDataLen, > > + IN TCG_PCR_EVENT_HDR *NewEventHdr, > > + IN UINT8 *NewEventData > > + ); > > + > > +/// > > +/// The EFI_TCG Protocol abstracts TCG activity. > > +/// > > +struct _EDKII_TCG_PPI { > > + EDKII_TCG_HASH_LOG_EXTEND_EVENT HashLogExtendEvent; > > +}; > > + > > +extern EFI_GUID gEdkiiTcgPpiGuid; > > + > > +#endif > > -- > 2.26.2.windows.1 --_000_CY4PR21MB07436BD5FD8881B119F27AAFEF4A0CY4PR21MB0743namp_ Content-Type: text/html; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable
The more I think about it, the more I like your idea of registering e= arly and allowing a PPI notification callback.

Is that something we could get in this change, or would it be best to open= a new BZ to track that request? Thanks!

- Bret



From: devel@edk2.groups.io= <devel@edk2.groups.io> on behalf of Bret Barkelew via groups.io <= bret.barkelew=3Dmicrosoft.com@groups.io>
Sent: Wednesday, July 15, 2020 8:32 AM
To: Yao, Jiewen <jiewen.yao@intel.com>; devel@edk2.groups.io = <devel@edk2.groups.io>; Zhang, Qi1 <qi1.zhang@intel.com>
Cc: Wang, Jian J <jian.j.wang@intel.com>
Subject: [EXTERNAL] Re: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi= : Add TcgPpi header file.
 

Yeah, that=92s kinda what I was thinking. It seemed like there was a littl= e of overlap that might eliminate the need for the extra libs (in our curre= nt solution).

 

I=92ll try to get a more detailed problem statement today, but I think you= = =92ve got the right idea there.

 

- Bret

 

From: Yao, Jiewen
Sent: Wednesday, July 15, 2020 8:20 AM
To: devel@edk2.groups.io; Yao, Jiewen; Bret Barke= lew; Zhang, Qi1
Cc: Wang, Jian J
Subject: [EXTERNAL] RE: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi= : Add TcgPpi header file.

 

Maybe we can let TCG PEIM install the TCG_PPI *before* any measurem= ent record, then the other PEIM can register a callback to record the HW RO= T measurement ?

 

Thank you

Yao Jiewen

 

From: devel@edk2.groups.io &l= t;devel@edk2.groups.io> On Behalf Of Yao, Jiewen
Sent: Wednesday, July 15, 2020 10:45 PM
To: Bret Barkelew <Bret.Barkelew@microsoft.com>; devel@edk2.g= roups.io; Zhang, Qi1 <qi1.zhang@intel.com>
Cc: Wang, Jian J <jian.j.wang@intel.com>
Subject: Re: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi: Add TcgPp= i header file.

 

Hi Bret

Do you have a full problem statement or Bugzilla?

 

If we are resolving same problem, we can resolve altogether.

If we are talking different problem, we can resolve one by one.

 

Thank you

Yao Jiewen

 

From: Bret Barkelew <Bret.Barkelew@microsoft.com>
Sent: Wednesday, July 15, 2020 1:53 PM
To: devel@edk2.groups.io; Yao, Jiewen <jiewen.yao@intel= .com>; Zhang, Qi1 <qi1.zha= ng@intel.com>
Cc: Wang, Jian J <jian.= j.wang@intel.com>
Subject: Re: [PATCH 1/6] SecurityPkg/TcgPpi: Add TcgPpi header file= .

 

Since we=92re working on early boot TCG interfaces, is this a good time to= discuss a standard way to init the log with measurements made by the HW ro= ot of trust prior to Tcg2Pei? We were using a NULL lib and a registration p= attern on the PEIM, but I=92m open to other ideas, too. Thoughts?

 

- Bret

From: devel@edk2.groups.io <devel= @edk2.groups.io> on behalf of Yao, Jiewen via groups.io <jiewen.yao=3Dintel.com@groups= .io>
Sent: Tuesday, July 14, 2020 10:08:30 PM
To: Zhang, Qi1 <qi1.zhang= @intel.com>; devel@edk2.groups.io <devel@edk2.groups.io>
Cc: Wang, Jian J <jian.= j.wang@intel.com>
Subject: [EXTERNAL] Re: [edk2-devel] [PATCH 1/6] SecurityPkg/TcgPpi= : Add TcgPpi header file.

 

Thanks Qi.

I just thought one use case that a PEIM may already have a calculated hash=   (https://nam06.safelinks.protection.outlook.com/?url=3Dh= ttps%3A%2F%2Fgithub.com%2Ftianocore%2Fedk2%2Fblob%2Fmaster%2FSecurityPkg%2F= Tcg%2FTcg2Pei%2FTcg2Pei.c%23L652&amp;data=3D02%7C01%7CBret.Barkelew%40m= icrosoft.com%7Cbe2bb9ca3e0c4dd95a0a08d8287d21ec%7C72f988bf86f141af91ab2d7cd= 011db47%7C1%7C0%7C637303865193113145&amp;sdata=3DV3ofX%2Fvs6Pp%2Bc79cQx= 4iSB6K324Lyptqrj7FtvmDwsc%3D&amp;reserved=3D0)
We may need add a flag to support this pre-hash use case. Such as:

> +(EFIAPI *EDKII_TCG_HASH_LOG_EXTEND_EVENT)(
>
> +  IN      EDKII_TCG_PPI  &nb= sp;          *This,
>
> +  IN      UINT64   &nbs= p;            &= nbsp;  Flags,  // new field. BIT0 =3D 0 means HashData is the dat= a to be hashed; BIT0 =3D 1 means HashData is the pre-hash digest.
>
> +  IN      UINT8    = ;            &n= bsp;    *HashData,
>
> +  IN      UINTN    = ;            &n= bsp;    HashDataLen,
>
> +  IN      TCG_PCR_EVENT_HDR  = ;       *NewEventHdr,
>
> +  IN      UINT8    = ;            &n= bsp;    *NewEventData
>
> +  );

> -----Original Message-----
> From: Zhang, Qi1 <qi1.zhang= @intel.com>
> Sent: Tuesday, July 14, 2020 2:49 PM
> To: devel@edk2.groups.io<= br> > Cc: Yao, Jiewen <jiewen.ya= o@intel.com>; Wang, Jian J <jian.j.wang@intel.com>;
> Zhang, Chao B <chao.b.zh= ang@intel.com>
> Subject: [PATCH 1/6] SecurityPkg/TcgPpi: Add TcgPpi header file.
>
> From: Jiewen Yao <jiewen.y= ao@intel.com>
>
> REF: https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fbugzil= la.tianocore.org%2Fshow_bug.cgi%3Fid%3D2841&amp;data=3D02%7C01%7CBret.B= arkelew%40microsoft.com%7Cbe2bb9ca3e0c4dd95a0a08d8287d21ec%7C72f988bf86f141= af91ab2d7cd011db47%7C1%7C0%7C637303865193113145&amp;sdata=3DVgWc2LNPqJR= lBisa%2Bvuqq2THVK62f66uzzqh4cle4Rs%3D&amp;reserved=3D0
>
> Cc: Jiewen Yao <jiewen.yao= @intel.com>
> Cc: Jian J Wang <jian.j.w= ang@intel.com>
> Cc: Chao Zhang <chao.b.z= hang@intel.com>
> Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
> ---
>  SecurityPkg/Include/Ppi/Tcg.h | 50 ++++++++++++++++++++++++++++= +++++++
>  1 file changed, 50 insertions(+)
>  create mode 100644 SecurityPkg/Include/Ppi/Tcg.h
>
> diff --git a/SecurityPkg/Include/Ppi/Tcg.h b/SecurityPkg/Include/Ppi/= Tcg.h
> new file mode 100644
> index 0000000000..4eacd57166
> --- /dev/null
> +++ b/SecurityPkg/Include/Ppi/Tcg.h
> @@ -0,0 +1,50 @@
> +/** @file
>
> +  TCG PPI services.
>
> +
>
> +Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>= ;
>
> +SPDX-License-Identifier: BSD-2-Clause-Patent
>
> +
>
> +**/
>
> +
>
> +#ifndef _TCG_PPI_H_
>
> +#define _TCG_PPI_H_
>
> +
>
> +#include <IndustryStandard/UefiTcgPlatform.h>
>
> +
>
> +typedef struct _EDKII_TCG_PPI EDKII_TCG_PPI;
>
> +
>
> +/**
>
> +  Tpm measure and log data, and extend the measurement result i= nto a specific
> PCR.
>
> +
>
> +  @param[in]      This  &nbs= p;       Indicates the calling context
>
> +  @param[in]      HashData  =     Physical address of the start of the data buffer
>
> +           &n= bsp;            = ;        to be hashed, extended, and log= ged.
>
> +  @param[in]      HashDataLen &nb= sp; The length, in bytes, of the buffer referenced by
> HashData.
>
> +  @param[in]      NewEventHdr &nb= sp; Pointer to a TCG_PCR_EVENT_HDR data
> structure.
>
> +  @param[in]      NewEventData  P= ointer to the new event data.
>
> +
>
> +  @retval EFI_SUCCESS       =     Operation completed successfully.
>
> +  @retval EFI_UNSUPPORTED       T= PM device not available.
>
> +  @retval EFI_OUT_OF_RESOURCES  Out of memory.
>
> +  @retval EFI_DEVICE_ERROR      The op= eration was unsuccessful.
>
> +**/
>
> +typedef
>
> +EFI_STATUS
>
> +(EFIAPI *EDKII_TCG_HASH_LOG_EXTEND_EVENT)(
>
> +  IN      EDKII_TCG_PPI  &nb= sp;          *This,
>
> +  IN      UINT8    = ;            &n= bsp;    *HashData,
>
> +  IN      UINTN    = ;            &n= bsp;    HashDataLen,
>
> +  IN      TCG_PCR_EVENT_HDR  = ;       *NewEventHdr,
>
> +  IN      UINT8    = ;            &n= bsp;    *NewEventData
>
> +  );
>
> +
>
> +///
>
> +/// The EFI_TCG Protocol abstracts TCG activity.
>
> +///
>
> +struct _EDKII_TCG_PPI {
>
> +  EDKII_TCG_HASH_LOG_EXTEND_EVENT     HashL= ogExtendEvent;
>
> +};
>
> +
>
> +extern EFI_GUID gEdkiiTcgPpiGuid;
>
> +
>
> +#endif
>
> --
> 2.26.2.windows.1

 

--_000_CY4PR21MB07436BD5FD8881B119F27AAFEF4A0CY4PR21MB0743namp_-- --_004_CY4PR21MB07436BD5FD8881B119F27AAFEF4A0CY4PR21MB0743namp_ Content-Type: image/png; name="76AE0D9036A443C7808A55E592A91C3C.png" Content-Description: 76AE0D9036A443C7808A55E592A91C3C.png Content-Disposition: inline; filename="76AE0D9036A443C7808A55E592A91C3C.png"; size=146; creation-date="Wed, 15 Jul 2020 15:32:53 GMT"; modification-date="Wed, 15 Jul 2020 15:32:53 GMT" Content-ID: Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAAArYAAAACCAYAAACtx5+mAAAAAXNSR0IArs4c6QAAAARnQU1BAACx jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAnSURBVFhH7dZBEQAABAAw/UtJIIEw5OD2WIdF Vg8AAFwntgAAPNCzWbxuF8ybYOQAAAAASUVORK5CYII= --_004_CY4PR21MB07436BD5FD8881B119F27AAFEF4A0CY4PR21MB0743namp_--