git: 0457eebbe83f - main - libcrypto: add missing symbols to the legacy provider
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 04 Jul 2023 19:08:19 UTC
The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=0457eebbe83f951238387f6f720597f3165c3828 commit 0457eebbe83f951238387f6f720597f3165c3828 Author: Pierre Pronchery <pierre@freebsdfoundation.org> AuthorDate: 2023-06-29 21:32:59 +0000 Commit: Mark Johnston <markj@FreeBSD.org> CommitDate: 2023-07-04 19:04:04 +0000 libcrypto: add missing symbols to the legacy provider OpenSSL 3 supports a modular architecture, allowing different providers to bring specific implementations of cryptographical algorithms. One such provider, "legacy", ships with OpenSSL 3 directly, and groups obsoleted algorithms that can still optionally be used anyway. The import of OpenSSL 3.0.9 was building this provider incorrectly, missing symbols required for proper operation. Sponsored by: The FreeBSD Foundation Pull Request: https://github.com/freebsd/freebsd-src/pull/787 --- secure/lib/libcrypto/modules/Makefile.inc | 3 ++- secure/lib/libcrypto/modules/legacy/Makefile | 34 +++++++++++++++++++++++++++- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/secure/lib/libcrypto/modules/Makefile.inc b/secure/lib/libcrypto/modules/Makefile.inc index e2f8e9437953..9047c938ef1d 100644 --- a/secure/lib/libcrypto/modules/Makefile.inc +++ b/secure/lib/libcrypto/modules/Makefile.inc @@ -11,6 +11,7 @@ CFLAGS+= -I${LCRYPTO_SRC}/providers/implementations/include .include <bsd.endian.mk> -.PATH: ${LCRYPTO_SRC}/providers +.PATH: ${LCRYPTO_SRC}/providers \ + ${LCRYPTO_SRC}/providers/common WARNS?= 0 diff --git a/secure/lib/libcrypto/modules/legacy/Makefile b/secure/lib/libcrypto/modules/legacy/Makefile index 3ed4bed6cd52..3eef2549d44f 100644 --- a/secure/lib/libcrypto/modules/legacy/Makefile +++ b/secure/lib/libcrypto/modules/legacy/Makefile @@ -2,6 +2,38 @@ SHLIB_NAME?= legacy.so -SRCS= legacyprov.c +SRCS= legacyprov.c prov_running.c + +# common +SRCS+= provider_err.c provider_ctx.c +SRCS+= provider_util.c + +# ciphers +SRCS+= ciphercommon.c ciphercommon_hw.c ciphercommon_block.c \ + ciphercommon_gcm.c ciphercommon_gcm_hw.c \ + ciphercommon_ccm.c ciphercommon_ccm_hw.c +SRCS+= cipher_desx.c cipher_desx_hw.c cipher_des.c cipher_des_hw.c +SRCS+= cipher_tdes_common.c +SRCS+= cipher_blowfish.c cipher_blowfish_hw.c +SRCS+= cipher_cast5.c cipher_cast5_hw.c +SRCS+= cipher_rc2.c cipher_rc2_hw.c +SRCS+= cipher_rc4.c cipher_rc4_hw.c +SRCS+= cipher_rc4_hmac_md5.c cipher_rc4_hmac_md5_hw.c +SRCS+= cipher_seed.c cipher_seed_hw.c + +# digests +SRCS+= digestcommon.c +SRCS+= md4_prov.c wp_prov.c ripemd_prov.c + +# kdfs +SRCS+= pbkdf1.c + +# ssl +SRCS+= record/tls_pad.c .include <bsd.lib.mk> + +.PATH: ${LCRYPTO_SRC}/providers/implementations/ciphers \ + ${LCRYPTO_SRC}/providers/implementations/digests \ + ${LCRYPTO_SRC}/providers/implementations/kdfs \ + ${LCRYPTO_SRC}/ssl