]> git.ipfire.org Git - thirdparty/openssl.git/log
thirdparty/openssl.git
3 months agoQUIC: Add new error codes for tuning API
Hugo Landau [Mon, 22 Jan 2024 13:14:53 +0000 (13:14 +0000)] 
QUIC: Add new error codes for tuning API

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

3 months agoQUIC: Add documentation for tuning API
Hugo Landau [Mon, 22 Jan 2024 11:42:41 +0000 (11:42 +0000)] 
QUIC: Add documentation for tuning API

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

3 months agoWrong release version for EVP_DigestSqueeze() in documentation
Shakti Shah [Sat, 3 Feb 2024 19:57:12 +0000 (01:27 +0530)] 
Wrong release version for EVP_DigestSqueeze() in documentation

The mentioned function is targeted for 3.3.0 and EVP_MD_CTX_dup()
was added in 3.1.

Fixes #23461

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

3 months agoConfigure: Fix ordering bug when processing split DEPENDs
Richard Levitte [Wed, 7 Feb 2024 03:38:28 +0000 (04:38 +0100)] 
Configure: Fix ordering bug when processing split DEPENDs

Configure was recently made to process this sort of line:

    DEPEND[generated]=util/perl|OpenSSL/something.pm

Unfortunately, in processing such lines, the order in which paths
were recomputed caused some resulting paths to be faulty under some
circumstances.  This change fixes that.

Fixes #22853

Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23500)

(cherry picked from commit 64cae4064405384cf7fe130a1e0189725db5e877)

3 months agoFix sm4-xts aarch64 assembly implementation bug
Liu-Ermeng [Wed, 17 Jan 2024 02:04:32 +0000 (18:04 -0800)] 
Fix sm4-xts aarch64 assembly implementation bug

Tested on kunpeng920, to turn on 'VPSM4_EX_CAPABLE'.

Signed-off-by: Liu-Ermeng <liuermeng2@huawei.com>
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23317)

3 months agoFix testcases to run on duplicated keys
Tomas Mraz [Fri, 12 Jan 2024 17:47:56 +0000 (18:47 +0100)] 
Fix testcases to run on duplicated keys

The existing loop pattern did not really run the expected
tests on the duplicated keys.

Fixes #23129

Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23292)

3 months agoCONTRIBUTING.md: add missing "on"
James Muir [Tue, 6 Feb 2024 00:01:28 +0000 (19:01 -0500)] 
CONTRIBUTING.md: add missing "on"

"Guidelines how to" -> "Guidelines on how to"

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

3 months agoFix SM2 test failures on Apple Silicon
Xu Yizhou [Sun, 4 Feb 2024 08:30:02 +0000 (16:30 +0800)] 
Fix SM2 test failures on Apple Silicon

This patch is to fix #23368.

Signed-off-by: Xu Yizhou <xuyizhou1@huawei.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23472)

3 months agoAdd a missing space in an error message
Vincent Lefèvre [Mon, 5 Feb 2024 09:45:20 +0000 (10:45 +0100)] 
Add a missing space in an error message

CLA: trivial

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

3 months agos390x: Fix build on s390x with 'disable-asm'
Ingo Franzki [Fri, 2 Feb 2024 09:20:55 +0000 (10:20 +0100)] 
s390x: Fix build on s390x with 'disable-asm'

Do not define S390X_MOD_EXP for a NO_ASM build, this would result in
unresolved externals for s390x_mod_exp and s390x_crt.

Signed-off-by: Ingo Franzki <ifranzki@linux.ibm.com>
Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23458)

3 months agoClarify X509_STORE_CTX_init() documentation in the man page
Shakti Shah [Tue, 30 Jan 2024 19:44:34 +0000 (01:14 +0530)] 
Clarify X509_STORE_CTX_init() documentation in the man page

Fixes #21203
CLA: trivial

Reviewed-by: Todd Short <todd.short@me.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23435)

3 months agoAIX: Implement shared_target = "aix-solib" support
John Kohl [Fri, 21 Jul 2023 14:31:34 +0000 (10:31 -0400)] 
AIX: Implement shared_target = "aix-solib" support

This builds shared libraries as libxxx.so, libxxx.so.ver and static
libraries as libxxx.a.  For shlib_variant builds, it builds libxxx.so,
libxxxvariant.so.ver, and libxxxx.a.  libxxx.so is a linker import
library that directs the linker to embed a run-time dependency
reference to libxxxvariant.so.ver.  Only libxxxvariant.so.ver is needed
at runtime.

Fixes #21518

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/21540)

3 months agoAdd support in configuration for android-riscv64
Prashanth Swaminathan [Mon, 29 Jan 2024 21:20:54 +0000 (13:20 -0800)] 
Add support in configuration for android-riscv64

Android is enabling support for the riscv64 ISA. Add a configuration
option to support building for it, aligned with the existing
linux-riscv64 configuration.

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Todd Short <todd.short@me.com>
(Merged from https://github.com/openssl/openssl/pull/23427)

3 months agoFix a few incorrect paths in some build.info files
Richard Levitte [Thu, 1 Feb 2024 09:57:51 +0000 (10:57 +0100)] 
Fix a few incorrect paths in some build.info files

The following files referred to ../liblegacy.a when they should have
referred to ../../liblegacy.a.  This cause the creation of a mysterious
directory 'crypto/providers', and because of an increased strictness
with regards to where directories are created, configuration failure
on some platforms.

Fixes #23436

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
(Merged from https://github.com/openssl/openssl/pull/23452)

(cherry picked from commit 667b45454a47959ce2934b74c899662e686993de)

3 months agoQUIC QLOG: Fix indentation
Hugo Landau [Thu, 1 Feb 2024 11:02:22 +0000 (11:02 +0000)] 
QUIC QLOG: Fix indentation

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Namespace the RUN_CI_TESTS variable
Hugo Landau [Thu, 1 Feb 2024 11:01:44 +0000 (11:01 +0000)] 
QUIC QLOG: Namespace the RUN_CI_TESTS variable

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Use set0
Hugo Landau [Thu, 1 Feb 2024 11:00:55 +0000 (11:00 +0000)] 
QUIC QLOG: Use set0

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Minor manpage updates
Hugo Landau [Thu, 1 Feb 2024 10:59:10 +0000 (10:59 +0000)] 
QUIC QLOG: Minor manpage updates

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Minor doc updates
Hugo Landau [Thu, 1 Feb 2024 10:31:25 +0000 (10:31 +0000)] 
QUIC QLOG: Minor doc updates

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoMinor fixes
Hugo Landau [Mon, 29 Jan 2024 15:00:33 +0000 (15:00 +0000)] 
Minor fixes

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoMinor fixes
Hugo Landau [Mon, 29 Jan 2024 14:49:09 +0000 (14:49 +0000)] 
Minor fixes

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoMinor fixes
Hugo Landau [Mon, 29 Jan 2024 14:35:16 +0000 (14:35 +0000)] 
Minor fixes

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Don't build QLOG test if QLOG is disabled
Hugo Landau [Mon, 29 Jan 2024 14:28:06 +0000 (14:28 +0000)] 
QUIC QLOG: Don't build QLOG test if QLOG is disabled

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Record implementation version
Hugo Landau [Mon, 29 Jan 2024 14:20:01 +0000 (14:20 +0000)] 
QUIC QLOG: Record implementation version

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Add unit test
Hugo Landau [Mon, 29 Jan 2024 13:58:40 +0000 (13:58 +0000)] 
QUIC QLOG: Add unit test

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Allow PID to be overridden
Hugo Landau [Mon, 29 Jan 2024 13:58:18 +0000 (13:58 +0000)] 
QUIC QLOG: Allow PID to be overridden

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: CI-only test
Hugo Landau [Mon, 29 Jan 2024 13:09:49 +0000 (13:09 +0000)] 
QUIC QLOG: CI-only test

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoAdd CI-only tests to workflow files
Hugo Landau [Wed, 24 Jan 2024 13:11:56 +0000 (13:11 +0000)] 
Add CI-only tests to workflow files

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Fix filter lexing
Hugo Landau [Mon, 29 Jan 2024 12:37:35 +0000 (12:37 +0000)] 
QLOG: Fix filter lexing

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoJSON_ENC: Fix initial value of error
Hugo Landau [Mon, 29 Jan 2024 12:37:10 +0000 (12:37 +0000)] 
JSON_ENC: Fix initial value of error

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC CHANNEL: Ensure QLOG instance is used correctly on server side
Hugo Landau [Mon, 29 Jan 2024 12:36:52 +0000 (12:36 +0000)] 
QUIC CHANNEL: Ensure QLOG instance is used correctly on server side

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QTX: Refactor to enable qlog logging of injected frames
Hugo Landau [Mon, 29 Jan 2024 12:36:29 +0000 (12:36 +0000)] 
QUIC QTX: Refactor to enable qlog logging of injected frames

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC TXP: Allow QLOG instance to be changed after instantiation
Hugo Landau [Mon, 29 Jan 2024 12:36:11 +0000 (12:36 +0000)] 
QUIC TXP: Allow QLOG instance to be changed after instantiation

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QTX: Allow QLOG instance to be changed after instantiation
Hugo Landau [Mon, 29 Jan 2024 12:35:49 +0000 (12:35 +0000)] 
QUIC QTX: Allow QLOG instance to be changed after instantiation

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC FIFD: Allow QLOG instance to be changed after instantiation
Hugo Landau [Mon, 29 Jan 2024 12:34:54 +0000 (12:34 +0000)] 
QUIC FIFD: Allow QLOG instance to be changed after instantiation

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Minor updates
Hugo Landau [Wed, 24 Jan 2024 11:00:53 +0000 (11:00 +0000)] 
QLOG: Minor updates

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoMinor updates
Hugo Landau [Tue, 23 Jan 2024 16:24:59 +0000 (16:24 +0000)] 
Minor updates

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Treat empty environment variable as default filter
Hugo Landau [Tue, 23 Jan 2024 14:19:05 +0000 (14:19 +0000)] 
QLOG: Treat empty environment variable as default filter

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Editorial fixes (QLOG is spelled 'qlog')
Hugo Landau [Tue, 23 Jan 2024 14:13:49 +0000 (14:13 +0000)] 
QLOG: Editorial fixes (QLOG is spelled 'qlog')

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Add manpage openssl-qlog(7)
Hugo Landau [Tue, 23 Jan 2024 14:06:47 +0000 (14:06 +0000)] 
QLOG: Add manpage openssl-qlog(7)

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Adjust CHANGES.md for editorial consistency
Hugo Landau [Tue, 23 Jan 2024 13:03:08 +0000 (13:03 +0000)] 
QLOG: Adjust CHANGES.md for editorial consistency

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoMention QLOG in INSTALL.md
Hugo Landau [Tue, 23 Jan 2024 13:02:56 +0000 (13:02 +0000)] 
Mention QLOG in INSTALL.md

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoConfigure: Add warning when enabling QLOG
Hugo Landau [Tue, 23 Jan 2024 12:50:39 +0000 (12:50 +0000)] 
Configure: Add warning when enabling QLOG

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoJSON_ENC: Minor tweaks
Hugo Landau [Mon, 22 Jan 2024 14:45:00 +0000 (14:45 +0000)] 
JSON_ENC: Minor tweaks

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Clarify filter docs
Hugo Landau [Mon, 22 Jan 2024 14:41:44 +0000 (14:41 +0000)] 
QUIC QLOG: Clarify filter docs

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQUIC QLOG: Rename QFILTER to OSSL_QFILTER
Hugo Landau [Mon, 22 Jan 2024 14:41:32 +0000 (14:41 +0000)] 
QUIC QLOG: Rename QFILTER to OSSL_QFILTER

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Add CHANGES entry
Hugo Landau [Thu, 18 Jan 2024 10:39:12 +0000 (10:39 +0000)] 
QLOG: Add CHANGES entry

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Remove vestigial abort code
Hugo Landau [Thu, 18 Jan 2024 10:39:03 +0000 (10:39 +0000)] 
QLOG: Remove vestigial abort code

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Fix bit_set
Hugo Landau [Wed, 17 Jan 2024 12:06:14 +0000 (12:06 +0000)] 
QLOG: Fix bit_set

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Minor updates
Hugo Landau [Wed, 17 Jan 2024 10:01:46 +0000 (10:01 +0000)] 
QLOG: Minor updates

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Minor fixes after port refactor
Hugo Landau [Wed, 10 Jan 2024 08:29:28 +0000 (08:29 +0000)] 
QLOG: Minor fixes after port refactor

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: JSON Encoder: Rename JSON_ENC
Hugo Landau [Tue, 12 Sep 2023 11:21:44 +0000 (12:21 +0100)] 
QLOG: JSON Encoder: Rename JSON_ENC

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Add debugging guide
Hugo Landau [Fri, 8 Sep 2023 14:13:51 +0000 (15:13 +0100)] 
QLOG: Add debugging guide

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Events: Implement transport:packet_received
Hugo Landau [Fri, 8 Sep 2023 13:10:06 +0000 (14:10 +0100)] 
QLOG: Events: Implement transport:packet_received

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Events: Implement transport:packet_sent
Hugo Landau [Fri, 8 Sep 2023 12:58:41 +0000 (13:58 +0100)] 
QLOG: Events: Implement transport:packet_sent

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Wiring: QUIC QTX
Hugo Landau [Fri, 8 Sep 2023 12:56:32 +0000 (13:56 +0100)] 
QLOG: Wiring: QUIC QTX

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: QUIC MULTISTREAM TEST: Pass script name to QLOG
Hugo Landau [Fri, 8 Sep 2023 10:08:56 +0000 (11:08 +0100)] 
QLOG: QUIC MULTISTREAM TEST: Pass script name to QLOG

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Wire title-setting code to QUIC_CHANNEL and SSL_CTX
Hugo Landau [Fri, 8 Sep 2023 12:42:53 +0000 (13:42 +0100)] 
QLOG: Wire title-setting code to QUIC_CHANNEL and SSL_CTX

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: QUIC CHANNEL: Allow a log title to be specified
Hugo Landau [Fri, 8 Sep 2023 12:37:18 +0000 (13:37 +0100)] 
QLOG: QUIC CHANNEL: Allow a log title to be specified

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Events: Implement recovery:packet_lost
Hugo Landau [Fri, 8 Sep 2023 12:32:17 +0000 (13:32 +0100)] 
QLOG: Events: Implement recovery:packet_lost

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Wiring: QUIC TXPIM: Record the packet type
Hugo Landau [Fri, 8 Sep 2023 12:31:36 +0000 (13:31 +0100)] 
QLOG: Wiring: QUIC TXPIM: Record the packet type

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Wiring: QUIC FIFD
Hugo Landau [Fri, 8 Sep 2023 12:30:56 +0000 (13:30 +0100)] 
QLOG: Wiring: QUIC FIFD

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Wiring: QUIC QRX: Report the datagram ID from the DEMUX
Hugo Landau [Fri, 8 Sep 2023 10:02:32 +0000 (11:02 +0100)] 
QLOG: Wiring: QUIC QRX: Report the datagram ID from the DEMUX

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Wiring: QUIC DEMUX: Report a monotonically increasing datagram ID
Hugo Landau [Fri, 8 Sep 2023 10:01:35 +0000 (11:01 +0100)] 
QLOG: Wiring: QUIC DEMUX: Report a monotonically increasing datagram ID

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Events: Implement connectivity:connection_closed
Hugo Landau [Fri, 8 Sep 2023 12:07:04 +0000 (13:07 +0100)] 
QLOG: Events: Implement connectivity:connection_closed

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Events: Implement transport:parameters_set
Hugo Landau [Fri, 8 Sep 2023 11:53:02 +0000 (12:53 +0100)] 
QLOG: Events: Implement transport:parameters_set

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Events: Implement connectivity:connection_state_updated
Hugo Landau [Fri, 8 Sep 2023 11:43:04 +0000 (12:43 +0100)] 
QLOG: Events: Implement connectivity:connection_state_updated

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Events: Implement connectivity:connection_started
Hugo Landau [Fri, 8 Sep 2023 11:21:47 +0000 (12:21 +0100)] 
QLOG: Events: Implement connectivity:connection_started

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Wiring: QUIC CHANNEL
Hugo Landau [Fri, 8 Sep 2023 11:17:27 +0000 (12:17 +0100)] 
QLOG: Wiring: QUIC CHANNEL

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Frontend: Implementation
Hugo Landau [Wed, 23 Aug 2023 17:14:40 +0000 (18:14 +0100)] 
QLOG: Frontend: Implementation

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Frontend: API Definition
Hugo Landau [Wed, 23 Aug 2023 17:14:40 +0000 (18:14 +0100)] 
QLOG: Frontend: API Definition

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Frontend: Design
Hugo Landau [Wed, 6 Sep 2023 11:04:54 +0000 (12:04 +0100)] 
QLOG: Frontend: Design

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: JSON Encoder: Tests
Hugo Landau [Wed, 6 Sep 2023 11:00:19 +0000 (12:00 +0100)] 
QLOG: JSON Encoder: Tests

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: JSON Encoder: Implementation
Hugo Landau [Fri, 8 Sep 2023 10:14:09 +0000 (11:14 +0100)] 
QLOG: JSON Encoder: Implementation

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: Configuration
Hugo Landau [Fri, 8 Sep 2023 10:40:03 +0000 (11:40 +0100)] 
QLOG: Configuration

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agoQLOG: JSON Encoder: Design
Hugo Landau [Fri, 8 Sep 2023 10:13:39 +0000 (11:13 +0100)] 
QLOG: JSON Encoder: Design

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22037)

3 months agolibssl: Make some global mutable structures constant
Hugo Landau [Thu, 1 Feb 2024 07:45:15 +0000 (07:45 +0000)] 
libssl: Make some global mutable structures constant

x

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23450)

3 months agoAdd atexit configuration option to using atexit() in libcrypto at build-time.
Randall S. Becker [Thu, 25 Jan 2024 22:11:27 +0000 (22:11 +0000)] 
Add atexit configuration option to using atexit() in libcrypto at build-time.

This fixes an issue with a mix of atexit() usage in DLL and statically linked
libcrypto that came out in the test suite on NonStop, which has slightly
different DLL unload processing semantics compared to Linux. The change
allows a build configuration to select whether to register OPENSSL_cleanup()
with atexit() or not, so avoid situations where atexit() registration causes
SIGSEGV.

INSTALL.md and CHANGES.md have been modified to include and describe this
option.

The no-atexit option has been added to .github/workflows/run-checker-daily.yml.

Fixes: #23135
Signed-of-by: Randall S. Becker <randall.becker@nexbridge.ca>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Todd Short <todd.short@me.com>
(Merged from https://github.com/openssl/openssl/pull/23394)

3 months agoRemove a CVE reference from CHANGES/NEWS
Matt Caswell [Tue, 30 Jan 2024 16:51:52 +0000 (16:51 +0000)] 
Remove a CVE reference from CHANGES/NEWS

master/3.2 was never vulnerable to CVE-2023-5678 since it was fixed before
it was released.

Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23432)

3 months agoAdd exemplar use case for rcu locks
Neil Horman [Fri, 12 Jan 2024 15:55:04 +0000 (10:55 -0500)] 
Add exemplar use case for rcu locks

To demonstrate the use of RCU locks, convert CONF_MOD api to using rcu
rather than RW locks

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22729)

3 months agoRCU lock implementation
Neil Horman [Fri, 12 Jan 2024 15:39:56 +0000 (10:39 -0500)] 
RCU lock implementation

Introduce an RCU lock implementation as an alternative locking mechanism
to openssl.  The api is documented in the ossl_rcu.pod
file

Read side implementaiton is comparable to that of RWLOCKS:
ossl_rcu_read_lock(lock);
<
critical section in which data can be accessed via
ossl_derefrence
>
ossl_rcu_read_unlock(lock);

Write side implementation is:
ossl_rcu_write_lock(lock);
<
critical section in which data can be updated via
ossl_assign_pointer
and stale data can optionally be scheduled for removal
via ossl_rcu_call
>
ossl_rcu_write_unlock(lock);
...
ossl_synchronize_rcu(lock);

ossl_rcu_call fixup

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22729)

3 months agoFix typo in CHANGES.md
Ingo Franzki [Wed, 31 Jan 2024 07:46:52 +0000 (08:46 +0100)] 
Fix typo in CHANGES.md

OSSL_PKEY_PARAM_DERIVE_FROM_PQ must be OSSL_PKEY_PARAM_RSA_DERIVE_FROM_PQ
(note the missing '_RSA').

Signed-off-by: Ingo Franzki <ifranzki@linux.ibm.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23438)

3 months agoDocument the implications of setting engine-based low-level methods
Tomas Mraz [Wed, 27 Dec 2023 18:21:49 +0000 (19:21 +0100)] 
Document the implications of setting engine-based low-level methods

Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23063)

3 months agoRevert "Improved detection of engine-provided private "classic" keys"
Tomas Mraz [Fri, 15 Dec 2023 12:45:50 +0000 (13:45 +0100)] 
Revert "Improved detection of engine-provided private "classic" keys"

This reverts commit 2b74e75331a27fc89cad9c8ea6a26c70019300b5.

The commit was wrong. With 3.x versions the engines must be themselves
responsible for creating their EVP_PKEYs in a way that they are treated
as legacy - either by using the respective set1 calls or by setting
non-default EVP_PKEY_METHOD.

The workaround has caused more problems than it solved.

Fixes #22945

Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
Reviewed-by: Neil Horman <nhorman@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23063)

3 months agoCheck all frames for stateless reset conditions
Neil Horman [Wed, 24 Jan 2024 18:23:28 +0000 (13:23 -0500)] 
Check all frames for stateless reset conditions

In writing the quic stateless reset test we found that the quic rx code
wasn't checking for stateless reest conditions, as the SRT frames were
getting discarded due to failed lcdim lookups.  Move the SRT check above
the lcdim lookup in the rx path to ensure we handle SRT properly in the
client.

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23384)

3 months agoAdd QUIC stateless reset test
Neil Horman [Tue, 23 Jan 2024 14:49:27 +0000 (09:49 -0500)] 
Add QUIC stateless reset test

QUIC supports the concept of stateless reset, in which a specially
crafted frame is sent to a client informing it that the QUIC state
information is no longer available, and the connection should be closed
immediately.  Test for proper client support here

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23384)

3 months agoFix error reporting in EVP_PKEY_{sign,verify,verify_recover}
Richard Levitte [Mon, 29 Jan 2024 07:51:52 +0000 (08:51 +0100)] 
Fix error reporting in EVP_PKEY_{sign,verify,verify_recover}

For some reason, those functions (and the _init functions too) would
raise EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE when the passed
ctx is NULL, and then not check if the provider supplied the function
that would support these libcrypto functions.

This corrects the situation, and has all those libcrypto functions
raise ERR_R_PASS_NULL_PARAMETER if ctx is NULL, and then check for the
corresponding provider supplied, and only when that one is missing,
raise EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE.

Because 0 doesn't mean error for EVP_PKEY_verify(), -1 is returned when
ERR_R_PASSED_NULL_PARAMETER is raised.  This is done consistently for all
affected functions.

Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23411)

3 months agoFix a possible memleak in bind_afalg
Bernd Edlinger [Sun, 28 Jan 2024 22:50:16 +0000 (23:50 +0100)] 
Fix a possible memleak in bind_afalg

bind_afalg calls afalg_aes_cbc which allocates
cipher_handle->_hidden global object(s)
but if one of them fails due to out of memory,
the function bind_afalg relies on the engine destroy
method to be called.  But that does not happen
because the dynamic engine object is not destroyed
in the usual way in dynamic_load in this case:

If the bind_engine function fails, there will be no
further calls into the shared object.
See ./crypto/engine/eng_dyn.c near the comment:
/* Copy the original ENGINE structure back */

Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23409)

3 months agoOptimize the implementation of ec_field_size()
K1 [Tue, 16 Jan 2024 13:07:38 +0000 (21:07 +0800)] 
Optimize the implementation of ec_field_size()

No need to create and copy BIGNUM p, a and b, just call
EC_GROUP_get0_field() instead.

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Yang <kaishen.yy@antfin.com>
(Merged from https://github.com/openssl/openssl/pull/23313)

3 months agoFix compilation on Windows using icc
Matt Caswell [Mon, 29 Jan 2024 10:14:30 +0000 (10:14 +0000)] 
Fix compilation on Windows using icc

The parameter list for CRYPTO_DOWN_REF for the icc on windows build was
incorrect.

This issue was introduced by 99fd5b2b10

Fixes #23414

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Hugo Landau <hlandau@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23415)

3 months agoExtend the testing of resetting/clearing an SSL connection
Matt Caswell [Tue, 16 Jan 2024 13:53:30 +0000 (13:53 +0000)] 
Extend the testing of resetting/clearing an SSL connection

SSL_clear() explicitly clears an SSL object to enable it to be reused.
You can have a similar effect by calling SSL_set_accept_state() or
SSL_set_connect_state(). We extend the testing of SSL_clear() to use these
other methods. We also ensure we test the case where we have unread
bufferred data that needs to be cleared.

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23256)

3 months agoFree the QUIC TLS object before freeing the channel
Matt Caswell [Thu, 18 Jan 2024 12:25:47 +0000 (12:25 +0000)] 
Free the QUIC TLS object before freeing the channel

Freeing the QUIC TLS object may make calls back into QUIC so we should
free it first.

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23256)

3 months agoFree the tserver TLS object before freeing the channel
Matt Caswell [Thu, 18 Jan 2024 12:16:55 +0000 (12:16 +0000)] 
Free the tserver TLS object before freeing the channel

The TLS object may make callbacks into QUIC during cleanup so we must
free it first.

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23256)

3 months agoRationalise RECORD_LAYER_clear() and clear_record_layer()
Matt Caswell [Thu, 18 Jan 2024 12:08:52 +0000 (12:08 +0000)] 
Rationalise RECORD_LAYER_clear() and clear_record_layer()

We had two functions which were very similarly named, that did almost the
same thing, but not quite. We bring the two together. Doing this also fixes
a possible bug where some data may not be correctly freed when the
RECORD_LAYER_clear() version was used.

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23256)

3 months agoWhen selecting a method ensure we use the correct client/server version
Matt Caswell [Thu, 18 Jan 2024 12:07:27 +0000 (12:07 +0000)] 
When selecting a method ensure we use the correct client/server version

Using the client one when the server once should be used could cause a
later call to SSL_set_accept_state() to unexpectedly fail.

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23256)

3 months agoFix an assertion failure in tls_common.c
Matt Caswell [Wed, 10 Jan 2024 16:44:12 +0000 (16:44 +0000)] 
Fix an assertion failure in tls_common.c

When we clear the record layer, we better make sure we clear all relevant
fields, otherwise we can get ourselves into an unexpected state.

Fixes #23255

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23256)

3 months agoBump suisei-cn/actions-download-file from 1.4.0 to 1.6.0
dependabot[bot] [Mon, 29 Jan 2024 17:50:56 +0000 (17:50 +0000)] 
Bump suisei-cn/actions-download-file from 1.4.0 to 1.6.0

Bumps [suisei-cn/actions-download-file](https://github.com/suisei-cn/actions-download-file) from 1.4.0 to 1.6.0.
- [Release notes](https://github.com/suisei-cn/actions-download-file/releases)
- [Commits](https://github.com/suisei-cn/actions-download-file/compare/v1.4.0...v1.6.0)

---
updated-dependencies:
- dependency-name: suisei-cn/actions-download-file
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
CLA: trivial

Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23425)

3 months agofix missing null check in kdf_test_ctrl
Neil Horman [Fri, 26 Jan 2024 16:33:18 +0000 (11:33 -0500)] 
fix missing null check in kdf_test_ctrl

Coverity issue 1453632 noted a missing null check in kdf_test_ctrl
recently.  If a malformed value is passed in from the test file that
does not contain a ':' character, the p variable will be NULL, leading
to a NULL derefence prepare_from_text

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
(Merged from https://github.com/openssl/openssl/pull/23398)

3 months agoUpdate CHANGES.md and NEWS.md for new release
Matt Caswell [Mon, 29 Jan 2024 16:19:24 +0000 (16:19 +0000)] 
Update CHANGES.md and NEWS.md for new release

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Release: yes
(Merged from https://github.com/openssl/openssl/pull/23421)

3 months agoreplace strstr() with strchr() for single characters
rilysh [Sun, 21 Jan 2024 06:48:09 +0000 (12:18 +0530)] 
replace strstr() with strchr() for single characters

strstr() is used to match multiple characters in the haystack,
whereas strchr() is used to matched only single character.

CLA: trivial

Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23347)