<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openssl/crypto/encode_decode/decoder_pkey.c, branch openssl-3.3.1</title>
<subtitle>TLS/SSL and crypto library.</subtitle>
<id>http://git.bktus.com/gpgfrontend/openssl/atom?h=openssl-3.3.1</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/openssl/atom?h=openssl-3.3.1'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/'/>
<updated>2023-12-06T12:59:13Z</updated>
<entry>
<title>ossl_decoder_cache_flush(): Do not raise an error if there is no cache</title>
<updated>2023-12-06T12:59:13Z</updated>
<author>
<name>Tomas Mraz</name>
<email>tomas@openssl.org</email>
</author>
<published>2023-12-04T17:01:28Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=0541fa7802cf0c3a9b28d126066c909736fc5ec8'/>
<id>urn:sha1:0541fa7802cf0c3a9b28d126066c909736fc5ec8</id>
<content type='text'>
This function can be called during OPENSSL_cleanup() when
the cache was already flushed and deallocated.

Fixes #22939

Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Matt Caswell &lt;matt@openssl.org&gt;
(Merged from https://github.com/openssl/openssl/pull/22941)
</content>
</entry>
<entry>
<title>Copyright year updates</title>
<updated>2023-09-07T08:59:15Z</updated>
<author>
<name>Matt Caswell</name>
<email>matt@openssl.org</email>
</author>
<published>2023-09-07T08:59:15Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=da1c088f599af3755aaeed1c447a39621ef12e1f'/>
<id>urn:sha1:da1c088f599af3755aaeed1c447a39621ef12e1f</id>
<content type='text'>
Reviewed-by: Richard Levitte &lt;levitte@openssl.org&gt;
Release: yes
</content>
</entry>
<entry>
<title>Fix a leak in an error path when duplicating an OSSL_DECODER_CTX.</title>
<updated>2023-08-17T07:06:43Z</updated>
<author>
<name>Matt Caswell</name>
<email>matt@openssl.org</email>
</author>
<published>2023-08-15T14:05:38Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=e16c0103083af676af8c5564bb21585d4574f992'/>
<id>urn:sha1:e16c0103083af676af8c5564bb21585d4574f992</id>
<content type='text'>
Make sure we free process_data_dest if it is not actually used.

Found by the reproducible error patch in #21668

Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
Reviewed-by: Tom Cosgrove &lt;tom.cosgrove@arm.com&gt;
Reviewed-by: Hugo Landau &lt;hlandau@openssl.org&gt;
(Merged from https://github.com/openssl/openssl/pull/21741)
</content>
</entry>
<entry>
<title>Fix decoders so that they use the passed in propq.</title>
<updated>2023-08-16T16:02:51Z</updated>
<author>
<name>slontis</name>
<email>shane.lontis@oracle.com</email>
</author>
<published>2023-06-16T06:40:06Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=39ed7636e0d8a90512e7ccb811cd0bfcb7a79650'/>
<id>urn:sha1:39ed7636e0d8a90512e7ccb811cd0bfcb7a79650</id>
<content type='text'>
Fixes #21198

decoder objects were setting propq as NULL.
Added a set_ctx/settable_ctx to all decoders that should supply
a property query parameter to internal functions.

Reviewed-by: Dmitry Belyavskiy &lt;beldmit@gmail.com&gt;
Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
(Merged from https://github.com/openssl/openssl/pull/21219)
</content>
</entry>
<entry>
<title>Fix a leak in an error path in OSSL_DECODER_CTX_new_for_pkey()</title>
<updated>2023-08-15T13:50:37Z</updated>
<author>
<name>Matt Caswell</name>
<email>matt@openssl.org</email>
</author>
<published>2023-08-11T10:22:02Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=3d254b31344e82b8f10fda8bab196757a377eb63'/>
<id>urn:sha1:3d254b31344e82b8f10fda8bab196757a377eb63</id>
<content type='text'>
Found via the reproducible error injection in #21668

Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
Reviewed-by: Tom Cosgrove &lt;tom.cosgrove@arm.com&gt;
(Merged from https://github.com/openssl/openssl/pull/21723)
</content>
</entry>
<entry>
<title>Remove include/internal/decoder.h, as it's superfluous</title>
<updated>2023-08-15T13:23:16Z</updated>
<author>
<name>Richard Levitte</name>
<email>levitte@openssl.org</email>
</author>
<published>2023-08-14T10:38:44Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=98d81174d3763053b32b8cfd7225acd0a111d456'/>
<id>urn:sha1:98d81174d3763053b32b8cfd7225acd0a111d456</id>
<content type='text'>
The routines declared in there are entirely libcrypto internal, so
include/crypto/decoder.h is better suited for them.

Reviewed-by: Matt Caswell &lt;matt@openssl.org&gt;
Reviewed-by: Hugo Landau &lt;hlandau@openssl.org&gt;
Reviewed-by: Dmitry Belyavskiy &lt;beldmit@gmail.com&gt;
(Merged from https://github.com/openssl/openssl/pull/21733)
</content>
</entry>
<entry>
<title>When exporting/importing decoded keys do not use 0 as selection</title>
<updated>2023-08-04T14:09:44Z</updated>
<author>
<name>Tomas Mraz</name>
<email>tomas@openssl.org</email>
</author>
<published>2023-07-21T15:40:31Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=2acb0d363c0032b5b97c4f6596609f40bd7d842f'/>
<id>urn:sha1:2acb0d363c0032b5b97c4f6596609f40bd7d842f</id>
<content type='text'>
When decoding 0 as the selection means to decode anything
you get.

However when exporting and then importing the key data 0 as
selection is not meaningful.
So we set it to OSSL_KEYMGMT_SELECT_ALL to make the export/import
function export/import everything that we have decoded.

Fixes #21493

Reviewed-by: Matt Caswell &lt;matt@openssl.org&gt;
Reviewed-by: Paul Dale &lt;pauli@openssl.org&gt;
Reviewed-by: Todd Short &lt;todd.short@me.com&gt;
(Merged from https://github.com/openssl/openssl/pull/21519)
</content>
</entry>
<entry>
<title>Optimise PKEY decoders</title>
<updated>2023-07-16T22:12:06Z</updated>
<author>
<name>Matt Caswell</name>
<email>matt@openssl.org</email>
</author>
<published>2023-07-10T16:41:06Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=32d3c3abf3b74df1d9ebe562ba90f4dc3bdf2d4f'/>
<id>urn:sha1:32d3c3abf3b74df1d9ebe562ba90f4dc3bdf2d4f</id>
<content type='text'>
The most expensive part of using a PKEY decoder is the
OSSL_DECODER_CTX_new_for_pkey() call. This builds up all of the decoder
chains, which is a complex and time consuming operation. However, if no
new providers have been loaded/unloaded since the last time it was called
we can expect the same results for the same parameters. Note that this
operation takes place *before* we event parse the data for decoding so it
is not dependent on the parsed data at all.

We introduce a cache for OSSL_DECODER_CTX objects. If we have been called
with the same parameters then we just duplicate an existing
OSSL_DECODER_CTX. This should be significantly faster than creating a new
one every time.

Partially addressed the issue in #15199

Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
Reviewed-by: Paul Dale &lt;pauli@openssl.org&gt;
(Merged from https://github.com/openssl/openssl/pull/21426)
</content>
</entry>
<entry>
<title>Stop raising ERR_R_MALLOC_FAILURE in most places</title>
<updated>2022-10-05T12:02:03Z</updated>
<author>
<name>Richard Levitte</name>
<email>levitte@openssl.org</email>
</author>
<published>2022-09-29T11:57:34Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=e077455e9e57ed4ee4676996b4a9aa11df6327a6'/>
<id>urn:sha1:e077455e9e57ed4ee4676996b4a9aa11df6327a6</id>
<content type='text'>
Since OPENSSL_malloc() and friends report ERR_R_MALLOC_FAILURE, and
at least handle the file name and line number they are called from,
there's no need to report ERR_R_MALLOC_FAILURE where they are called
directly, or when SSLfatal() and RLAYERfatal() is used, the reason
`ERR_R_MALLOC_FAILURE` is changed to `ERR_R_CRYPTO_LIB`.

There were a number of places where `ERR_R_MALLOC_FAILURE` was reported
even though it was a function from a different sub-system that was
called.  Those places are changed to report ERR_R_{lib}_LIB, where
{lib} is the name of that sub-system.
Some of them are tricky to get right, as we have a lot of functions
that belong in the ASN1 sub-system, and all the `sk_` calls or from
the CRYPTO sub-system.

Some extra adaptation was necessary where there were custom OPENSSL_malloc()
wrappers, and some bugs are fixed alongside these changes.

Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
Reviewed-by: Hugo Landau &lt;hlandau@openssl.org&gt;
(Merged from https://github.com/openssl/openssl/pull/19301)
</content>
</entry>
<entry>
<title>Update copyright year</title>
<updated>2022-05-03T12:34:51Z</updated>
<author>
<name>Matt Caswell</name>
<email>matt@openssl.org</email>
</author>
<published>2022-05-03T10:52:38Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=fecb3aae22aeda493f348739ebf7943071ecdbe1'/>
<id>urn:sha1:fecb3aae22aeda493f348739ebf7943071ecdbe1</id>
<content type='text'>
Reviewed-by: Tomas Mraz &lt;tomas@openssl.org&gt;
Release: yes
</content>
</entry>
</feed>
