]> git.ipfire.org Git - thirdparty/openssl.git/log
thirdparty/openssl.git
37 hours agoStart the 4.0 migration guide master
Bob Beck [Tue, 25 Nov 2025 19:24:55 +0000 (12:24 -0700)] 
Start the 4.0 migration guide

This includes adding a little internal procedure for when functions
are removed, and a special ossl-ex-api page to document what API has
been removed.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29220)

37 hours agoAdd GOST provider related docs
Norbert Pocs [Tue, 2 Dec 2025 10:58:07 +0000 (11:58 +0100)] 
Add GOST provider related docs

GOST provider is in a good shape already, so keep the mentions rewritten
to provider instead of the engine.

Resolves: https://github.com/openssl/project/issues/1733

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29286)

37 hours agossl_do_config(): Check for NULL name argument
Alexandr Nedvedicky [Thu, 4 Dec 2025 07:38:04 +0000 (08:38 +0100)] 
ssl_do_config(): Check for NULL name argument

Fixes 0c2a196af8ab9c12da27

Fixes Coverity issue 1675312

Reviewed-by: Nikola Pajkovsky <nikolap@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29306)

38 hours agoVarious fixups for SSL_listen_ex (readability/error unwinding)
Neil Horman [Thu, 20 Nov 2025 15:07:19 +0000 (10:07 -0500)] 
Various fixups for SSL_listen_ex (readability/error unwinding)

Various review fixups to clarify meaning of variables and fix unwinding
of operations should we encounter errors in some operations.

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoDrop use of get_using_peeloff for quic connections
Neil Horman [Mon, 3 Nov 2025 17:43:22 +0000 (12:43 -0500)] 
Drop use of get_using_peeloff for quic connections

folow the using_peeloff get/set routines to just a set routine that
fails if the set is for a mode that doesn't match the current mode

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoAdd docs for OSSL_QUIC_method() and SSL_listen_ex()
Neil Horman [Mon, 20 Oct 2025 15:52:44 +0000 (11:52 -0400)] 
Add docs for OSSL_QUIC_method() and SSL_listen_ex()

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoFix segfault on qlog creation with no tls
Neil Horman [Thu, 17 Apr 2025 15:51:07 +0000 (11:51 -0400)] 
Fix segfault on qlog creation with no tls

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoRun make update
Neil Horman [Thu, 17 Apr 2025 14:48:26 +0000 (10:48 -0400)] 
Run make update

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoFixup creation of qlog object
Neil Horman [Thu, 17 Apr 2025 14:17:40 +0000 (10:17 -0400)] 
Fixup creation of qlog object

Changes for SSL_listen_ex squashed creation of qlog objects even when
configured.

Fix that up so qlog objects are created regardless of weather we use
SSL_accept_connection or SSL_listen_ex

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoDon't require SSL_listen_ex to have its return value checked
Neil Horman [Tue, 15 Apr 2025 16:31:05 +0000 (12:31 -0400)] 
Don't require SSL_listen_ex to have its return value checked

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoadding test for SSL_listen_ex
Neil Horman [Sat, 12 Apr 2025 19:06:16 +0000 (15:06 -0400)] 
adding test for SSL_listen_ex

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agostitch in ssls for SSL_listen_ex
Neil Horman [Fri, 11 Apr 2025 20:44:41 +0000 (16:44 -0400)] 
stitch in ssls for SSL_listen_ex

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoUpdate port_make_channel to behave for accept_ex/accept_connection
Neil Horman [Fri, 11 Apr 2025 19:09:54 +0000 (15:09 -0400)] 
Update port_make_channel to behave for accept_ex/accept_connection

Based on the value of the using_peeloff flag, we need to choose if we're
going to create a user_ssl when creating a new channel

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoAdd flag to determine how quic accepts connections
Neil Horman [Fri, 11 Apr 2025 18:52:42 +0000 (14:52 -0400)] 
Add flag to determine how quic accepts connections

The flag defaults to 0 (unknown), and gets set to
1 (using SSL_accept_ex), or -1 (using SSL_accpet_connection)

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoStart implementing SSL_listen_ex
Neil Horman [Thu, 10 Apr 2025 14:05:59 +0000 (10:05 -0400)] 
Start implementing SSL_listen_ex

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoAdd OSSL_QUIC_method
Neil Horman [Thu, 10 Apr 2025 13:12:11 +0000 (09:12 -0400)] 
Add OSSL_QUIC_method

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27397)

38 hours agoMake find-doc-nits compatible accross git versions
Neil Horman [Wed, 3 Dec 2025 19:36:54 +0000 (14:36 -0500)] 
Make find-doc-nits compatible accross git versions

We recently found that the addition of a git config command in
util/find-doc-nits is broken in some cases, sepecifically because git
around version 2.46 broke command line compatibility, replacing the
--regexp option with the --get-regexp option.  So to maintain usage of
this specific command to parse the .gitconfig file, we would need to do
some extra version detection to construct the proper command line.

However, find-doc-nits already has a fallback condition, which does some
pure perl parsing of the gitconfig file, which works perfectly well.

Instead of trying to do version matching to construct the right form of
the git config command line, just remove it all, and rely on the perl
parrse to do this work for us, which works currently in all cases.

Fixes #29197

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/29304)

40 hours agoCMP check_cert_path_3gpp(): add missing checks trying to retrieve newly enrolled...
Dr. David von Oheimb [Wed, 3 Dec 2025 18:00:44 +0000 (19:00 +0100)] 
CMP check_cert_path_3gpp(): add missing checks trying to retrieve newly enrolled cert

Fixes #29285

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29302)

2 days agoClarify/fix encoder/decoder context docs and code
Viktor Dukhovni [Wed, 3 Dec 2025 04:24:46 +0000 (15:24 +1100)] 
Clarify/fix encoder/decoder context docs and code

In was premature to make OSSL_(EN|DE)CODER_CTX_[sg]et_finalized() be
public interfaces.  Forunately, these have not yet appeared outside the
"master" branch, so we can still retract them.

Also, in the case of decoders, the implementation failed to take into
account that the context was duplicated before it was returned to the
user, and the duplicated copy failed to copy the "finalized" field.

This commit also renames "finalized" to "frozen", because
finalisation is a misleading term in this context, it suggests
resource reclamation during garbage collection or deallocation,
not marking a structure partly immutable.

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/29206)

2 days agoPer-key encoding formats for ML-KEM and ML-DSA
Viktor Dukhovni [Mon, 24 Nov 2025 13:37:49 +0000 (00:37 +1100)] 
Per-key encoding formats for ML-KEM and ML-DSA

We support selection of ML-KEM and ML-DSA key formats on input and
output at the provider level, these are essentially global defaults,
in effect for the lifetime of the process.

Unfortunately, the JAVA interface in openssl-jostle needs to be able to
output a specific key in seed-only form.  To that end, this PR
introduces a new "output-formats" PKEY encoding parameter, that can be used
with OSSL_ENCODER_CTX_set_params(3) when encoding a key to PKCS#8, after
using OSSL_ENCODER_CTX_new_for_key(3), rather than i2d_PrivateKey(3),
i2d_PKCS8PrivateKey(3) or PEM equivalents.

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/29206)

2 days agoseed_src_jitter: prevent hypothetical getrandom fallback
Dimitri John Ledkov [Wed, 26 Nov 2025 11:51:33 +0000 (11:51 +0000)] 
seed_src_jitter: prevent hypothetical getrandom fallback

In a hypothetical scenario that jent_entropy_init_ex fails, or if
get_jitter_random-value fails, there are a few unexpected
posibilities.

If jent_entropy_init_ex fails, the seed initialisation may return NULL
and then DRBG will be initiated with NULL seed, which will
automatically fallback to os-seed, which will escape module boundary
(if this jitter rng is from the fips module), and call getrandom
syscall.

And separately if get_jitter_random_value fails, it may put DRBG in an
error state, but it might not put the FIPS module in error state, like
it should as per the ISO standard.

To instrument these things, I had to create tampered
jitterentropy-library that always returns errors for init_ex and
read_entropy apis, and then use gdb tracing on both libcrypto.so and
fips.so.

The most minimal solution to above hypothetical error code paths, is
to simply call ossl_set_error_state. It is either harmless, or in case
of fips-jitter will correctly put the FIPS module into error state and
prevent any further operation; and cruitially prevent silent fallback
to getrandom syscall.

Note it is unlikely that this ever was out of compliance, as often
enough getrandom syscall goes to a kernel with validated entropy
source; and openssl fips module still did reject sampling which is too
entropy source compliant.

Nonetheless it is good to fix this hypothetical error path, and
backport this to 3.5 and up.

This is similar / additional fixes, to this previous change:
- https://github.com/openssl/openssl/pull/25957
- https://github.com/openssl/openssl/commit/b9886a6f3483e0525596d3b3956416282038da82

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/29226)

2 days agocrypto: Remove internal ENGINE usage from the subdir
Norbert Pocs [Mon, 22 Sep 2025 07:10:19 +0000 (09:10 +0200)] 
crypto: Remove internal ENGINE usage from the subdir

Engines can be removed safely from static and internal functions
clearing out our codebase.

Resolves: https://github.com/openssl/project/issues/1625

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoDocs: Clean up ENGINE mentions
Norbert Pocs [Thu, 13 Nov 2025 14:15:41 +0000 (15:15 +0100)] 
Docs: Clean up ENGINE mentions

Engines are removed and the documentation should reflect that, even with
deprecated and legacy API.

Resolves: https://github.com/openssl/project/issues/1366

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoDocs: Update ENGINE_add.pod to reflect the engine removal
Norbert Pocs [Thu, 13 Nov 2025 13:28:56 +0000 (14:28 +0100)] 
Docs: Update ENGINE_add.pod to reflect the engine removal

Resolves: https://github.com/openssl/project/issues/1366

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove engine related crypto_device option
Norbert Pocs [Fri, 14 Nov 2025 13:31:29 +0000 (14:31 +0100)] 
Remove engine related crypto_device option

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoapps: Remove opt_legacy_okay function
Norbert Pocs [Thu, 13 Nov 2025 14:53:28 +0000 (15:53 +0100)] 
apps: Remove opt_legacy_okay function

The function used to check for ENGINEs to determine if a legacy code
path is available, but it makes no sense to keep it after the ENGINE
removal, as the legacy path will always fail.

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove no longer needed macro argument
Milan Broz [Tue, 2 Dec 2025 11:51:08 +0000 (12:51 +0100)] 
Remove no longer needed macro argument

Resolves: https://github.com/openssl/project/issues/1736

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoUse better description of macros purpose in engine.h
Milan Broz [Tue, 2 Dec 2025 11:37:54 +0000 (12:37 +0100)] 
Use better description of macros purpose in engine.h

Resolves: https://github.com/openssl/project/issues/1735

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove internal crypto/engineerr.h header
Milan Broz [Fri, 28 Nov 2025 14:56:34 +0000 (15:56 +0100)] 
Remove internal crypto/engineerr.h header

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove engine.h includes for internal code.
Milan Broz [Tue, 25 Nov 2025 11:03:24 +0000 (12:03 +0100)] 
Remove engine.h includes for internal code.

This should no be used anywhere, as typedef for ENGINE is in types.h.

Only apps should include this header for compatibility stubs.

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove *_get0_engine() API calls
Milan Broz [Thu, 27 Nov 2025 08:41:57 +0000 (09:41 +0100)] 
Remove *_get0_engine() API calls

Resolves: https://github.com/openssl/project/issues/1337

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoci: Remove no longer supported config options
Milan Broz [Tue, 25 Nov 2025 18:47:58 +0000 (19:47 +0100)] 
ci: Remove no longer supported config options

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoMake no-engine config permanently set.
Milan Broz [Tue, 25 Nov 2025 16:45:53 +0000 (17:45 +0100)] 
Make no-engine config permanently set.

It enables configuration defines:
OPENSSL_NO_DYNAMIC_ENGINE
OPENSSL_NO_STATIC_ENGINE
OPENSSL_NO_ENGINE

Fixes openssl/project#1711

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove engine-related tests
Milan Broz [Tue, 25 Nov 2025 16:18:46 +0000 (17:18 +0100)] 
Remove engine-related tests

As engines are no longer included in test, these configuration
options make no longer sense.

All other test should be already enabled.

Fixes openssl/project#1376

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove engine.num and make helper functions for engine loading stubs.
Milan Broz [Tue, 25 Nov 2025 13:23:05 +0000 (14:23 +0100)] 
Remove engine.num and make helper functions for engine loading stubs.

Fixes openssl/project#1420

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove OPENSSL_INIT_ENGINE_* definitions
Norbert Pocs [Fri, 21 Nov 2025 13:04:20 +0000 (14:04 +0100)] 
Remove OPENSSL_INIT_ENGINE_* definitions

Keeping OPENSSL_INIT_ENGINE_ALL_BUILTIN to be defined always to zero as
it might be the most used one outside of the library, meanwhile keeping
the others undefined unless OPENSSL_ENGINE_STUBS is defined.

Resolves: https://github.com/openssl/project/issues/1428

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove ssl_evp_md_fetch()
Norbert Pocs [Fri, 21 Nov 2025 14:24:21 +0000 (15:24 +0100)] 
Remove ssl_evp_md_fetch()

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRefactor ssl_evp_cipher_fetch()
Norbert Pocs [Fri, 21 Nov 2025 13:52:32 +0000 (14:52 +0100)] 
Refactor ssl_evp_cipher_fetch()

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoClear util dir from engines
Norbert Pocs [Thu, 20 Nov 2025 16:59:16 +0000 (17:59 +0100)] 
Clear util dir from engines

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoClear ssl dir from engines
Norbert Pocs [Thu, 20 Nov 2025 16:39:16 +0000 (17:39 +0100)] 
Clear ssl dir from engines

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoClear providers dir from engines
Norbert Pocs [Thu, 20 Nov 2025 15:13:29 +0000 (16:13 +0100)] 
Clear providers dir from engines

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoProviders: Remove OSSL_ALG_PARAM_ENGINE
Norbert Pocs [Thu, 20 Nov 2025 15:11:27 +0000 (16:11 +0100)] 
Providers: Remove OSSL_ALG_PARAM_ENGINE

Resolves: https://github.com/openssl/project/issues/1427

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoMention ENGINE removal in CHANGES and NEWS
Norbert Pocs [Thu, 13 Nov 2025 11:24:57 +0000 (12:24 +0100)] 
Mention ENGINE removal in CHANGES and NEWS

Resolves: https://github.com/openssl/project/issues/1423

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Yang <paulyang.inf@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoIgnore unused arguments warnings in engine.h stubs.
Milan Broz [Tue, 11 Nov 2025 10:48:41 +0000 (11:48 +0100)] 
Ignore unused arguments warnings in engine.h stubs.

This add pragma setting for gcc an clang compilers.

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoDefine stubs for other ENGINE-related legacy API and revert legacy errors definitions.
Milan Broz [Thu, 6 Nov 2025 08:38:44 +0000 (09:38 +0100)] 
Define stubs for other ENGINE-related legacy API and revert legacy errors definitions.

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoUse stub declarations in engine.h
Milan Broz [Mon, 27 Oct 2025 14:21:26 +0000 (15:21 +0100)] 
Use stub declarations in engine.h

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoTemporary disable ENGINE_* docs tests.
Milan Broz [Wed, 5 Nov 2025 08:59:15 +0000 (09:59 +0100)] 
Temporary disable ENGINE_* docs tests.

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove ENGINE symbols from API.
Milan Broz [Thu, 11 Sep 2025 10:55:55 +0000 (12:55 +0200)] 
Remove ENGINE symbols from API.

Note, that engine.h now does not contain any real forward declarations,
so it should be excluded from the symbols parsing.

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove crypto/engine dir.
Milan Broz [Wed, 10 Sep 2025 09:42:27 +0000 (11:42 +0200)] 
Remove crypto/engine dir.

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove top-level engines dir.
Milan Broz [Tue, 9 Sep 2025 12:59:14 +0000 (14:59 +0200)] 
Remove top-level engines dir.

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoAdditonal removals of engine references in tests/*
Neil Horman [Thu, 25 Sep 2025 15:37:52 +0000 (11:37 -0400)] 
Additonal removals of engine references in tests/*

Spotted by @andrewkdinh, some extra notes about/useages of engines that
are now vestigial.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoremove dasync engine test from test_rand
Neil Horman [Thu, 11 Sep 2025 20:09:56 +0000 (16:09 -0400)] 
remove dasync engine test from test_rand

We're removing the engine, so we don't need to test this anymore.

NOTE: This also removes the engine skip check from the test, and this
breaks testing until such time as PR #28461 is merged (which replaces
the remaining engine test with a provider).

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoDon't enable engines on sysdefault tests
Neil Horman [Thu, 11 Sep 2025 20:00:17 +0000 (16:00 -0400)] 
Don't enable engines on sysdefault tests

With engine removal, we expect that init flag to disappear, so stop
using it here.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoremove afalg tests
Neil Horman [Thu, 11 Sep 2025 19:39:44 +0000 (15:39 -0400)] 
remove afalg tests

We have a specific test suite that exercizes the afalg engine, that is
becoming useless with engine removal.

I had considered that we should perhaps convert this into a provider,
but having looked at the engine itself, it only offers implementations
for AES-128, AES-192 and AES-256.  Given that the default provider
offers these algorithms with hardware acceleration via the aesni
instruction set (or comparable instructions on non-x86 arches), it seems
like the only advantage the afalg engine offers is acceleration of these
ciphers on platforms that have off-cpu accelerators and no cpu based
acceleration support.

given that:
a) Most cpus have instruction based acceleration
b) We don't test with any platforms that use external accelerators

It seems like alot of investment to get no real advantage, so just
remove the test, allowing us to delete the engine entirely in another
PR.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoremove engine.h include from ssl_handshake_rtt_test.c
Neil Horman [Thu, 11 Sep 2025 19:25:49 +0000 (15:25 -0400)] 
remove engine.h include from ssl_handshake_rtt_test.c

It seems like it wasn't ever needed before, so with the removal of
engines, just get rid of it.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove dasync engine from sslapitest and sslbuffertest
Neil Horman [Thu, 11 Sep 2025 19:19:45 +0000 (15:19 -0400)] 
Remove dasync engine from sslapitest and sslbuffertest

With the impending engine removal, we don't have a need to test engine
functionality in these tests anymore, so remove the test cases that make
use of the dasync engine here.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoremove engine references from evp_extra_test
Neil Horman [Thu, 11 Sep 2025 18:46:18 +0000 (14:46 -0400)] 
remove engine references from evp_extra_test

The evp_extra_test code makes use of the dasync engine to ensure that we
can do evp operations (signatures and ciphers) with an engine.

The dasync engine is used for this purpose, but it does not exercize any
specific pipeline functionality.

Given that engines are getting removed, the engine tests here I think
can just be removed.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove ENGINESDIR variable and engines installation from Makefiles.
Milan Broz [Fri, 19 Sep 2025 11:03:07 +0000 (13:03 +0200)] 
Remove ENGINESDIR variable and engines installation from Makefiles.

For compatibility reasons, OPENSSL_ENGINES_DIR and OPENSSL_INFO_ENGINES_DIR
are still supported but return values like with engines disabled.

The OPENSSL_ENGINES environment variable will be removed with engine
removal later.

Resolves: https://github.com/openssl/project/issues/1425

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agocrypto/ec: Remove ENGINE usage
Norbert Pocs [Tue, 16 Sep 2025 12:58:08 +0000 (14:58 +0200)] 
crypto/ec: Remove ENGINE usage

Resolves: https://github.com/openssl/project/issues/1615

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agocrypto/dsa: Remove ENGINE usage
Norbert Pocs [Tue, 16 Sep 2025 11:18:53 +0000 (13:18 +0200)] 
crypto/dsa: Remove ENGINE usage

Resolves: https://github.com/openssl/project/issues/1614

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove README-ENGINES.md
Milan Broz [Tue, 16 Sep 2025 12:45:23 +0000 (14:45 +0200)] 
Remove README-ENGINES.md

Resolves: https://github.com/openssl/project/issues/1616

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agop_lib.c: Remove engine from pkey_set_type
Norbert Pocs [Tue, 16 Sep 2025 08:18:54 +0000 (10:18 +0200)] 
p_lib.c: Remove engine from pkey_set_type

Resolves: https://github.com/openssl/project/issues/1437

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove ENGINE_TABLE and ENGINE_REF_COUNT trace documentation
Neil Horman [Mon, 15 Sep 2025 20:36:28 +0000 (16:36 -0400)] 
Remove ENGINE_TABLE and ENGINE_REF_COUNT trace documentation

As the subject indicates, with these trace categories gone, we shouldn't
reference them in the docs anymore.

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove ENGINE_TABLE and ENGINE_REF_COUNT trace categories
Neil Horman [Mon, 15 Sep 2025 20:31:25 +0000 (16:31 -0400)] 
Remove ENGINE_TABLE and ENGINE_REF_COUNT trace categories

With ENGINES going away we need to remove these trace catagories

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoConfigure: deprecate-disable engine related options
Norbert Pocs [Mon, 15 Sep 2025 08:15:44 +0000 (10:15 +0200)] 
Configure: deprecate-disable engine related options

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove private ENGINE references from local structs.
Milan Broz [Wed, 3 Sep 2025 09:52:49 +0000 (11:52 +0200)] 
Remove private ENGINE references from local structs.

Resolves: https://github.com/openssl/project/issues/1368

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove engine from PROV_CIPHER and PROV_DIGEST structs.
Milan Broz [Tue, 2 Sep 2025 12:58:09 +0000 (14:58 +0200)] 
Remove engine from PROV_CIPHER and PROV_DIGEST structs.

Resolves: https://github.com/openssl/project/issues/1352
Resolves: https://github.com/openssl/project/issues/1353

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove OPENSSL_NO_STATIC_ENGINE macro
Norbert Pocs [Tue, 2 Sep 2025 08:03:21 +0000 (10:03 +0200)] 
Remove OPENSSL_NO_STATIC_ENGINE macro

Resolves: https://github.com/openssl/project/issues/1364

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove OPENSSL_NO_DYNAMIC_ENGINE
Norbert Pocs [Tue, 2 Sep 2025 07:19:30 +0000 (09:19 +0200)] 
Remove OPENSSL_NO_DYNAMIC_ENGINE

Most of the ifdefs were removed, but we want to rewrite the dasync
engine to a provider. Therefore that code was not removed; instead a new
temporary macro was added named TODO_REWRITE_ME_DASYNC_PROVIDER.

Resolves: https://github.com/openssl/project/issues/1363

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoUpdate symbols after OPENSSL_NO_ENGINE clearup
Norbert Pocs [Tue, 2 Sep 2025 06:10:11 +0000 (08:10 +0200)] 
Update symbols after OPENSSL_NO_ENGINE clearup

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoengine/e_loader_attic: Remove OPENSSL_NO_ENGINE parts
Norbert Pocs [Fri, 29 Aug 2025 13:12:06 +0000 (15:12 +0200)] 
engine/e_loader_attic: Remove OPENSSL_NO_ENGINE parts

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agocrypto/: Remove OPENSSL_NO_ENGINE guarded code
Norbert Pocs [Fri, 29 Aug 2025 12:42:18 +0000 (14:42 +0200)] 
crypto/: Remove OPENSSL_NO_ENGINE guarded code

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agossl/: Remove ENGINEs
Norbert Pocs [Fri, 29 Aug 2025 11:59:35 +0000 (13:59 +0200)] 
ssl/: Remove ENGINEs

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoinclude/: Remove ENGINEs
Norbert Pocs [Fri, 29 Aug 2025 10:47:00 +0000 (12:47 +0200)] 
include/: Remove ENGINEs

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agotest/: Remove ENGINEs
Norbert Pocs [Fri, 29 Aug 2025 10:33:10 +0000 (12:33 +0200)] 
test/: Remove ENGINEs

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoapps/: Update docs
Norbert Pocs [Fri, 12 Sep 2025 13:38:01 +0000 (15:38 +0200)] 
apps/: Update docs

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoapps/: Remove "-keyform engine"
Norbert Pocs [Wed, 3 Sep 2025 11:05:35 +0000 (13:05 +0200)] 
apps/: Remove "-keyform engine"

Resolves: https://github.com/openssl/project/issues/1354

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoapps/: Remove engines
Norbert Pocs [Thu, 28 Aug 2025 14:11:10 +0000 (16:11 +0200)] 
apps/: Remove engines

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoproviders/: Remove ENGINEs
Norbert Pocs [Thu, 28 Aug 2025 13:14:31 +0000 (15:14 +0200)] 
providers/: Remove ENGINEs

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove openssl engine command
Milan Broz [Thu, 4 Sep 2025 10:19:40 +0000 (12:19 +0200)] 
Remove openssl engine command

This patch removes apps/engine.c and associated man pages.

Resolves: https://github.com/openssl/project/issues/1370

Signed-off-by: Milan Broz <gmazyland@gmail.com>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove GOST external tests
Norbert Pocs [Mon, 8 Sep 2025 15:11:33 +0000 (17:11 +0200)] 
Remove GOST external tests

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agoRemove engine test
Norbert Pocs [Mon, 8 Sep 2025 13:24:03 +0000 (15:24 +0200)] 
Remove engine test

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days ago Engine removal: Silence the CI tests about engines
Norbert Pocs [Mon, 8 Sep 2025 13:25:31 +0000 (15:25 +0200)] 
 Engine removal: Silence the CI tests about engines

As we can't do every change in one big PR (and we also don't want),
therefore there always will be failing tests until everything is
resolved/cleaned up. This way we silence the CI about engine tests and
later we can reenable them to see what else needs to be fixed.

Resolves: https://github.com/openssl/project/issues/1371

Signed-off-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)

2 days agocheck_cert_crl(): Set CRL score for CRLs returned by get_crl callback
Timothy Copeland [Tue, 2 Dec 2025 05:05:30 +0000 (16:05 +1100)] 
check_cert_crl(): Set CRL score for CRLs returned by get_crl callback

Reviewed-by: Nikola Pajkovsky <nikolap@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29199)

3 days agoPerformance Optimization of SM4-CBC Encryption and Decryption with Assembly on RISC...
zhoulu [Tue, 2 Dec 2025 08:34:51 +0000 (16:34 +0800)] 
Performance Optimization of SM4-CBC Encryption and Decryption with Assembly on RISC-V Architecture

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/29137)

3 days agoChange hexdump width to a multiple of 8 bytes feature/method-store-freeze
Beat Bolli [Sun, 23 Feb 2025 14:10:40 +0000 (15:10 +0100)] 
Change hexdump width to a multiple of 8 bytes

10, 15 and 18 seem quite unnatural byte counts in the context of hex
dumps. Standardize on 24 bytes for signatures (to stay within the 80
characters limit) and 16 bytes for everything else.

Adjust all test cert dumps to match the new output format.

Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29266)

3 days agoRECORD_LAYER_clear(): Remove redundant BIO_free(rl->rrlnext)
Nevv [Tue, 2 Dec 2025 12:21:57 +0000 (20:21 +0800)] 
RECORD_LAYER_clear(): Remove redundant BIO_free(rl->rrlnext)

Fixes #29283

CLA: trivial

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29289)

3 days agomlx_kem_dup(): Set key state to MLX_HAVE_NOKEYS when not copying keypair
lan1120 [Tue, 2 Dec 2025 01:36:57 +0000 (09:36 +0800)] 
mlx_kem_dup(): Set key state to MLX_HAVE_NOKEYS when not copying keypair

Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29280)

3 days agoSkip symbol_presence test on AIX
Matthias Kraft [Fri, 28 Nov 2025 14:30:01 +0000 (15:30 +0100)] 
Skip symbol_presence test on AIX

AIX `nm` reports symbols in a different way.

Fix for: #29247

Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29276)

3 days agotls_process_cert_status_body(): Reject invalid cert status
Ryan Hooper [Thu, 13 Nov 2025 16:08:42 +0000 (11:08 -0500)] 
tls_process_cert_status_body(): Reject invalid cert status

When a CertStatus message is received and the length of the
OCSP response is zero error out.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29207)

3 days agoconst up some more low hanging things
Caolán McNamara [Fri, 28 Nov 2025 09:05:07 +0000 (09:05 +0000)] 
const up some more low hanging things

Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29246)

3 days agoAPPS/load_key_certs_crls(): prevent mem leaks on error w.r.t. any leftover credentials
Dr. David von Oheimb [Wed, 9 Jul 2025 15:51:26 +0000 (17:51 +0200)] 
APPS/load_key_certs_crls(): prevent mem leaks on error w.r.t. any leftover credentials

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/28005)

3 days agodtls_get_reassembled_message(): Fix potential use-after-realloc
Tomas Mraz [Mon, 1 Dec 2025 16:14:21 +0000 (17:14 +0100)] 
dtls_get_reassembled_message(): Fix potential use-after-realloc

Fortunately due to the initial size of the allocated
buffer and the limit for unfragmented DTLS record size
the use-after-realloc cannot be triggered.

But we fix the potentially problematic code anyway.

Reported Joshua Rogers. It was found with the ZeroPath security
tooling.

Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/29278)

3 days agowindows.yml: Clean up duplicate --strict-warnings option
Tomas Mraz [Wed, 3 Dec 2025 11:17:46 +0000 (12:17 +0100)] 
windows.yml: Clean up duplicate --strict-warnings option

Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29300)

3 days agoAvoid warning about zero extending unsigned int on Windows
Tomas Mraz [Wed, 3 Dec 2025 11:17:13 +0000 (12:17 +0100)] 
Avoid warning about zero extending unsigned int on Windows

Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Norbert Pocs <norbertp@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29300)

3 days agoDisable clang format around .c includes
Bob Beck [Thu, 28 Aug 2025 18:59:59 +0000 (12:59 -0600)] 
Disable clang format around .c includes

we assume these to be order sensitive and not self contained, so
as per our new style we disable clang format around them.

we should consider renaming to .inc, or doing away with some
of these and just putting the code inline, but that's for
later consideration.

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Nikola Pajkovsky <nikolap@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29241)

3 days agoDisable clang-format around line-wrap sensitive lines in malloc_test.c
Bob Beck [Fri, 28 Nov 2025 18:20:53 +0000 (11:20 -0700)] 
Disable clang-format around line-wrap sensitive lines in malloc_test.c

If OPENSSL_LINE ends up on a different line than the following call here,
this test breaks.

We should perhaps reconsider if testing the reporting of OPENSSL_LINE
is what we want in a malloc test, but that's for another time than now.

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Nikola Pajkovsky <nikolap@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29241)

3 days agoDisable clang format around multi-line macros of sparc assembly
Bob Beck [Thu, 27 Nov 2025 22:17:00 +0000 (15:17 -0700)] 
Disable clang format around multi-line macros of sparc assembly

They are not asm, but spit out stuff that is not C

Clang-format gets confused and does bad things with them.

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Nikola Pajkovsky <nikolap@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29241)

3 days agoFix cmp_ctx_test.c to be less sensitive to line wrapping.
Bob Beck [Tue, 2 Sep 2025 16:07:08 +0000 (10:07 -0600)] 
Fix cmp_ctx_test.c to be less sensitive to line wrapping.

Similar to the previous errtest.c fix this also is not broken
by any reformatting today, but this change makes this follow
the same pattern as the other things that test OPENSSL_LINE
after the fact so we maintain the same paradigm everywhere.

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Nikola Pajkovsky <nikolap@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29241)

3 days agofix errtest to be less sensitive to line wrapping changes
Bob Beck [Fri, 29 Aug 2025 17:37:36 +0000 (11:37 -0600)] 
fix errtest to be less sensitive to line wrapping changes

(in it's final form it will work with either compiler
because it's currently one line, but was tripped up before
by the #ifdef, so redid it to be consistent with the
other changes previously in this stack)

While I am here correct the test to test for all possible
return values of ERR_get_error_all, without the #ifdefs

Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Nikola Pajkovsky <nikolap@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29241)