From: "Matthew Carlson" <matthewfcarlson@gmail.com>
To: devel@edk2.groups.io
Cc: Jian J Wang <jian.j.wang@intel.com>,
Xiaoyu Lu <xiaoyux.lu@intel.com>,
Jiewen Yao <jiewen.yao@intel.com>,
Guomin Jiang <guomin.jiang@intel.com>,
Sean Brogan <sean.brogan@microsoft.com>,
Bret Barkelew <Bret.Barkelew@microsoft.com>,
Michael D Kinney <michael.d.kinney@intel.com>,
Liming Gao <liming.gao@intel.com>
Subject: [PATCH v6 0/2] Add Unit Tests for BaseCryptLib to CryptoPkg
Date: Thu, 8 Oct 2020 15:37:45 -0700 [thread overview]
Message-ID: <20201008223747.151-1-matthewfcarlson@gmail.com> (raw)
From: Matthew Carlson <matthewfcarlson@gmail.com>
This turns adds Host Based Unit Tests for CryptoPkg, adds a new BaseCryptLib
implementation that is meant for unit testing and turns on HBUT for CryptoPkg
CI.
Changes for V6:
Told ECC to ignore unit test and new CRT wrapper
Changes for V5:
Remove BaseTimerLibPosix as it is no longer needed
Cleaned up a bit of the documentation around the tests
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Xiaoyu Lu <xiaoyux.lu@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Guomin Jiang <guomin.jiang@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
*** BLURB HERE ***
Matthew Carlson (2):
CryptoPkg: BaseCryptLib: Add unit tests (Host and Shell based)
AzurePipelines : Pr Gate: Turn on HBUT for CryptoPkg
CryptoPkg/Library/BaseCryptLib/SysCall/UnitTestHostCrtWrapper.c | 93 ++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/AuthenticodeTests.c | 1002 ++++++++++++++++++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/BaseCryptLibUnitTests.c | 66 ++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/BlockCipherTests.c | 293 ++++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/DhTests.c | 106 +++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/HashTests.c | 197 ++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/HmacTests.c | 184 ++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/OaepEncryptTests.c | 308 ++++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/Pkcs5Pbkdf2Tests.c | 71 ++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/Pkcs7EkuTests.c | 524 ++++++++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/RandTests.c | 51 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/RsaPkcs7Tests.c | 415 ++++++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/RsaTests.c | 310 ++++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TSTests.c | 335 +++++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/UnitTestMain.c | 81 ++
.azurepipelines/templates/pr-gate-build-job.yml | 2 +-
CryptoPkg/CryptoPkg.ci.yaml | 8 +
CryptoPkg/CryptoPkg.dsc | 23 +
CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf | 90 ++
CryptoPkg/Test/CryptoPkgHostUnitTest.dsc | 35 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/Pkcs7EkuTestSignatures.h | 789 +++++++++++++++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLib.h | 121 +++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibHost.inf | 46 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibShell.inf | 49 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/ChainCreationInstructions.txt | 92 ++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/CreateTestCerts.cmd | 11 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/SignFirmwareWithEKUs.cmd | 76 ++
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingIssuingCA.ini | 45 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingLeafSigner.ini | 25 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingLeafSignerPid1.ini | 24 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingLeafSignerPid12345.ini | 27 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingNoEKUsInSigner.ini | 16 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingPolicyCA.ini | 28 +
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingRoot.ini | 28 +
34 files changed, 5570 insertions(+), 1 deletion(-)
create mode 100644 CryptoPkg/Library/BaseCryptLib/SysCall/UnitTestHostCrtWrapper.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/AuthenticodeTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/BaseCryptLibUnitTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/BlockCipherTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/DhTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/HashTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/HmacTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/OaepEncryptTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/Pkcs5Pbkdf2Tests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/Pkcs7EkuTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/RandTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/RsaPkcs7Tests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/RsaTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TSTests.c
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/UnitTestMain.c
create mode 100644 CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf
create mode 100644 CryptoPkg/Test/CryptoPkgHostUnitTest.dsc
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/Pkcs7EkuTestSignatures.h
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLib.h
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibHost.inf
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibShell.inf
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/ChainCreationInstructions.txt
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/CreateTestCerts.cmd
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/SignFirmwareWithEKUs.cmd
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingIssuingCA.ini
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingLeafSigner.ini
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingLeafSignerPid1.ini
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingLeafSignerPid12345.ini
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingNoEKUsInSigner.ini
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingPolicyCA.ini
create mode 100644 CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestEKUCerts/TestEKUParsingRoot.ini
--
2.28.0.vfs.0.0
next reply other threads:[~2020-10-08 22:37 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-08 22:37 Matthew Carlson [this message]
2020-10-08 22:37 ` [PATCH v6 1/2] CryptoPkg: BaseCryptLib: Add unit tests (Host and Shell based) Matthew Carlson
2020-10-13 0:34 ` Yao, Jiewen
2020-10-08 22:37 ` [PATCH v6 2/2] AzurePipelines : Pr Gate: Turn on HBUT for CryptoPkg Matthew Carlson
2020-10-18 0:54 ` [PATCH v6 0/2] Add Unit Tests for BaseCryptLib to CryptoPkg Yao, Jiewen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201008223747.151-1-matthewfcarlson@gmail.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox