summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2019-11-01 16:56:31 +0100
committerRichard Levitte <levitte@openssl.org>2019-11-03 18:33:43 +0100
commit3ee348b0dc5cd904fc2c022e6543f478c3d78732 (patch)
tree0cb4dd05a834849502e12a6b253a3d21198389c6 /include
parent60653e5b25242555446f8acf0abd5ab9ff83010c (diff)
Change EVP_PKEY_CTX_new_provided() to take a library context too.
With provided algorithms, the library context is ever present, so of course it should be specified alongside the algorithm name and property query string. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10308)
Diffstat (limited to 'include')
-rw-r--r--include/crypto/evp.h6
-rw-r--r--include/openssl/evp.h3
2 files changed, 7 insertions, 2 deletions
diff --git a/include/crypto/evp.h b/include/crypto/evp.h
index dad7174bc5..32ae121eea 100644
--- a/include/crypto/evp.h
+++ b/include/crypto/evp.h
@@ -21,7 +21,11 @@ struct evp_pkey_ctx_st {
/* Actual operation */
int operation;
- /* Algorithm name and properties associated with this context */
+ /*
+ * Library context, Algorithm name and properties associated
+ * with this context
+ */
+ OPENSSL_CTX *libctx;
const char *algorithm;
const char *propquery;
diff --git a/include/openssl/evp.h b/include/openssl/evp.h
index a0190c8b08..baa1ce8c6c 100644
--- a/include/openssl/evp.h
+++ b/include/openssl/evp.h
@@ -1461,7 +1461,8 @@ void EVP_KEYMGMT_names_do_all(const EVP_KEYMGMT *keymgmt,
EVP_PKEY_CTX *EVP_PKEY_CTX_new(EVP_PKEY *pkey, ENGINE *e);
EVP_PKEY_CTX *EVP_PKEY_CTX_new_id(int id, ENGINE *e);
-EVP_PKEY_CTX *EVP_PKEY_CTX_new_provided(const char *name,
+EVP_PKEY_CTX *EVP_PKEY_CTX_new_provided(OPENSSL_CTX *libctx,
+ const char *name,
const char *propquery);
EVP_PKEY_CTX *EVP_PKEY_CTX_dup(const EVP_PKEY_CTX *ctx);
void EVP_PKEY_CTX_free(EVP_PKEY_CTX *ctx);