From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.23010.1641761913684755887 for ; Sun, 09 Jan 2022 12:58:33 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: joseph.hemann@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 5514F106F; Sun, 9 Jan 2022 12:58:33 -0800 (PST) Received: from u203013-lin.austin.arm.com (u203013-lin.austin.arm.com [10.118.28.29]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4AC553F766; Sun, 9 Jan 2022 12:58:33 -0800 (PST) From: "Joseph Hemann" To: devel@edk2.groups.io Cc: nd@arm.com, Joseph Hemann Subject: [PATCH 4/6] uefi-sct/SctPkg: TCG2 Protocol: add HashLogExtendEvent test Date: Sun, 9 Jan 2022 14:58:25 -0600 Message-Id: <20220109205827.3608758-5-Joseph.hemann@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220109205827.3608758-1-Joseph.hemann@arm.com> References: <20220109205827.3608758-1-Joseph.hemann@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable -add initial TCG2 protocol test for HashLogExtendEvent() -checkpoint for test of function with invalid parameters -checkpoint for test of function with valid parameters V2: -fix issue with reused Assertion Guid Signed-off-by: Joseph Hemann Change-Id: I126f2c6316f8469455f8e2a19ca7e945e9d5d6ae --- .../EFI/Protocol/TCG2/BlackBoxTest/Guid.c | 12 + .../EFI/Protocol/TCG2/BlackBoxTest/Guid.h | 29 ++ .../TCG2/BlackBoxTest/TCG2ProtocolBBTest.h | 29 ++ .../TCG2ProtocolBBTestConformance.c | 281 ++++++++++++++++++ .../BlackBoxTest/TCG2ProtocolBBTestMain.c | 9 + 5 files changed, 360 insertions(+) diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/G= uid.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/Guid.c index 0497f08f..ed013744 100644 --- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/Guid.c +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/Guid.c @@ -37,3 +37,15 @@ EFI_GUID gTcg2ConformanceTestAssertionGuid003 =3D EFI_TE= ST_TCG2CONFORMANCE_ASSERTI EFI_GUID gTcg2ConformanceTestAssertionGuid004 =3D EFI_TEST_TCG2CONFORMANCE= _ASSERTION_004_GUID;=0D =0D EFI_GUID gTcg2ConformanceTestAssertionGuid005 =3D EFI_TEST_TCG2CONFORMANCE= _ASSERTION_005_GUID;=0D +=0D +EFI_GUID gTcg2ConformanceTestAssertionGuid006 =3D EFI_TEST_TCG2CONFORMANCE= _ASSERTION_006_GUID;=0D +=0D +EFI_GUID gTcg2ConformanceTestAssertionGuid007 =3D EFI_TEST_TCG2CONFORMANCE= _ASSERTION_007_GUID;=0D +=0D +EFI_GUID gTcg2ConformanceTestAssertionGuid008 =3D EFI_TEST_TCG2CONFORMANCE= _ASSERTION_008_GUID;=0D +=0D +EFI_GUID gTcg2ConformanceTestAssertionGuid009 =3D EFI_TEST_TCG2CONFORMANCE= _ASSERTION_009_GUID;=0D +=0D +EFI_GUID gTcg2ConformanceTestAssertionGuid010 =3D EFI_TEST_TCG2CONFORMANCE= _ASSERTION_010_GUID;=0D +=0D +EFI_GUID gTcg2ConformanceTestAssertionGuid011 =3D EFI_TEST_TCG2CONFORMANCE= _ASSERTION_011_GUID;=0D diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/G= uid.h b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/Guid.h index f470255c..45c2b2b2 100644 --- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/Guid.h +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/Guid.h @@ -51,3 +51,32 @@ extern EFI_GUID gTcg2ConformanceTestAssertionGuid004; =0D extern EFI_GUID gTcg2ConformanceTestAssertionGuid005;=0D =0D +#define EFI_TEST_TCG2CONFORMANCE_ASSERTION_006_GUID \=0D +{ 0xa8e1b5e6, 0xfc09, 0x461c, {0xb0, 0xe9, 0x2a, 0x49, 0xcd, 0x25, 0xc1, 0= x24 }}=0D +=0D +extern EFI_GUID gTcg2ConformanceTestAssertionGuid006;=0D +=0D +#define EFI_TEST_TCG2CONFORMANCE_ASSERTION_007_GUID \=0D +{ 0x26f04a9b, 0x7b7a, 0x4f47, {0xbe, 0xa8, 0xb1, 0xa6, 0x02, 0x65, 0x19, 0= x8a }}=0D +=0D +extern EFI_GUID gTcg2ConformanceTestAssertionGuid007;=0D +=0D +#define EFI_TEST_TCG2CONFORMANCE_ASSERTION_008_GUID \=0D +{ 0x4d1d9985, 0x91e2, 0x4948, {0x89, 0x16, 0xbb, 0x98, 0x13, 0x62, 0x39, 0= x1d }}=0D +=0D +extern EFI_GUID gTcg2ConformanceTestAssertionGuid008;=0D +=0D +#define EFI_TEST_TCG2CONFORMANCE_ASSERTION_009_GUID \=0D +{ 0xfb59cab7, 0x4f8c, 0x4ded, {0xa4, 0x1c, 0xc8, 0x41, 0x20, 0x1c, 0x37, 0= x22 }}=0D +=0D +extern EFI_GUID gTcg2ConformanceTestAssertionGuid009;=0D +=0D +#define EFI_TEST_TCG2CONFORMANCE_ASSERTION_010_GUID \=0D +{ 0x0363d22f, 0xc66a, 0x4872, {0xa5, 0x46, 0x06, 0x7f, 0x6a, 0x0d, 0xdb, 0= xcd }}=0D +=0D +extern EFI_GUID gTcg2ConformanceTestAssertionGuid010;=0D +=0D +#define EFI_TEST_TCG2CONFORMANCE_ASSERTION_011_GUID \=0D +{ 0x9cd6d636, 0x603a, 0x4b78, {0x80, 0xa3, 0xa3, 0xb9, 0xcc, 0x6a, 0x0b, 0= x08 }}=0D +=0D +extern EFI_GUID gTcg2ConformanceTestAssertionGuid011;=0D diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/T= CG2ProtocolBBTest.h b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/Black= BoxTest/TCG2ProtocolBBTest.h index ed65bc97..1b56852e 100644 --- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/TCG2Prot= ocolBBTest.h +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/TCG2Prot= ocolBBTest.h @@ -40,6 +40,15 @@ Abstract: #define EFI_TCG2_PROTOCOL_TEST_ENTRY_GUID0102 \=0D {0x847f1ae0, 0xb429, 0x49f1, {0x9e, 0x0c, 0x8f, 0x43, 0xfb, 0x55, 0x34, 0= x54} }=0D =0D +#define EFI_TCG2_PROTOCOL_TEST_ENTRY_GUID0103 \=0D + {0x907a7878, 0xb294, 0xf147, {0xe9, 0x0a, 0x65, 0x43, 0xab, 0x55, 0x76, 0= x46} }=0D +=0D +#define EV_POST_CODE 0x01=0D +=0D +#define EFI_TCG2_EXTEND_ONLY 0x0000000000000001=0D +=0D +#define PE_COFF_IMAGE 0x0000000000000010=0D +=0D EFI_STATUS=0D EFIAPI=0D BBTestTCG2ProtocolUnload (=0D @@ -76,6 +85,18 @@ BBTestGetActivePcrBanksConformanceTestCheckpoint2 ( IN EFI_TCG2_PROTOCOL *TCG2=0D );=0D =0D +EFI_STATUS=0D +BBTestHashLogExtendEventConformanceTestCheckpoint1 (=0D + IN EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib,=0D + IN EFI_TCG2_PROTOCOL *TCG2=0D + );=0D +=0D +EFI_STATUS=0D +BBTestHashLogExtendEventConformanceTestCheckpoint2 (=0D + IN EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib,=0D + IN EFI_TCG2_PROTOCOL *TCG2=0D + );=0D +=0D EFI_STATUS=0D BBTestGetCapabilityConformanceTest (=0D IN EFI_BB_TEST_PROTOCOL *This,=0D @@ -92,3 +113,11 @@ BBTestGetActivePcrBanksConformanceTest ( IN EFI_HANDLE SupportHandle=0D );=0D =0D +EFI_STATUS=0D +BBTestHashLogExtendEventConformanceTest (=0D + IN EFI_BB_TEST_PROTOCOL *This,=0D + IN VOID *ClientInterface,=0D + IN EFI_TEST_LEVEL TestLevel,=0D + IN EFI_HANDLE SupportHandle=0D + );=0D +=0D diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/T= CG2ProtocolBBTestConformance.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol= /TCG2/BlackBoxTest/TCG2ProtocolBBTestConformance.c index c7b326cd..874e4eb8 100644 --- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/TCG2Prot= ocolBBTestConformance.c +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/TCG2Prot= ocolBBTestConformance.c @@ -135,6 +135,57 @@ BBTestGetActivePcrBanksConformanceTest ( return EFI_SUCCESS;=0D }=0D =0D +/**=0D + * @brief Entrypoint for HashLogExtendEvent() Function Test.=0D + * 2 checkpoints will be tested.=0D + * @param This a pointer of EFI_BB_TEST_PROTOCOL=0D + * @param ClientInterface A pointer to the interface array under test=0D + * @param TestLevel Test "thoroughness" control=0D + * @param SupportHandle A handle containing protocols required=0D + * @return EFI_SUCCESS=0D + * @return EFI_NOT_FOUND=0D + */=0D +=0D +EFI_STATUS=0D +BBTestHashLogExtendEventConformanceTest (=0D + IN EFI_BB_TEST_PROTOCOL *This,=0D + IN VOID *ClientInterface,=0D + IN EFI_TEST_LEVEL TestLevel,=0D + IN EFI_HANDLE SupportHandle=0D + )=0D +{=0D + EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib;=0D + EFI_STATUS Status;=0D + EFI_TCG2_PROTOCOL *TCG2;=0D + //=0D + // init=0D + //=0D + TCG2 =3D (EFI_TCG2_PROTOCOL*)ClientInterface;=0D + + // Ensure Protocol not NULL + if (TCG2 =3D=3D NULL) + return EFI_UNSUPPORTED; + + // Get the Standard Library Interface=0D + //=0D + Status =3D gtBS->HandleProtocol (=0D + SupportHandle,=0D + &gEfiStandardTestLibraryGuid,=0D + (VOID **) &StandardLib=0D + );=0D + if (EFI_ERROR(Status)) {=0D + return Status;=0D + }=0D +=0D + //Test Using NULL Pointer=0D + BBTestHashLogExtendEventConformanceTestCheckpoint1 (StandardLib, TCG2);= =0D +=0D + //Test with correct size field=0D + BBTestHashLogExtendEventConformanceTestCheckpoint2 (StandardLib, TCG2);= =0D +=0D + return EFI_SUCCESS;=0D +}=0D +=0D EFI_STATUS=0D BBTestGetCapabilityConformanceTestCheckpoint1 (=0D IN EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib,=0D @@ -478,3 +529,233 @@ BBTestGetActivePcrBanksConformanceTestCheckpoint2 ( =0D return EFI_SUCCESS;=0D }=0D +=0D +EFI_STATUS=0D +BBTestHashLogExtendEventConformanceTestCheckpoint1 (=0D + IN EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib,=0D + IN EFI_TCG2_PROTOCOL *TCG2=0D + )=0D +{=0D + EFI_TEST_ASSERTION AssertionType;=0D + EFI_STATUS Status;=0D + UINT64 Flags =3D 0;=0D + EFI_PHYSICAL_ADDRESS DataToHash;=0D + UINT64 DataToHashLen;=0D + EFI_TCG2_EVENT *EfiTcgEvent;=0D + const CHAR16 *EventData =3D L"TCG2 Protocol Tes= t";=0D + const CHAR16 *Str =3D L"The quick brown fox jum= ps over the lazy dog";=0D + UINT32 EfiTcgEventSize =3D sizeof(EFI_TCG= 2_EVENT) + SctStrSize(EventData);=0D + + DataToHash =3D Str;=0D + DataToHashLen =3D SctStrLen(Str);=0D +=0D + Status =3D gtBS->AllocatePool (=0D + EfiBootServicesData,=0D + EfiTcgEventSize,=0D + (VOID **)&EfiTcgEvent=0D + );=0D + + EfiTcgEvent->Header.HeaderSize =3D sizeof(EFI_TCG2_EVENT_HEADER);=0D + EfiTcgEvent->Header.EventType =3D EV_POST_CODE;=0D + EfiTcgEvent->Header.PCRIndex =3D 16;=0D + EfiTcgEvent->Size =3D EfiTcgEvent->Header.HeaderSize + SctStrSize(EventD= ata);=0D + + // Ensure HashLogExtendEvent returns Invalid Parameter when passing in N= ULL DataToHash pointer=0D + // EFI Protocol Spec Section 6.6.5 #1=0D + Status =3D TCG2->HashLogExtendEvent (=0D + TCG2,=0D + Flags,=0D + NULL,=0D + 0,=0D + EfiTcgEvent);=0D +=0D + if (EFI_INVALID_PARAMETER !=3D Status) {=0D + AssertionType =3D EFI_TEST_ASSERTION_FAILED;=0D + } else {=0D + AssertionType =3D EFI_TEST_ASSERTION_PASSED;=0D + }=0D +=0D + StandardLib->RecordAssertion (=0D + StandardLib,=0D + AssertionType,=0D + gTcg2ConformanceTestAssertionGuid006,=0D + L"TCG2_PROTOCOL.HashLogExtendEvent - Test with NULL DataT= oHash Pointer should return EFI_INVALID_PARAMETER",=0D + L"%a:%d: Status - %r",=0D + __FILE__,=0D + (UINTN)__LINE__,=0D + Status=0D + );=0D + + // Ensure HashLogExtendEvent returns Invalid Parameter when passing in N= ULL EfiTcgEvent pointer=0D + // EFI Protocol Spec Section 6.6.5 #1=0D + Status =3D TCG2->HashLogExtendEvent (=0D + TCG2,=0D + Flags,=0D + DataToHash,=0D + DataToHashLen,=0D + NULL);=0D +=0D + if (EFI_INVALID_PARAMETER !=3D Status) {=0D + AssertionType =3D EFI_TEST_ASSERTION_FAILED;=0D + } else {=0D + AssertionType =3D EFI_TEST_ASSERTION_PASSED;=0D + }=0D + + StandardLib->RecordAssertion (=0D + StandardLib,=0D + AssertionType,=0D + gTcg2ConformanceTestAssertionGuid007,=0D + L"TCG2_PROTOCOL.HashLogExtendEvent - Test with NULL EfiTc= gEvent Pointer should return EFI_INVALID_PARAMETER",=0D + L"%a:%d: Status - %r",=0D + __FILE__,=0D + (UINTN)__LINE__,=0D + Status=0D + );=0D + + // Ensure HashLogExtendEvent returns Invalid Parameter when passed in Ev= entSize < HeaderSize + sizeof(UINT32)=0D + // EFI Protocol Spec Section 6.6.5 #2=0D + EfiTcgEvent->Size =3D EfiTcgEvent->Header.HeaderSize + sizeof(UINT32) - = 1;=0D + + Status =3D TCG2->HashLogExtendEvent (=0D + TCG2,=0D + Flags,=0D + DataToHash,=0D + DataToHashLen,=0D + EfiTcgEvent);=0D +=0D + if (EFI_INVALID_PARAMETER !=3D Status) {=0D + AssertionType =3D EFI_TEST_ASSERTION_FAILED;=0D + } else {=0D + AssertionType =3D EFI_TEST_ASSERTION_PASSED;=0D + }=0D + + StandardLib->RecordAssertion (=0D + StandardLib,=0D + AssertionType,=0D + gTcg2ConformanceTestAssertionGuid008,=0D + L"TCG2_PROTOCOL.HashLogExtendEvent - Test with Event.Size= < Event.Header.HeaderSize + sizeof(UINT32) should return EFI_INVALID_PARAM= ETER",=0D + L"%a:%d: Status - %r",=0D + __FILE__,=0D + (UINTN)__LINE__,=0D + Status=0D + );=0D + + // Ensure HashLogExtendEvent returns Invalid Parameter when passing in P= CR Index > 23=0D + // EFI Protocol Spec Section 6.6.5 #3=0D + EfiTcgEvent->Header.PCRIndex =3D 24;=0D + EfiTcgEvent->Size =3D EfiTcgEvent->Header.HeaderSize + SctStrSize(EventD= ata);=0D + + Status =3D TCG2->HashLogExtendEvent (=0D + TCG2,=0D + Flags,=0D + DataToHash,=0D + DataToHashLen,=0D + EfiTcgEvent);=0D + + if (EFI_INVALID_PARAMETER !=3D Status) {=0D + AssertionType =3D EFI_TEST_ASSERTION_FAILED;=0D + } else {=0D + AssertionType =3D EFI_TEST_ASSERTION_PASSED;=0D + }=0D + + StandardLib->RecordAssertion (=0D + StandardLib,=0D + AssertionType,=0D + gTcg2ConformanceTestAssertionGuid009,=0D + L"TCG2_PROTOCOL.HashLogExtendEvent - Test with PCRIndex >= 23 should return EFI_INVALID_PARAMETER",=0D + L"%a:%d: Status - %r",=0D + __FILE__,=0D + (UINTN)__LINE__,=0D + Status=0D + );=0D + + return EFI_SUCCESS;=0D +}=0D + +EFI_STATUS=0D +BBTestHashLogExtendEventConformanceTestCheckpoint2 (=0D + IN EFI_STANDARD_TEST_LIBRARY_PROTOCOL *StandardLib,=0D + IN EFI_TCG2_PROTOCOL *TCG2=0D + )=0D +{=0D + EFI_TCG2_EVENT *EfiTcgEvent;=0D + EFI_TEST_ASSERTION AssertionType;=0D + EFI_STATUS Status;=0D + UINT64 Flags =3D 0;=0D + EFI_PHYSICAL_ADDRESS DataToHash;=0D + UINT64 DataToHashLen;=0D + const CHAR16 *Str =3D L"The quick brown fox jumps over the lazy dog";=0D + const CHAR16 *EventData =3D L"TCG2 Protocol Test";=0D + UINT32 EfiTcgEventSize =3D sizeof(EFI_TCG2_EVENT) + SctStrSize(EventData= );=0D +=0D + DataToHash =3D Str;=0D + DataToHashLen =3D SctStrLen(Str);=0D +=0D + Status =3D gtBS->AllocatePool (=0D + EfiBootServicesData,=0D + EfiTcgEventSize,=0D + (VOID **)&EfiTcgEvent=0D + );=0D + + EfiTcgEvent->Header.HeaderSize =3D sizeof(EFI_TCG2_EVENT_HEADER);=0D + EfiTcgEvent->Header.EventType =3D EV_POST_CODE;=0D + EfiTcgEvent->Header.PCRIndex =3D 16;=0D + EfiTcgEvent->Size =3D EfiTcgEvent->Header.HeaderSize + SctStrSize(EventD= ata);=0D + + // Perform HashLogExtendEvent over test buffer to PCR 16 + Status =3D TCG2->HashLogExtendEvent (=0D + TCG2,=0D + Flags,=0D + DataToHash,=0D + DataToHashLen,=0D + EfiTcgEvent);=0D +=0D + if (Status !=3D EFI_SUCCESS) {=0D + AssertionType =3D EFI_TEST_ASSERTION_FAILED;=0D + } else {=0D + AssertionType =3D EFI_TEST_ASSERTION_PASSED;=0D + }=0D +=0D + StandardLib->RecordAssertion (=0D + StandardLib,=0D + AssertionType,=0D + gTcg2ConformanceTestAssertionGuid010,=0D + L"TCG2_PROTOCOL.HashLogExtendEvent - HashLogExtendEvent()= Test: HashLogExtendEvent should return EFI_SUCCESS",=0D + L"%a:%d: Status - %r",=0D + __FILE__,=0D + (UINTN)__LINE__,=0D + Status=0D + );=0D +=0D + // Test with valid Parameters but with Flags =3D PE_COFF_IMAGE=0D + // EFI Protocol Spec Section 6.6.5 #4=0D + Flags =3D PE_COFF_IMAGE;=0D + + Status =3D TCG2->HashLogExtendEvent (=0D + TCG2,=0D + Flags,=0D + DataToHash,=0D + DataToHashLen,=0D + EfiTcgEvent);=0D +=0D + if (Status !=3D EFI_UNSUPPORTED) {=0D + AssertionType =3D EFI_TEST_ASSERTION_FAILED;=0D + } else {=0D + AssertionType =3D EFI_TEST_ASSERTION_PASSED;=0D + }=0D +=0D + StandardLib->RecordAssertion (=0D + StandardLib,=0D + AssertionType,=0D + gTcg2ConformanceTestAssertionGuid011,=0D + L"TCG2_PROTOCOL.HashLogExtendEvent - HashLogExtendEvent()= Test Handling of PE_COFF_IMAGE flag",=0D + L"%a:%d: Status - %r",=0D + __FILE__,=0D + (UINTN)__LINE__,=0D + Status=0D + );=0D + + gtBS->FreePool (EfiTcgEvent);=0D + + return EFI_SUCCESS;=0D +}=0D diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/T= CG2ProtocolBBTestMain.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/B= lackBoxTest/TCG2ProtocolBBTestMain.c index 4e7b1593..892fce26 100644 --- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/TCG2Prot= ocolBBTestMain.c +++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/TCG2/BlackBoxTest/TCG2Prot= ocolBBTestMain.c @@ -56,6 +56,15 @@ EFI_BB_TEST_ENTRY_FIELD gBBTestEntryField[] =3D { EFI_TEST_CASE_AUTO,=0D BBTestGetActivePcrBanksConformanceTest=0D },=0D + {=0D + EFI_TCG2_PROTOCOL_TEST_ENTRY_GUID0103,=0D + L"HashLogExtendEvent_Conf",=0D + L"Test the HashLogExtendEvent API",=0D + EFI_TEST_LEVEL_DEFAULT,=0D + gSupportProtocolGuid1,=0D + EFI_TEST_CASE_AUTO,=0D + BBTestHashLogExtendEventConformanceTest=0D + },=0D 0=0D };=0D =0D --=20 2.25.1