Prepare to provide RSA_security_bits()
authortb <tb@openbsd.org>
Mon, 27 Jun 2022 12:30:28 +0000 (12:30 +0000)
committertb <tb@openbsd.org>
Mon, 27 Jun 2022 12:30:28 +0000 (12:30 +0000)
ok beck jsing

lib/libcrypto/rsa/rsa.h
lib/libcrypto/rsa/rsa_lib.c

index d59fd03..8e19da2 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: rsa.h,v 1.55 2022/01/14 08:34:39 tb Exp $ */
+/* $OpenBSD: rsa.h,v 1.56 2022/06/27 12:30:28 tb Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -372,6 +372,10 @@ int RSA_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func,
 int RSA_set_ex_data(RSA *r, int idx, void *arg);
 void *RSA_get_ex_data(const RSA *r, int idx);
 
+#ifdef LIBRESSL_INTERNAL
+int RSA_security_bits(const RSA *rsa);
+#endif
+
 void RSA_get0_key(const RSA *r, const BIGNUM **n, const BIGNUM **e,
     const BIGNUM **d);
 int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d);
index ddf3f1b..570bb6c 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: rsa_lib.c,v 1.42 2022/01/07 09:55:32 tb Exp $ */
+/* $OpenBSD: rsa_lib.c,v 1.43 2022/06/27 12:30:28 tb Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -241,6 +241,12 @@ RSA_get_ex_data(const RSA *r, int idx)
        return CRYPTO_get_ex_data(&r->ex_data, idx);
 }
 
+int
+RSA_security_bits(const RSA *rsa)
+{
+       return BN_security_bits(RSA_bits(rsa), -1);
+}
+
 void
 RSA_get0_key(const RSA *r, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d)
 {