Make the rand_crng code OPENSSL_CTX aware
[oweals/openssl.git] / include / internal / provider.h
index abd5ec4392835b89784bb224a59e5ef09d857844..f48c758479736df5f7a30d434897a5c6341951e4 100644 (file)
@@ -45,6 +45,9 @@ int ossl_provider_add_parameter(OSSL_PROVIDER *prov, const char *name,
  */
 int ossl_provider_activate(OSSL_PROVIDER *prov);
 
+/* Return pointer to the provider's context */
+void *ossl_provider_ctx(const OSSL_PROVIDER *prov);
+
 /* Iterate over all loaded providers */
 int ossl_provider_forall_loaded(OPENSSL_CTX *,
                                 int (*cb)(OSSL_PROVIDER *provider,
@@ -52,10 +55,10 @@ int ossl_provider_forall_loaded(OPENSSL_CTX *,
                                 void *cbdata);
 
 /* Getters for other library functions */
-const char *ossl_provider_name(OSSL_PROVIDER *prov);
-const DSO *ossl_provider_dso(OSSL_PROVIDER *prov);
-const char *ossl_provider_module_name(OSSL_PROVIDER *prov);
-const char *ossl_provider_module_path(OSSL_PROVIDER *prov);
+const char *ossl_provider_name(const OSSL_PROVIDER *prov);
+const DSO *ossl_provider_dso(const OSSL_PROVIDER *prov);
+const char *ossl_provider_module_name(const OSSL_PROVIDER *prov);
+const char *ossl_provider_module_path(const OSSL_PROVIDER *prov);
 
 /* Thin wrappers around calls to the provider */
 void ossl_provider_teardown(const OSSL_PROVIDER *prov);
@@ -66,6 +69,9 @@ const OSSL_ALGORITHM *ossl_provider_query_operation(const OSSL_PROVIDER *prov,
                                                     int operation_id,
                                                     int *no_cache);
 
+/* Configuration */
+void ossl_provider_add_conf_module(void);
+
 # ifdef __cplusplus
 }
 # endif