Remove app_data from EVP_PKEY_CTX. It's never used. It's not clear why one would want such a thing. EVP_PKEY_CTX has no way for callers to register callbacks, which means there shouldn't be a way for the library to present you an EVP_PKEY_CTX out-of-context. (Whereas app_data/ex_data makes sense on SSL because of its numerous callbacks or RSA because of RSA_METHOD.) Change-Id: I55af537ab101682677af34f6ac1f2c27b5899a89 Reviewed-on: https://boringssl-review.googlesource.com/6849 Reviewed-by: Adam Langley <alangley@gmail.com>
diff --git a/crypto/evp/evp_ctx.c b/crypto/evp/evp_ctx.c index e2f4bee..b06eefd 100644 --- a/crypto/evp/evp_ctx.c +++ b/crypto/evp/evp_ctx.c
@@ -193,12 +193,6 @@ EVP_PKEY *EVP_PKEY_CTX_get0_pkey(EVP_PKEY_CTX *ctx) { return ctx->pkey; } -void EVP_PKEY_CTX_set_app_data(EVP_PKEY_CTX *ctx, void *data) { - ctx->app_data = data; -} - -void *EVP_PKEY_CTX_get_app_data(EVP_PKEY_CTX *ctx) { return ctx->app_data; } - int EVP_PKEY_CTX_ctrl(EVP_PKEY_CTX *ctx, int keytype, int optype, int cmd, int p1, void *p2) { if (!ctx || !ctx->pmeth || !ctx->pmeth->ctrl) {
diff --git a/crypto/evp/internal.h b/crypto/evp/internal.h index fa57ae9..3acc361 100644 --- a/crypto/evp/internal.h +++ b/crypto/evp/internal.h
@@ -218,8 +218,6 @@ int operation; /* Algorithm specific data */ void *data; - /* Application specific data */ - void *app_data; } /* EVP_PKEY_CTX */; struct evp_pkey_method_st {
diff --git a/include/openssl/evp.h b/include/openssl/evp.h index adf586e..2ec8861 100644 --- a/include/openssl/evp.h +++ b/include/openssl/evp.h
@@ -428,14 +428,6 @@ /* EVP_PKEY_CTX_get0_pkey returns the |EVP_PKEY| associated with |ctx|. */ OPENSSL_EXPORT EVP_PKEY *EVP_PKEY_CTX_get0_pkey(EVP_PKEY_CTX *ctx); -/* EVP_PKEY_CTX_set_app_data sets an opaque pointer on |ctx|. */ -OPENSSL_EXPORT void EVP_PKEY_CTX_set_app_data(EVP_PKEY_CTX *ctx, void *data); - -/* EVP_PKEY_CTX_get_app_data returns the opaque pointer from |ctx| that was - * previously set with |EVP_PKEY_CTX_set_app_data|, or NULL if none has been - * set. */ -OPENSSL_EXPORT void *EVP_PKEY_CTX_get_app_data(EVP_PKEY_CTX *ctx); - /* EVP_PKEY_sign_init initialises an |EVP_PKEY_CTX| for a signing operation. It * should be called before |EVP_PKEY_sign|. *