STORE: Deprecate legacy / ENGINE functions

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/12587)
master
Richard Levitte 3 years ago
parent 63f187cfed
commit a1447076be

@ -412,8 +412,11 @@ void OPENSSL_cleanup(void)
OSSL_TRACE(INIT, "OPENSSL_cleanup: engine_cleanup_int()\n");
engine_cleanup_int();
#endif
#ifndef OPENSSL_NO_DEPRECATED_3_0
OSSL_TRACE(INIT, "OPENSSL_cleanup: ossl_store_cleanup_int()\n");
ossl_store_cleanup_int();
#endif
OSSL_TRACE(INIT, "OPENSSL_cleanup: openssl_ctx_default_deinit()\n");
openssl_ctx_default_deinit();

@ -7,6 +7,9 @@
* https://www.openssl.org/source/license.html
*/
/* We need to use some STORE deprecated APIs */
#define OPENSSL_SUPPRESS_DEPRECATED
#include <stdio.h>
#include "internal/cryptlib.h"
#include <openssl/buffer.h>
@ -58,11 +61,13 @@ static EVP_PKEY *pem_read_bio_key(BIO *bp, EVP_PKEY **x,
NULL, NULL)) == NULL)
goto err;
#ifndef OPENSSL_NO_SECURE_HEAP
if (try_secure) {
# ifndef OPENSSL_NO_DEPRECATED_3_0
if (try_secure) {
int on = 1;
if (!OSSL_STORE_ctrl(ctx, OSSL_STORE_C_USE_SECMEM, &on))
goto err;
}
# endif
#endif
while (!OSSL_STORE_eof(ctx)

@ -1,4 +1,7 @@
LIBS=../../libcrypto
SOURCE[../../libcrypto]=\
store_err.c store_lib.c store_result.c store_strings.c store_meth.c \
store_init.c store_register.c
store_err.c store_lib.c store_result.c store_strings.c store_meth.c
IF[{- !$disabled{'deprecated-3.0'} -}]
SOURCE[../../libcrypto]=store_init.c store_register.c
ENDIF

@ -11,6 +11,9 @@
#include <string.h>
#include <assert.h>
/* We need to use some STORE deprecated APIs */
#define OPENSSL_SUPPRESS_DEPRECATED
#include "e_os.h"
#include <openssl/crypto.h>
@ -80,6 +83,7 @@ OSSL_STORE_open_with_libctx(const char *uri,
*/
for (i = 0; loader_ctx == NULL && i < schemes_n; i++) {
OSSL_TRACE1(STORE, "Looking up scheme %s\n", schemes[i]);
#ifndef OPENSSL_NO_DEPRECATED_3_0
if ((loader = ossl_store_get0_loader_int(schemes[i])) != NULL) {
if (loader->open_with_libctx != NULL)
loader_ctx = loader->open_with_libctx(loader, uri, libctx, propq,
@ -87,6 +91,7 @@ OSSL_STORE_open_with_libctx(const char *uri,
else
loader_ctx = loader->open(loader, uri, ui_method, ui_data);
}
#endif
if (loader == NULL
&& (fetched_loader =
OSSL_STORE_LOADER_fetch(schemes[i], libctx, propq)) != NULL) {
@ -186,6 +191,7 @@ OSSL_STORE_CTX *OSSL_STORE_open(const char *uri,
post_process, post_process_data);
}
#ifndef OPENSSL_NO_DEPRECATED_3_0
int OSSL_STORE_ctrl(OSSL_STORE_CTX *ctx, int cmd, ...)
{
va_list args;
@ -229,6 +235,7 @@ int OSSL_STORE_vctrl(OSSL_STORE_CTX *ctx, int cmd, va_list args)
*/
return 1;
}
#endif
int OSSL_STORE_expect(OSSL_STORE_CTX *ctx, int expected_type)
{
@ -333,12 +340,14 @@ int OSSL_STORE_find(OSSL_STORE_CTX *ctx, const OSSL_STORE_SEARCH *search)
OPENSSL_free(name_der);
BN_free(number);
} else {
#ifndef OPENSSL_NO_DEPRECATED_3_0
/* legacy loader section */
if (ctx->loader->find == NULL) {
ERR_raise(ERR_LIB_OSSL_STORE, OSSL_STORE_R_UNSUPPORTED_OPERATION);
return 0;
}
ret = ctx->loader->find(ctx->loader_ctx, search);
#endif
}
return ret;
@ -382,10 +391,12 @@ OSSL_STORE_INFO *OSSL_STORE_load(OSSL_STORE_CTX *ctx)
}
v = load_data.v;
}
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->fetched_loader == NULL)
v = ctx->loader->load(ctx->loader_ctx,
ctx->pwdata._.ui_method.ui_method,
ctx->pwdata._.ui_method.ui_method_data);
#endif
}
if (ctx->post_process != NULL && v != NULL) {
@ -424,8 +435,10 @@ int OSSL_STORE_error(OSSL_STORE_CTX *ctx)
if (ctx->fetched_loader != NULL)
ret = ctx->error_flag;
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->fetched_loader == NULL)
ret = ctx->loader->error(ctx->loader_ctx);
#endif
return ret;
}
@ -435,8 +448,10 @@ int OSSL_STORE_eof(OSSL_STORE_CTX *ctx)
if (ctx->fetched_loader != NULL)
ret = ctx->loader->p_eof(ctx->loader_ctx);
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->fetched_loader == NULL)
ret = ctx->loader->eof(ctx->loader_ctx);
#endif
return ret;
}
@ -450,8 +465,10 @@ static int ossl_store_close_it(OSSL_STORE_CTX *ctx)
if (ctx->fetched_loader != NULL)
ret = ctx->loader->p_close(ctx->loader_ctx);
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->fetched_loader == NULL)
ret = ctx->loader->close(ctx->loader_ctx);
#endif
sk_OSSL_STORE_INFO_pop_free(ctx->cached_info, OSSL_STORE_INFO_free);
OSSL_STORE_LOADER_free(ctx->fetched_loader);
@ -769,6 +786,7 @@ int OSSL_STORE_supports_search(OSSL_STORE_CTX *ctx, int search_type)
break;
}
}
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->fetched_loader == NULL) {
OSSL_STORE_SEARCH tmp_search;
@ -777,6 +795,7 @@ int OSSL_STORE_supports_search(OSSL_STORE_CTX *ctx, int search_type)
tmp_search.search_type = search_type;
ret = ctx->loader->find(NULL, &tmp_search);
}
#endif
return ret;
}
@ -907,9 +926,11 @@ OSSL_STORE_CTX *OSSL_STORE_attach(BIO *bp, const char *scheme,
scheme = "file";
OSSL_TRACE1(STORE, "Looking up scheme %s\n", scheme);
#ifndef OPENSSL_NO_DEPRECATED_3_0
if ((loader = ossl_store_get0_loader_int(scheme)) != NULL)
loader_ctx = loader->attach(loader, bp, libctx, propq,
ui_method, ui_data);
#endif
if (loader == NULL
&& (fetched_loader =
OSSL_STORE_LOADER_fetch(scheme, libctx, propq)) != NULL) {

@ -80,6 +80,7 @@ OSSL_STORE_LOADER *ossl_store_unregister_loader_int(const char *scheme);
/* loader stuff */
struct ossl_store_loader_st {
#ifndef OPENSSL_NO_DEPRECATED_3_0
/* Legacy stuff */
const char *scheme;
ENGINE *engine;
@ -93,6 +94,7 @@ struct ossl_store_loader_st {
OSSL_STORE_error_fn error;
OSSL_STORE_close_fn close;
OSSL_STORE_open_with_libctx_fn open_with_libctx;
#endif
/* Provider stuff */
OSSL_PROVIDER *prov;
@ -116,6 +118,11 @@ DEFINE_LHASH_OF(OSSL_STORE_LOADER);
const OSSL_STORE_LOADER *ossl_store_get0_loader_int(const char *scheme);
void ossl_store_destroy_loaders_int(void);
#ifdef OPENSSL_NO_DEPRECATED_3_0
/* struct ossl_store_loader_ctx_st is defined differently by each loader */
typedef struct ossl_store_loader_ctx_st OSSL_STORE_LOADER_CTX;
#endif
/*-
* OSSL_STORE_CTX stuff
* ---------------------

@ -52,8 +52,9 @@ unregister STORE loaders for different URI schemes
void (*fn)(const char *name, void *data),
void *data);
Legacy functions, still present to support B<OSSL_STORE_LOADER>s provided
by B<ENGINE>:
Deprecated since OpenSSL 3.0, can be 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
@ -146,11 +147,11 @@ I<data> as arguments.
OSSL_STORE_LOADER_names_do_all() traverses all names for the given
I<loader>, and calls I<fn> with each name and I<data>.
=head2 Legacy Types and Functions
=head2 Legacy Types and Functions (deprecated)
These functions help applications and engines to create loaders for
schemes they support. These are all discouraged in favour of provider
implementations, see L<provider-storemgmt(7)>.
schemes they support. These are all deprecated and discouraged in favour of
provider implementations, see L<provider-storemgmt(7)>.
B<OSSL_STORE_LOADER_CTX> is a type template, to be defined by each loader
using C<struct ossl_store_loader_ctx_st { ... }>.
@ -366,7 +367,7 @@ OSSL_STORE_LOADER_set_eof(), OSSL_STORE_LOADER_set_close(),
OSSL_STORE_LOADER_free(), OSSL_STORE_register_loader(),
OSSL_STORE_unregister_loader(), OSSL_STORE_open_fn(), OSSL_STORE_ctrl_fn(),
OSSL_STORE_load_fn(), OSSL_STORE_eof_fn() and OSSL_STORE_close_fn()
were added in OpenSSL 1.1.1.
were added in OpenSSL 1.1.1, and became deprecated in OpenSSL 3.0.
=head1 COPYRIGHT

@ -139,27 +139,27 @@ OSSL_STORE_SEARCH_by_name(),
OSSL_STORE_SEARCH_by_issuer_serial(),
OSSL_STORE_SEARCH_by_key_fingerprint(),
and OSSL_STORE_SEARCH_by_alias()
return a B<OSSL_STORE_SEARCH> pointer on success, or B<NULL> on failure.
return a B<OSSL_STORE_SEARCH> pointer on success, or NULL on failure.
OSSL_STORE_SEARCH_get_type() returns the criterion type of the given
B<OSSL_STORE_SEARCH>.
There is no error value.
OSSL_STORE_SEARCH_get0_name() returns a B<X509_NAME> pointer on success,
or B<NULL> when the given B<OSSL_STORE_SEARCH> was of a different type.
or NULL when the given B<OSSL_STORE_SEARCH> was of a different type.
OSSL_STORE_SEARCH_get0_serial() returns a B<ASN1_INTEGER> pointer on success,
or B<NULL> when the given B<OSSL_STORE_SEARCH> was of a different type.
or NULL when the given B<OSSL_STORE_SEARCH> was of a different type.
OSSL_STORE_SEARCH_get0_bytes() returns a B<const unsigned char> pointer and
sets B<*length> to the strings length on success, or B<NULL> when the given
sets I<*length> to the strings length on success, or NULL when the given
B<OSSL_STORE_SEARCH> was of a different type.
OSSL_STORE_SEARCH_get0_string() returns a B<const char> pointer on success,
or B<NULL> when the given B<OSSL_STORE_SEARCH> was of a different type.
or NULL when the given B<OSSL_STORE_SEARCH> was of a different type.
OSSL_STORE_SEARCH_get0_digest() returns a B<const EVP_MD> pointer.
B<NULL> is a valid value and means that the store loader default will
NULL is a valid value and means that the store loader default will
be used when applicable.
=head1 SEE ALSO

@ -27,18 +27,23 @@ OSSL_STORE_error, OSSL_STORE_close
const UI_METHOD *ui_method, void *ui_data,
OSSL_STORE_post_process_info_fn post_process,
void *post_process_data);
int OSSL_STORE_ctrl(OSSL_STORE_CTX *ctx, int cmd, ... /* args */);
OSSL_STORE_INFO *OSSL_STORE_load(OSSL_STORE_CTX *ctx);
int OSSL_STORE_eof(OSSL_STORE_CTX *ctx);
int OSSL_STORE_error(OSSL_STORE_CTX *ctx);
int OSSL_STORE_close(OSSL_STORE_CTX *ctx);
Deprecated since OpenSSL 3.0, can be hidden entirely by defining
B<OPENSSL_API_COMPAT> with a suitable version value, see
L<openssl_user_macros(7)>:
int OSSL_STORE_ctrl(OSSL_STORE_CTX *ctx, int cmd, ... /* args */);
=head1 DESCRIPTION
These functions help the application to fetch supported objects (see
L<OSSL_STORE_INFO(3)/SUPPORTED OBJECTS> for information on which those are)
from a given URI (see L</SUPPORTED SCHEMES> for more information on
the supported URI schemes).
from a given URI.
The general method to do so is to "open" the URI using OSSL_STORE_open(),
read each available and supported object using OSSL_STORE_load() as long as
OSSL_STORE_eof() hasn't been reached, and finish it off with OSSL_STORE_close().
@ -110,12 +115,6 @@ by OSSL_STORE_open() and frees all other information that was stored in the
B<OSSL_STORE_CTX>, as well as the B<OSSL_STORE_CTX> itself.
If I<ctx> is NULL it does nothing.
=head1 SUPPORTED SCHEMES
The basic supported scheme is B<file:>.
Any other scheme can be added dynamically, using
OSSL_STORE_register_loader().
=head1 NOTES
A string without a scheme prefix (that is, a non-URI string) is
@ -171,6 +170,8 @@ was introduced in OpenSSL 1.1.1h.
OSSL_STORE_open_with_libctx() was added in OpenSSL 3.0.
OSSL_STORE_ctrl() and OSSL_STORE_vctrl() were deprecated in OpenSSL 3.0.
=head1 COPYRIGHT
Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved.

@ -69,8 +69,12 @@ OSSL_STORE_open_with_libctx(const char *uri,
* determine which loader is used), except for common commands (see below).
* Each command takes different arguments.
*/
int OSSL_STORE_ctrl(OSSL_STORE_CTX *ctx, int cmd, ... /* args */);
int OSSL_STORE_vctrl(OSSL_STORE_CTX *ctx, int cmd, va_list args);
DEPRECATEDIN_3_0(int OSSL_STORE_ctrl(OSSL_STORE_CTX *ctx, int cmd,
... /* args */))
DEPRECATEDIN_3_0(int OSSL_STORE_vctrl(OSSL_STORE_CTX *ctx, int cmd,
va_list args))
# ifndef OPENSSL_NO_DEPRECATED_3_0
/*
* Common ctrl commands that different loaders may choose to support.
@ -80,6 +84,8 @@ int OSSL_STORE_vctrl(OSSL_STORE_CTX *ctx, int cmd, va_list args);
/* Where custom commands start */
# define OSSL_STORE_C_CUSTOM_START 100
# endif
/*
* Read one data item (a key, a cert, a CRL) that is supported by the OSSL_STORE
* functionality, given a context.
@ -271,6 +277,8 @@ void OSSL_STORE_LOADER_names_do_all(const OSSL_STORE_LOADER *loader,
* scheme.
*/
# ifndef OPENSSL_NO_DEPRECATED_3_0
/* struct ossl_store_loader_ctx_st is defined differently by each loader */
typedef struct ossl_store_loader_ctx_st OSSL_STORE_LOADER_CTX;
typedef OSSL_STORE_LOADER_CTX *(*OSSL_STORE_open_fn)
@ -297,42 +305,58 @@ typedef int (*OSSL_STORE_eof_fn)(OSSL_STORE_LOADER_CTX *ctx);
typedef int (*OSSL_STORE_error_fn)(OSSL_STORE_LOADER_CTX *ctx);
typedef int (*OSSL_STORE_close_fn)(OSSL_STORE_LOADER_CTX *ctx);
OSSL_STORE_LOADER *OSSL_STORE_LOADER_new(ENGINE *e, const char *scheme);
int OSSL_STORE_LOADER_set_open(OSSL_STORE_LOADER *loader,
OSSL_STORE_open_fn open_function);
int OSSL_STORE_LOADER_set_open_with_libctx
(OSSL_STORE_LOADER *loader,
OSSL_STORE_open_with_libctx_fn open_with_libctx_function);
int OSSL_STORE_LOADER_set_attach(OSSL_STORE_LOADER *loader,
OSSL_STORE_attach_fn attach_function);
int OSSL_STORE_LOADER_set_ctrl(OSSL_STORE_LOADER *loader,
OSSL_STORE_ctrl_fn ctrl_function);
int OSSL_STORE_LOADER_set_expect(OSSL_STORE_LOADER *loader,
OSSL_STORE_expect_fn expect_function);
int OSSL_STORE_LOADER_set_find(OSSL_STORE_LOADER *loader,
OSSL_STORE_find_fn find_function);
int OSSL_STORE_LOADER_set_load(OSSL_STORE_LOADER *loader,
OSSL_STORE_load_fn load_function);
int OSSL_STORE_LOADER_set_eof(OSSL_STORE_LOADER *loader,
OSSL_STORE_eof_fn eof_function);
int OSSL_STORE_LOADER_set_error(OSSL_STORE_LOADER *loader,
OSSL_STORE_error_fn error_function);
int OSSL_STORE_LOADER_set_close(OSSL_STORE_LOADER *loader,
OSSL_STORE_close_fn close_function);
const ENGINE *OSSL_STORE_LOADER_get0_engine(const OSSL_STORE_LOADER *loader);
const char * OSSL_STORE_LOADER_get0_scheme(const OSSL_STORE_LOADER *loader);
int OSSL_STORE_register_loader(OSSL_STORE_LOADER *loader);
OSSL_STORE_LOADER *OSSL_STORE_unregister_loader(const char *scheme);
# endif
DEPRECATEDIN_3_0(OSSL_STORE_LOADER *OSSL_STORE_LOADER_new
(ENGINE *e, const char *scheme))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_open
(OSSL_STORE_LOADER *loader,
OSSL_STORE_open_fn open_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_open_with_libctx
(OSSL_STORE_LOADER *loader,
OSSL_STORE_open_with_libctx_fn open_with_libctx_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_attach
(OSSL_STORE_LOADER *loader,
OSSL_STORE_attach_fn attach_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_ctrl
(OSSL_STORE_LOADER *loader,
OSSL_STORE_ctrl_fn ctrl_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_expect
(OSSL_STORE_LOADER *loader,
OSSL_STORE_expect_fn expect_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_find
(OSSL_STORE_LOADER *loader,
OSSL_STORE_find_fn find_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_load
(OSSL_STORE_LOADER *loader,
OSSL_STORE_load_fn load_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_eof
(OSSL_STORE_LOADER *loader,
OSSL_STORE_eof_fn eof_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_error
(OSSL_STORE_LOADER *loader,
OSSL_STORE_error_fn error_function))
DEPRECATEDIN_3_0(int OSSL_STORE_LOADER_set_close
(OSSL_STORE_LOADER *loader,
OSSL_STORE_close_fn close_function))
DEPRECATEDIN_3_0(const ENGINE *OSSL_STORE_LOADER_get0_engine
(const OSSL_STORE_LOADER *loader))
DEPRECATEDIN_3_0(const char * OSSL_STORE_LOADER_get0_scheme
(const OSSL_STORE_LOADER *loader))
DEPRECATEDIN_3_0(int OSSL_STORE_register_loader(OSSL_STORE_LOADER *loader))
DEPRECATEDIN_3_0(OSSL_STORE_LOADER *OSSL_STORE_unregister_loader
(const char *scheme))
/*-
* Functions to list STORE loaders
* -------------------------------
*/
int OSSL_STORE_do_all_loaders(void (*do_function) (const OSSL_STORE_LOADER
*loader, void *do_arg),
void *do_arg);
DEPRECATEDIN_3_0(int OSSL_STORE_do_all_loaders
(void (*do_function)(const OSSL_STORE_LOADER *loader,
void *do_arg),
void *do_arg))
# ifdef __cplusplus
}

@ -4154,18 +4154,18 @@ ERR_load_strings_const 4242 3_0_0 EXIST::FUNCTION:
ASN1_TIME_to_tm 4243 3_0_0 EXIST::FUNCTION:
ASN1_TIME_set_string_X509 4244 3_0_0 EXIST::FUNCTION:
OCSP_resp_get1_id 4245 3_0_0 EXIST::FUNCTION:OCSP
OSSL_STORE_register_loader 4246 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_error 4247 3_0_0 EXIST::FUNCTION:
OSSL_STORE_register_loader 4246 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_set_error 4247 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_INFO_get0_PKEY 4248 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_get_type 4249 3_0_0 EXIST::FUNCTION:
ERR_load_OSSL_STORE_strings 4250 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_free 4251 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_get1_PKEY 4252 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_free 4253 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_eof 4255 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_new 4256 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_eof 4255 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_new 4256 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_INFO_get0_CERT 4257 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_close 4258 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_close 4258 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_INFO_new_PARAMS 4259 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_new_PKEY 4260 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_get1_PARAMS 4261 3_0_0 EXIST::FUNCTION:
@ -4175,26 +4175,26 @@ OSSL_STORE_INFO_get1_CERT 4264 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_get0_PARAMS 4265 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_type_string 4266 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_get1_NAME 4267 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_load 4268 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_get0_scheme 4269 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_load 4268 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_get0_scheme 4269 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_open 4270 3_0_0 EXIST::FUNCTION:
OSSL_STORE_close 4271 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_new_CERT 4272 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_get0_CRL 4273 3_0_0 EXIST::FUNCTION:
OSSL_STORE_load 4274 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_get0_NAME 4275 3_0_0 EXIST::FUNCTION:
OSSL_STORE_unregister_loader 4276 3_0_0 EXIST::FUNCTION:
OSSL_STORE_unregister_loader 4276 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_INFO_new_CRL 4277 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_new_NAME 4278 3_0_0 EXIST::FUNCTION:
OSSL_STORE_eof 4279 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_open 4280 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_ctrl 4281 3_0_0 EXIST::FUNCTION:
OSSL_STORE_ctrl 4282 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_open 4280 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_set_ctrl 4281 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_ctrl 4282 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_INFO_get0_NAME_description 4283 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_set0_NAME_description 4284 3_0_0 EXIST::FUNCTION:
OSSL_STORE_INFO_get1_NAME_description 4285 3_0_0 EXIST::FUNCTION:
OSSL_STORE_do_all_loaders 4286 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_get0_engine 4287 3_0_0 EXIST::FUNCTION:
OSSL_STORE_do_all_loaders 4286 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_get0_engine 4287 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OPENSSL_fork_prepare 4288 3_0_0 EXIST:UNIX:FUNCTION:
OPENSSL_fork_parent 4289 3_0_0 EXIST:UNIX:FUNCTION:
OPENSSL_fork_child 4290 3_0_0 EXIST:UNIX:FUNCTION:
@ -4333,10 +4333,10 @@ EVP_sha512_256 4428 3_0_0 EXIST::FUNCTION:
EVP_sha512_224 4429 3_0_0 EXIST::FUNCTION:
OCSP_basic_sign_ctx 4430 3_0_0 EXIST::FUNCTION:OCSP
RAND_DRBG_bytes 4431 3_0_0 NOEXIST::FUNCTION:
OSSL_STORE_vctrl 4433 3_0_0 EXIST::FUNCTION:
OSSL_STORE_vctrl 4433 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_SEARCH_by_alias 4434 3_0_0 EXIST::FUNCTION:
BIO_bind 4435 3_0_0 EXIST::FUNCTION:SOCK
OSSL_STORE_LOADER_set_expect 4436 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_expect 4436 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_expect 4437 3_0_0 EXIST::FUNCTION:
OSSL_STORE_SEARCH_by_key_fingerprint 4438 3_0_0 EXIST::FUNCTION:
OSSL_STORE_SEARCH_get0_serial 4439 3_0_0 EXIST::FUNCTION:
@ -4349,7 +4349,7 @@ OSSL_STORE_SEARCH_get0_string 4445 3_0_0 EXIST::FUNCTION:
OSSL_STORE_SEARCH_by_issuer_serial 4446 3_0_0 EXIST::FUNCTION:
OSSL_STORE_SEARCH_get0_name 4447 3_0_0 EXIST::FUNCTION:
X509_get0_authority_key_id 4448 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_find 4449 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_find 4449 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_SEARCH_free 4450 3_0_0 EXIST::FUNCTION:
OSSL_STORE_SEARCH_get0_digest 4451 3_0_0 EXIST::FUNCTION:
RAND_DRBG_set_reseed_defaults 4452 3_0_0 NOEXIST::FUNCTION:
@ -5126,7 +5126,7 @@ OSSL_PARAM_construct_time_t ? 3_0_0 EXIST::FUNCTION:
OSSL_PARAM_get_time_t ? 3_0_0 EXIST::FUNCTION:
OSSL_PARAM_set_time_t ? 3_0_0 EXIST::FUNCTION:
OSSL_STORE_attach ? 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_attach ? 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_attach ? 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
EVP_PKEY_CTX_set_rsa_pss_keygen_saltlen ? 3_0_0 EXIST::FUNCTION:RSA
EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md ? 3_0_0 EXIST::FUNCTION:RSA
EVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md_name ? 3_0_0 EXIST::FUNCTION:RSA
@ -5272,7 +5272,7 @@ PEM_read_bio_PUBKEY_ex ? 3_0_0 EXIST::FUNCTION:
PEM_read_PUBKEY_ex ? 3_0_0 EXIST::FUNCTION:STDIO
PEM_read_bio_Parameters_ex ? 3_0_0 EXIST::FUNCTION:
EC_GROUP_new_from_params ? 3_0_0 EXIST::FUNCTION:EC
OSSL_STORE_LOADER_set_open_with_libctx ? 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_set_open_with_libctx ? 3_0_0 EXIST::FUNCTION:DEPRECATEDIN_3_0
OSSL_STORE_LOADER_fetch ? 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_up_ref ? 3_0_0 EXIST::FUNCTION:
OSSL_STORE_LOADER_provider ? 3_0_0 EXIST::FUNCTION:

Loading…
Cancel
Save