| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Reviewed-by: Mounir Idrassi <[email protected]>
Reviewed-by: Simo Sorce <[email protected]>
MergeDate: Thu Sep 24 07:34:25 2026
(Merged from https://github.com/openssl/openssl/pull/30937)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
In store_result.c:try_key_value() return value of
OSSL_DECODER_CTX_new_for_pkey() is not checked so on
failed memory allocation OSSL_DECODER_CTX_set_passphrase_cb()
dereferences NULL without any check.
Found by : store fuzzer (MFAIL-test)
Reviewed-by: Jakub Zelenka <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
MergeDate: Tue Sep 15 14:20:04 2026
(Merged from https://github.com/openssl/openssl/pull/32413)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unify error handling in OSSL_STORE_attach with OSSL_STORE_open_ex.
If setting loader params fails loader_ctx is closed but not set to NULL.
Which leads to successful return with invalid object.
Fixed by setting loader_ctx to NULL triggering error return path.
If allocation OSSL_STORE_CTX fails after the loader context creation
close the loader context and release the fetched loader.
This covers both OSSL_STORE_CTX allocation failure and UI method setup failure.
Found by : store fuzzer (MFAIL-test)
Assisted-by: ChatGPT:gpt-5.6
Reviewed-by: Jakub Zelenka <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
MergeDate: Tue Sep 15 14:20:01 2026
(Merged from https://github.com/openssl/openssl/pull/32413)
|
| |
|
|
|
|
|
|
| |
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Nikola Pajkovsky <[email protected]>
Reviewed-by: Simo Sorce <[email protected]>
MergeDate: Thu Sep 10 13:32:58 2026
(Merged from https://github.com/openssl/openssl/pull/27507)
|
| |
|
|
|
|
|
|
| |
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Nikola Pajkovsky <[email protected]>
Reviewed-by: Simo Sorce <[email protected]>
MergeDate: Thu Sep 10 13:32:56 2026
(Merged from https://github.com/openssl/openssl/pull/27507)
|
| |
|
|
|
|
|
|
|
|
| |
OSSL_SKIP_SCHEME()
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Nikola Pajkovsky <[email protected]>
Reviewed-by: Simo Sorce <[email protected]>
MergeDate: Thu Sep 10 13:32:55 2026
(Merged from https://github.com/openssl/openssl/pull/27507)
|
| |
|
|
|
|
|
| |
Reviewed-by: Daniel Kubec <[email protected]>
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Merge-date: Wed Sep 9 13:12:46 2026
Release: yes
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Teach util/mkerr.pl two new modes. -emit FILE writes one generated
error file to standard output as a pure function of openssl.ec and
openssl.txt, with no source scan and no state update; every file in
the openssl.ec L table becomes a GENERATE rule driven by it, and the
generated error headers join the mandatory generated headers.
-state scans the sources and maintains openssl.txt but writes no
other files; "make errors" now uses it, so the developer flow only
curates the state and the build emits everything else.
Reason-code assignment moves out of the header emission into its own
pass, the three emitters become subroutines writing to a filehandle,
and the up-to-date stamp moves from the statefile's own timestamp to
a separate gitignored stamp file, since the statefile is now a build
input whose timestamp must track its content.
Removing the committed copies also retires 15 that had silently
drifted from the generator's output, among them crypto/bio/bio_err.c,
which was missing the reason strings for three BIO error codes that
exist in the state file.
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Andrew Dinh <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
Merge-date: Tue Sep 1 14:03:03 2026
Merged-from: https://github.com/openssl/openssl/pull/32243
|
| |
|
|
|
|
|
| |
Reviewed-by: Kurt Roeckx <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
MergeDate: Mon Jul 20 11:13:58 2026
(Merged from https://github.com/openssl/openssl/pull/31753)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://github.com/openssl/openssl/pull/31782
Fixed method refcounting for EVP objects when the provider they are
fetched from requests no-caching, but I neglected to add simmilar
refcounting fixes for DECODERS/ENCODERS and STORE objects, who follow a
different fetch path (these use inner_[decoder|encoder|loader]_fetch
rather than inner_evp_generic_fetch.
They got missed because the p_ossltest provider that we use to test
these paths don't provide these objects, so the path never got
exercised.
Reviewed-by: Bob Beck <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
MergeDate: Tue Jul 14 05:21:36 2026
(Merged from https://github.com/openssl/openssl/pull/31844)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We recently removed reference counting for EVP objects, but kept the
refcounting when we build with no-cached-fetch.
There is a corner case in which providers in builds that do caching may
still request non-caching by setting *no_cache = 1 in their query
operations.
OQS tripped over this here:
https://github.com/open-quantum-safe/oqs-provider/pull/787
When a provider requests no caching, we need to treat those algorithms
as though we are running in a no-cached-fetch build and still do ref
counting on them.
Teach our algorithms implementation to understand when a provider is
requesting non-caching, mark them as such and ref count only those.
Reviewed-by: Milan Broz <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
MergeDate: Thu Jul 2 14:24:13 2026
(Merged from https://github.com/openssl/openssl/pull/31782)
|
| |
|
|
|
|
|
| |
Reviewed-by: Bob Beck <[email protected]>
Reviewed-by: Nikola Pajkovsky <[email protected]>
MergeDate: Thu Jun 25 21:26:13 2026
(Merged from https://github.com/openssl/openssl/pull/31143)
|
| |
|
|
|
|
|
|
|
|
|
| |
These are guarded with "OSSL_LIBCRYPTO" to ensure the namespace
is distinct from the "OSSL_CRYPTO" guards used in include/crypto
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Nikola Pajkovsky <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
MergeDate: Wed May 6 11:35:55 2026
(Merged from https://github.com/openssl/openssl/pull/31001)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a NULL check for the uri parameter before passing it to
OPENSSL_strlcpy(), matching the guard already present in
OSSL_STORE_open_ex().
Fixes: 0a8807b4a838 "Store: API for deletion"
Reviewed-by: Frederik Wedel-Heinen <[email protected]>
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
MergeDate: Thu Apr 2 07:14:08 2026
(Merged from https://github.com/openssl/openssl/pull/30512)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make ossl_namemap_name2num() return 0 when `name` is NULL, so callers can
use a single lookup path without local NULL guards.
Fixes: aec9e7fe1693 ("Allow core_namemap to limit hashtable key sizes")
Resolves: https://scan5.scan.coverity.com/#/project-view/65138/10222?selectedIssue=1683247
Resolves: https://scan5.scan.coverity.com/#/project-view/65138/10222?selectedIssue=1683248
Resolves: https://scan5.scan.coverity.com/#/project-view/65138/10222?selectedIssue=1683249
Signed-off-by: Nikola Pajkovsky <[email protected]>
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
MergeDate: Tue Mar 10 18:29:00 2026
(Merged from https://github.com/openssl/openssl/pull/30286)
|
| |
|
|
|
|
|
| |
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Eugene Syromiatnikov <[email protected]>
MergeDate: Tue Mar 10 14:37:54 2026
Release: yes
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are still a few casts away from const where things do not actually
end up mutating the object, we'll deal with that later.
Part of #28654 and #29117
Fixes openssl/project#1781
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
MergeDate: Wed Feb 25 09:58:35 2026
(Merged from https://github.com/openssl/openssl/pull/29468)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ensure that all the source files are formatted with the current
.clang-format configuration, to avoid spurious clang-format checker
errors when arbitrary files are touched.
Complements: 1b0f21f0555c "Implementing store support for EVP_SKEY"
Signed-off-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Richard Levitte <[email protected]>
Reviewed-by: Nikola Pajkovsky <[email protected]>
MergeDate: Wed Feb 11 07:35:04 2026
(Merged from https://github.com/openssl/openssl/pull/29852)
|
| |
|
|
|
|
|
|
|
|
| |
For some reason, source reformatting didn't catch everything.
Reviewed-by: Paul Yang <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/29383)
|
| |
|
|
|
|
| |
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Simo Sorce <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/28278)
|
| |
|
|
|
|
|
| |
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Nikola Pajkovsky <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/29242)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/29305)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/29305)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Resolves: https://github.com/openssl/project/issues/1337
Signed-off-by: Milan Broz <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/29305)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Resolves: https://github.com/openssl/project/issues/1368
Signed-off-by: Milan Broz <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Eugene Syromiatnikov <[email protected]>
Reviewed-by: Norbert Pocs <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/29305)
|
| |
|
|
|
|
|
| |
Reviewed-by: Norbert Pocs <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/29246)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Use ERR_R_PASSED_NULL_PARAMETER instead.
Fixes e9e643bc580e4ba0c6f8f9b4dd2ce59397b1b786
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Tom Cosgrove <[email protected]>
Reviewed-by: Viktor Dukhovni <[email protected]>
Reviewed-by: Richard Levitte <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/29006)
|
| |
|
|
|
|
|
|
| |
Fixes #28978
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Saša Nedvědický <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/28980)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OSSL_STORE_load() called OSSL_STORE_eof() before checking if there is
cached OSSL_STORE_INFO to consider. To fix this issue, the cached info
check is moved to OSSL_STORE_eof(), as that seems to make most common
sense.
This solves an issue with PKCS#12 files, where the cached info was never
considered because the underlying file IO layer signaled that EOF is
reached.
Fixes #28010
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: David von Oheimb <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/28016)
|
| |
|
|
|
|
| |
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/27806)
|
| |
|
|
|
|
|
|
| |
and hint on using default provider
Reviewed-by: Nicola Tuveri <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/27367)
|
| |
|
|
|
|
|
|
|
|
|
| |
The provider based STORE loaders do have settable parameters, so they should
be displayed when '-verbose' is given, just like for any other list.
Out of necessity, this also introduces OSSL_STORE_LOADER_settable_ctx_params()
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/26437)
|
| |
|
|
|
|
| |
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
Release: yes
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- The decoder should consider fewer options based on
more precise tracking of the desired input type
(DER, PVK, MSBLOB), algorithm (RSA, EC, ...),
input structure (SPKI, P8, ...).
How much this affects actual use-cases is harder to estimate, we'll just
have to run before/after perf tests.
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Tim Hudson <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/26927)
|
| |
|
|
|
|
| |
Reviewed-by: Saša Nedvědický <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/26294)
|
| |
|
|
|
|
|
|
|
| |
- Also added a provider "validate" method that wraps the PCT test.
Reviewed-by: Shane Lontis <[email protected]>
Reviewed-by: Tim Hudson <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/26656)
|
| |
|
|
|
| |
Reviewed-by: Neil Horman <[email protected]>
Release: yes
|
| |
|
|
|
|
|
|
|
|
|
| |
In OpenSSL, it's actually OSSL_NELEM() in "internal/nelem.h".
Found by running the checkpatch.pl Linux script to enforce coding style.
Reviewed-by: Neil Horman <[email protected]>
Reviewed-by: David von Oheimb <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/22097)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
CLA: trivial
In the provider store API, it is not necessary to provide both open and
attach method at the same time and providing at least one of them is
enough. Adding some null pointer checks to prevent exceptions in case
of not providing both methods at the same time.
Reviewed-by: Tom Cosgrove <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/23703)
|
| |
|
|
|
|
|
|
|
| |
Signed-off-by: Jiasheng Jiang <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Todd Short <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/23955)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Add the checks for the return value of EVP_MD_CTX_get_size() before explicitly cast them to size_t to avoid the integer overflow.
Fixes: fac8673b8a ("STORE: Add the possibility to search for specific information")
Signed-off-by: Jiasheng Jiang <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Todd Short <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/23955)
|
| |
|
|
|
| |
Reviewed-by: Richard Levitte <[email protected]>
Release: yes
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some PKCS11 modules require authentication early on to be able to
preload objects, which we want to do to avoid costly roundtrips when the
HSM is actually reached over a network (Cloud HSM).
Unfortunately at open time we can't interact with the user becaue the
callbacks are only passed at object load time. later on.
This patch corrects this issue by providing a more feature rich open
call for providers.
Signed-off-by: Simo Sorce <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Richard Levitte <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/20131)
|
| |
|
|
|
|
| |
Reviewed-by: Richard Levitte <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/21901)
|
| |
|
|
|
|
|
|
| |
Found by running the checkpatch.pl Linux script to enforce coding style.
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Tomas Mraz <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/21468)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the provider's load function returned with an error, the libcrypto
error flag was only set if EOF hadn't been reached. This is troublesome,
as an error can very well occur during the last load before EOF is reached!
Also, the error flag was never reset, even though documentation specifies
that it should indicate an error in the last load (i.e. not the one before
that).
Fixes #21968
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/21976)
|
| |
|
|
|
| |
Reviewed-by: Richard Levitte <[email protected]>
Release: yes
|
| |
|
|
|
|
| |
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/21260)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a DER object with unknown contents comes all the way to
ossl_store_handle_load_result(), and it attempts to decode them as different
objects, the PKCS#12 decoding attempt would (almost) always prompt for a
passphrase, even if there isn't a MAC to verify it against in the PKCS#12
object.
This change checks if there is a MAC to verify against before attempting to
prompt for a passphrase, leading to less surprising behavior.
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Dmitry Belyavskiy <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/21197)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
partially revamped from #16712
- fall thru -> fall through
- time stamp -> timestamp
- host name -> hostname
- ipv6 -> IPv6
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/19059)
|