Replumbing: offer a core upcall to get the provider object's library context
authorRichard Levitte <levitte@openssl.org>
Fri, 14 Jun 2019 08:19:56 +0000 (10:19 +0200)
committerRichard Levitte <levitte@openssl.org>
Mon, 17 Jun 2019 09:38:11 +0000 (11:38 +0200)
commite7706e63e6226c26699062a6d68fc97bed528a6f
treeca452b3e79ed7c472b394ecbeabb2f614f592194
parent55a9ca5cc5e14d0018015de31baa28f2a711adaa
Replumbing: offer a core upcall to get the provider object's library context

The FIPS module currently has "magic" support to have the library
context become the provider context within the core code, for the FIPS
module's inner provider.

We replace that with a core upcall that returns the library context
associated with a provider object.  That way, the FIPS module can
handle the assignment of the inner provider context itself.  This
allows the FIPS module (and any other provider module that wishes to
use a similar mechanism) to define for itself what the provider
context is.  It's currently simply a pointer to a library context,
but may contain other stuff as well in the future.

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/9160)
crypto/provider_core.c
include/openssl/core_numbers.h