summaryrefslogtreecommitdiffstats
path: root/3rd_party/libsrp6a-sha512/t_math.c
diff options
context:
space:
mode:
authorGravatar Nikias Bassen2023-07-04 17:14:27 +0200
committerGravatar Nikias Bassen2023-07-04 17:14:27 +0200
commit474fd9284b76d8ddd3a3aec41cbca3cc48271cc1 (patch)
tree58fcb909dff8cee2d2121d17bf0643fad6a8e766 /3rd_party/libsrp6a-sha512/t_math.c
parent52ab7b76f76ee0464fd150ec881ce50fbf2dc001 (diff)
downloadlibimobiledevice-474fd9284b76d8ddd3a3aec41cbca3cc48271cc1.tar.gz
libimobiledevice-474fd9284b76d8ddd3a3aec41cbca3cc48271cc1.tar.bz2
3rd_party/libsrp6a-sha512: Updated to work with OpenSSL 3.0+ API
Diffstat (limited to '3rd_party/libsrp6a-sha512/t_math.c')
-rw-r--r--3rd_party/libsrp6a-sha512/t_math.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/3rd_party/libsrp6a-sha512/t_math.c b/3rd_party/libsrp6a-sha512/t_math.c
index 166ee4c..037650e 100644
--- a/3rd_party/libsrp6a-sha512/t_math.c
+++ b/3rd_party/libsrp6a-sha512/t_math.c
@@ -39,11 +39,13 @@ typedef BIGNUM * BigInteger;
typedef BN_CTX * BigIntegerCtx;
typedef BN_MONT_CTX * BigIntegerModAccel;
#include <limits.h>
+#if OPENSSL_VERSION_NUMBER < 0x30000000L
# ifndef OPENSSL_NO_ENGINE
# define OPENSSL_ENGINE
# include "openssl/engine.h"
static ENGINE * default_engine = NULL;
# endif /* OPENSSL_ENGINE */
+#endif
typedef int (*modexp_meth)(BIGNUM *r, const BIGNUM *a, const BIGNUM *p,
const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *mctx);
static modexp_meth default_modexp = NULL;
@@ -758,7 +760,11 @@ BigIntegerCheckPrime(BigInteger n, BigIntegerCtx c)
if(c == NULL)
c = ctx = BN_CTX_new();
#if OPENSSL_VERSION_NUMBER >= 0x00908000
- rv = BN_is_prime_ex(n, 25, c, NULL);
+ #if OPENSSL_VERSION_NUMBER >= 0x30000000L
+ rv = BN_check_prime(n, c, NULL);
+ #else
+ rv = BN_is_prime_ex(n, 25, c, NULL);
+ #endif
#else
rv = BN_is_prime(n, 25, NULL, c, NULL);
#endif