diff options
author | Pauli <paul.dale@oracle.com> | 2020-07-22 12:55:31 +1000 |
---|---|---|
committer | Pauli <paul.dale@oracle.com> | 2020-08-07 14:16:47 +1000 |
commit | 7d615e2178fbffa53f05a67f68e5741374340308 (patch) | |
tree | 8e5cdbb8c39e24727e64af790831980b2a5d9e6a /providers/fips/fipsprov.c | |
parent | 4df0d37ff6cc399b93f9ef2524d087c2d67d41b5 (diff) | |
download | openssl-new-7d615e2178fbffa53f05a67f68e5741374340308.tar.gz |
rand_drbg: remove RAND_DRBG.
The RAND_DRBG API did not fit well into the new provider concept as
implemented by EVP_RAND and EVP_RAND_CTX. The main reason is that the
RAND_DRBG API is a mixture of 'front end' and 'back end' API calls
and some of its API calls are rather low-level. This holds in particular
for the callback mechanism (RAND_DRBG_set_callbacks()) and the RAND_DRBG
type changing mechanism (RAND_DRBG_set()).
Adding a compatibility layer to continue supporting the RAND_DRBG API as
a legacy API for a regular deprecation period turned out to come at the
price of complicating the new provider API unnecessarily. Since the
RAND_DRBG API exists only since version 1.1.1, it was decided by the OMC
to drop it entirely.
Other related changes:
Use RNG instead of DRBG in EVP_RAND documentation. The documentation was
using DRBG in places where it should have been RNG or CSRNG.
Move the RAND_DRBG(7) documentation to EVP_RAND(7).
Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
(Merged from https://github.com/openssl/openssl/pull/12509)
Diffstat (limited to 'providers/fips/fipsprov.c')
-rw-r--r-- | providers/fips/fipsprov.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/providers/fips/fipsprov.c b/providers/fips/fipsprov.c index 77cd75fcdf..771f23c667 100644 --- a/providers/fips/fipsprov.c +++ b/providers/fips/fipsprov.c @@ -12,7 +12,7 @@ #include <openssl/params.h> #include <openssl/obj_mac.h> /* NIDs used by ossl_prov_util_nid_to_name() */ #include <openssl/fips_names.h> -#include <openssl/rand_drbg.h> /* OPENSSL_CTX_get0_public_drbg() */ +#include <openssl/rand.h> /* RAND_get0_public() */ #include "internal/cryptlib.h" #include "prov/implementations.h" #include "prov/provider_ctx.h" @@ -642,7 +642,7 @@ int OSSL_provider_init(const OSSL_CORE_HANDLE *handle, } /* TODO(3.0): Tests will hang if this is removed */ - (void)OPENSSL_CTX_get0_public_drbg(libctx); + (void)RAND_get0_public(libctx); *out = fips_dispatch_table; return 1; |