Remove *_get0_engine() API calls

Resolves: https://github.com/openssl/project/issues/1337

Signed-off-by: Milan Broz <gmazyland@gmail.com>

Reviewed-by: Norbert Pocs <norbertp@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/29305)
This commit is contained in:
Milan Broz
2025-11-27 09:41:57 +01:00
committed by Neil Horman
parent 197ae2f63d
commit dc62c97ca5
18 changed files with 33 additions and 96 deletions

View File

@@ -15,9 +15,6 @@
#include <stdio.h>
#include <openssl/bn.h>
#ifndef FIPS_MODULE
# include <openssl/engine.h>
#endif
#include <openssl/obj_mac.h>
#include <openssl/core_names.h>
#include "internal/cryptlib.h"
@@ -293,13 +290,6 @@ void DH_set_flags(DH *dh, int flags)
dh->flags |= flags;
}
#ifndef FIPS_MODULE
ENGINE *DH_get0_engine(DH *dh)
{
return NULL;
}
#endif /*FIPS_MODULE */
FFC_PARAMS *ossl_dh_get0_params(DH *dh)
{
return &dh->params;

View File

@@ -14,9 +14,6 @@
#include "internal/deprecated.h"
#include <openssl/bn.h>
#ifndef FIPS_MODULE
# include <openssl/engine.h>
#endif
#include "internal/cryptlib.h"
#include "internal/refcount.h"
#include "crypto/dsa.h"
@@ -98,11 +95,6 @@ void DSA_set_flags(DSA *d, int flags)
d->flags |= flags;
}
ENGINE *DSA_get0_engine(DSA *d)
{
return NULL;
}
int DSA_set_method(DSA *dsa, const DSA_METHOD *meth)
{
/*

View File

@@ -19,9 +19,6 @@
#include "ec_local.h"
#include "internal/refcount.h"
#include <openssl/err.h>
#ifndef FIPS_MODULE
# include <openssl/engine.h>
#endif
#include <openssl/self_test.h>
#include "prov/providercommon.h"
#include "prov/ecx.h"
@@ -188,11 +185,6 @@ int EC_KEY_up_ref(EC_KEY *r)
return ((i > 1) ? 1 : 0);
}
ENGINE *EC_KEY_get0_engine(const EC_KEY *eckey)
{
return NULL;
}
int EC_KEY_generate_key(EC_KEY *eckey)
{
if (eckey == NULL || eckey->group == NULL) {

View File

@@ -15,9 +15,6 @@
#include <openssl/crypto.h>
#include <openssl/core_names.h>
#ifndef FIPS_MODULE
# include <openssl/engine.h>
#endif
#include <openssl/evp.h>
#include <openssl/param_build.h>
#include "internal/cryptlib.h"
@@ -708,11 +705,6 @@ int RSA_get_version(RSA *r)
}
#ifndef FIPS_MODULE
ENGINE *RSA_get0_engine(const RSA *r)
{
return NULL;
}
int RSA_pkey_ctx_ctrl(EVP_PKEY_CTX *ctx, int optype, int cmd, int p1, void *p2)
{
/* If key type not RSA or RSA-PSS return error */

View File

@@ -50,11 +50,6 @@ OSSL_STORE_LOADER *OSSL_STORE_LOADER_new(ENGINE *e, const char *scheme)
return res;
}
const ENGINE *OSSL_STORE_LOADER_get0_engine(const OSSL_STORE_LOADER *loader)
{
return NULL;
}
const char *OSSL_STORE_LOADER_get0_scheme(const OSSL_STORE_LOADER *loader)
{
return loader->scheme;

View File

@@ -5,7 +5,7 @@
DH_get0_pqg, DH_set0_pqg, DH_get0_key, DH_set0_key,
DH_get0_p, DH_get0_q, DH_get0_g,
DH_get0_priv_key, DH_get0_pub_key,
DH_clear_flags, DH_test_flags, DH_set_flags, DH_get0_engine,
DH_clear_flags, DH_test_flags, DH_set_flags,
DH_get_length, DH_set_length - Routines for getting and setting data in a DH object
=head1 SYNOPSIS
@@ -34,8 +34,6 @@ see L<openssl_user_macros(7)>:
long DH_get_length(const DH *dh);
int DH_set_length(DH *dh, long length);
ENGINE *DH_get0_engine(DH *d);
=head1 DESCRIPTION
All of the functions described on this page are deprecated.
@@ -92,10 +90,6 @@ flags can be tested in one go. All flags that are currently set are returned, or
zero if none of the flags are set. DH_clear_flags() clears the specified flags
within the DH object.
DH_get0_engine() returns a handle to the ENGINE that has been set for this DH
object, or NULL if no such ENGINE has been set. This function is deprecated. All
engines should be replaced by providers.
The DH_get_length() and DH_set_length() functions get and set the optional
length parameter associated with this DH object. If the length is nonzero then
it is used, otherwise it is ignored. The I<length> parameter indicates the
@@ -122,9 +116,6 @@ return the respective value, or NULL if it is unset.
DH_test_flags() returns the current state of the flags in the DH object.
DH_get0_engine() returns the ENGINE set for the DH object or NULL if no ENGINE
has been set.
DH_get_length() returns the length of the secret exponent (private key) in bits,
or zero if no such length has been explicitly set.
@@ -139,6 +130,8 @@ The functions described here were added in OpenSSL 1.1.0.
All of these functions were deprecated in OpenSSL 3.0.
The DH_get0_engine() was removed in OpenSSL 4.0.
=head1 COPYRIGHT
Copyright 2016-2022 The OpenSSL Project Authors. All Rights Reserved.

View File

@@ -5,9 +5,8 @@
DSA_get0_pqg, DSA_set0_pqg, DSA_get0_key, DSA_set0_key,
DSA_get0_p, DSA_get0_q, DSA_get0_g,
DSA_get0_pub_key, DSA_get0_priv_key,
DSA_clear_flags, DSA_test_flags, DSA_set_flags,
DSA_get0_engine - Routines for getting and
setting data in a DSA object
DSA_clear_flags, DSA_test_flags, DSA_set_flags
- Routines for getting and setting data in a DSA object
=head1 SYNOPSIS
@@ -31,7 +30,6 @@ see L<openssl_user_macros(7)>:
void DSA_clear_flags(DSA *d, int flags);
int DSA_test_flags(const DSA *d, int flags);
void DSA_set_flags(DSA *d, int flags);
ENGINE *DSA_get0_engine(DSA *d);
=head1 DESCRIPTION
@@ -80,9 +78,6 @@ flags can be tested in one go. All flags that are currently set are returned, or
zero if none of the flags are set. DSA_clear_flags() clears the specified flags
within the DSA object.
DSA_get0_engine() returns a handle to the ENGINE that has been set for this DSA
object, or NULL if no such ENGINE has been set.
=head1 NOTES
Values retrieved with DSA_get0_key() are owned by the DSA object used
@@ -96,9 +91,6 @@ DSA_set0_pqg() and DSA_set0_key() return 1 on success or 0 on failure.
DSA_test_flags() returns the current state of the flags in the DSA object.
DSA_get0_engine() returns the ENGINE set for the DSA object or NULL if no ENGINE
has been set.
=head1 SEE ALSO
L<EVP_PKEY_get_bn_param(3)>,
@@ -111,6 +103,8 @@ L<DSA_sign(3)>, L<DSA_size(3)>, L<DSA_meth_new(3)>
The functions described here were added in OpenSSL 1.1.0 and deprecated in
OpenSSL 3.0.
The DSA_get0_engine() was removed in OpenSSL 4.0.
=head1 COPYRIGHT
Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.

View File

@@ -6,7 +6,7 @@ EVP_EC_gen,
EC_KEY_get_method, EC_KEY_set_method, EC_KEY_new_ex,
EC_KEY_new, EC_KEY_get_flags, EC_KEY_set_flags, EC_KEY_clear_flags,
EC_KEY_new_by_curve_name_ex, EC_KEY_new_by_curve_name, EC_KEY_free,
EC_KEY_copy, EC_KEY_dup, EC_KEY_up_ref, EC_KEY_get0_engine,
EC_KEY_copy, EC_KEY_dup, EC_KEY_up_ref,
EC_KEY_get0_group, EC_KEY_set_group, EC_KEY_get0_private_key,
EC_KEY_set_private_key, EC_KEY_get0_public_key, EC_KEY_set_public_key,
EC_KEY_get_conv_form,
@@ -39,7 +39,6 @@ see L<openssl_user_macros(7)>:
EC_KEY *EC_KEY_copy(EC_KEY *dst, const EC_KEY *src);
EC_KEY *EC_KEY_dup(const EC_KEY *src);
int EC_KEY_up_ref(EC_KEY *key);
ENGINE *EC_KEY_get0_engine(const EC_KEY *eckey);
const EC_GROUP *EC_KEY_get0_group(const EC_KEY *key);
int EC_KEY_set_group(EC_KEY *key, const EC_GROUP *group);
const BIGNUM *EC_KEY_get0_private_key(const EC_KEY *key);
@@ -114,9 +113,6 @@ EC_KEY_dup() creates a new EC_KEY object and copies I<ec_key> into it.
EC_KEY_up_ref() increments the reference count associated with the EC_KEY
object.
EC_KEY_get0_engine() returns a handle to the ENGINE that has been set for
this EC_KEY object.
EC_KEY_generate_key() generates a new public and private key for the supplied
I<eckey> object. I<eckey> must have an EC_GROUP object associated with it
before calling this function. The private key is a random integer (0 < priv_key
@@ -197,8 +193,6 @@ integer.
EC_KEY_copy() returns a pointer to the destination key, or NULL on error.
EC_KEY_get0_engine() returns a pointer to an ENGINE, or NULL if it wasn't set.
EC_KEY_up_ref(), EC_KEY_set_group(), EC_KEY_set_public_key(),
EC_KEY_precompute_mult(), EC_KEY_generate_key(), EC_KEY_check_key(),
EC_KEY_set_public_key_affine_coordinates(), EC_KEY_oct2key() and
@@ -233,6 +227,8 @@ EVP_EC_gen() was added in OpenSSL 3.0.
All other functions described here were deprecated in OpenSSL 3.0.
For replacement see L<EVP_PKEY-EC(7)>.
The EC_KEY_get0_engine() was removed in OpenSSL 4.0.
=head1 COPYRIGHT
Copyright 2013-2023 The OpenSSL Project Authors. All Rights Reserved.

View File

@@ -13,7 +13,7 @@ OSSL_STORE_LOADER_get0_description,
OSSL_STORE_LOADER_do_all_provided,
OSSL_STORE_LOADER_names_do_all,
OSSL_STORE_LOADER_CTX, OSSL_STORE_LOADER_new,
OSSL_STORE_LOADER_get0_engine, OSSL_STORE_LOADER_get0_scheme,
OSSL_STORE_LOADER_get0_scheme,
OSSL_STORE_LOADER_set_open, OSSL_STORE_LOADER_set_open_ex,
OSSL_STORE_LOADER_set_attach, OSSL_STORE_LOADER_set_ctrl,
OSSL_STORE_LOADER_set_expect, OSSL_STORE_LOADER_set_find,
@@ -60,8 +60,6 @@ hidden entirely by defining B<OPENSSL_API_COMPAT> with a suitable version value,
see L<openssl_user_macros(7)>:
OSSL_STORE_LOADER *OSSL_STORE_LOADER_new(ENGINE *e, const char *scheme);
const ENGINE *OSSL_STORE_LOADER_get0_engine(const OSSL_STORE_LOADER
*store_loader);
const char *OSSL_STORE_LOADER_get0_scheme(const OSSL_STORE_LOADER
*store_loader);
@@ -277,7 +275,6 @@ I<scheme> must I<always> be set.
Both I<e> and I<scheme> are used as is and must therefore be alive as
long as the created loader is.
OSSL_STORE_LOADER_get0_engine() returns the engine of the I<store_loader>.
OSSL_STORE_LOADER_get0_scheme() returns the scheme of the I<store_loader>.
OSSL_STORE_LOADER_set_open() sets the opener function for the
@@ -393,6 +390,8 @@ were added in OpenSSL 1.1.1, and became deprecated in OpenSSL 3.0.
OSSL_STORE_LOADER_settable_ctx_params() was added in OpenSSL 3.6.
The OSSL_STORE_LOADER_get0_engine() was removed in OpenSSL 4.0.
=head1 COPYRIGHT
Copyright 2016-2025 The OpenSSL Project Authors. All Rights Reserved.

View File

@@ -7,7 +7,7 @@ RSA_get0_factors, RSA_get0_crt_params,
RSA_get0_n, RSA_get0_e, RSA_get0_d, RSA_get0_p, RSA_get0_q,
RSA_get0_dmp1, RSA_get0_dmq1, RSA_get0_iqmp, RSA_get0_pss_params,
RSA_clear_flags,
RSA_test_flags, RSA_set_flags, RSA_get0_engine, RSA_get_multi_prime_extra_count,
RSA_test_flags, RSA_set_flags, RSA_get_multi_prime_extra_count,
RSA_get0_multi_prime_factors, RSA_get0_multi_prime_crt_params,
RSA_set0_multi_prime_params, RSA_get_version
- Routines for getting and setting data in an RSA object
@@ -41,7 +41,6 @@ see L<openssl_user_macros(7)>:
void RSA_clear_flags(RSA *r, int flags);
int RSA_test_flags(const RSA *r, int flags);
void RSA_set_flags(RSA *r, int flags);
ENGINE *RSA_get0_engine(RSA *r);
int RSA_get_multi_prime_extra_count(const RSA *r);
int RSA_get0_multi_prime_factors(const RSA *r, const BIGNUM *primes[]);
int RSA_get0_multi_prime_crt_params(const RSA *r, const BIGNUM *exps[],
@@ -118,9 +117,6 @@ flags that are currently set are returned, or zero if none of the
flags are set. RSA_clear_flags() clears the specified flags within the
RSA object.
RSA_get0_engine() returns a handle to the ENGINE that has been set for
this RSA object, or NULL if no such ENGINE has been set.
RSA_get_version() returns the version of an RSA object B<r>.
=head1 NOTES
@@ -162,9 +158,6 @@ B<RSA_ASN1_VERSION_DEFAULT> for normal two-prime RSA, as defined in RFC 8017.
RSA_test_flags() returns the current state of the flags in the RSA object.
RSA_get0_engine() returns the ENGINE set for the RSA object or NULL if no
ENGINE has been set.
=head1 SEE ALSO
L<RSA_new(3)>, L<RSA_size(3)>
@@ -182,6 +175,8 @@ Other functions described here were added in OpenSSL 1.1.0.
All of these functions were deprecated in OpenSSL 3.0.
The RSA_get0_engine() was removed in OpenSSL 4.0.
=head1 COPYRIGHT
Copyright 2016-2022 The OpenSSL Project Authors. All Rights Reserved.

View File

@@ -275,7 +275,6 @@ OSSL_DEPRECATEDIN_3_0 const BIGNUM *DH_get0_pub_key(const DH *dh);
OSSL_DEPRECATEDIN_3_0 void DH_clear_flags(DH *dh, int flags);
OSSL_DEPRECATEDIN_3_0 int DH_test_flags(const DH *dh, int flags);
OSSL_DEPRECATEDIN_3_0 void DH_set_flags(DH *dh, int flags);
OSSL_DEPRECATEDIN_3_0 ENGINE *DH_get0_engine(DH *d);
OSSL_DEPRECATEDIN_3_0 long DH_get_length(const DH *dh);
OSSL_DEPRECATEDIN_3_0 int DH_set_length(DH *dh, long length);

View File

@@ -218,7 +218,6 @@ OSSL_DEPRECATEDIN_3_0 const BIGNUM *DSA_get0_priv_key(const DSA *d);
OSSL_DEPRECATEDIN_3_0 void DSA_clear_flags(DSA *d, int flags);
OSSL_DEPRECATEDIN_3_0 int DSA_test_flags(const DSA *d, int flags);
OSSL_DEPRECATEDIN_3_0 void DSA_set_flags(DSA *d, int flags);
OSSL_DEPRECATEDIN_3_0 ENGINE *DSA_get0_engine(DSA *d);
OSSL_DEPRECATEDIN_3_0 DSA_METHOD *DSA_meth_new(const char *name, int flags);
OSSL_DEPRECATEDIN_3_0 void DSA_meth_free(DSA_METHOD *dsam);

View File

@@ -1040,12 +1040,6 @@ OSSL_DEPRECATEDIN_3_0 EC_KEY *EC_KEY_dup(const EC_KEY *src);
*/
OSSL_DEPRECATEDIN_3_0 int EC_KEY_up_ref(EC_KEY *key);
/** Returns the ENGINE object of a EC_KEY object
* \param eckey EC_KEY object
* \return the ENGINE object (possibly NULL).
*/
OSSL_DEPRECATEDIN_3_0 ENGINE *EC_KEY_get0_engine(const EC_KEY *eckey);
/** Returns the EC_GROUP object of a EC_KEY object
* \param key EC_KEY object
* \return the EC_GROUP object (possibly NULL).

View File

@@ -1173,6 +1173,22 @@ ENGINE_FUNC(int, EVP_PKEY_set1_engine, (EVP_PKEY *pkey, ENGINE *e), (pkey, e), 0
/* ENGINE *EVP_PKEY_get0_engine(const EVP_PKEY *pkey); */
ENGINE_FUNC(ENGINE *, EVP_PKEY_get0_engine, (const EVP_PKEY *pkey), (pkey), NULL)
/* ENGINE *DH_get0_engine(DH *d); */
ENGINE_FUNC(ENGINE *, DH_get0_engine, (DH *d), (d), NULL)
/* ENGINE *RSA_get0_engine(const RSA *r); */
ENGINE_FUNC(ENGINE *, RSA_get0_engine, (const RSA *r), (r), NULL)
/* ENGINE *DSA_get0_engine(DSA *d); */
ENGINE_FUNC(ENGINE *, DSA_get0_engine, (DSA *d), (d), NULL)
/* ENGINE *EC_KEY_get0_engine(const EC_KEY *eckey); */
ENGINE_FUNC(ENGINE *, EC_KEY_get0_engine, (const EC_KEY *eckey), (eckey), NULL)
/* const ENGINE *OSSL_STORE_LOADER_get0_engine(const OSSL_STORE_LOADER *loader); */
ENGINE_FUNC(const ENGINE *, OSSL_STORE_LOADER_get0_engine, (const OSSL_STORE_LOADER *loader),
(loader), NULL)
/* int RAND_set_rand_engine(ENGINE *engine); */
ENGINE_FUNC(int, RAND_set_rand_engine, (ENGINE *engine), (engine), 0)

View File

@@ -253,7 +253,6 @@ OSSL_DEPRECATEDIN_3_0 void RSA_clear_flags(RSA *r, int flags);
OSSL_DEPRECATEDIN_3_0 int RSA_test_flags(const RSA *r, int flags);
OSSL_DEPRECATEDIN_3_0 void RSA_set_flags(RSA *r, int flags);
OSSL_DEPRECATEDIN_3_0 int RSA_get_version(RSA *r);
OSSL_DEPRECATEDIN_3_0 ENGINE *RSA_get0_engine(const RSA *r);
# endif /* !OPENSSL_NO_DEPRECATED_3_0 */
# define EVP_RSA_gen(bits) \

View File

@@ -259,8 +259,6 @@ int OSSL_STORE_find(OSSL_STORE_CTX *ctx, const OSSL_STORE_SEARCH *search);
* ---------------------------------------------------
*/
typedef struct ossl_store_loader_st OSSL_STORE_LOADER;
OSSL_STORE_LOADER *OSSL_STORE_LOADER_fetch(OSSL_LIB_CTX *libctx,
const char *scheme,
const char *properties);
@@ -353,8 +351,6 @@ OSSL_DEPRECATEDIN_3_0
int OSSL_STORE_LOADER_set_close(OSSL_STORE_LOADER *loader,
OSSL_STORE_close_fn close_function);
OSSL_DEPRECATEDIN_3_0
const ENGINE *OSSL_STORE_LOADER_get0_engine(const OSSL_STORE_LOADER *loader);
OSSL_DEPRECATEDIN_3_0
const char *OSSL_STORE_LOADER_get0_scheme(const OSSL_STORE_LOADER *loader);
OSSL_DEPRECATEDIN_3_0
int OSSL_STORE_register_loader(OSSL_STORE_LOADER *loader);

View File

@@ -217,6 +217,7 @@ typedef struct ct_policy_eval_ctx_st CT_POLICY_EVAL_CTX;
typedef struct ossl_store_info_st OSSL_STORE_INFO;
typedef struct ossl_store_search_st OSSL_STORE_SEARCH;
typedef struct ossl_store_loader_st OSSL_STORE_LOADER;
typedef struct ossl_lib_ctx_st OSSL_LIB_CTX;

View File

@@ -474,7 +474,6 @@ DH_get0_pub_key ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
DH_clear_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DH
DH_test_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DH
DH_set_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DH
DH_get0_engine ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DH
DH_get_length ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DH
DH_set_length ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DH
DH_meth_new ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DH
@@ -558,7 +557,6 @@ DSA_get0_priv_key ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
DSA_clear_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DSA
DSA_test_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DSA
DSA_set_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DSA
DSA_get0_engine ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DSA
DSA_meth_new ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DSA
DSA_meth_free ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DSA
DSA_meth_dup ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,DSA
@@ -718,7 +716,6 @@ EC_KEY_free ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
EC_KEY_copy ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,EC
EC_KEY_dup ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,EC
EC_KEY_up_ref ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,EC
EC_KEY_get0_engine ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,EC
EC_KEY_get0_group ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,EC
EC_KEY_set_group ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,EC
EC_KEY_get0_private_key ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0,EC
@@ -2217,7 +2214,6 @@ RSA_clear_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
RSA_test_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
RSA_set_flags ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
RSA_get_version ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
RSA_get0_engine ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
RSA_generate_key ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_0_9_8
RSA_generate_key_ex ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
RSA_generate_multi_prime_key ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
@@ -2454,7 +2450,6 @@ OSSL_STORE_LOADER_set_load ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_set_eof ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_set_error ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_set_close ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_get0_engine ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_get0_scheme ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_register_loader ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_unregister_loader ? 4_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0