From c9f71df31b2daa5e5e58a4980a70836be104e4f5 Mon Sep 17 00:00:00 2001 From: Matt Caswell Date: Tue, 20 Oct 2020 17:28:57 +0100 Subject: [PATCH] Convert DH deprecations to the new way of deprecating functions Reviewed-by: Richard Levitte (Merged from https://github.com/openssl/openssl/pull/13138) --- include/openssl/dh.h | 237 +++++++++++++++++++++---------------------- 1 file changed, 117 insertions(+), 120 deletions(-) diff --git a/include/openssl/dh.h b/include/openssl/dh.h index d8666f45b86..d06fea6a230 100644 --- a/include/openssl/dh.h +++ b/include/openssl/dh.h @@ -105,7 +105,7 @@ DECLARE_ASN1_ITEM(DHparams) * primes p where (p-1)/2 is prime too are called "safe"; we define this for * backward compatibility: */ -# define DH_CHECK_P_NOT_STRONG_PRIME DH_CHECK_P_NOT_SAFE_PRIME +# define DH_CHECK_P_NOT_STRONG_PRIME DH_CHECK_P_NOT_SAFE_PRIME /* DH parameter generation types used by EVP_PKEY_CTX_set_dh_paramgen_type() */ # define DH_PARAMGEN_TYPE_GENERATOR 0 /* Use a safe prime generator */ @@ -138,141 +138,138 @@ DECLARE_ASN1_ITEM(DHparams) ASN1_i2d_bio_of(DH, i2d_DHxparams, bp, x) DECLARE_ASN1_DUP_FUNCTION_name_attr(OSSL_DEPRECATEDIN_3_0, DH, DHparams) -# endif -DEPRECATEDIN_3_0(const DH_METHOD *DH_OpenSSL(void)) +OSSL_DEPRECATEDIN_3_0 const DH_METHOD *DH_OpenSSL(void); -DEPRECATEDIN_3_0(void DH_set_default_method(const DH_METHOD *meth)) -DEPRECATEDIN_3_0(const DH_METHOD *DH_get_default_method(void)) -DEPRECATEDIN_3_0(int DH_set_method(DH *dh, const DH_METHOD *meth)) -DEPRECATEDIN_3_0(DH *DH_new_method(ENGINE *engine)) +OSSL_DEPRECATEDIN_3_0 void DH_set_default_method(const DH_METHOD *meth); +OSSL_DEPRECATEDIN_3_0 const DH_METHOD *DH_get_default_method(void); +OSSL_DEPRECATEDIN_3_0 int DH_set_method(DH *dh, const DH_METHOD *meth); +OSSL_DEPRECATEDIN_3_0 DH *DH_new_method(ENGINE *engine); + +OSSL_DEPRECATEDIN_3_0 DH *DH_new(void); +OSSL_DEPRECATEDIN_3_0 void DH_free(DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_up_ref(DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_bits(const DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_size(const DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_security_bits(const DH *dh); -DEPRECATEDIN_3_0(DH *DH_new(void)) -DEPRECATEDIN_3_0(void DH_free(DH *dh)) -DEPRECATEDIN_3_0(int DH_up_ref(DH *dh)) -DEPRECATEDIN_3_0(int DH_bits(const DH *dh)) -DEPRECATEDIN_3_0(int DH_size(const DH *dh)) -DEPRECATEDIN_3_0(int DH_security_bits(const DH *dh)) -# ifndef OPENSSL_NO_DEPRECATED_3_0 # define DH_get_ex_new_index(l, p, newf, dupf, freef) \ CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_DH, l, p, newf, dupf, freef) -# endif -DEPRECATEDIN_3_0(int DH_set_ex_data(DH *d, int idx, void *arg)) -DEPRECATEDIN_3_0(void *DH_get_ex_data(const DH *d, int idx)) - -/* Deprecated version */ -DEPRECATEDIN_0_9_8(DH *DH_generate_parameters(int prime_len, int generator, - void (*callback) (int, int, - void *), - void *cb_arg)) - -/* New version */ -DEPRECATEDIN_3_0(int DH_generate_parameters_ex(DH *dh, int prime_len, - int generator, BN_GENCB *cb)) -DEPRECATEDIN_3_0(int DH_check_params_ex(const DH *dh)) -DEPRECATEDIN_3_0(int DH_check_ex(const DH *dh)) -DEPRECATEDIN_3_0(int DH_check_pub_key_ex(const DH *dh, const BIGNUM *pub_key)) -/* - * TODO(3.0): deprecate DH_check_params once ssl/statem/statem_clnt.c is fixed. - */ -DEPRECATEDIN_3_0(int DH_check_params(const DH *dh, int *ret)) -DEPRECATEDIN_3_0(int DH_check(const DH *dh, int *codes)) -DEPRECATEDIN_3_0(int DH_check_pub_key(const DH *dh, const BIGNUM *pub_key, - int *codes)) -DEPRECATEDIN_3_0(int DH_generate_key(DH *dh)) -DEPRECATEDIN_3_0(int DH_compute_key(unsigned char *key, const BIGNUM *pub_key, - DH *dh)) -DEPRECATEDIN_3_0(int DH_compute_key_padded(unsigned char *key, - const BIGNUM *pub_key, DH *dh)) +OSSL_DEPRECATEDIN_3_0 int DH_set_ex_data(DH *d, int idx, void *arg); +OSSL_DEPRECATEDIN_3_0 void *DH_get_ex_data(const DH *d, int idx); + +OSSL_DEPRECATEDIN_3_0 int DH_generate_parameters_ex(DH *dh, int prime_len, + int generator, + BN_GENCB *cb); + +OSSL_DEPRECATEDIN_3_0 int DH_check_params_ex(const DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_check_ex(const DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_check_pub_key_ex(const DH *dh, const BIGNUM *pub_key); +OSSL_DEPRECATEDIN_3_0 int DH_check_params(const DH *dh, int *ret); +OSSL_DEPRECATEDIN_3_0 int DH_check(const DH *dh, int *codes); +OSSL_DEPRECATEDIN_3_0 int DH_check_pub_key(const DH *dh, const BIGNUM *pub_key, + int *codes); +OSSL_DEPRECATEDIN_3_0 int DH_generate_key(DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_compute_key(unsigned char *key, + const BIGNUM *pub_key, DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_compute_key_padded(unsigned char *key, + const BIGNUM *pub_key, DH *dh); -# ifndef OPENSSL_NO_DEPRECATED_3_0 DECLARE_ASN1_ENCODE_FUNCTIONS_only_attr(OSSL_DEPRECATEDIN_3_0, DH, DHparams) DECLARE_ASN1_ENCODE_FUNCTIONS_only_attr(OSSL_DEPRECATEDIN_3_0, DH, DHxparams) -# endif -# ifndef OPENSSL_NO_STDIO -DEPRECATEDIN_3_0(int DHparams_print_fp(FILE *fp, const DH *x)) -# endif -DEPRECATEDIN_3_0(int DHparams_print(BIO *bp, const DH *x)) +# ifndef OPENSSL_NO_STDIO +OSSL_DEPRECATEDIN_3_0 int DHparams_print_fp(FILE *fp, const DH *x); +# endif +OSSL_DEPRECATEDIN_3_0 int DHparams_print(BIO *bp, const DH *x); /* RFC 5114 parameters */ -DEPRECATEDIN_3_0(DH *DH_get_1024_160(void)) -DEPRECATEDIN_3_0(DH *DH_get_2048_224(void)) -DEPRECATEDIN_3_0(DH *DH_get_2048_256(void)) +OSSL_DEPRECATEDIN_3_0 DH *DH_get_1024_160(void); +OSSL_DEPRECATEDIN_3_0 DH *DH_get_2048_224(void); +OSSL_DEPRECATEDIN_3_0 DH *DH_get_2048_256(void); /* Named parameters, currently RFC7919 and RFC3526 */ -DEPRECATEDIN_3_0(DH *DH_new_by_nid(int nid)) -DEPRECATEDIN_3_0(int DH_get_nid(const DH *dh)) +OSSL_DEPRECATEDIN_3_0 DH *DH_new_by_nid(int nid); +OSSL_DEPRECATEDIN_3_0 int DH_get_nid(const DH *dh); /* RFC2631 KDF */ -DEPRECATEDIN_3_0(int DH_KDF_X9_42(unsigned char *out, size_t outlen, - const unsigned char *Z, size_t Zlen, - ASN1_OBJECT *key_oid, - const unsigned char *ukm, - size_t ukmlen, const EVP_MD *md)) - -DEPRECATEDIN_3_0(void DH_get0_pqg(const DH *dh, const BIGNUM **p, - const BIGNUM **q, const BIGNUM **g)) -DEPRECATEDIN_3_0(int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g)) -DEPRECATEDIN_3_0(void DH_get0_key(const DH *dh, const BIGNUM **pub_key, - const BIGNUM **priv_key)) -DEPRECATEDIN_3_0(int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key)) -DEPRECATEDIN_3_0(const BIGNUM *DH_get0_p(const DH *dh)) -DEPRECATEDIN_3_0(const BIGNUM *DH_get0_q(const DH *dh)) -DEPRECATEDIN_3_0(const BIGNUM *DH_get0_g(const DH *dh)) -DEPRECATEDIN_3_0(const BIGNUM *DH_get0_priv_key(const DH *dh)) -DEPRECATEDIN_3_0(const BIGNUM *DH_get0_pub_key(const DH *dh)) -DEPRECATEDIN_3_0(void DH_clear_flags(DH *dh, int flags)) -DEPRECATEDIN_3_0(int DH_test_flags(const DH *dh, int flags)) -DEPRECATEDIN_3_0(void DH_set_flags(DH *dh, int flags)) -DEPRECATEDIN_3_0(ENGINE *DH_get0_engine(DH *d)) -DEPRECATEDIN_3_0(long DH_get_length(const DH *dh)) -DEPRECATEDIN_3_0(int DH_set_length(DH *dh, long length)) - -DEPRECATEDIN_3_0(DH_METHOD *DH_meth_new(const char *name, int flags)) -DEPRECATEDIN_3_0(void DH_meth_free(DH_METHOD *dhm)) -DEPRECATEDIN_3_0(DH_METHOD *DH_meth_dup(const DH_METHOD *dhm)) -DEPRECATEDIN_3_0(const char *DH_meth_get0_name(const DH_METHOD *dhm)) -DEPRECATEDIN_3_0(int DH_meth_set1_name(DH_METHOD *dhm, const char *name)) -DEPRECATEDIN_3_0(int DH_meth_get_flags(const DH_METHOD *dhm)) -DEPRECATEDIN_3_0(int DH_meth_set_flags(DH_METHOD *dhm, int flags)) -DEPRECATEDIN_3_0(void *DH_meth_get0_app_data(const DH_METHOD *dhm)) -DEPRECATEDIN_3_0(int DH_meth_set0_app_data(DH_METHOD *dhm, void *app_data)) -DEPRECATEDIN_3_0(int (*DH_meth_get_generate_key(const DH_METHOD *dhm)) (DH *)) -DEPRECATEDIN_3_0(int DH_meth_set_generate_key(DH_METHOD *dhm, - int (*generate_key) (DH *))) -DEPRECATEDIN_3_0(int (*DH_meth_get_compute_key(const DH_METHOD *dhm)) - (unsigned char *key, - const BIGNUM *pub_key, DH *dh)) -DEPRECATEDIN_3_0(int DH_meth_set_compute_key(DH_METHOD *dhm, - int (*compute_key) - (unsigned char *key, - const BIGNUM *pub_key, - DH *dh))) -DEPRECATEDIN_3_0(int (*DH_meth_get_bn_mod_exp(const DH_METHOD *dhm)) - (const DH *, BIGNUM *, - const BIGNUM *, - const BIGNUM *, - const BIGNUM *, BN_CTX *, - BN_MONT_CTX *)) -DEPRECATEDIN_3_0(int DH_meth_set_bn_mod_exp(DH_METHOD *dhm, - int (*bn_mod_exp) - (const DH *, BIGNUM *, - const BIGNUM *, const BIGNUM *, - const BIGNUM *, BN_CTX *, - BN_MONT_CTX *))) -DEPRECATEDIN_3_0(int (*DH_meth_get_init(const DH_METHOD *dhm))(DH *)) -DEPRECATEDIN_3_0(int DH_meth_set_init(DH_METHOD *dhm, int (*init)(DH *))) -DEPRECATEDIN_3_0(int (*DH_meth_get_finish(const DH_METHOD *dhm)) (DH *)) -DEPRECATEDIN_3_0(int DH_meth_set_finish(DH_METHOD *dhm, int (*finish) (DH *))) -DEPRECATEDIN_3_0(int (*DH_meth_get_generate_params(const DH_METHOD *dhm)) - (DH *, int, int, - BN_GENCB *)) -DEPRECATEDIN_3_0(int DH_meth_set_generate_params(DH_METHOD *dhm, - int (*generate_params) - (DH *, int, int, - BN_GENCB *))) +OSSL_DEPRECATEDIN_3_0 int DH_KDF_X9_42(unsigned char *out, size_t outlen, + const unsigned char *Z, size_t Zlen, + ASN1_OBJECT *key_oid, + const unsigned char *ukm, + size_t ukmlen, const EVP_MD *md); + +OSSL_DEPRECATEDIN_3_0 void DH_get0_pqg(const DH *dh, const BIGNUM **p, + const BIGNUM **q, const BIGNUM **g); +OSSL_DEPRECATEDIN_3_0 int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g); +OSSL_DEPRECATEDIN_3_0 void DH_get0_key(const DH *dh, const BIGNUM **pub_key, + const BIGNUM **priv_key); +OSSL_DEPRECATEDIN_3_0 int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key); +OSSL_DEPRECATEDIN_3_0 const BIGNUM *DH_get0_p(const DH *dh); +OSSL_DEPRECATEDIN_3_0 const BIGNUM *DH_get0_q(const DH *dh); +OSSL_DEPRECATEDIN_3_0 const BIGNUM *DH_get0_g(const DH *dh); +OSSL_DEPRECATEDIN_3_0 const BIGNUM *DH_get0_priv_key(const DH *dh); +OSSL_DEPRECATEDIN_3_0 const BIGNUM *DH_get0_pub_key(const DH *dh); +OSSL_DEPRECATEDIN_3_0 void DH_clear_flags(DH *dh, int flags); +OSSL_DEPRECATEDIN_3_0 int DH_test_flags(const DH *dh, int flags); +OSSL_DEPRECATEDIN_3_0 void DH_set_flags(DH *dh, int flags); +OSSL_DEPRECATEDIN_3_0 ENGINE *DH_get0_engine(DH *d); +OSSL_DEPRECATEDIN_3_0 long DH_get_length(const DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_set_length(DH *dh, long length); + +OSSL_DEPRECATEDIN_3_0 DH_METHOD *DH_meth_new(const char *name, int flags); +OSSL_DEPRECATEDIN_3_0 void DH_meth_free(DH_METHOD *dhm); +OSSL_DEPRECATEDIN_3_0 DH_METHOD *DH_meth_dup(const DH_METHOD *dhm); +OSSL_DEPRECATEDIN_3_0 const char *DH_meth_get0_name(const DH_METHOD *dhm); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set1_name(DH_METHOD *dhm, const char *name); +OSSL_DEPRECATEDIN_3_0 int DH_meth_get_flags(const DH_METHOD *dhm); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set_flags(DH_METHOD *dhm, int flags); +OSSL_DEPRECATEDIN_3_0 void *DH_meth_get0_app_data(const DH_METHOD *dhm); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set0_app_data(DH_METHOD *dhm, void *app_data); +OSSL_DEPRECATEDIN_3_0 int (*DH_meth_get_generate_key(const DH_METHOD *dhm)) (DH *); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set_generate_key(DH_METHOD *dhm, + int (*generate_key) (DH *)); +OSSL_DEPRECATEDIN_3_0 int (*DH_meth_get_compute_key(const DH_METHOD *dhm)) + (unsigned char *key, + const BIGNUM *pub_key, + DH *dh); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set_compute_key(DH_METHOD *dhm, + int (*compute_key) + (unsigned char *key, + const BIGNUM *pub_key, + DH *dh)); +OSSL_DEPRECATEDIN_3_0 int (*DH_meth_get_bn_mod_exp(const DH_METHOD *dhm)) + (const DH *, BIGNUM *, + const BIGNUM *, + const BIGNUM *, + const BIGNUM *, BN_CTX *, + BN_MONT_CTX *); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set_bn_mod_exp(DH_METHOD *dhm, + int (*bn_mod_exp) + (const DH *, BIGNUM *, + const BIGNUM *, const BIGNUM *, + const BIGNUM *, BN_CTX *, + BN_MONT_CTX *)); +OSSL_DEPRECATEDIN_3_0 int (*DH_meth_get_init(const DH_METHOD *dhm))(DH *); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set_init(DH_METHOD *dhm, int (*init)(DH *)); +OSSL_DEPRECATEDIN_3_0 int (*DH_meth_get_finish(const DH_METHOD *dhm)) (DH *); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set_finish(DH_METHOD *dhm, int (*finish) (DH *)); +OSSL_DEPRECATEDIN_3_0 int (*DH_meth_get_generate_params(const DH_METHOD *dhm)) + (DH *, int, int, + BN_GENCB *); +OSSL_DEPRECATEDIN_3_0 int DH_meth_set_generate_params(DH_METHOD *dhm, + int (*generate_params) + (DH *, int, int, + BN_GENCB *)); +# endif /* OPENSSL_NO_DEPRECATED_3_0 */ + +# ifndef OPENSSL_NO_DEPRECATED_0_9_8 +OSSL_DEPRECATEDIN_0_9_8 DH *DH_generate_parameters(int prime_len, int generator, + void (*callback) (int, int, + void *), + void *cb_arg); +# endif int EVP_PKEY_CTX_set_dh_paramgen_type(EVP_PKEY_CTX *ctx, int typ); int EVP_PKEY_CTX_set_dh_paramgen_gindex(EVP_PKEY_CTX *ctx, int gindex); -- 2.47.2