From: Dr. Matthias St. Pierre Date: Sat, 20 Jun 2020 23:21:19 +0000 (+0200) Subject: Rename -> X-Git-Tag: openssl-3.0.0-alpha4~6 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=23c48d94d4d34eedc15fa65e0fa0e38a6137e09f;p=oweals%2Fopenssl.git Rename -> Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/12222) --- diff --git a/apps/provider.c b/apps/provider.c index d1a1ce7e4f..83fb2f3aee 100644 --- a/apps/provider.c +++ b/apps/provider.c @@ -18,7 +18,7 @@ #include #include #include -#include +#include DEFINE_STACK_OF_CSTRING() diff --git a/crypto/core_algorithm.c b/crypto/core_algorithm.c index f2e0e06fa8..b035ecfbb4 100644 --- a/crypto/core_algorithm.c +++ b/crypto/core_algorithm.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include "internal/core.h" #include "internal/property.h" #include "internal/provider.h" diff --git a/crypto/evp/evp_local.h b/crypto/evp/evp_local.h index 132534464f..4138ad8d95 100644 --- a/crypto/evp/evp_local.h +++ b/crypto/evp/evp_local.h @@ -9,7 +9,7 @@ /* EVP_MD_CTX related stuff */ -#include +#include #include "internal/refcount.h" #define EVP_CTRL_RET_UNSUPPORTED -1 diff --git a/crypto/evp/kdf_meth.c b/crypto/evp/kdf_meth.c index 219dbdfa07..a328c97c08 100644 --- a/crypto/evp/kdf_meth.c +++ b/crypto/evp/kdf_meth.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include "crypto/evp.h" #include "internal/provider.h" diff --git a/crypto/evp/keymgmt_meth.c b/crypto/evp/keymgmt_meth.c index ab5e00dfba..55dcae73e3 100644 --- a/crypto/evp/keymgmt_meth.c +++ b/crypto/evp/keymgmt_meth.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include #include "internal/provider.h" diff --git a/crypto/evp/mac_meth.c b/crypto/evp/mac_meth.c index b1fadb6ceb..c22ebd335f 100644 --- a/crypto/evp/mac_meth.c +++ b/crypto/evp/mac_meth.c @@ -1,7 +1,7 @@ #include #include #include -#include +#include #include "crypto/evp.h" #include "internal/provider.h" #include "evp_local.h" diff --git a/crypto/initthread.c b/crypto/initthread.c index a97cf359af..23b34966a5 100644 --- a/crypto/initthread.c +++ b/crypto/initthread.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include "crypto/cryptlib.h" #include "prov/providercommon.h" #include "internal/thread_once.h" diff --git a/crypto/provider_core.c b/crypto/provider_core.c index cfaa09ff7b..20319b7417 100644 --- a/crypto/provider_core.c +++ b/crypto/provider_core.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include #include diff --git a/crypto/serializer/serializer_local.h b/crypto/serializer/serializer_local.h index 44578448fc..121616d24a 100644 --- a/crypto/serializer/serializer_local.h +++ b/crypto/serializer/serializer_local.h @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include "internal/cryptlib.h" #include "internal/refcount.h" diff --git a/crypto/serializer/serializer_meth.c b/crypto/serializer/serializer_meth.c index e3e77c542a..b95bd14a51 100644 --- a/crypto/serializer/serializer_meth.c +++ b/crypto/serializer/serializer_meth.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include #include "internal/core.h" diff --git a/doc/internal/man3/evp_generic_fetch.pod b/doc/internal/man3/evp_generic_fetch.pod index 4cff97def8..4d2f6bdd69 100644 --- a/doc/internal/man3/evp_generic_fetch.pod +++ b/doc/internal/man3/evp_generic_fetch.pod @@ -78,7 +78,7 @@ This is a short example of the fictitious EVP API and operation called B. To begin with, let's assume something like this in -F: +F: #define OSSL_OP_FOO 100 diff --git a/doc/man7/OSSL_PROVIDER-FIPS.pod b/doc/man7/OSSL_PROVIDER-FIPS.pod index 1da465f47b..dd4d21f7cc 100644 --- a/doc/man7/OSSL_PROVIDER-FIPS.pod +++ b/doc/man7/OSSL_PROVIDER-FIPS.pod @@ -330,7 +330,7 @@ L, L, L, L, -L, +L, L =head1 HISTORY diff --git a/doc/man7/OSSL_PROVIDER-default.pod b/doc/man7/OSSL_PROVIDER-default.pod index 91b02c5e67..d9a51dce00 100644 --- a/doc/man7/OSSL_PROVIDER-default.pod +++ b/doc/man7/OSSL_PROVIDER-default.pod @@ -214,7 +214,7 @@ provider. =head1 SEE ALSO -L, L, L +L, L, L =head1 COPYRIGHT diff --git a/doc/man7/OSSL_PROVIDER-legacy.pod b/doc/man7/OSSL_PROVIDER-legacy.pod index db2d57ed59..36aeafec94 100644 --- a/doc/man7/OSSL_PROVIDER-legacy.pod +++ b/doc/man7/OSSL_PROVIDER-legacy.pod @@ -77,7 +77,7 @@ following =head2 titles are appropriate to use: L, L, -L, +L, L =head1 COPYRIGHT diff --git a/doc/man7/openssl-core.h.pod b/doc/man7/openssl-core.h.pod index 28307a97d4..945cca0eda 100644 --- a/doc/man7/openssl-core.h.pod +++ b/doc/man7/openssl-core.h.pod @@ -30,7 +30,7 @@ Arrays of this type must be terminated with a tuple having function identity zero and function pointer NULL. The available function identities and corresponding function -signatures are defined in L. +signatures are defined in L. Any function identity not recognised by the recipient of this type will be ignored. @@ -111,7 +111,7 @@ callback. =head1 SEE ALSO -L +L =head1 HISTORY diff --git a/doc/man7/openssl-core_dispatch.h.pod b/doc/man7/openssl-core_dispatch.h.pod new file mode 100644 index 0000000000..a19e1331fa --- /dev/null +++ b/doc/man7/openssl-core_dispatch.h.pod @@ -0,0 +1,56 @@ +=pod + +=head1 NAME + +openssl/core_dispatch.h +- OpenSSL provider dispatch numbers and function types + +=head1 SYNOPSIS + + #include + +=head1 DESCRIPTION + +The F<< >> header defines all the operation +numbers, dispatch numbers and provider interface function types +currently available. + +The operation and dispatch numbers are represented with macros, which +are named as follows: + +=over 4 + +=item operation numbers + +These macros have the form C>. + +=item dipatch numbers + +These macros have the form C_I>, where +C> is the same as in the macro for the operation this +function belongs to. + +=back + +With every dispatch number, there is an associated function type. + +For further information, please see the L + +=head1 SEE ALSO + +L + +=head1 HISTORY + +The types and macros described here were added in OpenSSL 3.0. + +=head1 COPYRIGHT + +Copyright 2020 The OpenSSL Project Authors. All Rights Reserved. + +Licensed under the Apache License 2.0 (the "License"). You may not use +this file except in compliance with the License. You can obtain a copy +in the file LICENSE in the source distribution or at +L. + +=cut diff --git a/doc/man7/openssl-core_numbers.h.pod b/doc/man7/openssl-core_numbers.h.pod deleted file mode 100644 index d9bdcbc810..0000000000 --- a/doc/man7/openssl-core_numbers.h.pod +++ /dev/null @@ -1,56 +0,0 @@ -=pod - -=head1 NAME - -openssl/core_numbers.h -- OpenSSL provider dispatch numbers and function types - -=head1 SYNOPSIS - - #include - -=head1 DESCRIPTION - -The F<< >> header defines all the operation -numbers, dispatch numbers and provider interface function types -currently available. - -The operation and dispatch numbers are represented with macros, which -are named as follows: - -=over 4 - -=item operation numbers - -These macros have the form C>. - -=item dipatch numbers - -These macros have the form C_I>, where -C> is the same as in the macro for the operation this -function belongs to. - -=back - -With every dispatch number, there is an associated function type. - -For further information, please see the L - -=head1 SEE ALSO - -L - -=head1 HISTORY - -The types and macros described here were added in OpenSSL 3.0. - -=head1 COPYRIGHT - -Copyright 2020 The OpenSSL Project Authors. All Rights Reserved. - -Licensed under the Apache License 2.0 (the "License"). You may not use -this file except in compliance with the License. You can obtain a copy -in the file LICENSE in the source distribution or at -L. - -=cut diff --git a/doc/man7/provider-asym_cipher.pod b/doc/man7/provider-asym_cipher.pod index a271cb408b..5a911f9a0e 100644 --- a/doc/man7/provider-asym_cipher.pod +++ b/doc/man7/provider-asym_cipher.pod @@ -8,7 +8,7 @@ provider-asym_cipher - The asym_cipher library E-E provider functions =for openssl multiple includes - #include + #include #include /* @@ -68,7 +68,7 @@ For example, the "function" OP_asym_cipher_newctx() has these: OSSL_get_OP_asym_cipher_newctx(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: OP_asym_cipher_newctx OSSL_FUNC_ASYM_CIPHER_NEWCTX OP_asym_cipher_freectx OSSL_FUNC_ASYM_CIPHER_FREECTX diff --git a/doc/man7/provider-base.pod b/doc/man7/provider-base.pod index 69183cf282..d6a510c2dc 100644 --- a/doc/man7/provider-base.pod +++ b/doc/man7/provider-base.pod @@ -7,7 +7,7 @@ provider-base =head1 SYNOPSIS - #include + #include /* * None of these are actual functions, but are displayed like this for @@ -96,7 +96,7 @@ For example, the "function" core_gettable_params() has these: OSSL_get_core_gettable_params(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: For I (the B array passed from F to the provider): @@ -419,7 +419,7 @@ operation C. #include #include - #include + #include /* Errors used in this provider */ #define E_MALLOC 1 @@ -431,7 +431,7 @@ operation C. /* * To ensure we get the function signature right, forward declare - * them using function types provided by openssl/core_numbers.h + * them using function types provided by openssl/core_dispatch.h */ OSSL_OP_bar_newctx_fn foo_newctx; OSSL_OP_bar_freectx_fn foo_freectx; @@ -569,7 +569,7 @@ operation C. return 1; } -This relies on a few things existing in F: +This relies on a few things existing in F: #define OSSL_OP_BAR 4711 diff --git a/doc/man7/provider-cipher.pod b/doc/man7/provider-cipher.pod index 24c5f40e3f..c3b1b77fe4 100644 --- a/doc/man7/provider-cipher.pod +++ b/doc/man7/provider-cipher.pod @@ -8,7 +8,7 @@ provider-cipher - The cipher library E-E provider functions =for openssl multiple includes - #include + #include #include /* @@ -77,7 +77,7 @@ For example, the "function" OP_cipher_newctx() has these: OSSL_get_OP_cipher_newctx(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: OP_cipher_newctx OSSL_FUNC_CIPHER_NEWCTX OP_cipher_freectx OSSL_FUNC_CIPHER_FREECTX diff --git a/doc/man7/provider-digest.pod b/doc/man7/provider-digest.pod index 01b117039a..4164e34bbe 100644 --- a/doc/man7/provider-digest.pod +++ b/doc/man7/provider-digest.pod @@ -8,7 +8,7 @@ provider-digest - The digest library E-E provider functions =for openssl multiple includes - #include + #include #include /* @@ -69,7 +69,7 @@ For example, the "function" OP_digest_newctx() has these: OSSL_get_OP_digest_newctx(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: OP_digest_newctx OSSL_FUNC_DIGEST_NEWCTX OP_digest_freectx OSSL_FUNC_DIGEST_FREECTX diff --git a/doc/man7/provider-keyexch.pod b/doc/man7/provider-keyexch.pod index 59cc2033bb..2dcde351e6 100644 --- a/doc/man7/provider-keyexch.pod +++ b/doc/man7/provider-keyexch.pod @@ -8,7 +8,7 @@ provider-keyexch - The keyexch library E-E provider functions =for openssl multiple includes - #include + #include #include /* @@ -61,7 +61,7 @@ For example, the "function" OP_keyexch_newctx() has these: OSSL_get_OP_keyexch_newctx(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: OP_keyexch_newctx OSSL_FUNC_KEYEXCH_NEWCTX OP_keyexch_freectx OSSL_FUNC_KEYEXCH_FREECTX diff --git a/doc/man7/provider-keymgmt.pod b/doc/man7/provider-keymgmt.pod index 4202a77b54..21dd51ac9a 100644 --- a/doc/man7/provider-keymgmt.pod +++ b/doc/man7/provider-keymgmt.pod @@ -6,7 +6,7 @@ provider-keymgmt - The KEYMGMT library E-E provider functions =head1 SYNOPSIS - #include + #include /* * None of these are actual functions, but are displayed like this for @@ -82,7 +82,7 @@ For example, the "function" OP_keymgmt_new() has these: OSSL_get_OP_keymgmt_new(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: OP_keymgmt_new OSSL_FUNC_KEYMGMT_NEW OP_keymgmt_free OSSL_FUNC_KEYMGMT_FREE diff --git a/doc/man7/provider-mac.pod b/doc/man7/provider-mac.pod index d0a8881eef..d0b9462509 100644 --- a/doc/man7/provider-mac.pod +++ b/doc/man7/provider-mac.pod @@ -8,7 +8,7 @@ provider-mac - The mac library E-E provider functions =for openssl multiple includes - #include + #include #include /* @@ -63,7 +63,7 @@ For example, the "function" OP_mac_newctx() has these: OSSL_get_OP_mac_newctx(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: OP_mac_newctx OSSL_FUNC_MAC_NEWCTX OP_mac_freectx OSSL_FUNC_MAC_FREECTX diff --git a/doc/man7/provider-serializer.pod b/doc/man7/provider-serializer.pod index ad3b5fdd65..8eba0e3e30 100644 --- a/doc/man7/provider-serializer.pod +++ b/doc/man7/provider-serializer.pod @@ -12,7 +12,7 @@ Future development will also include deserializing functions. =end comment - #include + #include /* * None of these are actual functions, but are displayed like this for @@ -76,7 +76,7 @@ For example, the "function" OP_serializer_serialize_data() has these: OSSL_get_OP_serializer_serialize_data(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: OP_serializer_newctx OSSL_FUNC_SERIALIZER_NEWCTX OP_serializer_freectx OSSL_FUNC_SERIALIZER_FREECTX diff --git a/doc/man7/provider-signature.pod b/doc/man7/provider-signature.pod index 538c342e86..6b20dd9daa 100644 --- a/doc/man7/provider-signature.pod +++ b/doc/man7/provider-signature.pod @@ -8,7 +8,7 @@ provider-signature - The signature library E-E provider functions =for openssl multiple includes - #include + #include #include /* @@ -101,7 +101,7 @@ For example, the "function" OP_signature_newctx() has these: OSSL_get_OP_signature_newctx(const OSSL_DISPATCH *opf); B arrays are indexed by numbers that are provided as -macros in L, as follows: +macros in L, as follows: OP_signature_newctx OSSL_FUNC_SIGNATURE_NEWCTX OP_signature_freectx OSSL_FUNC_SIGNATURE_FREECTX diff --git a/include/crypto/evp.h b/include/crypto/evp.h index d1756cf183..1044cad218 100644 --- a/include/crypto/evp.h +++ b/include/crypto/evp.h @@ -8,7 +8,7 @@ */ #include -#include +#include #include "internal/refcount.h" #include "crypto/ecx.h" diff --git a/include/internal/provider.h b/include/internal/provider.h index 3bfc154283..dcd57708ba 100644 --- a/include/internal/provider.h +++ b/include/internal/provider.h @@ -11,7 +11,7 @@ # define OSSL_INTERNAL_PROVIDER_H # include -# include +# include # include "internal/dso.h" # include "internal/symhacks.h" diff --git a/include/openssl/core_dispatch.h b/include/openssl/core_dispatch.h new file mode 100644 index 0000000000..af2a35efc0 --- /dev/null +++ b/include/openssl/core_dispatch.h @@ -0,0 +1,717 @@ +/* + * Copyright 2019-2020 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the Apache License 2.0 (the "License"). You may not use + * this file except in compliance with the License. You can obtain a copy + * in the file LICENSE in the source distribution or at + * https://www.openssl.org/source/license.html + */ + +#ifndef OPENSSL_CORE_NUMBERS_H +# define OPENSSL_CORE_NUMBERS_H + +# include +# include + +# ifdef __cplusplus +extern "C" { +# endif + +/*- + * Identities + * ---------- + * + * All series start with 1, to allow 0 to be an array terminator. + * For any FUNC identity, we also provide a function signature typedef + * and a static inline function to extract a function pointer from a + * OSSL_DISPATCH element in a type safe manner. + * + * Names: + * for any function base name 'foo' (uppercase form 'FOO'), we will have + * the following: + * - a macro for the identity with the name OSSL_FUNC_'FOO' or derivatives + * thereof (to be specified further down) + * - a function signature typedef with the name OSSL_'foo'_fn + * - a function pointer extractor function with the name OSSL_'foo' + */ + +/* + * Helper macro to create the function signature typedef and the extractor + * |type| is the return-type of the function, |name| is the name of the + * function to fetch, and |args| is a parenthesized list of parameters + * for the function (that is, it is |name|'s function signature). + */ +#define OSSL_CORE_MAKE_FUNC(type,name,args) \ + typedef type (OSSL_##name##_fn)args; \ + static ossl_inline \ + OSSL_##name##_fn *OSSL_get_##name(const OSSL_DISPATCH *opf) \ + { \ + return (OSSL_##name##_fn *)opf->function; \ + } + +/* + * Core function identities, for the two OSSL_DISPATCH tables being passed + * in the OSSL_provider_init call. + * + * 0 serves as a marker for the end of the OSSL_DISPATCH array, and must + * therefore NEVER be used as a function identity. + */ +/* Functions provided by the Core to the provider, reserved numbers 1-1023 */ +# define OSSL_FUNC_CORE_GETTABLE_PARAMS 1 +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, + core_gettable_params,(const OSSL_CORE_HANDLE *prov)) +# define OSSL_FUNC_CORE_GET_PARAMS 2 +OSSL_CORE_MAKE_FUNC(int,core_get_params,(const OSSL_CORE_HANDLE *prov, + OSSL_PARAM params[])) +# define OSSL_FUNC_CORE_THREAD_START 3 +OSSL_CORE_MAKE_FUNC(int,core_thread_start,(const OSSL_CORE_HANDLE *prov, + OSSL_thread_stop_handler_fn handfn)) +# define OSSL_FUNC_CORE_GET_LIBRARY_CONTEXT 4 +OSSL_CORE_MAKE_FUNC(OPENSSL_CORE_CTX *,core_get_library_context, + (const OSSL_CORE_HANDLE *prov)) +# define OSSL_FUNC_CORE_NEW_ERROR 5 +OSSL_CORE_MAKE_FUNC(void,core_new_error,(const OSSL_CORE_HANDLE *prov)) +# define OSSL_FUNC_CORE_SET_ERROR_DEBUG 6 +OSSL_CORE_MAKE_FUNC(void,core_set_error_debug, + (const OSSL_CORE_HANDLE *prov, + const char *file, int line, const char *func)) +# define OSSL_FUNC_CORE_VSET_ERROR 7 +OSSL_CORE_MAKE_FUNC(void,core_vset_error, + (const OSSL_CORE_HANDLE *prov, + uint32_t reason, const char *fmt, va_list args)) +# define OSSL_FUNC_CORE_SET_ERROR_MARK 8 +OSSL_CORE_MAKE_FUNC(int, core_set_error_mark, (const OSSL_CORE_HANDLE *prov)) +# define OSSL_FUNC_CORE_CLEAR_LAST_ERROR_MARK 9 +OSSL_CORE_MAKE_FUNC(int, core_clear_last_error_mark, + (const OSSL_CORE_HANDLE *prov)) +# define OSSL_FUNC_CORE_POP_ERROR_TO_MARK 10 +OSSL_CORE_MAKE_FUNC(int, core_pop_error_to_mark, (const OSSL_CORE_HANDLE *prov)) + +/* Memory allocation, freeing, clearing. */ +#define OSSL_FUNC_CRYPTO_MALLOC 20 +OSSL_CORE_MAKE_FUNC(void *, + CRYPTO_malloc, (size_t num, const char *file, int line)) +#define OSSL_FUNC_CRYPTO_ZALLOC 21 +OSSL_CORE_MAKE_FUNC(void *, + CRYPTO_zalloc, (size_t num, const char *file, int line)) +#define OSSL_FUNC_CRYPTO_FREE 22 +OSSL_CORE_MAKE_FUNC(void, + CRYPTO_free, (void *ptr, const char *file, int line)) +#define OSSL_FUNC_CRYPTO_CLEAR_FREE 23 +OSSL_CORE_MAKE_FUNC(void, + CRYPTO_clear_free, (void *ptr, size_t num, const char *file, int line)) +#define OSSL_FUNC_CRYPTO_REALLOC 24 +OSSL_CORE_MAKE_FUNC(void *, + CRYPTO_realloc, (void *addr, size_t num, const char *file, int line)) +#define OSSL_FUNC_CRYPTO_CLEAR_REALLOC 25 +OSSL_CORE_MAKE_FUNC(void *, + CRYPTO_clear_realloc, (void *addr, size_t old_num, size_t num, + const char *file, int line)) +#define OSSL_FUNC_CRYPTO_SECURE_MALLOC 26 +OSSL_CORE_MAKE_FUNC(void *, + CRYPTO_secure_malloc, (size_t num, const char *file, int line)) +#define OSSL_FUNC_CRYPTO_SECURE_ZALLOC 27 +OSSL_CORE_MAKE_FUNC(void *, + CRYPTO_secure_zalloc, (size_t num, const char *file, int line)) +#define OSSL_FUNC_CRYPTO_SECURE_FREE 28 +OSSL_CORE_MAKE_FUNC(void, + CRYPTO_secure_free, (void *ptr, const char *file, int line)) +#define OSSL_FUNC_CRYPTO_SECURE_CLEAR_FREE 29 +OSSL_CORE_MAKE_FUNC(void, + CRYPTO_secure_clear_free, (void *ptr, size_t num, const char *file, + int line)) +#define OSSL_FUNC_CRYPTO_SECURE_ALLOCATED 30 +OSSL_CORE_MAKE_FUNC(int, + CRYPTO_secure_allocated, (const void *ptr)) +#define OSSL_FUNC_OPENSSL_CLEANSE 31 +OSSL_CORE_MAKE_FUNC(void, + OPENSSL_cleanse, (void *ptr, size_t len)) + +/* Bio functions provided by the core */ +#define OSSL_FUNC_BIO_NEW_FILE 40 +#define OSSL_FUNC_BIO_NEW_MEMBUF 41 +#define OSSL_FUNC_BIO_READ_EX 42 +#define OSSL_FUNC_BIO_WRITE_EX 43 +#define OSSL_FUNC_BIO_FREE 44 +#define OSSL_FUNC_BIO_VPRINTF 45 +#define OSSL_FUNC_BIO_VSNPRINTF 46 + +OSSL_CORE_MAKE_FUNC(OSSL_CORE_BIO *, BIO_new_file, (const char *filename, + const char *mode)) +OSSL_CORE_MAKE_FUNC(OSSL_CORE_BIO *, BIO_new_membuf, (const void *buf, int len)) +OSSL_CORE_MAKE_FUNC(int, BIO_read_ex, (OSSL_CORE_BIO *bio, void *data, + size_t data_len, size_t *bytes_read)) +OSSL_CORE_MAKE_FUNC(int, BIO_write_ex, (OSSL_CORE_BIO *bio, const void *data, + size_t data_len, size_t *written)) +OSSL_CORE_MAKE_FUNC(int, BIO_free, (OSSL_CORE_BIO *bio)) +OSSL_CORE_MAKE_FUNC(int, BIO_vprintf, (OSSL_CORE_BIO *bio, const char *format, + va_list args)) +OSSL_CORE_MAKE_FUNC(int, BIO_vsnprintf, + (char *buf, size_t n, const char *fmt, va_list args)) + +#define OSSL_FUNC_SELF_TEST_CB 100 +OSSL_CORE_MAKE_FUNC(void, self_test_cb, (OPENSSL_CORE_CTX *ctx, OSSL_CALLBACK **cb, + void **cbarg)) + +/* Functions provided by the provider to the Core, reserved numbers 1024-1535 */ +# define OSSL_FUNC_PROVIDER_TEARDOWN 1024 +OSSL_CORE_MAKE_FUNC(void,provider_teardown,(void *provctx)) +# define OSSL_FUNC_PROVIDER_GETTABLE_PARAMS 1025 +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, + provider_gettable_params,(void *provctx)) +# define OSSL_FUNC_PROVIDER_GET_PARAMS 1026 +OSSL_CORE_MAKE_FUNC(int,provider_get_params,(void *provctx, + OSSL_PARAM params[])) +# define OSSL_FUNC_PROVIDER_QUERY_OPERATION 1027 +OSSL_CORE_MAKE_FUNC(const OSSL_ALGORITHM *,provider_query_operation, + (void *provctx, int operation_id, int *no_store)) +# define OSSL_FUNC_PROVIDER_GET_REASON_STRINGS 1028 +OSSL_CORE_MAKE_FUNC(const OSSL_ITEM *,provider_get_reason_strings, + (void *provctx)) +# define OSSL_FUNC_PROVIDER_GET_CAPABILITIES 1029 +OSSL_CORE_MAKE_FUNC(int, provider_get_capabilities, (void *provctx, + const char *capability, OSSL_CALLBACK *cb, void *arg)) + +/* Operations */ + +# define OSSL_OP_DIGEST 1 +# define OSSL_OP_CIPHER 2 /* Symmetric Ciphers */ +# define OSSL_OP_MAC 3 +# define OSSL_OP_KDF 4 +# define OSSL_OP_RAND 5 +# define OSSL_OP_KEYMGMT 10 +# define OSSL_OP_KEYEXCH 11 +# define OSSL_OP_SIGNATURE 12 +# define OSSL_OP_ASYM_CIPHER 13 +/* New section for non-EVP operations */ +# define OSSL_OP_SERIALIZER 20 +/* Highest known operation number */ +# define OSSL_OP__HIGHEST 20 + +/* Digests */ + +# define OSSL_FUNC_DIGEST_NEWCTX 1 +# define OSSL_FUNC_DIGEST_INIT 2 +# define OSSL_FUNC_DIGEST_UPDATE 3 +# define OSSL_FUNC_DIGEST_FINAL 4 +# define OSSL_FUNC_DIGEST_DIGEST 5 +# define OSSL_FUNC_DIGEST_FREECTX 6 +# define OSSL_FUNC_DIGEST_DUPCTX 7 +# define OSSL_FUNC_DIGEST_GET_PARAMS 8 +# define OSSL_FUNC_DIGEST_SET_CTX_PARAMS 9 +# define OSSL_FUNC_DIGEST_GET_CTX_PARAMS 10 +# define OSSL_FUNC_DIGEST_GETTABLE_PARAMS 11 +# define OSSL_FUNC_DIGEST_SETTABLE_CTX_PARAMS 12 +# define OSSL_FUNC_DIGEST_GETTABLE_CTX_PARAMS 13 + +OSSL_CORE_MAKE_FUNC(void *, OP_digest_newctx, (void *provctx)) +OSSL_CORE_MAKE_FUNC(int, OP_digest_init, (void *dctx)) +OSSL_CORE_MAKE_FUNC(int, OP_digest_update, + (void *dctx, const unsigned char *in, size_t inl)) +OSSL_CORE_MAKE_FUNC(int, OP_digest_final, + (void *dctx, + unsigned char *out, size_t *outl, size_t outsz)) +OSSL_CORE_MAKE_FUNC(int, OP_digest_digest, + (void *provctx, const unsigned char *in, size_t inl, + unsigned char *out, size_t *outl, size_t outsz)) + +OSSL_CORE_MAKE_FUNC(void, OP_digest_freectx, (void *dctx)) +OSSL_CORE_MAKE_FUNC(void *, OP_digest_dupctx, (void *dctx)) + +OSSL_CORE_MAKE_FUNC(int, OP_digest_get_params, (OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_digest_set_ctx_params, + (void *vctx, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_digest_get_ctx_params, + (void *vctx, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_digest_gettable_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_digest_settable_ctx_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_digest_gettable_ctx_params, (void)) + +/* Symmetric Ciphers */ + +# define OSSL_FUNC_CIPHER_NEWCTX 1 +# define OSSL_FUNC_CIPHER_ENCRYPT_INIT 2 +# define OSSL_FUNC_CIPHER_DECRYPT_INIT 3 +# define OSSL_FUNC_CIPHER_UPDATE 4 +# define OSSL_FUNC_CIPHER_FINAL 5 +# define OSSL_FUNC_CIPHER_CIPHER 6 +# define OSSL_FUNC_CIPHER_FREECTX 7 +# define OSSL_FUNC_CIPHER_DUPCTX 8 +# define OSSL_FUNC_CIPHER_GET_PARAMS 9 +# define OSSL_FUNC_CIPHER_GET_CTX_PARAMS 10 +# define OSSL_FUNC_CIPHER_SET_CTX_PARAMS 11 +# define OSSL_FUNC_CIPHER_GETTABLE_PARAMS 12 +# define OSSL_FUNC_CIPHER_GETTABLE_CTX_PARAMS 13 +# define OSSL_FUNC_CIPHER_SETTABLE_CTX_PARAMS 14 + +OSSL_CORE_MAKE_FUNC(void *, OP_cipher_newctx, (void *provctx)) +OSSL_CORE_MAKE_FUNC(int, OP_cipher_encrypt_init, (void *cctx, + const unsigned char *key, + size_t keylen, + const unsigned char *iv, + size_t ivlen)) +OSSL_CORE_MAKE_FUNC(int, OP_cipher_decrypt_init, (void *cctx, + const unsigned char *key, + size_t keylen, + const unsigned char *iv, + size_t ivlen)) +OSSL_CORE_MAKE_FUNC(int, OP_cipher_update, + (void *cctx, + unsigned char *out, size_t *outl, size_t outsize, + const unsigned char *in, size_t inl)) +OSSL_CORE_MAKE_FUNC(int, OP_cipher_final, + (void *cctx, + unsigned char *out, size_t *outl, size_t outsize)) +OSSL_CORE_MAKE_FUNC(int, OP_cipher_cipher, + (void *cctx, + unsigned char *out, size_t *outl, size_t outsize, + const unsigned char *in, size_t inl)) +OSSL_CORE_MAKE_FUNC(void, OP_cipher_freectx, (void *cctx)) +OSSL_CORE_MAKE_FUNC(void *, OP_cipher_dupctx, (void *cctx)) +OSSL_CORE_MAKE_FUNC(int, OP_cipher_get_params, (OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_cipher_get_ctx_params, (void *cctx, + OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_cipher_set_ctx_params, (void *cctx, + const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_cipher_gettable_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_cipher_settable_ctx_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_cipher_gettable_ctx_params, (void)) + +/* MACs */ + +# define OSSL_FUNC_MAC_NEWCTX 1 +# define OSSL_FUNC_MAC_DUPCTX 2 +# define OSSL_FUNC_MAC_FREECTX 3 +# define OSSL_FUNC_MAC_INIT 4 +# define OSSL_FUNC_MAC_UPDATE 5 +# define OSSL_FUNC_MAC_FINAL 6 +# define OSSL_FUNC_MAC_GET_PARAMS 7 +# define OSSL_FUNC_MAC_GET_CTX_PARAMS 8 +# define OSSL_FUNC_MAC_SET_CTX_PARAMS 9 +# define OSSL_FUNC_MAC_GETTABLE_PARAMS 10 +# define OSSL_FUNC_MAC_GETTABLE_CTX_PARAMS 11 +# define OSSL_FUNC_MAC_SETTABLE_CTX_PARAMS 12 + +OSSL_CORE_MAKE_FUNC(void *, OP_mac_newctx, (void *provctx)) +OSSL_CORE_MAKE_FUNC(void *, OP_mac_dupctx, (void *src)) +OSSL_CORE_MAKE_FUNC(void, OP_mac_freectx, (void *mctx)) +OSSL_CORE_MAKE_FUNC(size_t, OP_mac_size, (void *mctx)) +OSSL_CORE_MAKE_FUNC(int, OP_mac_init, (void *mctx)) +OSSL_CORE_MAKE_FUNC(int, OP_mac_update, + (void *mctx, const unsigned char *in, size_t inl)) +OSSL_CORE_MAKE_FUNC(int, OP_mac_final, + (void *mctx, + unsigned char *out, size_t *outl, size_t outsize)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_mac_gettable_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_mac_gettable_ctx_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_mac_settable_ctx_params, (void)) +OSSL_CORE_MAKE_FUNC(int, OP_mac_get_params, (OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_mac_get_ctx_params, + (void *mctx, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_mac_set_ctx_params, + (void *mctx, const OSSL_PARAM params[])) + +/* KDFs and PRFs */ + +# define OSSL_FUNC_KDF_NEWCTX 1 +# define OSSL_FUNC_KDF_DUPCTX 2 +# define OSSL_FUNC_KDF_FREECTX 3 +# define OSSL_FUNC_KDF_RESET 4 +# define OSSL_FUNC_KDF_DERIVE 5 +# define OSSL_FUNC_KDF_GETTABLE_PARAMS 6 +# define OSSL_FUNC_KDF_GETTABLE_CTX_PARAMS 7 +# define OSSL_FUNC_KDF_SETTABLE_CTX_PARAMS 8 +# define OSSL_FUNC_KDF_GET_PARAMS 9 +# define OSSL_FUNC_KDF_GET_CTX_PARAMS 10 +# define OSSL_FUNC_KDF_SET_CTX_PARAMS 11 + +OSSL_CORE_MAKE_FUNC(void *, OP_kdf_newctx, (void *provctx)) +OSSL_CORE_MAKE_FUNC(void *, OP_kdf_dupctx, (void *src)) +OSSL_CORE_MAKE_FUNC(void, OP_kdf_freectx, (void *kctx)) +OSSL_CORE_MAKE_FUNC(void, OP_kdf_reset, (void *kctx)) +OSSL_CORE_MAKE_FUNC(int, OP_kdf_derive, (void *kctx, unsigned char *key, + size_t keylen)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_kdf_gettable_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_kdf_gettable_ctx_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_kdf_settable_ctx_params, (void)) +OSSL_CORE_MAKE_FUNC(int, OP_kdf_get_params, (OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_kdf_get_ctx_params, + (void *kctx, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_kdf_set_ctx_params, + (void *kctx, const OSSL_PARAM params[])) + +/* RAND */ + +# define OSSL_FUNC_RAND_NEWCTX 1 +# define OSSL_FUNC_RAND_FREECTX 2 +# define OSSL_FUNC_RAND_INSTANTIATE 3 +# define OSSL_FUNC_RAND_UNINSTANTIATE 4 +# define OSSL_FUNC_RAND_GENERATE 5 +# define OSSL_FUNC_RAND_RESEED 6 +# define OSSL_FUNC_RAND_NONCE 7 +# define OSSL_FUNC_RAND_ENABLE_LOCKING 8 +# define OSSL_FUNC_RAND_LOCK 9 +# define OSSL_FUNC_RAND_UNLOCK 10 +# define OSSL_FUNC_RAND_GETTABLE_PARAMS 11 +# define OSSL_FUNC_RAND_GETTABLE_CTX_PARAMS 12 +# define OSSL_FUNC_RAND_SETTABLE_CTX_PARAMS 13 +# define OSSL_FUNC_RAND_GET_PARAMS 14 +# define OSSL_FUNC_RAND_GET_CTX_PARAMS 15 +# define OSSL_FUNC_RAND_SET_CTX_PARAMS 16 +# define OSSL_FUNC_RAND_SET_CALLBACKS 17 +# define OSSL_FUNC_RAND_VERIFY_ZEROIZATION 18 + +OSSL_CORE_MAKE_FUNC(void *, OP_rand_newctx, + (void *provctx, void *parent, + const OSSL_DISPATCH *parent_calls)) +OSSL_CORE_MAKE_FUNC(void, OP_rand_freectx, (void *vctx)) +OSSL_CORE_MAKE_FUNC(int, OP_rand_instantiate, + (void *vdrbg, unsigned int strength, + int prediction_resistance, + const unsigned char *pstr, size_t pstr_len)) +OSSL_CORE_MAKE_FUNC(int, OP_rand_uninstantiate, (void *vdrbg)) +OSSL_CORE_MAKE_FUNC(int, OP_rand_generate, + (void *vctx, unsigned char *out, size_t outlen, + unsigned int strength, int prediction_resistance, + const unsigned char *addin, size_t addin_len)) +OSSL_CORE_MAKE_FUNC(int, OP_rand_reseed, + (void *vctx, int prediction_resistance, + const unsigned char *ent, size_t ent_len, + const unsigned char *addin, size_t addin_len)) +OSSL_CORE_MAKE_FUNC(size_t, OP_rand_nonce, + (void *vctx, unsigned char *out, unsigned int strength, + size_t min_noncelen, size_t max_noncelen)) +OSSL_CORE_MAKE_FUNC(int, OP_rand_enable_locking, (void *vctx)) +OSSL_CORE_MAKE_FUNC(int, OP_rand_lock, (void *vctx)) +OSSL_CORE_MAKE_FUNC(void, OP_rand_unlock, (void *vctx)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_rand_gettable_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_rand_gettable_ctx_params, (void)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_rand_settable_ctx_params, (void)) +OSSL_CORE_MAKE_FUNC(int, OP_rand_get_params, (OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_rand_get_ctx_params, + (void *vctx, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(int, OP_rand_set_ctx_params, + (void *vctx, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(void, OP_rand_set_callbacks, + (void *vctx, OSSL_INOUT_CALLBACK *get_entropy, + OSSL_CALLBACK *cleanup_entropy, + OSSL_INOUT_CALLBACK *get_nonce, + OSSL_CALLBACK *cleanup_nonce, void *arg)) +OSSL_CORE_MAKE_FUNC(int, OP_rand_verify_zeroization, + (void *vctx)) + +/*- + * Key management + * + * The Key Management takes care of provider side key objects, and includes + * all current functionality to create them, destroy them, set parameters + * and key material, etc, essentially everything that manipulates the keys + * themselves and their parameters. + * + * The key objects are commonly refered to as |keydata|, and it MUST be able + * to contain parameters if the key has any, the public key and the private + * key. All parts are optional, but their presence determines what can be + * done with the key object in terms of encryption, signature, and so on. + * The assumption from libcrypto is that the key object contains any of the + * following data combinations: + * + * - parameters only + * - public key only + * - public key + private key + * - parameters + public key + * - parameters + public key + private key + * + * What "parameters", "public key" and "private key" means in detail is left + * to the implementation. In the case of DH and DSA, they would typically + * include domain parameters, while for certain variants of RSA, they would + * typically include PSS or OAEP parameters. + * + * Key objects are created with OP_keymgmt_new() and destroyed with + * Op_keymgmt_free(). Key objects can have data filled in with + * OP_keymgmt_import(). + * + * Three functions are made available to check what selection of data is + * present in a key object: OP_keymgmt_has_parameters(), + * OP_keymgmt_has_public_key(), and OP_keymgmt_has_private_key(), + */ + +/* Key data subset selection - individual bits */ +# define OSSL_KEYMGMT_SELECT_PRIVATE_KEY 0x01 +# define OSSL_KEYMGMT_SELECT_PUBLIC_KEY 0x02 +# define OSSL_KEYMGMT_SELECT_DOMAIN_PARAMETERS 0x04 +# define OSSL_KEYMGMT_SELECT_OTHER_PARAMETERS 0x80 + +/* Key data subset selection - combinations */ +# define OSSL_KEYMGMT_SELECT_ALL_PARAMETERS \ + ( OSSL_KEYMGMT_SELECT_DOMAIN_PARAMETERS \ + | OSSL_KEYMGMT_SELECT_OTHER_PARAMETERS) +# define OSSL_KEYMGMT_SELECT_KEYPAIR \ + ( OSSL_KEYMGMT_SELECT_PRIVATE_KEY | OSSL_KEYMGMT_SELECT_PUBLIC_KEY ) +# define OSSL_KEYMGMT_SELECT_ALL \ + ( OSSL_KEYMGMT_SELECT_KEYPAIR | OSSL_KEYMGMT_SELECT_ALL_PARAMETERS ) + +/* Basic key object creation */ +# define OSSL_FUNC_KEYMGMT_NEW 1 +OSSL_CORE_MAKE_FUNC(void *, OP_keymgmt_new, (void *provctx)) + +/* Generation, a more complex constructor */ +# define OSSL_FUNC_KEYMGMT_GEN_INIT 2 +# define OSSL_FUNC_KEYMGMT_GEN_SET_TEMPLATE 3 +# define OSSL_FUNC_KEYMGMT_GEN_SET_PARAMS 4 +# define OSSL_FUNC_KEYMGMT_GEN_SETTABLE_PARAMS 5 +# define OSSL_FUNC_KEYMGMT_GEN 6 +# define OSSL_FUNC_KEYMGMT_GEN_CLEANUP 7 +OSSL_CORE_MAKE_FUNC(void *, OP_keymgmt_gen_init, + (void *provctx, int selection)) +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_gen_set_template, + (void *genctx, void *templ)) +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_gen_set_params, + (void *genctx, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, + OP_keymgmt_gen_settable_params, (void *provctx)) +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_gen_get_params, + (void *genctx, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, + OP_keymgmt_gen_gettable_params, (void *provctx)) +OSSL_CORE_MAKE_FUNC(void *, OP_keymgmt_gen, + (void *genctx, OSSL_CALLBACK *cb, void *cbarg)) +OSSL_CORE_MAKE_FUNC(void, OP_keymgmt_gen_cleanup, (void *genctx)) + +/* Basic key object destruction */ +# define OSSL_FUNC_KEYMGMT_FREE 10 +OSSL_CORE_MAKE_FUNC(void, OP_keymgmt_free, (void *keydata)) + +/* Key object information, with discovery */ +#define OSSL_FUNC_KEYMGMT_GET_PARAMS 11 +#define OSSL_FUNC_KEYMGMT_GETTABLE_PARAMS 12 +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_get_params, + (void *keydata, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keymgmt_gettable_params, (void)) + +#define OSSL_FUNC_KEYMGMT_SET_PARAMS 13 +#define OSSL_FUNC_KEYMGMT_SETTABLE_PARAMS 14 +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_set_params, + (void *keydata, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keymgmt_settable_params, (void)) + +/* Key checks - discovery of supported operations */ +# define OSSL_FUNC_KEYMGMT_QUERY_OPERATION_NAME 20 +OSSL_CORE_MAKE_FUNC(const char *, OP_keymgmt_query_operation_name, + (int operation_id)) + +/* Key checks - key data content checks */ +# define OSSL_FUNC_KEYMGMT_HAS 21 +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_has, (void *keydata, int selection)) + +/* Key checks - validation */ +# define OSSL_FUNC_KEYMGMT_VALIDATE 22 +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_validate, (void *keydata, int selection)) + +/* Key checks - matching */ +# define OSSL_FUNC_KEYMGMT_MATCH 23 +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_match, + (const void *keydata1, const void *keydata2, + int selection)) + +/* Import and export functions, with discovery */ +# define OSSL_FUNC_KEYMGMT_IMPORT 40 +# define OSSL_FUNC_KEYMGMT_IMPORT_TYPES 41 +# define OSSL_FUNC_KEYMGMT_EXPORT 42 +# define OSSL_FUNC_KEYMGMT_EXPORT_TYPES 43 +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_import, + (void *keydata, int selection, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keymgmt_import_types, + (int selection)) +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_export, + (void *keydata, int selection, + OSSL_CALLBACK *param_cb, void *cbarg)) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keymgmt_export_types, + (int selection)) + +/* Copy function, only works for matching keymgmt */ +# define OSSL_FUNC_KEYMGMT_COPY 44 +OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_copy, + ( void *keydata_to, const void *keydata_from, + int selection)) + +/* Key Exchange */ + +# define OSSL_FUNC_KEYEXCH_NEWCTX 1 +# define OSSL_FUNC_KEYEXCH_INIT 2 +# define OSSL_FUNC_KEYEXCH_DERIVE 3 +# define OSSL_FUNC_KEYEXCH_SET_PEER 4 +# define OSSL_FUNC_KEYEXCH_FREECTX 5 +# define OSSL_FUNC_KEYEXCH_DUPCTX 6 +# define OSSL_FUNC_KEYEXCH_SET_CTX_PARAMS 7 +# define OSSL_FUNC_KEYEXCH_SETTABLE_CTX_PARAMS 8 +# define OSSL_FUNC_KEYEXCH_GET_CTX_PARAMS 9 +# define OSSL_FUNC_KEYEXCH_GETTABLE_CTX_PARAMS 10 + +OSSL_CORE_MAKE_FUNC(void *, OP_keyexch_newctx, (void *provctx)) +OSSL_CORE_MAKE_FUNC(int, OP_keyexch_init, (void *ctx, void *provkey)) +OSSL_CORE_MAKE_FUNC(int, OP_keyexch_derive, (void *ctx, unsigned char *secret, + size_t *secretlen, size_t outlen)) +OSSL_CORE_MAKE_FUNC(int, OP_keyexch_set_peer, (void *ctx, void *provkey)) +OSSL_CORE_MAKE_FUNC(void, OP_keyexch_freectx, (void *ctx)) +OSSL_CORE_MAKE_FUNC(void *, OP_keyexch_dupctx, (void *ctx)) +OSSL_CORE_MAKE_FUNC(int, OP_keyexch_set_ctx_params, (void *ctx, + const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keyexch_settable_ctx_params, + (void)) +OSSL_CORE_MAKE_FUNC(int, OP_keyexch_get_ctx_params, (void *ctx, + OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keyexch_gettable_ctx_params, + (void)) + +/* Signature */ + +# define OSSL_FUNC_SIGNATURE_NEWCTX 1 +# define OSSL_FUNC_SIGNATURE_SIGN_INIT 2 +# define OSSL_FUNC_SIGNATURE_SIGN 3 +# define OSSL_FUNC_SIGNATURE_VERIFY_INIT 4 +# define OSSL_FUNC_SIGNATURE_VERIFY 5 +# define OSSL_FUNC_SIGNATURE_VERIFY_RECOVER_INIT 6 +# define OSSL_FUNC_SIGNATURE_VERIFY_RECOVER 7 +# define OSSL_FUNC_SIGNATURE_DIGEST_SIGN_INIT 8 +# define OSSL_FUNC_SIGNATURE_DIGEST_SIGN_UPDATE 9 +# define OSSL_FUNC_SIGNATURE_DIGEST_SIGN_FINAL 10 +# define OSSL_FUNC_SIGNATURE_DIGEST_SIGN 11 +# define OSSL_FUNC_SIGNATURE_DIGEST_VERIFY_INIT 12 +# define OSSL_FUNC_SIGNATURE_DIGEST_VERIFY_UPDATE 13 +# define OSSL_FUNC_SIGNATURE_DIGEST_VERIFY_FINAL 14 +# define OSSL_FUNC_SIGNATURE_DIGEST_VERIFY 15 +# define OSSL_FUNC_SIGNATURE_FREECTX 16 +# define OSSL_FUNC_SIGNATURE_DUPCTX 17 +# define OSSL_FUNC_SIGNATURE_GET_CTX_PARAMS 18 +# define OSSL_FUNC_SIGNATURE_GETTABLE_CTX_PARAMS 19 +# define OSSL_FUNC_SIGNATURE_SET_CTX_PARAMS 20 +# define OSSL_FUNC_SIGNATURE_SETTABLE_CTX_PARAMS 21 +# define OSSL_FUNC_SIGNATURE_GET_CTX_MD_PARAMS 22 +# define OSSL_FUNC_SIGNATURE_GETTABLE_CTX_MD_PARAMS 23 +# define OSSL_FUNC_SIGNATURE_SET_CTX_MD_PARAMS 24 +# define OSSL_FUNC_SIGNATURE_SETTABLE_CTX_MD_PARAMS 25 + +OSSL_CORE_MAKE_FUNC(void *, OP_signature_newctx, (void *provctx, + const char *propq)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_sign_init, (void *ctx, void *provkey)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_sign, (void *ctx, unsigned char *sig, + size_t *siglen, size_t sigsize, + const unsigned char *tbs, + size_t tbslen)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_verify_init, (void *ctx, void *provkey)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_verify, (void *ctx, + const unsigned char *sig, + size_t siglen, + const unsigned char *tbs, + size_t tbslen)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_verify_recover_init, (void *ctx, + void *provkey)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_verify_recover, (void *ctx, + unsigned char *rout, + size_t *routlen, + size_t routsize, + const unsigned char *sig, + size_t siglen)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_sign_init, + (void *ctx, const char *mdname, void *provkey)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_sign_update, + (void *ctx, const unsigned char *data, size_t datalen)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_sign_final, + (void *ctx, unsigned char *sig, size_t *siglen, + size_t sigsize)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_sign, + (void *ctx, unsigned char *sigret, size_t *siglen, + size_t sigsize, const unsigned char *tbs, size_t tbslen)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_verify_init, + (void *ctx, const char *mdname, void *provkey)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_verify_update, + (void *ctx, const unsigned char *data, size_t datalen)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_verify_final, + (void *ctx, const unsigned char *sig, size_t siglen)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_verify, + (void *ctx, const unsigned char *sig, size_t siglen, + const unsigned char *tbs, size_t tbslen)) +OSSL_CORE_MAKE_FUNC(void, OP_signature_freectx, (void *ctx)) +OSSL_CORE_MAKE_FUNC(void *, OP_signature_dupctx, (void *ctx)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_get_ctx_params, + (void *ctx, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_signature_gettable_ctx_params, + (void)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_set_ctx_params, + (void *ctx, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_signature_settable_ctx_params, + (void)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_get_ctx_md_params, + (void *ctx, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_signature_gettable_ctx_md_params, + (void *ctx)) +OSSL_CORE_MAKE_FUNC(int, OP_signature_set_ctx_md_params, + (void *ctx, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_signature_settable_ctx_md_params, + (void *ctx)) + + +/* Asymmetric Ciphers */ + +# define OSSL_FUNC_ASYM_CIPHER_NEWCTX 1 +# define OSSL_FUNC_ASYM_CIPHER_ENCRYPT_INIT 2 +# define OSSL_FUNC_ASYM_CIPHER_ENCRYPT 3 +# define OSSL_FUNC_ASYM_CIPHER_DECRYPT_INIT 4 +# define OSSL_FUNC_ASYM_CIPHER_DECRYPT 5 +# define OSSL_FUNC_ASYM_CIPHER_FREECTX 6 +# define OSSL_FUNC_ASYM_CIPHER_DUPCTX 7 +# define OSSL_FUNC_ASYM_CIPHER_GET_CTX_PARAMS 8 +# define OSSL_FUNC_ASYM_CIPHER_GETTABLE_CTX_PARAMS 9 +# define OSSL_FUNC_ASYM_CIPHER_SET_CTX_PARAMS 10 +# define OSSL_FUNC_ASYM_CIPHER_SETTABLE_CTX_PARAMS 11 + +OSSL_CORE_MAKE_FUNC(void *, OP_asym_cipher_newctx, (void *provctx)) +OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_encrypt_init, (void *ctx, void *provkey)) +OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_encrypt, (void *ctx, unsigned char *out, + size_t *outlen, + size_t outsize, + const unsigned char *in, + size_t inlen)) +OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_decrypt_init, (void *ctx, void *provkey)) +OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_decrypt, (void *ctx, unsigned char *out, + size_t *outlen, + size_t outsize, + const unsigned char *in, + size_t inlen)) +OSSL_CORE_MAKE_FUNC(void, OP_asym_cipher_freectx, (void *ctx)) +OSSL_CORE_MAKE_FUNC(void *, OP_asym_cipher_dupctx, (void *ctx)) +OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_get_ctx_params, + (void *ctx, OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_asym_cipher_gettable_ctx_params, + (void)) +OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_set_ctx_params, + (void *ctx, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_asym_cipher_settable_ctx_params, + (void)) + +/* Serializers */ +# define OSSL_FUNC_SERIALIZER_NEWCTX 1 +# define OSSL_FUNC_SERIALIZER_FREECTX 2 +# define OSSL_FUNC_SERIALIZER_SET_CTX_PARAMS 3 +# define OSSL_FUNC_SERIALIZER_SETTABLE_CTX_PARAMS 4 +# define OSSL_FUNC_SERIALIZER_SERIALIZE_DATA 10 +# define OSSL_FUNC_SERIALIZER_SERIALIZE_OBJECT 11 +OSSL_CORE_MAKE_FUNC(void *, OP_serializer_newctx, (void *provctx)) +OSSL_CORE_MAKE_FUNC(void, OP_serializer_freectx, (void *ctx)) +OSSL_CORE_MAKE_FUNC(int, OP_serializer_set_ctx_params, + (void *ctx, const OSSL_PARAM params[])) +OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_serializer_settable_ctx_params, + (void)) + +OSSL_CORE_MAKE_FUNC(int, OP_serializer_serialize_data, + (void *ctx, const OSSL_PARAM[], OSSL_CORE_BIO *out, + OSSL_PASSPHRASE_CALLBACK *cb, void *cbarg)) +OSSL_CORE_MAKE_FUNC(int, OP_serializer_serialize_object, + (void *ctx, void *obj, OSSL_CORE_BIO *out, + OSSL_PASSPHRASE_CALLBACK *cb, void *cbarg)) + +# ifdef __cplusplus +} +# endif + +#endif diff --git a/include/openssl/core_numbers.h b/include/openssl/core_numbers.h deleted file mode 100644 index af2a35efc0..0000000000 --- a/include/openssl/core_numbers.h +++ /dev/null @@ -1,717 +0,0 @@ -/* - * Copyright 2019-2020 The OpenSSL Project Authors. All Rights Reserved. - * - * Licensed under the Apache License 2.0 (the "License"). You may not use - * this file except in compliance with the License. You can obtain a copy - * in the file LICENSE in the source distribution or at - * https://www.openssl.org/source/license.html - */ - -#ifndef OPENSSL_CORE_NUMBERS_H -# define OPENSSL_CORE_NUMBERS_H - -# include -# include - -# ifdef __cplusplus -extern "C" { -# endif - -/*- - * Identities - * ---------- - * - * All series start with 1, to allow 0 to be an array terminator. - * For any FUNC identity, we also provide a function signature typedef - * and a static inline function to extract a function pointer from a - * OSSL_DISPATCH element in a type safe manner. - * - * Names: - * for any function base name 'foo' (uppercase form 'FOO'), we will have - * the following: - * - a macro for the identity with the name OSSL_FUNC_'FOO' or derivatives - * thereof (to be specified further down) - * - a function signature typedef with the name OSSL_'foo'_fn - * - a function pointer extractor function with the name OSSL_'foo' - */ - -/* - * Helper macro to create the function signature typedef and the extractor - * |type| is the return-type of the function, |name| is the name of the - * function to fetch, and |args| is a parenthesized list of parameters - * for the function (that is, it is |name|'s function signature). - */ -#define OSSL_CORE_MAKE_FUNC(type,name,args) \ - typedef type (OSSL_##name##_fn)args; \ - static ossl_inline \ - OSSL_##name##_fn *OSSL_get_##name(const OSSL_DISPATCH *opf) \ - { \ - return (OSSL_##name##_fn *)opf->function; \ - } - -/* - * Core function identities, for the two OSSL_DISPATCH tables being passed - * in the OSSL_provider_init call. - * - * 0 serves as a marker for the end of the OSSL_DISPATCH array, and must - * therefore NEVER be used as a function identity. - */ -/* Functions provided by the Core to the provider, reserved numbers 1-1023 */ -# define OSSL_FUNC_CORE_GETTABLE_PARAMS 1 -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, - core_gettable_params,(const OSSL_CORE_HANDLE *prov)) -# define OSSL_FUNC_CORE_GET_PARAMS 2 -OSSL_CORE_MAKE_FUNC(int,core_get_params,(const OSSL_CORE_HANDLE *prov, - OSSL_PARAM params[])) -# define OSSL_FUNC_CORE_THREAD_START 3 -OSSL_CORE_MAKE_FUNC(int,core_thread_start,(const OSSL_CORE_HANDLE *prov, - OSSL_thread_stop_handler_fn handfn)) -# define OSSL_FUNC_CORE_GET_LIBRARY_CONTEXT 4 -OSSL_CORE_MAKE_FUNC(OPENSSL_CORE_CTX *,core_get_library_context, - (const OSSL_CORE_HANDLE *prov)) -# define OSSL_FUNC_CORE_NEW_ERROR 5 -OSSL_CORE_MAKE_FUNC(void,core_new_error,(const OSSL_CORE_HANDLE *prov)) -# define OSSL_FUNC_CORE_SET_ERROR_DEBUG 6 -OSSL_CORE_MAKE_FUNC(void,core_set_error_debug, - (const OSSL_CORE_HANDLE *prov, - const char *file, int line, const char *func)) -# define OSSL_FUNC_CORE_VSET_ERROR 7 -OSSL_CORE_MAKE_FUNC(void,core_vset_error, - (const OSSL_CORE_HANDLE *prov, - uint32_t reason, const char *fmt, va_list args)) -# define OSSL_FUNC_CORE_SET_ERROR_MARK 8 -OSSL_CORE_MAKE_FUNC(int, core_set_error_mark, (const OSSL_CORE_HANDLE *prov)) -# define OSSL_FUNC_CORE_CLEAR_LAST_ERROR_MARK 9 -OSSL_CORE_MAKE_FUNC(int, core_clear_last_error_mark, - (const OSSL_CORE_HANDLE *prov)) -# define OSSL_FUNC_CORE_POP_ERROR_TO_MARK 10 -OSSL_CORE_MAKE_FUNC(int, core_pop_error_to_mark, (const OSSL_CORE_HANDLE *prov)) - -/* Memory allocation, freeing, clearing. */ -#define OSSL_FUNC_CRYPTO_MALLOC 20 -OSSL_CORE_MAKE_FUNC(void *, - CRYPTO_malloc, (size_t num, const char *file, int line)) -#define OSSL_FUNC_CRYPTO_ZALLOC 21 -OSSL_CORE_MAKE_FUNC(void *, - CRYPTO_zalloc, (size_t num, const char *file, int line)) -#define OSSL_FUNC_CRYPTO_FREE 22 -OSSL_CORE_MAKE_FUNC(void, - CRYPTO_free, (void *ptr, const char *file, int line)) -#define OSSL_FUNC_CRYPTO_CLEAR_FREE 23 -OSSL_CORE_MAKE_FUNC(void, - CRYPTO_clear_free, (void *ptr, size_t num, const char *file, int line)) -#define OSSL_FUNC_CRYPTO_REALLOC 24 -OSSL_CORE_MAKE_FUNC(void *, - CRYPTO_realloc, (void *addr, size_t num, const char *file, int line)) -#define OSSL_FUNC_CRYPTO_CLEAR_REALLOC 25 -OSSL_CORE_MAKE_FUNC(void *, - CRYPTO_clear_realloc, (void *addr, size_t old_num, size_t num, - const char *file, int line)) -#define OSSL_FUNC_CRYPTO_SECURE_MALLOC 26 -OSSL_CORE_MAKE_FUNC(void *, - CRYPTO_secure_malloc, (size_t num, const char *file, int line)) -#define OSSL_FUNC_CRYPTO_SECURE_ZALLOC 27 -OSSL_CORE_MAKE_FUNC(void *, - CRYPTO_secure_zalloc, (size_t num, const char *file, int line)) -#define OSSL_FUNC_CRYPTO_SECURE_FREE 28 -OSSL_CORE_MAKE_FUNC(void, - CRYPTO_secure_free, (void *ptr, const char *file, int line)) -#define OSSL_FUNC_CRYPTO_SECURE_CLEAR_FREE 29 -OSSL_CORE_MAKE_FUNC(void, - CRYPTO_secure_clear_free, (void *ptr, size_t num, const char *file, - int line)) -#define OSSL_FUNC_CRYPTO_SECURE_ALLOCATED 30 -OSSL_CORE_MAKE_FUNC(int, - CRYPTO_secure_allocated, (const void *ptr)) -#define OSSL_FUNC_OPENSSL_CLEANSE 31 -OSSL_CORE_MAKE_FUNC(void, - OPENSSL_cleanse, (void *ptr, size_t len)) - -/* Bio functions provided by the core */ -#define OSSL_FUNC_BIO_NEW_FILE 40 -#define OSSL_FUNC_BIO_NEW_MEMBUF 41 -#define OSSL_FUNC_BIO_READ_EX 42 -#define OSSL_FUNC_BIO_WRITE_EX 43 -#define OSSL_FUNC_BIO_FREE 44 -#define OSSL_FUNC_BIO_VPRINTF 45 -#define OSSL_FUNC_BIO_VSNPRINTF 46 - -OSSL_CORE_MAKE_FUNC(OSSL_CORE_BIO *, BIO_new_file, (const char *filename, - const char *mode)) -OSSL_CORE_MAKE_FUNC(OSSL_CORE_BIO *, BIO_new_membuf, (const void *buf, int len)) -OSSL_CORE_MAKE_FUNC(int, BIO_read_ex, (OSSL_CORE_BIO *bio, void *data, - size_t data_len, size_t *bytes_read)) -OSSL_CORE_MAKE_FUNC(int, BIO_write_ex, (OSSL_CORE_BIO *bio, const void *data, - size_t data_len, size_t *written)) -OSSL_CORE_MAKE_FUNC(int, BIO_free, (OSSL_CORE_BIO *bio)) -OSSL_CORE_MAKE_FUNC(int, BIO_vprintf, (OSSL_CORE_BIO *bio, const char *format, - va_list args)) -OSSL_CORE_MAKE_FUNC(int, BIO_vsnprintf, - (char *buf, size_t n, const char *fmt, va_list args)) - -#define OSSL_FUNC_SELF_TEST_CB 100 -OSSL_CORE_MAKE_FUNC(void, self_test_cb, (OPENSSL_CORE_CTX *ctx, OSSL_CALLBACK **cb, - void **cbarg)) - -/* Functions provided by the provider to the Core, reserved numbers 1024-1535 */ -# define OSSL_FUNC_PROVIDER_TEARDOWN 1024 -OSSL_CORE_MAKE_FUNC(void,provider_teardown,(void *provctx)) -# define OSSL_FUNC_PROVIDER_GETTABLE_PARAMS 1025 -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, - provider_gettable_params,(void *provctx)) -# define OSSL_FUNC_PROVIDER_GET_PARAMS 1026 -OSSL_CORE_MAKE_FUNC(int,provider_get_params,(void *provctx, - OSSL_PARAM params[])) -# define OSSL_FUNC_PROVIDER_QUERY_OPERATION 1027 -OSSL_CORE_MAKE_FUNC(const OSSL_ALGORITHM *,provider_query_operation, - (void *provctx, int operation_id, int *no_store)) -# define OSSL_FUNC_PROVIDER_GET_REASON_STRINGS 1028 -OSSL_CORE_MAKE_FUNC(const OSSL_ITEM *,provider_get_reason_strings, - (void *provctx)) -# define OSSL_FUNC_PROVIDER_GET_CAPABILITIES 1029 -OSSL_CORE_MAKE_FUNC(int, provider_get_capabilities, (void *provctx, - const char *capability, OSSL_CALLBACK *cb, void *arg)) - -/* Operations */ - -# define OSSL_OP_DIGEST 1 -# define OSSL_OP_CIPHER 2 /* Symmetric Ciphers */ -# define OSSL_OP_MAC 3 -# define OSSL_OP_KDF 4 -# define OSSL_OP_RAND 5 -# define OSSL_OP_KEYMGMT 10 -# define OSSL_OP_KEYEXCH 11 -# define OSSL_OP_SIGNATURE 12 -# define OSSL_OP_ASYM_CIPHER 13 -/* New section for non-EVP operations */ -# define OSSL_OP_SERIALIZER 20 -/* Highest known operation number */ -# define OSSL_OP__HIGHEST 20 - -/* Digests */ - -# define OSSL_FUNC_DIGEST_NEWCTX 1 -# define OSSL_FUNC_DIGEST_INIT 2 -# define OSSL_FUNC_DIGEST_UPDATE 3 -# define OSSL_FUNC_DIGEST_FINAL 4 -# define OSSL_FUNC_DIGEST_DIGEST 5 -# define OSSL_FUNC_DIGEST_FREECTX 6 -# define OSSL_FUNC_DIGEST_DUPCTX 7 -# define OSSL_FUNC_DIGEST_GET_PARAMS 8 -# define OSSL_FUNC_DIGEST_SET_CTX_PARAMS 9 -# define OSSL_FUNC_DIGEST_GET_CTX_PARAMS 10 -# define OSSL_FUNC_DIGEST_GETTABLE_PARAMS 11 -# define OSSL_FUNC_DIGEST_SETTABLE_CTX_PARAMS 12 -# define OSSL_FUNC_DIGEST_GETTABLE_CTX_PARAMS 13 - -OSSL_CORE_MAKE_FUNC(void *, OP_digest_newctx, (void *provctx)) -OSSL_CORE_MAKE_FUNC(int, OP_digest_init, (void *dctx)) -OSSL_CORE_MAKE_FUNC(int, OP_digest_update, - (void *dctx, const unsigned char *in, size_t inl)) -OSSL_CORE_MAKE_FUNC(int, OP_digest_final, - (void *dctx, - unsigned char *out, size_t *outl, size_t outsz)) -OSSL_CORE_MAKE_FUNC(int, OP_digest_digest, - (void *provctx, const unsigned char *in, size_t inl, - unsigned char *out, size_t *outl, size_t outsz)) - -OSSL_CORE_MAKE_FUNC(void, OP_digest_freectx, (void *dctx)) -OSSL_CORE_MAKE_FUNC(void *, OP_digest_dupctx, (void *dctx)) - -OSSL_CORE_MAKE_FUNC(int, OP_digest_get_params, (OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_digest_set_ctx_params, - (void *vctx, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_digest_get_ctx_params, - (void *vctx, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_digest_gettable_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_digest_settable_ctx_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_digest_gettable_ctx_params, (void)) - -/* Symmetric Ciphers */ - -# define OSSL_FUNC_CIPHER_NEWCTX 1 -# define OSSL_FUNC_CIPHER_ENCRYPT_INIT 2 -# define OSSL_FUNC_CIPHER_DECRYPT_INIT 3 -# define OSSL_FUNC_CIPHER_UPDATE 4 -# define OSSL_FUNC_CIPHER_FINAL 5 -# define OSSL_FUNC_CIPHER_CIPHER 6 -# define OSSL_FUNC_CIPHER_FREECTX 7 -# define OSSL_FUNC_CIPHER_DUPCTX 8 -# define OSSL_FUNC_CIPHER_GET_PARAMS 9 -# define OSSL_FUNC_CIPHER_GET_CTX_PARAMS 10 -# define OSSL_FUNC_CIPHER_SET_CTX_PARAMS 11 -# define OSSL_FUNC_CIPHER_GETTABLE_PARAMS 12 -# define OSSL_FUNC_CIPHER_GETTABLE_CTX_PARAMS 13 -# define OSSL_FUNC_CIPHER_SETTABLE_CTX_PARAMS 14 - -OSSL_CORE_MAKE_FUNC(void *, OP_cipher_newctx, (void *provctx)) -OSSL_CORE_MAKE_FUNC(int, OP_cipher_encrypt_init, (void *cctx, - const unsigned char *key, - size_t keylen, - const unsigned char *iv, - size_t ivlen)) -OSSL_CORE_MAKE_FUNC(int, OP_cipher_decrypt_init, (void *cctx, - const unsigned char *key, - size_t keylen, - const unsigned char *iv, - size_t ivlen)) -OSSL_CORE_MAKE_FUNC(int, OP_cipher_update, - (void *cctx, - unsigned char *out, size_t *outl, size_t outsize, - const unsigned char *in, size_t inl)) -OSSL_CORE_MAKE_FUNC(int, OP_cipher_final, - (void *cctx, - unsigned char *out, size_t *outl, size_t outsize)) -OSSL_CORE_MAKE_FUNC(int, OP_cipher_cipher, - (void *cctx, - unsigned char *out, size_t *outl, size_t outsize, - const unsigned char *in, size_t inl)) -OSSL_CORE_MAKE_FUNC(void, OP_cipher_freectx, (void *cctx)) -OSSL_CORE_MAKE_FUNC(void *, OP_cipher_dupctx, (void *cctx)) -OSSL_CORE_MAKE_FUNC(int, OP_cipher_get_params, (OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_cipher_get_ctx_params, (void *cctx, - OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_cipher_set_ctx_params, (void *cctx, - const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_cipher_gettable_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_cipher_settable_ctx_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_cipher_gettable_ctx_params, (void)) - -/* MACs */ - -# define OSSL_FUNC_MAC_NEWCTX 1 -# define OSSL_FUNC_MAC_DUPCTX 2 -# define OSSL_FUNC_MAC_FREECTX 3 -# define OSSL_FUNC_MAC_INIT 4 -# define OSSL_FUNC_MAC_UPDATE 5 -# define OSSL_FUNC_MAC_FINAL 6 -# define OSSL_FUNC_MAC_GET_PARAMS 7 -# define OSSL_FUNC_MAC_GET_CTX_PARAMS 8 -# define OSSL_FUNC_MAC_SET_CTX_PARAMS 9 -# define OSSL_FUNC_MAC_GETTABLE_PARAMS 10 -# define OSSL_FUNC_MAC_GETTABLE_CTX_PARAMS 11 -# define OSSL_FUNC_MAC_SETTABLE_CTX_PARAMS 12 - -OSSL_CORE_MAKE_FUNC(void *, OP_mac_newctx, (void *provctx)) -OSSL_CORE_MAKE_FUNC(void *, OP_mac_dupctx, (void *src)) -OSSL_CORE_MAKE_FUNC(void, OP_mac_freectx, (void *mctx)) -OSSL_CORE_MAKE_FUNC(size_t, OP_mac_size, (void *mctx)) -OSSL_CORE_MAKE_FUNC(int, OP_mac_init, (void *mctx)) -OSSL_CORE_MAKE_FUNC(int, OP_mac_update, - (void *mctx, const unsigned char *in, size_t inl)) -OSSL_CORE_MAKE_FUNC(int, OP_mac_final, - (void *mctx, - unsigned char *out, size_t *outl, size_t outsize)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_mac_gettable_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_mac_gettable_ctx_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_mac_settable_ctx_params, (void)) -OSSL_CORE_MAKE_FUNC(int, OP_mac_get_params, (OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_mac_get_ctx_params, - (void *mctx, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_mac_set_ctx_params, - (void *mctx, const OSSL_PARAM params[])) - -/* KDFs and PRFs */ - -# define OSSL_FUNC_KDF_NEWCTX 1 -# define OSSL_FUNC_KDF_DUPCTX 2 -# define OSSL_FUNC_KDF_FREECTX 3 -# define OSSL_FUNC_KDF_RESET 4 -# define OSSL_FUNC_KDF_DERIVE 5 -# define OSSL_FUNC_KDF_GETTABLE_PARAMS 6 -# define OSSL_FUNC_KDF_GETTABLE_CTX_PARAMS 7 -# define OSSL_FUNC_KDF_SETTABLE_CTX_PARAMS 8 -# define OSSL_FUNC_KDF_GET_PARAMS 9 -# define OSSL_FUNC_KDF_GET_CTX_PARAMS 10 -# define OSSL_FUNC_KDF_SET_CTX_PARAMS 11 - -OSSL_CORE_MAKE_FUNC(void *, OP_kdf_newctx, (void *provctx)) -OSSL_CORE_MAKE_FUNC(void *, OP_kdf_dupctx, (void *src)) -OSSL_CORE_MAKE_FUNC(void, OP_kdf_freectx, (void *kctx)) -OSSL_CORE_MAKE_FUNC(void, OP_kdf_reset, (void *kctx)) -OSSL_CORE_MAKE_FUNC(int, OP_kdf_derive, (void *kctx, unsigned char *key, - size_t keylen)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_kdf_gettable_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_kdf_gettable_ctx_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_kdf_settable_ctx_params, (void)) -OSSL_CORE_MAKE_FUNC(int, OP_kdf_get_params, (OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_kdf_get_ctx_params, - (void *kctx, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_kdf_set_ctx_params, - (void *kctx, const OSSL_PARAM params[])) - -/* RAND */ - -# define OSSL_FUNC_RAND_NEWCTX 1 -# define OSSL_FUNC_RAND_FREECTX 2 -# define OSSL_FUNC_RAND_INSTANTIATE 3 -# define OSSL_FUNC_RAND_UNINSTANTIATE 4 -# define OSSL_FUNC_RAND_GENERATE 5 -# define OSSL_FUNC_RAND_RESEED 6 -# define OSSL_FUNC_RAND_NONCE 7 -# define OSSL_FUNC_RAND_ENABLE_LOCKING 8 -# define OSSL_FUNC_RAND_LOCK 9 -# define OSSL_FUNC_RAND_UNLOCK 10 -# define OSSL_FUNC_RAND_GETTABLE_PARAMS 11 -# define OSSL_FUNC_RAND_GETTABLE_CTX_PARAMS 12 -# define OSSL_FUNC_RAND_SETTABLE_CTX_PARAMS 13 -# define OSSL_FUNC_RAND_GET_PARAMS 14 -# define OSSL_FUNC_RAND_GET_CTX_PARAMS 15 -# define OSSL_FUNC_RAND_SET_CTX_PARAMS 16 -# define OSSL_FUNC_RAND_SET_CALLBACKS 17 -# define OSSL_FUNC_RAND_VERIFY_ZEROIZATION 18 - -OSSL_CORE_MAKE_FUNC(void *, OP_rand_newctx, - (void *provctx, void *parent, - const OSSL_DISPATCH *parent_calls)) -OSSL_CORE_MAKE_FUNC(void, OP_rand_freectx, (void *vctx)) -OSSL_CORE_MAKE_FUNC(int, OP_rand_instantiate, - (void *vdrbg, unsigned int strength, - int prediction_resistance, - const unsigned char *pstr, size_t pstr_len)) -OSSL_CORE_MAKE_FUNC(int, OP_rand_uninstantiate, (void *vdrbg)) -OSSL_CORE_MAKE_FUNC(int, OP_rand_generate, - (void *vctx, unsigned char *out, size_t outlen, - unsigned int strength, int prediction_resistance, - const unsigned char *addin, size_t addin_len)) -OSSL_CORE_MAKE_FUNC(int, OP_rand_reseed, - (void *vctx, int prediction_resistance, - const unsigned char *ent, size_t ent_len, - const unsigned char *addin, size_t addin_len)) -OSSL_CORE_MAKE_FUNC(size_t, OP_rand_nonce, - (void *vctx, unsigned char *out, unsigned int strength, - size_t min_noncelen, size_t max_noncelen)) -OSSL_CORE_MAKE_FUNC(int, OP_rand_enable_locking, (void *vctx)) -OSSL_CORE_MAKE_FUNC(int, OP_rand_lock, (void *vctx)) -OSSL_CORE_MAKE_FUNC(void, OP_rand_unlock, (void *vctx)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_rand_gettable_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_rand_gettable_ctx_params, (void)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_rand_settable_ctx_params, (void)) -OSSL_CORE_MAKE_FUNC(int, OP_rand_get_params, (OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_rand_get_ctx_params, - (void *vctx, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(int, OP_rand_set_ctx_params, - (void *vctx, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(void, OP_rand_set_callbacks, - (void *vctx, OSSL_INOUT_CALLBACK *get_entropy, - OSSL_CALLBACK *cleanup_entropy, - OSSL_INOUT_CALLBACK *get_nonce, - OSSL_CALLBACK *cleanup_nonce, void *arg)) -OSSL_CORE_MAKE_FUNC(int, OP_rand_verify_zeroization, - (void *vctx)) - -/*- - * Key management - * - * The Key Management takes care of provider side key objects, and includes - * all current functionality to create them, destroy them, set parameters - * and key material, etc, essentially everything that manipulates the keys - * themselves and their parameters. - * - * The key objects are commonly refered to as |keydata|, and it MUST be able - * to contain parameters if the key has any, the public key and the private - * key. All parts are optional, but their presence determines what can be - * done with the key object in terms of encryption, signature, and so on. - * The assumption from libcrypto is that the key object contains any of the - * following data combinations: - * - * - parameters only - * - public key only - * - public key + private key - * - parameters + public key - * - parameters + public key + private key - * - * What "parameters", "public key" and "private key" means in detail is left - * to the implementation. In the case of DH and DSA, they would typically - * include domain parameters, while for certain variants of RSA, they would - * typically include PSS or OAEP parameters. - * - * Key objects are created with OP_keymgmt_new() and destroyed with - * Op_keymgmt_free(). Key objects can have data filled in with - * OP_keymgmt_import(). - * - * Three functions are made available to check what selection of data is - * present in a key object: OP_keymgmt_has_parameters(), - * OP_keymgmt_has_public_key(), and OP_keymgmt_has_private_key(), - */ - -/* Key data subset selection - individual bits */ -# define OSSL_KEYMGMT_SELECT_PRIVATE_KEY 0x01 -# define OSSL_KEYMGMT_SELECT_PUBLIC_KEY 0x02 -# define OSSL_KEYMGMT_SELECT_DOMAIN_PARAMETERS 0x04 -# define OSSL_KEYMGMT_SELECT_OTHER_PARAMETERS 0x80 - -/* Key data subset selection - combinations */ -# define OSSL_KEYMGMT_SELECT_ALL_PARAMETERS \ - ( OSSL_KEYMGMT_SELECT_DOMAIN_PARAMETERS \ - | OSSL_KEYMGMT_SELECT_OTHER_PARAMETERS) -# define OSSL_KEYMGMT_SELECT_KEYPAIR \ - ( OSSL_KEYMGMT_SELECT_PRIVATE_KEY | OSSL_KEYMGMT_SELECT_PUBLIC_KEY ) -# define OSSL_KEYMGMT_SELECT_ALL \ - ( OSSL_KEYMGMT_SELECT_KEYPAIR | OSSL_KEYMGMT_SELECT_ALL_PARAMETERS ) - -/* Basic key object creation */ -# define OSSL_FUNC_KEYMGMT_NEW 1 -OSSL_CORE_MAKE_FUNC(void *, OP_keymgmt_new, (void *provctx)) - -/* Generation, a more complex constructor */ -# define OSSL_FUNC_KEYMGMT_GEN_INIT 2 -# define OSSL_FUNC_KEYMGMT_GEN_SET_TEMPLATE 3 -# define OSSL_FUNC_KEYMGMT_GEN_SET_PARAMS 4 -# define OSSL_FUNC_KEYMGMT_GEN_SETTABLE_PARAMS 5 -# define OSSL_FUNC_KEYMGMT_GEN 6 -# define OSSL_FUNC_KEYMGMT_GEN_CLEANUP 7 -OSSL_CORE_MAKE_FUNC(void *, OP_keymgmt_gen_init, - (void *provctx, int selection)) -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_gen_set_template, - (void *genctx, void *templ)) -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_gen_set_params, - (void *genctx, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, - OP_keymgmt_gen_settable_params, (void *provctx)) -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_gen_get_params, - (void *genctx, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, - OP_keymgmt_gen_gettable_params, (void *provctx)) -OSSL_CORE_MAKE_FUNC(void *, OP_keymgmt_gen, - (void *genctx, OSSL_CALLBACK *cb, void *cbarg)) -OSSL_CORE_MAKE_FUNC(void, OP_keymgmt_gen_cleanup, (void *genctx)) - -/* Basic key object destruction */ -# define OSSL_FUNC_KEYMGMT_FREE 10 -OSSL_CORE_MAKE_FUNC(void, OP_keymgmt_free, (void *keydata)) - -/* Key object information, with discovery */ -#define OSSL_FUNC_KEYMGMT_GET_PARAMS 11 -#define OSSL_FUNC_KEYMGMT_GETTABLE_PARAMS 12 -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_get_params, - (void *keydata, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keymgmt_gettable_params, (void)) - -#define OSSL_FUNC_KEYMGMT_SET_PARAMS 13 -#define OSSL_FUNC_KEYMGMT_SETTABLE_PARAMS 14 -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_set_params, - (void *keydata, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keymgmt_settable_params, (void)) - -/* Key checks - discovery of supported operations */ -# define OSSL_FUNC_KEYMGMT_QUERY_OPERATION_NAME 20 -OSSL_CORE_MAKE_FUNC(const char *, OP_keymgmt_query_operation_name, - (int operation_id)) - -/* Key checks - key data content checks */ -# define OSSL_FUNC_KEYMGMT_HAS 21 -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_has, (void *keydata, int selection)) - -/* Key checks - validation */ -# define OSSL_FUNC_KEYMGMT_VALIDATE 22 -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_validate, (void *keydata, int selection)) - -/* Key checks - matching */ -# define OSSL_FUNC_KEYMGMT_MATCH 23 -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_match, - (const void *keydata1, const void *keydata2, - int selection)) - -/* Import and export functions, with discovery */ -# define OSSL_FUNC_KEYMGMT_IMPORT 40 -# define OSSL_FUNC_KEYMGMT_IMPORT_TYPES 41 -# define OSSL_FUNC_KEYMGMT_EXPORT 42 -# define OSSL_FUNC_KEYMGMT_EXPORT_TYPES 43 -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_import, - (void *keydata, int selection, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keymgmt_import_types, - (int selection)) -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_export, - (void *keydata, int selection, - OSSL_CALLBACK *param_cb, void *cbarg)) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keymgmt_export_types, - (int selection)) - -/* Copy function, only works for matching keymgmt */ -# define OSSL_FUNC_KEYMGMT_COPY 44 -OSSL_CORE_MAKE_FUNC(int, OP_keymgmt_copy, - ( void *keydata_to, const void *keydata_from, - int selection)) - -/* Key Exchange */ - -# define OSSL_FUNC_KEYEXCH_NEWCTX 1 -# define OSSL_FUNC_KEYEXCH_INIT 2 -# define OSSL_FUNC_KEYEXCH_DERIVE 3 -# define OSSL_FUNC_KEYEXCH_SET_PEER 4 -# define OSSL_FUNC_KEYEXCH_FREECTX 5 -# define OSSL_FUNC_KEYEXCH_DUPCTX 6 -# define OSSL_FUNC_KEYEXCH_SET_CTX_PARAMS 7 -# define OSSL_FUNC_KEYEXCH_SETTABLE_CTX_PARAMS 8 -# define OSSL_FUNC_KEYEXCH_GET_CTX_PARAMS 9 -# define OSSL_FUNC_KEYEXCH_GETTABLE_CTX_PARAMS 10 - -OSSL_CORE_MAKE_FUNC(void *, OP_keyexch_newctx, (void *provctx)) -OSSL_CORE_MAKE_FUNC(int, OP_keyexch_init, (void *ctx, void *provkey)) -OSSL_CORE_MAKE_FUNC(int, OP_keyexch_derive, (void *ctx, unsigned char *secret, - size_t *secretlen, size_t outlen)) -OSSL_CORE_MAKE_FUNC(int, OP_keyexch_set_peer, (void *ctx, void *provkey)) -OSSL_CORE_MAKE_FUNC(void, OP_keyexch_freectx, (void *ctx)) -OSSL_CORE_MAKE_FUNC(void *, OP_keyexch_dupctx, (void *ctx)) -OSSL_CORE_MAKE_FUNC(int, OP_keyexch_set_ctx_params, (void *ctx, - const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keyexch_settable_ctx_params, - (void)) -OSSL_CORE_MAKE_FUNC(int, OP_keyexch_get_ctx_params, (void *ctx, - OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_keyexch_gettable_ctx_params, - (void)) - -/* Signature */ - -# define OSSL_FUNC_SIGNATURE_NEWCTX 1 -# define OSSL_FUNC_SIGNATURE_SIGN_INIT 2 -# define OSSL_FUNC_SIGNATURE_SIGN 3 -# define OSSL_FUNC_SIGNATURE_VERIFY_INIT 4 -# define OSSL_FUNC_SIGNATURE_VERIFY 5 -# define OSSL_FUNC_SIGNATURE_VERIFY_RECOVER_INIT 6 -# define OSSL_FUNC_SIGNATURE_VERIFY_RECOVER 7 -# define OSSL_FUNC_SIGNATURE_DIGEST_SIGN_INIT 8 -# define OSSL_FUNC_SIGNATURE_DIGEST_SIGN_UPDATE 9 -# define OSSL_FUNC_SIGNATURE_DIGEST_SIGN_FINAL 10 -# define OSSL_FUNC_SIGNATURE_DIGEST_SIGN 11 -# define OSSL_FUNC_SIGNATURE_DIGEST_VERIFY_INIT 12 -# define OSSL_FUNC_SIGNATURE_DIGEST_VERIFY_UPDATE 13 -# define OSSL_FUNC_SIGNATURE_DIGEST_VERIFY_FINAL 14 -# define OSSL_FUNC_SIGNATURE_DIGEST_VERIFY 15 -# define OSSL_FUNC_SIGNATURE_FREECTX 16 -# define OSSL_FUNC_SIGNATURE_DUPCTX 17 -# define OSSL_FUNC_SIGNATURE_GET_CTX_PARAMS 18 -# define OSSL_FUNC_SIGNATURE_GETTABLE_CTX_PARAMS 19 -# define OSSL_FUNC_SIGNATURE_SET_CTX_PARAMS 20 -# define OSSL_FUNC_SIGNATURE_SETTABLE_CTX_PARAMS 21 -# define OSSL_FUNC_SIGNATURE_GET_CTX_MD_PARAMS 22 -# define OSSL_FUNC_SIGNATURE_GETTABLE_CTX_MD_PARAMS 23 -# define OSSL_FUNC_SIGNATURE_SET_CTX_MD_PARAMS 24 -# define OSSL_FUNC_SIGNATURE_SETTABLE_CTX_MD_PARAMS 25 - -OSSL_CORE_MAKE_FUNC(void *, OP_signature_newctx, (void *provctx, - const char *propq)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_sign_init, (void *ctx, void *provkey)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_sign, (void *ctx, unsigned char *sig, - size_t *siglen, size_t sigsize, - const unsigned char *tbs, - size_t tbslen)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_verify_init, (void *ctx, void *provkey)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_verify, (void *ctx, - const unsigned char *sig, - size_t siglen, - const unsigned char *tbs, - size_t tbslen)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_verify_recover_init, (void *ctx, - void *provkey)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_verify_recover, (void *ctx, - unsigned char *rout, - size_t *routlen, - size_t routsize, - const unsigned char *sig, - size_t siglen)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_sign_init, - (void *ctx, const char *mdname, void *provkey)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_sign_update, - (void *ctx, const unsigned char *data, size_t datalen)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_sign_final, - (void *ctx, unsigned char *sig, size_t *siglen, - size_t sigsize)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_sign, - (void *ctx, unsigned char *sigret, size_t *siglen, - size_t sigsize, const unsigned char *tbs, size_t tbslen)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_verify_init, - (void *ctx, const char *mdname, void *provkey)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_verify_update, - (void *ctx, const unsigned char *data, size_t datalen)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_verify_final, - (void *ctx, const unsigned char *sig, size_t siglen)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_digest_verify, - (void *ctx, const unsigned char *sig, size_t siglen, - const unsigned char *tbs, size_t tbslen)) -OSSL_CORE_MAKE_FUNC(void, OP_signature_freectx, (void *ctx)) -OSSL_CORE_MAKE_FUNC(void *, OP_signature_dupctx, (void *ctx)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_get_ctx_params, - (void *ctx, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_signature_gettable_ctx_params, - (void)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_set_ctx_params, - (void *ctx, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_signature_settable_ctx_params, - (void)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_get_ctx_md_params, - (void *ctx, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_signature_gettable_ctx_md_params, - (void *ctx)) -OSSL_CORE_MAKE_FUNC(int, OP_signature_set_ctx_md_params, - (void *ctx, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_signature_settable_ctx_md_params, - (void *ctx)) - - -/* Asymmetric Ciphers */ - -# define OSSL_FUNC_ASYM_CIPHER_NEWCTX 1 -# define OSSL_FUNC_ASYM_CIPHER_ENCRYPT_INIT 2 -# define OSSL_FUNC_ASYM_CIPHER_ENCRYPT 3 -# define OSSL_FUNC_ASYM_CIPHER_DECRYPT_INIT 4 -# define OSSL_FUNC_ASYM_CIPHER_DECRYPT 5 -# define OSSL_FUNC_ASYM_CIPHER_FREECTX 6 -# define OSSL_FUNC_ASYM_CIPHER_DUPCTX 7 -# define OSSL_FUNC_ASYM_CIPHER_GET_CTX_PARAMS 8 -# define OSSL_FUNC_ASYM_CIPHER_GETTABLE_CTX_PARAMS 9 -# define OSSL_FUNC_ASYM_CIPHER_SET_CTX_PARAMS 10 -# define OSSL_FUNC_ASYM_CIPHER_SETTABLE_CTX_PARAMS 11 - -OSSL_CORE_MAKE_FUNC(void *, OP_asym_cipher_newctx, (void *provctx)) -OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_encrypt_init, (void *ctx, void *provkey)) -OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_encrypt, (void *ctx, unsigned char *out, - size_t *outlen, - size_t outsize, - const unsigned char *in, - size_t inlen)) -OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_decrypt_init, (void *ctx, void *provkey)) -OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_decrypt, (void *ctx, unsigned char *out, - size_t *outlen, - size_t outsize, - const unsigned char *in, - size_t inlen)) -OSSL_CORE_MAKE_FUNC(void, OP_asym_cipher_freectx, (void *ctx)) -OSSL_CORE_MAKE_FUNC(void *, OP_asym_cipher_dupctx, (void *ctx)) -OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_get_ctx_params, - (void *ctx, OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_asym_cipher_gettable_ctx_params, - (void)) -OSSL_CORE_MAKE_FUNC(int, OP_asym_cipher_set_ctx_params, - (void *ctx, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_asym_cipher_settable_ctx_params, - (void)) - -/* Serializers */ -# define OSSL_FUNC_SERIALIZER_NEWCTX 1 -# define OSSL_FUNC_SERIALIZER_FREECTX 2 -# define OSSL_FUNC_SERIALIZER_SET_CTX_PARAMS 3 -# define OSSL_FUNC_SERIALIZER_SETTABLE_CTX_PARAMS 4 -# define OSSL_FUNC_SERIALIZER_SERIALIZE_DATA 10 -# define OSSL_FUNC_SERIALIZER_SERIALIZE_OBJECT 11 -OSSL_CORE_MAKE_FUNC(void *, OP_serializer_newctx, (void *provctx)) -OSSL_CORE_MAKE_FUNC(void, OP_serializer_freectx, (void *ctx)) -OSSL_CORE_MAKE_FUNC(int, OP_serializer_set_ctx_params, - (void *ctx, const OSSL_PARAM params[])) -OSSL_CORE_MAKE_FUNC(const OSSL_PARAM *, OP_serializer_settable_ctx_params, - (void)) - -OSSL_CORE_MAKE_FUNC(int, OP_serializer_serialize_data, - (void *ctx, const OSSL_PARAM[], OSSL_CORE_BIO *out, - OSSL_PASSPHRASE_CALLBACK *cb, void *cbarg)) -OSSL_CORE_MAKE_FUNC(int, OP_serializer_serialize_object, - (void *ctx, void *obj, OSSL_CORE_BIO *out, - OSSL_PASSPHRASE_CALLBACK *cb, void *cbarg)) - -# ifdef __cplusplus -} -# endif - -#endif diff --git a/providers/common/bio_prov.c b/providers/common/bio_prov.c index 4ddfa0c414..2186894b11 100644 --- a/providers/common/bio_prov.c +++ b/providers/common/bio_prov.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include "internal/cryptlib.h" #include "prov/bio.h" diff --git a/providers/common/capabilities.c b/providers/common/capabilities.c index 84d2006cee..a41d3990f0 100644 --- a/providers/common/capabilities.c +++ b/providers/common/capabilities.c @@ -9,7 +9,7 @@ #include #include -#include +#include #include /* For TLS1_VERSION etc */ #include diff --git a/providers/common/include/prov/providercommon.h b/providers/common/include/prov/providercommon.h index b9fcf3d52e..2a614f5d81 100644 --- a/providers/common/include/prov/providercommon.h +++ b/providers/common/include/prov/providercommon.h @@ -8,7 +8,7 @@ */ #include -#include +#include const OSSL_CORE_HANDLE *FIPS_get_core_handle(OPENSSL_CTX *ctx); diff --git a/providers/defltprov.c b/providers/defltprov.c index 7c1ffc7763..1ea3604377 100644 --- a/providers/defltprov.c +++ b/providers/defltprov.c @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include "prov/bio.h" diff --git a/providers/fips/fipsprov.c b/providers/fips/fipsprov.c index 6a1b56eeae..d847d5c903 100644 --- a/providers/fips/fipsprov.c +++ b/providers/fips/fipsprov.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/providers/fips/self_test.h b/providers/fips/self_test.h index ad693aa9a2..77ef6314ef 100644 --- a/providers/fips/self_test.h +++ b/providers/fips/self_test.h @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include diff --git a/providers/implementations/asymciphers/rsa_enc.c b/providers/implementations/asymciphers/rsa_enc.c index db89de8a26..86d4b878fa 100644 --- a/providers/implementations/asymciphers/rsa_enc.c +++ b/providers/implementations/asymciphers/rsa_enc.c @@ -15,7 +15,7 @@ #include #include -#include +#include #include #include #include diff --git a/providers/implementations/ciphers/cipher_null.c b/providers/implementations/ciphers/cipher_null.c index 6443e65742..20567279eb 100644 --- a/providers/implementations/ciphers/cipher_null.c +++ b/providers/implementations/ciphers/cipher_null.c @@ -9,7 +9,7 @@ #include #include -#include +#include #include "prov/implementations.h" #include "prov/ciphercommon.h" #include "prov/providercommonerr.h" diff --git a/providers/implementations/ciphers/cipher_tdes.h b/providers/implementations/ciphers/cipher_tdes.h index 98bb32ee3c..8455cc4660 100644 --- a/providers/implementations/ciphers/cipher_tdes.h +++ b/providers/implementations/ciphers/cipher_tdes.h @@ -8,7 +8,7 @@ */ #include -#include +#include #include "crypto/des_platform.h" #define DES_BLOCK_SIZE 8 diff --git a/providers/implementations/digests/sha2_prov.c b/providers/implementations/digests/sha2_prov.c index 91be5087f5..4cabd323de 100644 --- a/providers/implementations/digests/sha2_prov.c +++ b/providers/implementations/digests/sha2_prov.c @@ -14,7 +14,7 @@ #include "internal/deprecated.h" #include -#include +#include #include #include #include diff --git a/providers/implementations/exchange/dh_exch.c b/providers/implementations/exchange/dh_exch.c index 3830e0e0be..c8ed76e8b1 100644 --- a/providers/implementations/exchange/dh_exch.c +++ b/providers/implementations/exchange/dh_exch.c @@ -14,7 +14,7 @@ #include "internal/deprecated.h" #include -#include +#include #include #include #include diff --git a/providers/implementations/exchange/ecdh_exch.c b/providers/implementations/exchange/ecdh_exch.c index ae0720d90d..686559d561 100644 --- a/providers/implementations/exchange/ecdh_exch.c +++ b/providers/implementations/exchange/ecdh_exch.c @@ -16,7 +16,7 @@ #include #include #include -#include +#include #include #include #include diff --git a/providers/implementations/exchange/ecx_exch.c b/providers/implementations/exchange/ecx_exch.c index ea12628937..311a31d36a 100644 --- a/providers/implementations/exchange/ecx_exch.c +++ b/providers/implementations/exchange/ecx_exch.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include #include diff --git a/providers/implementations/include/prov/ciphercommon.h b/providers/implementations/include/prov/ciphercommon.h index d4dc5ed1db..fe3b3143c4 100644 --- a/providers/implementations/include/prov/ciphercommon.h +++ b/providers/implementations/include/prov/ciphercommon.h @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include #include "internal/cryptlib.h" diff --git a/providers/implementations/include/prov/digestcommon.h b/providers/implementations/include/prov/digestcommon.h index e5b76ff49f..99fe09cbe6 100644 --- a/providers/implementations/include/prov/digestcommon.h +++ b/providers/implementations/include/prov/digestcommon.h @@ -10,7 +10,7 @@ #ifndef OSSL_PROVIDERS_DIGESTCOMMON_H # define OSSL_PROVIDERS_DIGESTCOMMON_H -# include +# include # include # include diff --git a/providers/implementations/keymgmt/dh_kmgmt.c b/providers/implementations/keymgmt/dh_kmgmt.c index 82fbdc8bb4..52709b4e2d 100644 --- a/providers/implementations/keymgmt/dh_kmgmt.c +++ b/providers/implementations/keymgmt/dh_kmgmt.c @@ -14,7 +14,7 @@ #include "internal/deprecated.h" #include /* strcmp */ -#include +#include #include #include #include diff --git a/providers/implementations/keymgmt/dsa_kmgmt.c b/providers/implementations/keymgmt/dsa_kmgmt.c index 5fa3e08af9..feadb875dc 100644 --- a/providers/implementations/keymgmt/dsa_kmgmt.c +++ b/providers/implementations/keymgmt/dsa_kmgmt.c @@ -14,7 +14,7 @@ #include "internal/deprecated.h" #include "e_os.h" /* strcasecmp */ -#include +#include #include #include #include diff --git a/providers/implementations/keymgmt/ec_kmgmt.c b/providers/implementations/keymgmt/ec_kmgmt.c index cd8e7f5ece..7212ddf973 100644 --- a/providers/implementations/keymgmt/ec_kmgmt.c +++ b/providers/implementations/keymgmt/ec_kmgmt.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/keymgmt/ecx_kmgmt.c b/providers/implementations/keymgmt/ecx_kmgmt.c index 813604f7b1..33fecba8b8 100644 --- a/providers/implementations/keymgmt/ecx_kmgmt.c +++ b/providers/implementations/keymgmt/ecx_kmgmt.c @@ -11,7 +11,7 @@ #include /* For strcasecmp on Windows */ #include "e_os.h" -#include +#include #include #include #include diff --git a/providers/implementations/keymgmt/rsa_kmgmt.c b/providers/implementations/keymgmt/rsa_kmgmt.c index 313b9c292d..f8b466a603 100644 --- a/providers/implementations/keymgmt/rsa_kmgmt.c +++ b/providers/implementations/keymgmt/rsa_kmgmt.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/macs/blake2_mac_impl.c b/providers/implementations/macs/blake2_mac_impl.c index 6b6261f31c..64d997bd50 100644 --- a/providers/implementations/macs/blake2_mac_impl.c +++ b/providers/implementations/macs/blake2_mac_impl.c @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include diff --git a/providers/implementations/macs/cmac_prov.c b/providers/implementations/macs/cmac_prov.c index 1377c795df..748824782f 100644 --- a/providers/implementations/macs/cmac_prov.c +++ b/providers/implementations/macs/cmac_prov.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/macs/gmac_prov.c b/providers/implementations/macs/gmac_prov.c index f9e5a3a17d..5a0174573d 100644 --- a/providers/implementations/macs/gmac_prov.c +++ b/providers/implementations/macs/gmac_prov.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include #include diff --git a/providers/implementations/macs/hmac_prov.c b/providers/implementations/macs/hmac_prov.c index bd2cff27af..6974db2944 100644 --- a/providers/implementations/macs/hmac_prov.c +++ b/providers/implementations/macs/hmac_prov.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/macs/kmac_prov.c b/providers/implementations/macs/kmac_prov.c index da465965de..d1ccda9b23 100644 --- a/providers/implementations/macs/kmac_prov.c +++ b/providers/implementations/macs/kmac_prov.c @@ -48,7 +48,7 @@ #include #include -#include +#include #include #include #include diff --git a/providers/implementations/macs/poly1305_prov.c b/providers/implementations/macs/poly1305_prov.c index 1edd2dc063..b14fc35b3e 100644 --- a/providers/implementations/macs/poly1305_prov.c +++ b/providers/implementations/macs/poly1305_prov.c @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include #include diff --git a/providers/implementations/macs/siphash_prov.c b/providers/implementations/macs/siphash_prov.c index e82f94ce7b..4ddcb43d59 100644 --- a/providers/implementations/macs/siphash_prov.c +++ b/providers/implementations/macs/siphash_prov.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_dh_param.c b/providers/implementations/serializers/serializer_dh_param.c index 4acf5caec6..7254695697 100644 --- a/providers/implementations/serializers/serializer_dh_param.c +++ b/providers/implementations/serializers/serializer_dh_param.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_dh_priv.c b/providers/implementations/serializers/serializer_dh_priv.c index c37eb40297..7badf827ea 100644 --- a/providers/implementations/serializers/serializer_dh_priv.c +++ b/providers/implementations/serializers/serializer_dh_priv.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_dh_pub.c b/providers/implementations/serializers/serializer_dh_pub.c index d1b60d87c5..45aa2a946c 100644 --- a/providers/implementations/serializers/serializer_dh_pub.c +++ b/providers/implementations/serializers/serializer_dh_pub.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_dsa_param.c b/providers/implementations/serializers/serializer_dsa_param.c index 23a6d1d25d..40e9a7b7ae 100644 --- a/providers/implementations/serializers/serializer_dsa_param.c +++ b/providers/implementations/serializers/serializer_dsa_param.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_dsa_priv.c b/providers/implementations/serializers/serializer_dsa_priv.c index cb9136140d..4e9f80056e 100644 --- a/providers/implementations/serializers/serializer_dsa_priv.c +++ b/providers/implementations/serializers/serializer_dsa_priv.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_dsa_pub.c b/providers/implementations/serializers/serializer_dsa_pub.c index 5c5e61f13d..b47d0dd2d7 100644 --- a/providers/implementations/serializers/serializer_dsa_pub.c +++ b/providers/implementations/serializers/serializer_dsa_pub.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_ec_param.c b/providers/implementations/serializers/serializer_ec_param.c index a82971602f..7eda31f3a0 100644 --- a/providers/implementations/serializers/serializer_ec_param.c +++ b/providers/implementations/serializers/serializer_ec_param.c @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_ec_priv.c b/providers/implementations/serializers/serializer_ec_priv.c index 4a0e3d8be7..e96c08b7e7 100644 --- a/providers/implementations/serializers/serializer_ec_priv.c +++ b/providers/implementations/serializers/serializer_ec_priv.c @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_ec_pub.c b/providers/implementations/serializers/serializer_ec_pub.c index 1c145cf3c0..87e7646285 100644 --- a/providers/implementations/serializers/serializer_ec_pub.c +++ b/providers/implementations/serializers/serializer_ec_pub.c @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_ecx_priv.c b/providers/implementations/serializers/serializer_ecx_priv.c index ea46d6c5e4..0036ea6878 100644 --- a/providers/implementations/serializers/serializer_ecx_priv.c +++ b/providers/implementations/serializers/serializer_ecx_priv.c @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_ecx_pub.c b/providers/implementations/serializers/serializer_ecx_pub.c index 94483f10ed..3e2c7620ac 100644 --- a/providers/implementations/serializers/serializer_ecx_pub.c +++ b/providers/implementations/serializers/serializer_ecx_pub.c @@ -7,7 +7,7 @@ * https://www.openssl.org/source/license.html */ -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_local.h b/providers/implementations/serializers/serializer_local.h index f4aee6fc23..237e83a195 100644 --- a/providers/implementations/serializers/serializer_local.h +++ b/providers/implementations/serializers/serializer_local.h @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include /* i2d_of_void */ #include /* X509_SIG */ diff --git a/providers/implementations/serializers/serializer_rsa_priv.c b/providers/implementations/serializers/serializer_rsa_priv.c index 981ddcf2fc..115a8a6d7b 100644 --- a/providers/implementations/serializers/serializer_rsa_priv.c +++ b/providers/implementations/serializers/serializer_rsa_priv.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/serializers/serializer_rsa_pub.c b/providers/implementations/serializers/serializer_rsa_pub.c index 80e1504611..d5da6df805 100644 --- a/providers/implementations/serializers/serializer_rsa_pub.c +++ b/providers/implementations/serializers/serializer_rsa_pub.c @@ -13,7 +13,7 @@ */ #include "internal/deprecated.h" -#include +#include #include #include #include diff --git a/providers/implementations/signature/dsa.c b/providers/implementations/signature/dsa.c index a4902babcb..067f9e70c7 100644 --- a/providers/implementations/signature/dsa.c +++ b/providers/implementations/signature/dsa.c @@ -16,7 +16,7 @@ #include #include -#include +#include #include #include #include diff --git a/providers/implementations/signature/ecdsa.c b/providers/implementations/signature/ecdsa.c index 61a13f4f2f..7ee14ff16b 100644 --- a/providers/implementations/signature/ecdsa.c +++ b/providers/implementations/signature/ecdsa.c @@ -15,7 +15,7 @@ #include /* memcpy */ #include -#include +#include #include #include #include diff --git a/providers/implementations/signature/eddsa.c b/providers/implementations/signature/eddsa.c index 35a69504d3..9a7188ef7e 100644 --- a/providers/implementations/signature/eddsa.c +++ b/providers/implementations/signature/eddsa.c @@ -8,7 +8,7 @@ */ #include -#include +#include #include #include #include diff --git a/providers/implementations/signature/rsa.c b/providers/implementations/signature/rsa.c index 5af64d2a90..49334e5cf0 100644 --- a/providers/implementations/signature/rsa.c +++ b/providers/implementations/signature/rsa.c @@ -15,7 +15,7 @@ #include #include -#include +#include #include #include #include diff --git a/providers/legacyprov.c b/providers/legacyprov.c index 886037cff9..288c17d2e4 100644 --- a/providers/legacyprov.c +++ b/providers/legacyprov.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include "prov/provider_ctx.h" diff --git a/providers/nullprov.c b/providers/nullprov.c index 945ec2fbb6..bdad5f15e6 100644 --- a/providers/nullprov.c +++ b/providers/nullprov.c @@ -10,7 +10,7 @@ #include #include #include -#include +#include #include #include #include "prov/implementations.h" diff --git a/test/filterprov.c b/test/filterprov.c index c2189e25a8..03063d6206 100644 --- a/test/filterprov.c +++ b/test/filterprov.c @@ -14,7 +14,7 @@ #include #include -#include +#include #include #include diff --git a/test/p_test.c b/test/p_test.c index 5a491234a0..9a0f22947a 100644 --- a/test/p_test.c +++ b/test/p_test.c @@ -27,7 +27,7 @@ #endif #include -#include +#include static OSSL_core_gettable_params_fn *c_gettable_params = NULL; static OSSL_core_get_params_fn *c_get_params = NULL; diff --git a/test/sslapitest.c b/test/sslapitest.c index c3ee6fa996..989d041a17 100644 --- a/test/sslapitest.c +++ b/test/sslapitest.c @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include "ssltestlib.h" diff --git a/test/tls-provider.c b/test/tls-provider.c index 4025d9ee16..158c00747c 100644 --- a/test/tls-provider.c +++ b/test/tls-provider.c @@ -9,7 +9,7 @@ #include #include -#include +#include #include #include /* For TLS1_3_VERSION */