summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/rsa/rsa.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/rsa/rsa.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/rsa/rsa.h')
-rw-r--r--src/lib/libcrypto/rsa/rsa.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/lib/libcrypto/rsa/rsa.h b/src/lib/libcrypto/rsa/rsa.h
index 73ec9d5a42..fa98f9cf76 100644
--- a/src/lib/libcrypto/rsa/rsa.h
+++ b/src/lib/libcrypto/rsa/rsa.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: rsa.h,v 1.58 2022/07/12 14:42:50 kn Exp $ */ 1/* $OpenBSD: rsa.h,v 1.59 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 *
@@ -240,11 +240,12 @@ RSA *RSA_new_method(ENGINE *engine);
240int RSA_bits(const RSA *rsa); 240int RSA_bits(const RSA *rsa);
241int RSA_size(const RSA *rsa); 241int RSA_size(const RSA *rsa);
242 242
243/* Deprecated version */ 243/*
244#ifndef OPENSSL_NO_DEPRECATED 244 * Wrapped in OPENSSL_NO_DEPRECATED in 0.9.8. Still used for libressl bindings
245 * in rust-openssl.
246 */
245RSA *RSA_generate_key(int bits, unsigned long e, 247RSA *RSA_generate_key(int bits, unsigned long e,
246 void (*callback)(int, int, void *), void *cb_arg); 248 void (*callback)(int, int, void *), void *cb_arg);
247#endif /* !defined(OPENSSL_NO_DEPRECATED) */
248 249
249/* New version */ 250/* New version */
250int RSA_generate_key_ex(RSA *rsa, int bits, BIGNUM *e, BN_GENCB *cb); 251int RSA_generate_key_ex(RSA *rsa, int bits, BIGNUM *e, BN_GENCB *cb);