Wenxing Hou
71606314f8
CryptoPkg: Fix wrong logic in X509GetTBSCert
...
REF:
https://bugzilla.tianocore.org/show_bug.cgi?id=4509
Both return 0x80 value and
Asn1Tag != V_ASN1_SEQUENCE are wrong return.
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
2024-06-06 14:49:44 +00:00
Nhi Pham
b0930e3f4e
CryptoPkg/BaseCryptLib: Enable more functions for SMM/StandaloneMM
...
This facilitates RSA extension, PKCS7 sign, and bignum function to
broaden the range of algorithms available in SMM/StandaloneMM for
platform utilization.
Signed-off-by: Nhi Pham <nhi@os.amperecomputing.com >
2024-06-03 10:48:34 +00:00
Shang Qingyu
3b36aa96de
CryptoPkg: Remove deprecated code related to SHA-1
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4698
The default drbg type of randlib has been switched to aes_256_ctr in
openssl1.1.1, so sha1 is not really used in RandomSeed(). Remove related code
which do SHA-1 support checking in CryptRand.c and CryptRandTsc.c to avoid
potential compatibility errors.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Signed-off-by: Shang Qingyu <qingyu.shang@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-05-31 15:54:23 +00:00
Qingyu
7c584bb048
CryptoPkg: Fix bug for correct return value checking when get X509Cert
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4509
CryptX509.c file has X509GetTBSCert() funtion and it is added Inf variable
to collect the return value of ASN1_get_object(), which return 0x80 in error
case. Supplement the return value check during the second function call
and correct the check logic.
Signed-off-by: Qingyu <qingyu.shang@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-05-31 12:24:38 +00:00
Shang Qingyu
746cc5cc40
CryptoPkg: Add support for aes128-sha256 and aes256-sha256 cipher
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4739
AES256-SHA256 is a Tls1.2 suite we need to support, add it to deflt_ciphers
in OpensslStub.
Signed-off-by: Shang Qingyu <qingyu.shang@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-05-31 07:44:03 +00:00
Wenxing Hou
08281572aa
Add SM3 functions with openssl for Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Because the Mbedlts 3.3.0 doesn't have Sm3, the Sm3
implementaion is based on Openssl.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
ed7a3143b7
CryptoPkg: Update *.inf in BaseCryptLibMbedTls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Update all *.inf in BaseCryptLibMbedTls based on new implementation.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
3096fcf81d
CryptoPkg: Add ImageTimestampVerify based on Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Timestamp Countersignature Verification implementaion based on Mbedtls.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
27a7345882
CryptoPkg: Add AuthenticodeVerify based on Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Implement AuthenticodeVerify based on Mbedtls.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
b5412646db
CryptoPkg: Add more RSA related functions based on Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Implement more RSA functions such as RsaPkcs1Sign based Mbedlts.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
e065735b1b
CryptoPkg: Add Pkcs5 functions based on Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
PBKDF2 Key Derivation Function Wrapper Implementation over MbedTLS.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
acfd991b68
CryptoPkg: Add Pkcs7 related functions based on Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Because the current Mbedlts pkcs7 library doesn't support
authenticatedAttributes
and only support 0 or 1 certificates in Signed data,
the patch implement Pkcs7 by low Mbedtls Api.
And the implementation has pass unit_tes and integration test.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
40fa5cf299
CryptoPkg: Add X509 functions based on Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
X.509 Certificate Handler Wrapper Implementation over MbedTLS.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
f44cc28972
CryptoPkg: Add Pem APIs based on Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Implement Pem API based on Mbedtls.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
8deeda7ce0
CryptoPkg: Add rand function for BaseCryptLibMbedTls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Add rand function for BaseCryptLibMbedTls.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Wenxing Hou
1d8fedb0cd
CryptoPkg: Add AeadAesGcm based on Mbedtls
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
AeadAesGcm implementation based on Mbedtls.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Acked-by: Jiewen Yao <Jiewen.yao@intel.com >
2024-05-27 17:24:30 +08:00
Chris Ruffin
503344cdbd
CryptoPkg/Driver: add additional RSAES-OAEP crypto functions
...
Add new functions to CryptoPkg/Driver.
Signed-off-by: Chris Ruffin <v-chruffin@microsoft.com >
Cc: Chris Ruffin <cruffin@millcore.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-04-07 03:55:04 +00:00
Chris Ruffin
89ff5da9f9
CryptoPkg/BaseCryptLib: add additional RSAES-OAEP crypto functions
...
Expand the availability of the RSAES-OAEP crypto capability in
BaseCryptLib. Applications using RSA crypto functions directly from
OpensslLib can transition to BaseCryptLib to take advantage of the
shared crypto feature in CryptoDxe.
Pkcs1v2Decrypt(): decryption using DER-encoded private key
RsaOaepEncrypt(): encryption using RSA contexts
RsaOaepDecrypt(): decryption using RSA contexts
Fixes: https://bugzilla.tianocore.org/show_bug.cgi?id=4732
Gihub PR: https://github.com/tianocore/edk2/pull/5473
Signed-off-by: Chris Ruffin <v-chruffin@microsoft.com >
Cc: Chris Ruffin <cruffin@millcore.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-04-07 03:55:04 +00:00
Hou, Wenxing
8f698f0a64
CryptoPkg: Remove interdependence for RsaPssVerify
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4742
Remove interdependence for RsaPssVerify, only use original
mbedtls API.
Because APIs such as Sha512Init may be closed by the platform PCD.
And this patch optimize the hash flow.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-04-01 02:48:15 +00:00
Hou, Wenxing
d402de2222
CryptoPkg: Update Md5/Sha1/Sha2 by using new mbedtls api
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4741
Update Md5/Sha1/Sha2 by using mbedtls 3.0 api in BaseCryptLibMbedTls,
because the old API may be deprecated when open some MACRO.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-04-01 02:48:15 +00:00
Hou, Wenxing
278250045b
CryptoPkg: Update OPTIONAL location for BaseCryptLibMbedTls
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4740
There is a wrong usage for OPTIONAL.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-04-01 02:48:15 +00:00
Hou, Wenxing
0c6d29be8b
CryptoPkg: Add dummy inttypes header to fix clang build
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4642
When use Mbedtls, there is a clang build error.
Add dummy inttypes header to fix clang build.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-01-22 03:02:37 +00:00
Hou, Wenxing
e7cfdc5f14
CryptoPkg: Fix redefinition error of int defines
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4632
Move the define to stdint and add MACRO to prevent duplicate inclusion.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-01-10 15:34:28 +00:00
Hou, Wenxing
e7152e6186
CryptoPkg: fix gcc build fail for CryptoPkgMbedtls
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4630
Enable MBEDTLS_NO_UDBL_DIVISION to fix GCC x64 build failure.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-01-08 09:34:31 +00:00
Hou, Wenxing
e449451770
CryptoPkg: move define to CrtLibSupport
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=4632
The before code will cause redefine error.
This patch move them to CrtLibSupport header.
But Openssl has already defined them internally,
need to increase support for OPENSLL_SYS_UEFI judgment.
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2024-01-04 09:50:35 +00:00
Wenxing Hou
eebd446875
CryptoPkg: Add CryptAes functions based on Mbedtls Add CryptAes APIS.
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2023-10-12 05:31:19 +00:00
Wenxing Hou
c5fedb030a
CryptoPkg: Add MD5/SHA1/SHA2 functions based on Mbedtls
...
Add MD5/SHA1/SHA256/SHA384/SHA512 APIs.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2023-10-12 05:31:19 +00:00
Wenxing Hou
4049ca493c
CryptoPkg: Add Null functions for building pass
...
Add Null functions to build. These feature are not supported now.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2023-10-12 05:31:19 +00:00
Wenxing Hou
b26f7dfe29
CryptoPkg: Add all .inf files for BaseCryptLibMbedTls
...
Add .inf files and other support files.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2023-10-12 05:31:19 +00:00
Wenxing Hou
97f51f2e9b
CryptoPkg: Add RSA functions based on Mbedtls
...
Add RSA APIs.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2023-10-12 05:31:19 +00:00
Wenxing Hou
60222e7eb9
CryptoPkg: Add HKDF functions based on Mbedtls
...
Add HKDF APIs.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2023-10-12 05:31:19 +00:00
Wenxing Hou
731aa70881
CryptoPkg: Add HMAC functions based on Mbedtls
...
Add HMAC APIS.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
2023-10-12 05:31:19 +00:00
Wenxing Hou
586f05b9de
CryptoPkg: Add mbedtls_config and MbedTlsLib.inf
...
Add MbedTlsLib support.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2023-10-12 05:31:19 +00:00
Wenxing Hou
1a79cc7d95
CryptoPkg: Add mbedtls submodule for EDKII
...
Add mbedtls 3.3.0 as submodule in CryptoPkg.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4177
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Yi Li <yi1.li@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com >
2023-10-12 05:31:19 +00:00
Gerd Hoffmann
4ddd8ac3a2
CryptoPkg/TlsLib: fix tls cipher configuration
...
Trying to configure the TLS ciphers can lead to TLS handshake failures
because TlsCipherMappingTable is not in line with the ciphers actually
supported by OpensslLib.
Fix that by removing TlsCipherMappingTable altogether. Use
SSL_get_ciphers() instead to get the stack of ciphers supported by
openssl. Name and ID of the ciphers can be queried using the
SSL_CIPHER_get_name() and SSL_CIPHER_get_protocol_id() functions,
which allows us to map IDs to names without a hard-code table.
Bugzilla: https://bugzilla.tianocore.org/show_bug.cgi?id=2541
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Message-Id: <20231004092003.3809321-1-kraxel@redhat.com >
Reviewed-by: Laszlo Ersek <lersek@redhat.com >
Reviewed-by: Yi Li <yi1.li@intel.com >
2023-10-08 10:46:45 +00:00
Sheng Wei
24da5c2f28
CryptoPkg/BaseCryptLib: add sha384 and sha512 to ImageTimestampVerify
...
Register and initialize sha384/sha512 digest algorithms
for PKCS#7 Handling.
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3413
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Min Xu <min.m.xu@intel.com >
Cc: Zeyi Chen <zeyi.chen@intel.com >
Cc: Fiona Wang <fiona.wang@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Signed-off-by: Sheng Wei <w.sheng@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
2023-09-07 06:12:18 +00:00
Yi Li
991515a058
CryptoPkg: remove BN and EC accel for size optimization
...
BN and EC have not been fully tested, and will greatly increase
the size of the Crypto driver(>150KB).
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
46226fb5d3
CryptoPkg: remove strcmp to syscall
...
In rare cases the platform may not provide the full IntrinsicLib.
But openssl30 build always require strcmp, provide this function by
moving it into CrtWrapper.c.
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
c0aeb92663
CryptoPkg: run configure.py to update all generated files
...
cd */edk2/CryptoPkg/Library/OpensslLib
python configure.py
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
dfa6147a79
CryptoPkg: add more dummy implement of openssl for size optimization
...
Add dummy implement of Encoder, Pkcs12 and sslserver.
OpenSSL libraries which don't need these features can include
these files to reduce the size of output.
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
2bead79cfc
CryptoPkg: add implemention of _ftol2_sse() to avoid build error
...
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
b2ff8e45db
CryptoPkg: add define of maximum unsigned size_t
...
Used by openssl30 source code.
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
4b5faa5775
CryptoPkg: add missing gcc instructions
...
Used when build IA32 CryptoPkg by gcc, the definition of the
instructions can be found at:
https://gcc.gnu.org/onlinedocs/gccint/Integer-library-routines.html
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
43e0ede26b
CryptoPkg: Enable memcpy sys call in RISCV64 build
...
When build Openssl30, compiler optimization may use memcpy()
for memory copy.
Need enable it in RISCV64 build also.
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Gerd Hoffmann
bdf3142eb7
CryptoPkg/TlsLib: use unsigned long for ErrorCode
...
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
20193b20b5
CryptoPkg: disable C4133 warning in openssl libraries
...
Disable warning as error of C4133:
v3_genn.c(101): warning C4133: 'function': incompatible types
- from 'ASN1_TYPE *' to 'const ASN1_STRING *'.
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
bf1ff73c8c
CryptoPkg: Add instrinsics to support building openssl3 on IA32 windows
...
This dependency is needed to build openssl lib with openssl3
under IA32 Windows, so added implementation for _alldiv, _aulldiv,
_aullrem and _alldvrm instrinsics.
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
cea8e3b513
CryptoPkg: adapt 3.0 change in SslNull.c
...
Type of input params changed in openssl30.
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
ea7a37d352
CryptoPkg: use UEFI provider as default
...
Added UEFI provider which removed unused features to
optimize the size of openssl3.
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00
Yi Li
9b9b331e0f
CryptoPkg: Move all UEFI implement of openssl to OpensslStub
...
Signed-off-by: Yi Li <yi1.li@intel.com >
Cc: Jiewen Yao <jiewen.yao@intel.com >
Cc: Xiaoyu Lu <xiaoyu1.lu@intel.com >
Cc: Guomin Jiang <guomin.jiang@intel.com >
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com >
Acked-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Ard Biesheuvel <ardb@kernel.org >
Tested-by: Brian J. Johnson <brian.johnson@hpe.com >
Tested-by: Kenneth Lautner <klautner@microsoft.com >
2023-08-09 07:10:31 +00:00