diff options
author | Neil Horman <nhorman@openssl.org> | 2023-12-20 10:01:17 -0500 |
---|---|---|
committer | Neil Horman <nhorman@openssl.org> | 2024-01-01 13:28:36 -0500 |
commit | 0f973b9a9bbef456f81bfca0f7c27bd5e19e2c40 (patch) | |
tree | 14ff956560942b20306bb16e88dd7176f04c5e42 /doc | |
parent | 40346e8377bc65812e8159d831ae137911d6b237 (diff) |
gate calling of evp_method_id on having a non-zero name id
If a name is passed to EVP_<OBJ>_fetch of the form:
name1:name2:name3
The names are parsed on the separator ':' and added to the store, but
during the lookup in inner_evp_generic_fetch, the subsequent search of
the store uses the full name1:name2:name3 string, which fails lookup,
and causes subsequent assertion failures in evp_method_id.
instead catch the failure in inner_evp_generic_fetch and return an error
code if the name_id against a colon separated list of names fails. This
provides a graceful error return path without asserts, and leaves room
for a future feature in which such formatted names can be parsed and
searched for iteratively
Add a simple test to verify that providing a colon separated name
results in an error indicating an invalid lookup.
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Todd Short <todd.short@me.com>
(Merged from https://github.com/openssl/openssl/pull/23110)
(cherry picked from commit 94be985cbcc1f0a5cf4f172d4a8d06c5c623122b)
Diffstat (limited to 'doc')
-rw-r--r-- | doc/man7/ossl-guide-libcrypto-introduction.pod | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/doc/man7/ossl-guide-libcrypto-introduction.pod b/doc/man7/ossl-guide-libcrypto-introduction.pod index 719f947487..33451b4873 100644 --- a/doc/man7/ossl-guide-libcrypto-introduction.pod +++ b/doc/man7/ossl-guide-libcrypto-introduction.pod @@ -88,6 +88,10 @@ L<OSSL_PROVIDER-FIPS(7)/OPERATIONS AND ALGORITHMS>, L<OSSL_PROVIDER-legacy(7)/OPERATIONS AND ALGORITHMS> and L<OSSL_PROVIDER-base(7)/OPERATIONS AND ALGORITHMS>. +Note, while providers may register algorithms against a list of names using a +string with a colon separated list of names, fetching algorithms using that +format is currently unsupported. + =item A property query string The property query string used to guide selection of the algorithm |