public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
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


             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