https://bugzilla.tianocore.org/show_bug.cgi?id=2420
Based on the following package with changes to merge into CryptoPkg. https://github.com/microsoft/mu_plus/tree/dev/201908/SharedCryptoPkg * Add X509ConstructCertificateStackV() to BaseCryptLib. This is required to have a VA_LIST version of X509ConstructCertificateStack() so it can be maped into a Protocol/PPI. * Add EDK II Crypto Protocols/PPIs/PCDs * Add PEIM, DXE Driver, SMM Driver that produce the EDK II Crypto Protocols/PPIs using the services of the BaseCryptLib and TlsLib with families of services and individual services enabled/disables in the Protocols/PPIs using a PCD. * Add new BaseCryptLib library instance that calls the EDK II Crypto Protocols/PPIs. * Update DSC file to build all modules/libs and provide ability to build binary versions of the PEIM, DXE Driver, SMM Driver with different sets of Crypto services enabled. This patch series depends on the following patches that must be committed before this patch series will build and pass EDK II CI. https://edk2.groups.io/g/devel/message/53551 https://edk2.groups.io/g/devel/message/53555 Cc: Jian J Wang <jian.j.w...@intel.com> Cc: Xiaoyu Lu <xiaoyux...@intel.com> Signed-off-by: Michael D Kinney <michael.d.kin...@intel.com> Michael D Kinney (5): CryptoPkg/BaseCryptLib: Add X509ConstructCertificateStackV(). CryptoPkg: Add EDK II Crypto Protocols/PPIs/PCDs CryptoPkg/Driver: Add Crypto PEIM, DXE, and SMM modules CryptoPkg/Library: Add BaseCryptLibOnProtocolPpi instances CryptoPkg/CryptoPkg.dsc: Add build of Crypto libraries/modules CryptoPkg/CryptoPkg.dec | 34 +- CryptoPkg/CryptoPkg.dsc | 209 +- CryptoPkg/CryptoPkg.uni | 3 +- .../BaseCryptLib.h => Driver/Crypto.c} | 2139 ++++++- CryptoPkg/Driver/Crypto.uni | 13 + CryptoPkg/Driver/CryptoDxe.c | 38 + CryptoPkg/Driver/CryptoDxe.inf | 49 + CryptoPkg/Driver/CryptoPei.c | 99 + CryptoPkg/Driver/CryptoPei.inf | 51 + CryptoPkg/Driver/CryptoSmm.c | 41 + CryptoPkg/Driver/CryptoSmm.inf | 49 + CryptoPkg/Include/Library/BaseCryptLib.h | 26 + .../Pcd/PcdCryptoServiceFamilyEnable.h | 288 + CryptoPkg/Library/BaseCryptLib/Pk/CryptX509.c | 50 +- .../Library/BaseCryptLib/Pk/CryptX509Null.c | 32 +- .../BaseCryptLibNull/Pk/CryptX509Null.c | 32 +- .../BaseCryptLibOnProtocolPpi/CryptLib.c} | 1701 +++++- .../BaseCryptLibOnProtocolPpi/CryptLib.uni | 12 + .../BaseCryptLibOnProtocolPpi/DxeCryptLib.c | 68 + .../BaseCryptLibOnProtocolPpi/DxeCryptLib.inf | 44 + .../BaseCryptLibOnProtocolPpi/PeiCryptLib.c | 57 + .../BaseCryptLibOnProtocolPpi/PeiCryptLib.inf | 43 + .../BaseCryptLibOnProtocolPpi/SmmCryptLib.c | 79 + .../BaseCryptLibOnProtocolPpi/SmmCryptLib.inf | 44 + CryptoPkg/Private/Ppi/Crypto.h | 21 + .../Protocol/Crypto.h} | 5330 ++++++++++------- CryptoPkg/Private/Protocol/SmmCrypto.h | 21 + 27 files changed, 7861 insertions(+), 2712 deletions(-) copy CryptoPkg/{Include/Library/BaseCryptLib.h => Driver/Crypto.c} (61%) create mode 100644 CryptoPkg/Driver/Crypto.uni create mode 100644 CryptoPkg/Driver/CryptoDxe.c create mode 100644 CryptoPkg/Driver/CryptoDxe.inf create mode 100644 CryptoPkg/Driver/CryptoPei.c create mode 100644 CryptoPkg/Driver/CryptoPei.inf create mode 100644 CryptoPkg/Driver/CryptoSmm.c create mode 100644 CryptoPkg/Driver/CryptoSmm.inf create mode 100644 CryptoPkg/Include/Pcd/PcdCryptoServiceFamilyEnable.h copy CryptoPkg/{Include/Library/BaseCryptLib.h => Library/BaseCryptLibOnProtocolPpi/CryptLib.c} (67%) create mode 100644 CryptoPkg/Library/BaseCryptLibOnProtocolPpi/CryptLib.uni create mode 100644 CryptoPkg/Library/BaseCryptLibOnProtocolPpi/DxeCryptLib.c create mode 100644 CryptoPkg/Library/BaseCryptLibOnProtocolPpi/DxeCryptLib.inf create mode 100644 CryptoPkg/Library/BaseCryptLibOnProtocolPpi/PeiCryptLib.c create mode 100644 CryptoPkg/Library/BaseCryptLibOnProtocolPpi/PeiCryptLib.inf create mode 100644 CryptoPkg/Library/BaseCryptLibOnProtocolPpi/SmmCryptLib.c create mode 100644 CryptoPkg/Library/BaseCryptLibOnProtocolPpi/SmmCryptLib.inf create mode 100644 CryptoPkg/Private/Ppi/Crypto.h copy CryptoPkg/{Include/Library/BaseCryptLib.h => Private/Protocol/Crypto.h} (62%) create mode 100644 CryptoPkg/Private/Protocol/SmmCrypto.h -- 2.21.0.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#53560): https://edk2.groups.io/g/devel/message/53560 Mute This Topic: https://groups.io/mt/70266457/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-