Skip to content

Commit 8a0bf4a

Browse files
deps: upgrade openssl sources to openssl-3.5.6
PR-URL: #62629 Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Richard Lau <richard.lau@ibm.com>
1 parent 6d4cfd9 commit 8a0bf4a

File tree

215 files changed

+2266
-1507
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

215 files changed

+2266
-1507
lines changed

deps/openssl/openssl/CHANGES.md

Lines changed: 363 additions & 212 deletions
Large diffs are not rendered by default.

deps/openssl/openssl/CONTRIBUTING.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,18 @@ communication before submitting many pull requests. In addition,
2727
contributors should personally evaluate potential patches generated by
2828
automated tools.
2929

30+
Provide a clear description of the issue or feature being addressed,
31+
including any relevant implementation details and, for performance
32+
improvements, benchmark results.
33+
34+
Pull requests and commits should be self-contained, enabling readers to
35+
understand what changed and why without needing to reference related
36+
issues or having prior knowledge. Commit messages should include all
37+
relevant details to help future contributors follow the git history,
38+
with clear explanations of what is changing and why. Long descriptions
39+
are encouraged if they aid understanding. Commit message titles (their
40+
first line) should be kept to 50-70 characters if possible.
41+
3042
To make it easier to review and accept your pull request, please follow these
3143
guidelines:
3244

deps/openssl/openssl/Configurations/10-main.conf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
my $vc_win64a_info = {};
66
sub vc_win64a_info {
77
unless (%$vc_win64a_info) {
8-
if (`nasm -v 2>NUL` =~ /NASM version ([0-9]+\.[0-9]+)/ && $1 >= 2.0) {
8+
# Minimum NASM version is 2.09 otherwise SHA3 might be miscompiled
9+
if (`nasm -v 2>NUL` =~ /NASM version ([0-9]+)\.([0-9]+)/ && ($1 > 2 || ($1 == 2 && $2 >= 9))) {
910
$vc_win64a_info = { AS => "nasm",
1011
ASFLAGS => "-g",
1112
asflags => "-Ox -f win64 -DNEAR",

deps/openssl/openssl/Configurations/unix-Makefile.tmpl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ OPTIONS={- $config{options} -}
7272
CONFIGURE_ARGS=({- join(", ",quotify_l(@{$config{perlargv}})) -})
7373
SRCDIR={- $config{sourcedir} -}
7474
BLDDIR={- $config{builddir} -}
75+
RESULT_D=$(BLDDIR)/test-runs
7576
FIPSKEY={- $config{FIPSKEY} -}
7677

7778
VERSION={- "$config{full_version}" -}
@@ -642,7 +643,7 @@ clean: libclean ## Clean the workspace, keep the configuration
642643
-find . -name '*{- platform->objext() -}' \! -name '.*' \! -type d -exec $(RM) {} \;
643644
$(RM) core
644645
$(RM) tags TAGS doc-nits md-nits
645-
$(RM) -r test/test-runs
646+
$(RM) -r $(RESULT_D)
646647
$(RM) providers/fips*.new
647648
-find . -type l \! -name '.*' -exec $(RM) {} \;
648649

deps/openssl/openssl/Configurations/windows-makefile.tmpl

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
PLATFORM={- $config{target} -}
3939
SRCDIR={- $config{sourcedir} -}
4040
BLDDIR={- $config{builddir} -}
41+
RESULT_D=$(BLDDIR)\test-runs
4142
FIPSKEY={- $config{FIPSKEY} -}
4243

4344
VERSION={- "$config{full_version}" -}
@@ -222,7 +223,7 @@ OPENSSLDIR_dir={- canonpath($openssldir_dir) -}
222223
LIBDIR={- our $libdir = $config{libdir} || "lib";
223224
file_name_is_absolute($libdir) ? "" : $libdir -}
224225
MODULESDIR_dev={- use File::Spec::Functions qw(:DEFAULT splitpath catpath);
225-
our $modulesprefix = catdir($prefix,$libdir);
226+
our $modulesprefix = file_name_is_absolute($libdir) ? $libdir : catdir($prefix,$libdir);
226227
our ($modulesprefix_dev, $modulesprefix_dir,
227228
$modulesprefix_file) =
228229
splitpath($modulesprefix, 1);
@@ -484,7 +485,7 @@ clean: libclean
484485
-del /Q /S /F engines\*.lib engines\*.exp
485486
-del /Q /S /F apps\*.lib apps\*.rc apps\*.res apps\*.exp
486487
-del /Q /S /F test\*.exp
487-
-rd /Q /S test\test-runs
488+
-@if exist "$(RESULT_D)" rd /Q /S "$(RESULT_D)"
488489

489490
distclean: clean
490491
-del /Q /F include\openssl\configuration.h

deps/openssl/openssl/NEWS.md

Lines changed: 232 additions & 195 deletions
Large diffs are not rendered by default.

deps/openssl/openssl/VERSION.dat

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
MAJOR=3
22
MINOR=5
3-
PATCH=5
3+
PATCH=6
44
PRE_RELEASE_TAG=
55
BUILD_METADATA=
6-
RELEASE_DATE="27 Jan 2026"
6+
RELEASE_DATE="7 Apr 2026"
77
SHLIB_VERSION=3

deps/openssl/openssl/apps/cmp.c

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2007-2025 The OpenSSL Project Authors. All Rights Reserved.
2+
* Copyright 2007-2026 The OpenSSL Project Authors. All Rights Reserved.
33
* Copyright Nokia 2007-2019
44
* Copyright Siemens AG 2015-2019
55
*
@@ -1421,7 +1421,10 @@ static int setup_verification_ctx(OSSL_CMP_CTX *ctx)
14211421
out_vpm = X509_STORE_get0_param(out_trusted);
14221422
X509_VERIFY_PARAM_clear_flags(out_vpm, X509_V_FLAG_USE_CHECK_TIME);
14231423

1424-
(void)OSSL_CMP_CTX_set_certConf_cb_arg(ctx, out_trusted);
1424+
if (!OSSL_CMP_CTX_set_certConf_cb_arg(ctx, out_trusted)) {
1425+
X509_STORE_free(out_trusted);
1426+
return 0;
1427+
}
14251428
}
14261429

14271430
if (opt_disable_confirm)
@@ -3390,6 +3393,12 @@ static void print_keyspec(OSSL_CMP_ATAVS *keySpec)
33903393
int paramtype;
33913394
const void *param;
33923395

3396+
/* NULL check to prevent dereferencing a NULL pointer when print_keyspec is called */
3397+
if (alg == NULL) {
3398+
BIO_puts(mem, "Key algorithm: <absent>\n");
3399+
break;
3400+
}
3401+
33933402
X509_ALGOR_get0(&oid, &paramtype, &param, alg);
33943403
BIO_printf(mem, "Key algorithm: ");
33953404
i2a_ASN1_OBJECT(mem, oid);
@@ -3789,8 +3798,7 @@ int cmp_main(int argc, char **argv)
37893798
if (opt_ignore_keyusage)
37903799
(void)OSSL_CMP_CTX_set_option(cmp_ctx, OSSL_CMP_OPT_IGNORE_KEYUSAGE, 1);
37913800
if (opt_no_cache_extracerts)
3792-
(void)OSSL_CMP_CTX_set_option(cmp_ctx, OSSL_CMP_OPT_NO_CACHE_EXTRACERTS,
3793-
1);
3801+
(void)OSSL_CMP_CTX_set_option(cmp_ctx, OSSL_CMP_OPT_NO_CACHE_EXTRACERTS, 1);
37943802

37953803
if (opt_reqout_only == NULL && (opt_use_mock_srv
37963804
#if !defined(OPENSSL_NO_SOCK) && !defined(OPENSSL_NO_HTTP)
@@ -3806,7 +3814,7 @@ int cmp_main(int argc, char **argv)
38063814

38073815
srv_cmp_ctx = OSSL_CMP_SRV_CTX_get0_cmp_ctx(srv_ctx);
38083816
if (!OSSL_CMP_CTX_set_log_cb(srv_cmp_ctx, print_to_bio_err)) {
3809-
CMP_err1("cannot set up error reporting and logging for %s", prog);
3817+
CMP_err1("cannot set up server-side error reporting and logging for %s", prog);
38103818
goto err;
38113819
}
38123820
OSSL_CMP_CTX_set_log_verbosity(srv_cmp_ctx, opt_verbosity);

deps/openssl/openssl/apps/include/cmp_mock_srv.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2018-2025 The OpenSSL Project Authors. All Rights Reserved.
2+
* Copyright 2018-2026 The OpenSSL Project Authors. All Rights Reserved.
33
* Copyright Siemens AG 2018-2020
44
*
55
* Licensed under the Apache License 2.0 (the "License"). You may not use
@@ -19,6 +19,8 @@
1919
OSSL_CMP_SRV_CTX *ossl_cmp_mock_srv_new(OSSL_LIB_CTX *libctx,
2020
const char *propq);
2121
void ossl_cmp_mock_srv_free(OSSL_CMP_SRV_CTX *srv_ctx);
22+
OSSL_CMP_MSG *ossl_cmp_mock_server_perform(OSSL_CMP_CTX *ctx,
23+
const OSSL_CMP_MSG *req);
2224

2325
int ossl_cmp_mock_srv_set1_refCert(OSSL_CMP_SRV_CTX *srv_ctx, X509 *cert);
2426
int ossl_cmp_mock_srv_set1_certOut(OSSL_CMP_SRV_CTX *srv_ctx, X509 *cert);
@@ -34,6 +36,7 @@ int ossl_cmp_mock_srv_set1_oldWithNew(OSSL_CMP_SRV_CTX *srv_ctx, X509 *cert);
3436
int ossl_cmp_mock_srv_set_statusInfo(OSSL_CMP_SRV_CTX *srv_ctx, int status,
3537
int fail_info, const char *text);
3638
int ossl_cmp_mock_srv_set_sendError(OSSL_CMP_SRV_CTX *srv_ctx, int bodytype);
39+
int ossl_cmp_mock_srv_set_useBadProtection(OSSL_CMP_SRV_CTX *srv_ctx, int bodytype);
3740
int ossl_cmp_mock_srv_set_pollCount(OSSL_CMP_SRV_CTX *srv_ctx, int count);
3841
int ossl_cmp_mock_srv_set_checkAfterTime(OSSL_CMP_SRV_CTX *srv_ctx, int sec);
3942

deps/openssl/openssl/apps/lib/app_provider.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2020-2025 The OpenSSL Project Authors. All Rights Reserved.
2+
* Copyright 2020-2026 The OpenSSL Project Authors. All Rights Reserved.
33
*
44
* Licensed under the Apache License 2.0 (the "License"). You may not use
55
* this file except in compliance with the License. You can obtain a copy
@@ -47,6 +47,7 @@ int app_provider_load(OSSL_LIB_CTX *libctx, const char *provider_name)
4747
app_providers = sk_OSSL_PROVIDER_new_null();
4848
if (app_providers == NULL
4949
|| !sk_OSSL_PROVIDER_push(app_providers, prov)) {
50+
OSSL_PROVIDER_unload(prov);
5051
app_providers_cleanup();
5152
return 0;
5253
}

0 commit comments

Comments
 (0)