summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/dh/dh.h
diff options
context:
space:
mode:
authortb <>2023-04-09 19:10:23 +0000
committertb <>2023-04-09 19:10:23 +0000
commitc6d2fd4172ff9d967c8568f18bee3e3fbb7c4d96 (patch)
tree4e68c064d1e2a087f3d85418eec7158852b63be6 /src/lib/libcrypto/dh/dh.h
parent716f7ee66553ba43368106520df77e5efdddef94 (diff)
downloadopenbsd-c6d2fd4172ff9d967c8568f18bee3e3fbb7c4d96.tar.gz
openbsd-c6d2fd4172ff9d967c8568f18bee3e3fbb7c4d96.tar.bz2
openbsd-c6d2fd4172ff9d967c8568f18bee3e3fbb7c4d96.zip
Move a few functions out of OPENSSL_NO_DEPRECATED
Geoff Thorpe added OPENSSL_NO_DEPRECATED nearly two decades ago. The hope was that at some point some functions can be dropped. Most of the functions marked deprecated are actually unused nowadays but unfortunately some of them are still used in the ecosystem. Move them out of OPENSSL_NO_DEPRECATED so we can define it without breaking the consumers in the next bump. ERR_remove_state() is still used by a dozen or so ports. This isn't a big deal since it is just a stupid wrapper for the not quite as deprecated ERR_remove_thread_state(). It's not worth patching these ports. Annoyingly, {DH,DSA}_generate_parameters() and RSA_generate_key() are still used. They "make use" of the old-style BN_GENCB callback, which is therefore more difficult to remove - in case you don't know know: that's the thing responsible for printing pretty '.', '+' and '*' when you generate keys. Most annoyingly, DH_generate_parameters() was added to rust-openssl in 2020 for "advanced DH support". This is very unfortunate since cargo bundles a rust-openssl and updates it only every few years or so. As a consequence we're going to be stuck with this nonsense for a good while. ok beck jsing
Diffstat (limited to 'src/lib/libcrypto/dh/dh.h')
-rw-r--r--src/lib/libcrypto/dh/dh.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/lib/libcrypto/dh/dh.h b/src/lib/libcrypto/dh/dh.h
index 7b226a70c8..402ef6e17b 100644
--- a/src/lib/libcrypto/dh/dh.h
+++ b/src/lib/libcrypto/dh/dh.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: dh.h,v 1.35 2022/07/12 14:42:49 kn Exp $ */ 1/* $OpenBSD: dh.h,v 1.36 2023/04/09 19:10:23 tb Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -162,11 +162,12 @@ void DH_set_flags(DH *dh, int flags);
162long DH_get_length(const DH *dh); 162long DH_get_length(const DH *dh);
163int DH_set_length(DH *dh, long length); 163int DH_set_length(DH *dh, long length);
164 164
165/* Deprecated version */ 165/*
166#ifndef OPENSSL_NO_DEPRECATED 166 * Wrapped in OPENSSL_NO_DEPRECATED in 0.9.8, added to rust-openssl in 2020,
167 * for "advanced DH support".
168 */
167DH * DH_generate_parameters(int prime_len,int generator, 169DH * DH_generate_parameters(int prime_len,int generator,
168 void (*callback)(int,int,void *),void *cb_arg); 170 void (*callback)(int,int,void *),void *cb_arg);
169#endif /* !defined(OPENSSL_NO_DEPRECATED) */
170 171
171/* New version */ 172/* New version */
172int DH_generate_parameters_ex(DH *dh, int prime_len,int generator, BN_GENCB *cb); 173int DH_generate_parameters_ex(DH *dh, int prime_len,int generator, BN_GENCB *cb);