summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Prepare for release of 3.4.4openssl-3.4.4openssl-machine2026-01-273-4/+4
| | | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Tue Jan 27 13:56:47 2026 Release: yes
* make updateopenssl-machine2026-01-272-379/+379
| | | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Tue Jan 27 13:56:45 2026 Release: yes
* Copyright year updatesopenssl-machine2026-01-2738-38/+38
| | | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Tue Jan 27 13:55:06 2026 Release: yes
* Add CHANGES and NEWS entries for the Jan 2026 security issue fixesTomas Mraz2026-01-262-1/+264
| | | | | | Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Mon Jan 26 20:04:15 2026
* CHANGES.md: update for 3.4.4Eugene Syromiatnikov2026-01-261-1/+15
| | | | | | | | | | | | | | | | | | 3.4.4 CHANGES.md includes the following: * https://github.com/openssl/openssl/pull/28760 "Improve the CPUINFO display for RISC-V" * https://github.com/openssl/openssl/pull/29214 "s390x: Check and fail on invalid malformed ECDSA signatures" * https://github.com/openssl/openssl/pull/29260 "Clang format 3.4" Co-Authored-by: Tomáš Mráz <[email protected]> Signed-off-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 20:04:13 2026
* PKCS12_item_decrypt_d2i_ex(): Check oct argument for NULLAndrew Dinh2026-01-261-0/+5
| | | | | | | | | | | Fixes CVE-2025-69421 Reviewed-by: Nikola Pajkovsky <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:56:08 2026 (cherry picked from commit 2c13bf15286328641a805eb3b7c97e27d42881fb)
* Verify ASN1 object's types before attempting to access themBob Beck2026-01-261-2/+2
| | | | | | | | | | | | | | | | as a particular type Issue was reported in ossl_ess_get_signing_cert but is also present in ossl_ess_get_signing_cert_v2. Fixes: https://github.com/openssl/srt/issues/61 Fixes CVE-2025-69420 Reviewed-by: Norbert Pocs <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:53:36 2026 (cherry picked from commit ea8fc4c345fbd749048809c9f7c881ea656b0b94)
* Fix OCB AES-NI/HW stream path unauthenticated/unencrypted trailing bytesNorbert Pocs2026-01-261-2/+8
| | | | | | | | | | | | | | | | | | | | | When ctx->stream (e.g., AES‑NI or ARMv8 CE) is available, the fast path encrypts/decrypts full blocks but does not advance in/out pointers. The tail-handling code then operates on the base pointers, effectively reprocessing the beginning of the buffer while leaving the actual trailing bytes unencrypted (encryption) or using the wrong plaintext (decryption). The authentication checksum excludes the true tail. CVE-2025-69418 Fixes: https://github.com/openssl/srt/issues/58 Signed-off-by: Norbert Pocs <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:48:35 2026 (cherry picked from commit be9375d5d45dfaf897b56ef148a0b58402491fcb)
* Check the received uncompressed certificate length to prevent excessiveIgor Ustinov2026-01-263-1/+48
| | | | | | | | | | | | | pre-decompression allocation. The patch was proposed by Tomas Dulka and Stanislav Fort (Aisle Research). Fixes: CVE-2025-66199 Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:45:21 2026 (cherry picked from commit 84f73f79af9f69c1527a9a372b7a9e771a394c2a)
* Fix heap buffer overflow in BIO_f_linebufferNeil Horman2026-01-261-6/+26
| | | | | | | | | | | | | | | | | | | | | | When a FIO_f_linebuffer is part of a bio chain, and the next BIO preforms short writes, the remainder of the unwritten buffer is copied unconditionally to the internal buffer ctx->obuf, which may not be sufficiently sized to handle the remaining data, resulting in a buffer overflow. Fix it by only copying data when ctx->obuf has space, flushing to the next BIO to increase available storage if needed. Fixes openssl/srt#48 Fixes CVE-2025-68160 Reviewed-by: Nikola Pajkovsky <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:41:40 2026 (cherry picked from commit b21663c35a6f0ed4c8de06855bdc7a6a21f00c2f)
* ossl_quic_get_cipher_by_char(): Add a NULL guard before dereferencing SSL_CIPHERDaniel Kubec2026-01-261-0/+2
| | | | | | | | | Fixes CVE-2025-15468 Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:36:04 2026 (cherry picked from commit 293b55de0c434a99d0e744d0521170ca280606a9)
* Test for handling of AEAD-encrypted CMS with inadmissibly long IVIgor Ustinov2026-01-263-3/+50
| | | | | | | | | Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Norbert Pocs <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:31:49 2026 (cherry picked from commit 6297ac45d72ded9b45cad9a4fb2af6c29846d86c)
* Some comments to clarify functions usageIgor Ustinov2026-01-261-0/+20
| | | | | | | | | Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Norbert Pocs <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:31:47 2026 (cherry picked from commit b1a995ebcf54ff1478e2af4438d82ee3e15289de)
* Correct handling of AEAD-encrypted CMS with inadmissibly long IVIgor Ustinov2026-01-261-3/+2
| | | | | | | | | | | Fixes CVE-2025-15467 Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Norbert Pocs <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 26 19:31:45 2026 (cherry picked from commit 0ddd6b6bcbdedbe2c8304af05771f8ab11939112)
* Additional PKCS12 PBMAC1 malformed testcase filesAlicja Kario2026-01-266-0/+0
| | | | | | | Reviewed-by: Dmitry Belyavskiy <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> MergeDate: Mon Jan 26 16:14:20 2026 (cherry picked from commit 192fd36cfaed822d73288bd1437e821f75071f18)
* Add testcase for PKCS12 with invalid PBMAC1 key lengthTomas Mraz2026-01-262-3/+7
| | | | | | | | Reviewed-by: Dmitry Belyavskiy <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Alicja Kario <[email protected]> MergeDate: Mon Jan 26 16:14:18 2026 (cherry picked from commit 65ce85b7e3e07a9ff7e46cc7f74fa068f737c0f1)
* pkcs12: Validate salt and keylength in PBMAC1Tomas Mraz2026-01-261-2/+16
| | | | | | | | | | | | | | | | | | The keylength value must be present and we accept EVP_MAX_MD_SIZE at maximum. The salt ASN.1 type must be OCTET STRING. Fixes CVE-2025-11187 Reported by Stanislav Fort (Aisle Research) and Petr Simecek (Aisle Research). Reported independently also by Hamza (Metadust). Reviewed-by: Dmitry Belyavskiy <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Alicja Kario <[email protected]> MergeDate: Mon Jan 26 16:14:15 2026 (cherry picked from commit de157b8ff3328d41448779fa23b071c8e88304d2)
* rsa_enc.c: Properly duplicate the oaep_label memberTomas Mraz2026-01-231-0/+6
| | | | | | | | | | | | Otherwise UAF and doublefree appears when the duplicate is freed. Reported by Tomas Dulka and Stanislav Fort (Aisle Research) Reviewed-by: Richard Levitte <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Paul Dale <[email protected]> MergeDate: Fri Jan 23 10:39:33 2026 (Merged from https://github.com/openssl/openssl/pull/29707)
* rsa_sig.c: Properly duplicate the sig memberTomas Mraz2026-01-231-0/+7
| | | | | | | | | | | Otherwise UAF and doublefree appears when the duplicate is freed. Reviewed-by: Richard Levitte <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Paul Dale <[email protected]> MergeDate: Fri Jan 23 10:39:31 2026 (Merged from https://github.com/openssl/openssl/pull/29707)
* Correct alert when extended master secret support is droppedTomas Mraz2026-01-231-1/+1
| | | | | | | | | | | | | | When resuming session with the extended master secret support dropped we should use SSL_AD_HANDSHAKE_FAILURE instead of SSL_AD_ILLEGAL_PARAMETER according to the RFC7627 section 5. Fixes #9791 Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Paul Dale <[email protected]> MergeDate: Fri Jan 23 10:34:30 2026 (Merged from https://github.com/openssl/openssl/pull/29706)
* DOC: Add EVP_CIPHER_CTX_{get,set}_app_data documentationDaniel Kubec2026-01-233-4/+44
| | | | | | | | | Fixes #9788 Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> MergeDate: Fri Jan 23 10:30:00 2026 (Merged from https://github.com/openssl/openssl/pull/29704)
* DOC: Clarify EVP_PKEY_CTX_{get,set}_app_data documentationDaniel Kubec2026-01-231-4/+6
| | | | | | | Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Shane Lontis <[email protected]> MergeDate: Fri Jan 23 10:16:28 2026 (Merged from https://github.com/openssl/openssl/pull/29710)
* Fix NULL pointer dereference when zlib DSO fails to loadSiteRelEnby2026-01-221-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When ZLIB_SHARED is defined and DSO_load() fails to load the zlib library, ossl_comp_zlib_init() incorrectly returns 1 (success) while leaving all function pointers (p_compress, p_uncompress, etc.) as NULL. This causes COMP_zlib() and COMP_zlib_oneshot() to return valid-looking COMP_METHOD pointers, but when these methods are used (e.g., during TLS 1.3 certificate decompression), the NULL function pointers are dereferenced, causing a SIGSEGV crash. The bug occurs because the NULL pointer check (lines 297-303) was inside the `if (zlib_dso != NULL)` block, so it was skipped entirely when DSO_load() returned NULL. The fix moves the NULL pointer check outside the conditional block, consistent with how c_brotli.c and c_zstd.c handle this case. Now if the DSO fails to load, all function pointers remain NULL, the check catches this, and the function correctly returns 0 (failure). This also fixes an incorrect cast of p_uncompress from compress_ft to the correct uncompress_ft type. PoC demonstrating the bug: https://github.com/SiteRelEnby/openssl-zlib-poc Fixes #23563 CLA: trivial Reviewed-by: Paul Yang <[email protected]> Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Thu Jan 22 17:00:50 2026 (Merged from https://github.com/openssl/openssl/pull/29699) (cherry picked from commit 045ca33cef8d1585ecb9ee8a4ef04e6e790f6828)
* Fix `EVP_KEYMGMT` leak in `evp_pkey_signature_init()` error pathsZijie Zhao2026-01-201-3/+5
| | | | | | | | | | | | | | Early returns when signature/key type are incompatible bypass cleanup of `tmp_keymgmt` allocated via `evp_keymgmt_fetch_from_prov()`. Use goto to ensure `EVP_KEYMGMT_free()` is called on all error paths. Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Tue Jan 20 19:01:17 2026 (Merged from https://github.com/openssl/openssl/pull/29651) (cherry picked from commit c729de6ec370fd8d71aa525749662ccb192428f6)
* Fix double-free in TLS1-PRF KDF when digest change failsZijie Zhao2026-01-201-0/+1
| | | | | | | | | | | | | | | | | | When changing the digest from MD5-SHA1 to a non-MD5-SHA1 digest, `ctx->P_sha1` is freed but not set to NULL. If `ossl_prov_macctx_load()` subsequently fails, `ctx->P_sha1` remains as a dangling pointer. When the context is later freed via `kdf_tls1_prf_reset()`, this causes a double-free. Fix by setting `ctx->P_sha1` to NULL immediately after freeing it. Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Tue Jan 20 18:23:59 2026 (Merged from https://github.com/openssl/openssl/pull/29657) (cherry picked from commit f9106877fb1521e2d9e0f4b64ea514554cc4cce8)
* Zero out memory after allocation to avoid usage of uninitialized memoryKonstantin Bogdanov2026-01-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ==1155903==WARNING: MemorySanitizer: use-of-uninitialized-value #0 0x5571e03fe712 in ASN1_get_object cmake-build-release-msan/./contrib/openssl/crypto/asn1/asn1_lib.c:62:11 #1 0x5571e0408981 in asn1_check_tlen cmake-build-release-msan/./contrib/openssl/crypto/asn1/tasn_dec.c:1164:13 #2 0x5571e04048c8 in asn1_item_embed_d2i cmake-build-release-msan/./contrib/openssl/crypto/asn1/tasn_dec.c:346:15 #3 0x5571e04043ba in asn1_item_ex_d2i_intern cmake-build-release-msan/./contrib/openssl/crypto/asn1/tasn_dec.c:118:10 #4 0x5571e04043ba in ASN1_item_d2i_ex cmake-build-release-msan/./contrib/openssl/crypto/asn1/tasn_dec.c:144:9 #5 0x5571e04043ba in ASN1_item_d2i cmake-build-release-msan/./contrib/openssl/crypto/asn1/tasn_dec.c:154:12 #6 0x5571e08460ad in ossl_epki2pki_der_decode cmake-build-release-msan/./contrib/openssl/providers/implementations/encode_decode/decode_epki2pki.c:161:13 #7 0x5571e084c5a3 in pem2der_decode cmake-build-release-msan/./contrib/openssl/providers/implementations/encode_decode/decode_pem2der.c:227:18 #8 0x5571e053827e in decoder_process cmake-build-release-msan/./contrib/openssl/crypto/encode_decode/decoder_lib.c:1101:14 #9 0x5571e0537016 in OSSL_DECODER_from_bio cmake-build-release-msan/./contrib/openssl/crypto/encode_decode/decoder_lib.c:82:10 #10 0x5571e067f5c4 in pem_read_bio_key_decoder cmake-build-release-msan/./contrib/openssl/crypto/pem/pem_pkey.c:60:13 #11 0x5571e067f5c4 in pem_read_bio_key cmake-build-release-msan/./contrib/openssl/crypto/pem/pem_pkey.c:241:11 #12 0x5571e06801d3 in PEM_read_bio_PrivateKey_ex cmake-build-release-msan/./contrib/openssl/crypto/pem/pem_pkey.c:304:12 #13 0x5571e0350beb in SSL_CTX_use_PrivateKey_file cmake-build-release-msan/./contrib/openssl/ssl/ssl_rsa.c:415:16 #14 0x5571dd4dfa6a in Poco::Net::Context::init(Poco::Net::Context::Params const&) cmake-build-release-msan/./base/poco/NetSSL_OpenSSL/src/Context.cpp:296:14 #15 0x5571dd4deb28 in Poco::Net::Context::Context(Poco::Net::Context::Usage, Poco::Net::Context::Params const&) cmake-build-release-msan/./base/poco/NetSSL_OpenSSL/src/Context.cpp:54:2 #16 0x5571dd4f5c2d in Poco::Net::SSLManager::initDefaultContext(bool) cmake-build-release-msan/./base/poco/NetSSL_OpenSSL/src/SSLManager.cpp:287:34 #17 0x5571dd4f220b in Poco::Net::SSLManager::defaultServerContext() cmake-build-release-msan/./base/poco/NetSSL_OpenSSL/src/SSLManager.cpp:125:3 #18 0x5571cf03e24e in DB::CertificateReloader::findOrInsert(ssl_ctx_st*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) cmake-build-release-msan/./src/Server/CertificateReloader.cpp:134:57 #19 0x5571cf038968 in DB::CertificateReloader::tryLoadImpl(Poco::Util::AbstractConfiguration const&, ssl_ctx_st*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) cmake-build-release-msan/./src/Server/CertificateReloader.cpp:202:19 #20 0x5571cf0377be in DB::CertificateReloader::tryLoad(Poco::Util::AbstractConfiguration const&, ssl_ctx_st*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) cmake-build-release-msan/./src/Server/CertificateReloader.cpp:117:5 #21 0x5571cf0377be in DB::CertificateReloader::tryLoad(Poco::Util::AbstractConfiguration const&) cmake-build-release-msan/./src/Server/CertificateReloader.cpp:104:5 #22 0x5571a6dd25b6 in DB::Server::main(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>> const&) cmake-build-release-msan/./programs/server/Server.cpp:2548:37 #23 0x5571dd55924b in Poco::Util::Application::run() cmake-build-release-msan/./base/poco/Util/src/Application.cpp:315:8 #24 0x5571a6d7be66 in DB::Server::run() cmake-build-release-msan/./programs/server/Server.cpp:660:25 #25 0x5571dd5a373a in Poco::Util::ServerApplication::run(int, char**) cmake-build-release-msan/./base/poco/Util/src/ServerApplication.cpp:131:9 #26 0x5571a6d73b43 in mainEntryClickHouseServer(int, char**) cmake-build-release-msan/./programs/server/Server.cpp:447:20 #27 0x55718152671d in main cmake-build-release-msan/./programs/main.cpp:380:21 #28 0x7feb2b627634 in __libc_start_call_main /usr/src/debug/glibc/glibc/csu/../sysdeps/nptl/libc_start_call_main.h:58:16 #29 0x7feb2b6276e8 in __libc_start_main /usr/src/debug/glibc/glibc/csu/../csu/libc-start.c:360:3 #30 0x55718148ce6d in _start (/home/thevar1able/nvmemount/clickhouse/cmake-build-release-msan/programs/clickhouse+0xa889e6d) (BuildId: 0ab37401c8c27a02d94eb81b9cc50d79736b4266) Uninitialized value was created by a heap allocation #0 0x55718151d58d in malloc (/home/thevar1able/nvmemount/clickhouse/cmake-build-release-msan/programs/clickhouse+0xa91a58d) (BuildId: 0ab37401c8c27a02d94eb81b9cc50d79736b4266) #1 0x5571e0634a19 in CRYPTO_malloc cmake-build-release-msan/./contrib/openssl/crypto/mem.c:211:11 #2 0x5571e06840ef in PKCS12_pbe_crypt_ex cmake-build-release-msan/./contrib/openssl/crypto/pkcs12/p12_decr.c:78:16 #3 0x5571e0845f0a in ossl_epki2pki_der_decode cmake-build-release-msan/./contrib/openssl/providers/implementations/encode_decode/decode_epki2pki.c:143:18 #4 0x5571e084c5a3 in pem2der_decode cmake-build-release-msan/./contrib/openssl/providers/implementations/encode_decode/decode_pem2der.c:227:18 #5 0x5571e053827e in decoder_process cmake-build-release-msan/./contrib/openssl/crypto/encode_decode/decoder_lib.c:1101:14 #6 0x5571e0537016 in OSSL_DECODER_from_bio cmake-build-release-msan/./contrib/openssl/crypto/encode_decode/decoder_lib.c:82:10 #7 0x5571e067f5c4 in pem_read_bio_key_decoder cmake-build-release-msan/./contrib/openssl/crypto/pem/pem_pkey.c:60:13 #8 0x5571e067f5c4 in pem_read_bio_key cmake-build-release-msan/./contrib/openssl/crypto/pem/pem_pkey.c:241:11 #9 0x5571e06801d3 in PEM_read_bio_PrivateKey_ex cmake-build-release-msan/./contrib/openssl/crypto/pem/pem_pkey.c:304:12 #10 0x5571e0350beb in SSL_CTX_use_PrivateKey_file cmake-build-release-msan/./contrib/openssl/ssl/ssl_rsa.c:415:16 #11 0x5571dd4dfa6a in Poco::Net::Context::init(Poco::Net::Context::Params const&) cmake-build-release-msan/./base/poco/NetSSL_OpenSSL/src/Context.cpp:296:14 #12 0x5571dd4deb28 in Poco::Net::Context::Context(Poco::Net::Context::Usage, Poco::Net::Context::Params const&) cmake-build-release-msan/./base/poco/NetSSL_OpenSSL/src/Context.cpp:54:2 #13 0x5571dd4f5c2d in Poco::Net::SSLManager::initDefaultContext(bool) cmake-build-release-msan/./base/poco/NetSSL_OpenSSL/src/SSLManager.cpp:287:34 #14 0x5571dd4f220b in Poco::Net::SSLManager::defaultServerContext() cmake-build-release-msan/./base/poco/NetSSL_OpenSSL/src/SSLManager.cpp:125:3 #15 0x5571cf03e24e in DB::CertificateReloader::findOrInsert(ssl_ctx_st*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) cmake-build-release-msan/./src/Server/CertificateReloader.cpp:134:57 #16 0x5571cf038968 in DB::CertificateReloader::tryLoadImpl(Poco::Util::AbstractConfiguration const&, ssl_ctx_st*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) cmake-build-release-msan/./src/Server/CertificateReloader.cpp:202:19 #17 0x5571cf0377be in DB::CertificateReloader::tryLoad(Poco::Util::AbstractConfiguration const&, ssl_ctx_st*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) cmake-build-release-msan/./src/Server/CertificateReloader.cpp:117:5 #18 0x5571cf0377be in DB::CertificateReloader::tryLoad(Poco::Util::AbstractConfiguration const&) cmake-build-release-msan/./src/Server/CertificateReloader.cpp:104:5 #19 0x5571a6dd25b6 in DB::Server::main(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>>> const&) cmake-build-release-msan/./programs/server/Server.cpp:2548:37 #20 0x5571dd55924b in Poco::Util::Application::run() cmake-build-release-msan/./base/poco/Util/src/Application.cpp:315:8 #21 0x5571a6d7be66 in DB::Server::run() cmake-build-release-msan/./programs/server/Server.cpp:660:25 CLA: trivial Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Nikola Pajkovsky <[email protected]> MergeDate: Tue Jan 20 18:19:16 2026 (Merged from https://github.com/openssl/openssl/pull/29647) (cherry picked from commit 06666f0d54f165a5c374b529d35c2eb5d707076d)
* Fix openssl-cms man page references to -EncryptedData_encrypt optionJosh Holtrop2026-01-201-2/+2
| | | | | | | | | | | | CLA: trivial Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Tue Jan 20 18:06:27 2026 (Merged from https://github.com/openssl/openssl/pull/27996) (cherry picked from commit 233e1810587f30ff2c0b55a9af475df894ac5ed7)
* fix: Fix uninstall_dev failing to remove empty dirRyan Keane2026-01-191-0/+1
| | | | | | | | | | | | | | | | | | | | | Fix this error: ``` rmdir "$PREFIX/lib64/cmake/OpenSSL" rmdir "$PREFIX/lib64" rmdir: failed to remove '$PREFIX/lib64': Directory not empty ``` Because `rmdir $PREFIX/lib64/cmake` is missing CLA: trivial Signed-off-by: Ryan Keane <[email protected]> Reviewed-by: Norbert Pocs <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> MergeDate: Mon Jan 19 11:58:05 2026 (Merged from https://github.com/openssl/openssl/pull/29472) (cherry picked from commit da5d7f9073e5edc5f7c7dc27721bd9f890910098)
* Clear addr_iter on reset in bss_connJoshua Rogers2026-01-191-0/+1
| | | | | | | | | | Signed-off-by: Joshua Rogers <[email protected]> Reviewed-by: Frederik Wedel-Heinen <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/28915) (cherry picked from commit c64912cd5956e90746e668509278e0b8224f7a2a)
* Clear addr_iter on reset in bss_acptJoshua Rogers2026-01-191-0/+1
| | | | | | | | | | Signed-off-by: Joshua Rogers <[email protected]> Reviewed-by: Frederik Wedel-Heinen <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/28915) (cherry picked from commit eb84d81e93b53f60302261870008eeb3117d36e2)
* util/ and .ctags.d/: remove remaining references to deleted util/check-format.plDr. David von Oheimb2026-01-193-1259/+0
| | | | | | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Richard Levitte <[email protected]> Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29655) (cherry picked from commit 85bc702cad79a18b9e0fa8b7a9beef9d91ba4782)
* Fix make check-format targetNeil Horman2026-01-161-4/+12
| | | | | | | | | | | | | | | | | | With our move to clang-format we no longer have a check-format script, and so this make target is broken. Fix it up to use clang-format-diff instead Fixes #29594 Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Richard Levitte <[email protected]> Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Paul Dale <[email protected]> MergeDate: Fri Jan 16 14:37:09 2026 (Merged from https://github.com/openssl/openssl/pull/29634) (cherry picked from commit 90d6c3b260409101e5be31fedb7677e1c2448e4c)
* test openssl-3.4 branch against the same compiler versions as in masterDmitry Misharov2026-01-151-82/+46
| | | | | | | | Reviewed-by: Eugene Syromiatnikov <[email protected]> Reviewed-by: Norbert Pocs <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Thu Jan 15 14:02:03 2026 (Merged from https://github.com/openssl/openssl/pull/29603)
* apps: check OPENSSL_uni2utf8 return valueNikola Pajkovsky2026-01-141-0/+6
| | | | | | | | | Signed-off-by: Nikola Pajkovsky <[email protected]> Reviewed-by: Viktor Dukhovni <[email protected]> Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29590)
* Ensure ASN1 types are checked before use.Bob Beck2026-01-133-3/+12
| | | | | | | | | | | Some of these were fixed by LibreSSL in commit https://github.com/openbsd/src/commit/aa1f637d454961d22117b4353f98253e984b3ba8 this fix includes the other fixes in that commit, as well as fixes for others found by a scan for a similar unvalidated access paradigm in the tree. Reviewed-by: Kurt Roeckx <[email protected]> Reviewed-by: Shane Lontis <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29582)
* fix vpsm4_ex bug in AARCH64 big-endian platformLiu-ErMeng2026-01-121-0/+12
| | | | | | | | | Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Mon Jan 12 18:46:42 2026 (Merged from https://github.com/openssl/openssl/pull/29504) (cherry picked from commit a8f8e64a560ddf72dd2694ce32eb63a1e8916b00)
* do not hardcode CI workspace pathDmitry Misharov2026-01-121-1/+1
| | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29577)
* Fix util/mkinstallvars.pl to treat LIBDIR and libdir correctlyRichard Levitte2026-01-081-0/+11
| | | | | | | | | | | | | | | | | | | | | OpenSSL's build file (Makefile) handles library directories via two variables, 'LIBDIR' and 'libdir', where the former is empty when the path given through ./Configure's '--libdir' is absolute. This was forgotten when treating the resulting values in, util/mkinstallvars.pl, which got libdir in exporters/libcrypto.pc to not be quite right if .Configure was called with a '--libdir' with an absolute path. The fix turns out to be quite easy. Resolves: https://github.com/openssl/openssl/issues/28779 Reviewed-by: Viktor Dukhovni <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29540) (cherry picked from commit aa4b47483f41ed3889132f47334626d80a285f4e)
* Fix a possible crash in ASN1_generate_nconfBernd Edlinger2026-01-083-1/+11
| | | | | | | | | | | | | | | | Due to an out of memory error, the i2d_ASN1_TYPE might fail and cause a segfault. This adds a missing check for NULL pointer and a test case that exercises IMPLICIT and EXPLICT tagging in generate_v3, since there was no test coverage at all for this code section. Reviewed-by: Dmitry Belyavskiy <[email protected]> Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Thu Jan 8 10:13:43 2026 (Merged from https://github.com/openssl/openssl/pull/29545) (cherry picked from commit 48b788cad3e66b51b48a88f44881bbd4b865bad8)
* apps: ocsp.c: fix null dereference in ocsp_responseAnton Moryakov2026-01-081-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Report of the static analyzer: Function 'OCSP_cert_to_id' may return NULL on allocation failure, but its return value is dereferenced in 'OCSP_id_issuer_cmp' without prior NULL check at ocsp.c:1088. This can lead to a null pointer dereference and cause a segmentation fault, resulting in a denial-of-service (DoS) condition. Although such failures are rare, an attacker could potentially trigger them under memory pressure. All other calls to 'OCSP_cert_to_id' in the codebase (e.g., add_ocsp_cert, add_ocsp_serial) properly check for NULL, making this instance a clear omission. Correct explained: Added a NULL check after calling OCSP_cert_to_id() when creating 'ca_id' inside the issuer lookup loop. If the allocation fails, the function now safely returns an internal error response instead of risking a crash. This change aligns the code with existing error-handling patterns in the same file and improves robustness against resource exhaustion attacks. Signed-off-by: Anton Moryakov <[email protected]> Reviewed-by: Dmitry Belyavskiy <[email protected]> Reviewed-by: Frederik Wedel-Heinen <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Thu Jan 8 09:01:09 2026 (Merged from https://github.com/openssl/openssl/pull/29033) (cherry picked from commit 5e2e7c60d33727f7818c6c0e915b02fe11be1188)
* Remove unused Data::Dumper from cmake exporterAndreas Aigner2026-01-081-1/+0
| | | | | | | | | | | | | * Remove additional dependency for old build boxes (in particular centos) CLA: trivial Reviewed-by: Richard Levitte <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Thu Jan 8 08:55:10 2026 (Merged from https://github.com/openssl/openssl/pull/24632) (cherry picked from commit df0a0fd613cb36a252ea20076d86408a5da2bd43)
* Fix a memory leak in sctp codeBernd Edlinger2026-01-061-1/+2
| | | | | | | | | | | | | | | | | | | | There is a memory leak of the addrinfo struct when `./openssl s_server -dtls -sctp -accept 127.0.0.1:4433` is used, but `sysctl -w net.sctp.auth_enable=1` is not done before. Additionally this fixes an oversight, when `./openssl s_client -dtls -sctp -connect localhost:4433` is used to connect to above server. The first connect attempt is to IPv6 ::1, which might fail, but the second attempt might still succeed, so continue to try all addesses even when the SCTP socket fails for one of them. Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Paul Yang <[email protected]> Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29541) (cherry picked from commit c0a7890b6244cc5620942c3beeb8683f2164560e)
* Fix register save/restore issue in ppcNeil Horman2026-01-021-24/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recently, the addition of some vector register save restore logic from: https://github.com/openssl/openssl/pull/28990 Triggered an issue in our quic_multistream_test, notably causing a connection shutdown with error code 1, rather than successful completion. The problem has been root caused to an error in how the ppc aes code saves and restores vector registers. The aes gcm code uses VSR instructions (vsldoi, etc), to maniuplate vector registers, which only operate on the upper half of the vector register file (VS32-63), and operands are implicitly offset to do this. (i.e. <instr> v31 actually operates on register vs63). However, the SAVE/RESTORE macros which save and restore those values use stxv/lxv instructions to do the save and restore, which are VSX instructions that have access to the full vector register file, and so by restoring V1, rather than V33, etc, we actuall restore values to the wrong registers, causing various issues (most notably the above misconfiguration of the quic SSL shutdown event, which sets the error code erroneously to 1 instead of the expected 0 value). Fix it by offsetting the SAVE_REGS and RESTORE_REGS macros to reference the proper registers when doing save and restore. Fixes #29516 Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Tim Hudson <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29528) (cherry picked from commit 441a2c105c7074502b0dc4ccd4aa2ed11d305556)
* bss_acpt.c: Free strings returned from previous BIO_ADDR_hostname_string() calls609bob2025-12-311-0/+3
| | | | | | | | | | | CLA: trivial Reviewed-by: Richard Levitte <[email protected]> Reviewed-by: Frederik Wedel-Heinen <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29452) (cherry picked from commit 117dc48fd587099dfb2d0fc107c84f0e359284ad)
* Use 'codespell:ignore' where justifiableRichard Levitte2025-12-212-3/+3
| | | | | | | | | | | | There's this one random string where we have the word "Hellow". It's a random string, "correct" spelling is really not important, so we tell codespell to just ignore that line. There were also two struct field names... Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29462)
* Fix legitimate spelling errorsRichard Levitte2025-12-2115-27/+26
| | | | | | Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29462)
* Adjust .codespellrcRichard Levitte2025-12-211-0/+2
| | | | | | | | | - add 'external/*' to the list of patterns to skip - add '*.csr' to the list of patterns to skip Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29462)
* BIO_send/recvmmsg(): Pass msgs_processed to the return callbackTomas Mraz2025-12-191-2/+2
| | | | | | | | | | | | | This avoids crash if a legacy BIO callback is set and BIO_sendmmsg() or BIO_recvmmsg() is used. Reported by Stanislav Fort (Aisle Research) Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Norbert Pocs <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29395) (cherry picked from commit 380ff1448596926fc9d252c8e4c2720b006ef912)
* ppc64le: Restore VSX registers in AES/GCM ppc64le encrypt/decryptDanny Tsen2025-12-191-1180/+793
| | | | | | | | | | | | | | | | The implementation failed to restore VSX vector registers from vs14-vs22. Re-implemented based on Linux kernel version. Fixes #28961 Signed-off-by: Danny Tsen <[email protected]> Reviewed-by: Dmitry Belyavskiy <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/28990) (cherry picked from commit ebd690b1eb0d95c6784e2f36dd86d72670b82794)
* add .codespellrcDmitry Misharov2025-12-191-0/+452
| | | | | | | | | | (cherry picked from commit 8cf23cff816d3c2d2e4c439e0e0dfd0710480ee8) Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Nikola Pajkovsky <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Richard Levitte <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29432)