CryptoPkg: Fixed host-based unit tests
* Build host-based tests using OpensslLib instance with all services enabled. * Build host-based tests using performance optimized OpensslLib instance with all services enabled. * Remove unused PCD gEfiCryptoPkgTokenSpaceGuid.PcdOpensslEcEnabled * Remove redundant and unnecessary [BuildOptions] * Limit host-based unit tests to only IA32/X64 Cc: Jiewen Yao <jiewen.yao@intel.com> Cc: Jian J Wang <jian.j.wang@intel.com> Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com> Cc: Guomin Jiang <guomin.jiang@intel.com> Cc: Christopher Zurcher <christopher.zurcher@microsoft.com> Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
This commit is contained in:
committed by
mergify[bot]
parent
0c9744787e
commit
584b246e88
@ -18,7 +18,7 @@
|
|||||||
#
|
#
|
||||||
# The following information is for reference only and not required by the build tools.
|
# The following information is for reference only and not required by the build tools.
|
||||||
#
|
#
|
||||||
# VALID_ARCHITECTURES = IA32 X64 ARM AARCH64
|
# VALID_ARCHITECTURES = IA32 X64
|
||||||
#
|
#
|
||||||
|
|
||||||
[Sources]
|
[Sources]
|
||||||
@ -28,6 +28,7 @@
|
|||||||
Hash/CryptSha256.c
|
Hash/CryptSha256.c
|
||||||
Hash/CryptSha512.c
|
Hash/CryptSha512.c
|
||||||
Hash/CryptSm3.c
|
Hash/CryptSm3.c
|
||||||
|
Hash/CryptParallelHashNull.c
|
||||||
Hmac/CryptHmac.c
|
Hmac/CryptHmac.c
|
||||||
Kdf/CryptHkdf.c
|
Kdf/CryptHkdf.c
|
||||||
Cipher/CryptAes.c
|
Cipher/CryptAes.c
|
||||||
@ -48,8 +49,7 @@
|
|||||||
Pk/CryptRsaPss.c
|
Pk/CryptRsaPss.c
|
||||||
Pk/CryptRsaPssSign.c
|
Pk/CryptRsaPssSign.c
|
||||||
Bn/CryptBn.c
|
Bn/CryptBn.c
|
||||||
Pk/CryptEcNull.c |*|*|*|!gEfiCryptoPkgTokenSpaceGuid.PcdOpensslEcEnabled
|
Pk/CryptEc.c
|
||||||
Pk/CryptEc.c |*|*|*|gEfiCryptoPkgTokenSpaceGuid.PcdOpensslEcEnabled
|
|
||||||
|
|
||||||
SysCall/UnitTestHostCrtWrapper.c
|
SysCall/UnitTestHostCrtWrapper.c
|
||||||
|
|
||||||
@ -59,12 +59,6 @@
|
|||||||
[Sources.X64]
|
[Sources.X64]
|
||||||
Rand/CryptRandTsc.c
|
Rand/CryptRandTsc.c
|
||||||
|
|
||||||
[Sources.ARM]
|
|
||||||
Rand/CryptRand.c
|
|
||||||
|
|
||||||
[Sources.AARCH64]
|
|
||||||
Rand/CryptRand.c
|
|
||||||
|
|
||||||
[Packages]
|
[Packages]
|
||||||
MdePkg/MdePkg.dec
|
MdePkg/MdePkg.dec
|
||||||
CryptoPkg/CryptoPkg.dec
|
CryptoPkg/CryptoPkg.dec
|
||||||
@ -75,9 +69,7 @@
|
|||||||
MemoryAllocationLib
|
MemoryAllocationLib
|
||||||
DebugLib
|
DebugLib
|
||||||
OpensslLib
|
OpensslLib
|
||||||
|
PrintLib
|
||||||
[FixedPcd]
|
|
||||||
gEfiCryptoPkgTokenSpaceGuid.PcdOpensslEcEnabled
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Remove these [BuildOptions] after this library is cleaned up
|
# Remove these [BuildOptions] after this library is cleaned up
|
||||||
@ -85,11 +77,9 @@
|
|||||||
[BuildOptions]
|
[BuildOptions]
|
||||||
#
|
#
|
||||||
# suppress the following warnings so we do not break the build with warnings-as-errors:
|
# suppress the following warnings so we do not break the build with warnings-as-errors:
|
||||||
# C4090: 'function' : different 'const' qualifiers
|
#
|
||||||
# C4018: '>': signed/unsigned mismatch
|
|
||||||
MSFT:*_*_*_CC_FLAGS = /wd4090 /wd4018
|
|
||||||
|
|
||||||
GCC:*_CLANG35_*_CC_FLAGS = -std=c99
|
GCC:*_CLANG35_*_CC_FLAGS = -std=c99
|
||||||
GCC:*_CLANG38_*_CC_FLAGS = -std=c99
|
GCC:*_CLANG38_*_CC_FLAGS = -std=c99
|
||||||
|
GCC:*_CLANGPDB_*_CC_FLAGS = -std=c99 -Wno-error=incompatible-pointer-types
|
||||||
|
|
||||||
XCODE:*_*_*_CC_FLAGS = -std=c99
|
XCODE:*_*_*_CC_FLAGS = -std=c99
|
||||||
|
@ -19,19 +19,13 @@
|
|||||||
|
|
||||||
!include UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc
|
!include UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc
|
||||||
|
|
||||||
[PcdsFixedAtBuild]
|
|
||||||
gEfiCryptoPkgTokenSpaceGuid.PcdOpensslEcEnabled|TRUE
|
|
||||||
|
|
||||||
[LibraryClasses]
|
[LibraryClasses]
|
||||||
OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
|
OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFull.inf
|
||||||
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf
|
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf
|
||||||
MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
|
MmServicesTableLib|MdePkg/Library/MmServicesTableLib/MmServicesTableLib.inf
|
||||||
SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
|
SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
|
||||||
TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
|
TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
|
||||||
|
|
||||||
[LibraryClasses.AARCH64, LibraryClasses.ARM]
|
|
||||||
RngLib|MdePkg/Library/BaseRngLibNull/BaseRngLibNull.inf
|
|
||||||
|
|
||||||
[LibraryClasses.X64, LibraryClasses.IA32]
|
[LibraryClasses.X64, LibraryClasses.IA32]
|
||||||
RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf
|
RngLib|MdePkg/Library/BaseRngLib/BaseRngLib.inf
|
||||||
|
|
||||||
@ -40,9 +34,10 @@
|
|||||||
# Build HOST_APPLICATION that tests the SampleUnitTest
|
# Build HOST_APPLICATION that tests the SampleUnitTest
|
||||||
#
|
#
|
||||||
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibHost.inf
|
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibHost.inf
|
||||||
|
CryptoPkg/Test/UnitTest/Library/BaseCryptLib/TestBaseCryptLibHostAccel.inf {
|
||||||
|
<LibraryClasses>
|
||||||
|
OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf
|
||||||
|
}
|
||||||
|
|
||||||
[BuildOptions]
|
[BuildOptions]
|
||||||
*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES
|
*_*_*_CC_FLAGS = -D DISABLE_NEW_DEPRECATED_INTERFACES
|
||||||
MSFT:*_*_*_CC_FLAGS = /D ENABLE_MD5_DEPRECATED_INTERFACES
|
|
||||||
INTEL:*_*_*_CC_FLAGS = /D ENABLE_MD5_DEPRECATED_INTERFACES
|
|
||||||
GCC:*_*_*_CC_FLAGS = -D ENABLE_MD5_DEPRECATED_INTERFACES
|
|
||||||
|
@ -0,0 +1,56 @@
|
|||||||
|
## @file
|
||||||
|
# Host-based UnitTest for BaseCryptLib
|
||||||
|
#
|
||||||
|
# Copyright (c) Microsoft Corporation.<BR>
|
||||||
|
# Copyright (c) 2022, Intel Corporation. All rights reserved.<BR>
|
||||||
|
# SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||||
|
##
|
||||||
|
|
||||||
|
[Defines]
|
||||||
|
INF_VERSION = 0x00010005
|
||||||
|
BASE_NAME = BaseCryptLibUnitTestHostAccel
|
||||||
|
FILE_GUID = B1AED64E-B53A-4D69-B0BA-60EEDAC47A6B
|
||||||
|
MODULE_TYPE = HOST_APPLICATION
|
||||||
|
VERSION_STRING = 1.0
|
||||||
|
|
||||||
|
#
|
||||||
|
# The following information is for reference only and not required by the build tools.
|
||||||
|
#
|
||||||
|
# VALID_ARCHITECTURES = IA32 X64
|
||||||
|
#
|
||||||
|
|
||||||
|
[Sources]
|
||||||
|
UnitTestMain.c
|
||||||
|
BaseCryptLibUnitTests.c
|
||||||
|
TestBaseCryptLib.h
|
||||||
|
HashTests.c
|
||||||
|
HmacTests.c
|
||||||
|
BlockCipherTests.c
|
||||||
|
RsaTests.c
|
||||||
|
RsaPkcs7Tests.c
|
||||||
|
Pkcs5Pbkdf2Tests.c
|
||||||
|
AuthenticodeTests.c
|
||||||
|
TSTests.c
|
||||||
|
DhTests.c
|
||||||
|
RandTests.c
|
||||||
|
Pkcs7EkuTests.c
|
||||||
|
OaepEncryptTests.c
|
||||||
|
RsaPssTests.c
|
||||||
|
ParallelhashTests.c
|
||||||
|
HkdfTests.c
|
||||||
|
AeadAesGcmTests.c
|
||||||
|
BnTests.c
|
||||||
|
EcTests.c
|
||||||
|
X509Tests.c
|
||||||
|
|
||||||
|
[Packages]
|
||||||
|
MdePkg/MdePkg.dec
|
||||||
|
CryptoPkg/CryptoPkg.dec
|
||||||
|
|
||||||
|
[LibraryClasses]
|
||||||
|
BaseLib
|
||||||
|
DebugLib
|
||||||
|
BaseCryptLib
|
||||||
|
UnitTestLib
|
||||||
|
MmServicesTableLib
|
||||||
|
SynchronizationLib
|
Reference in New Issue
Block a user