summaryrefslogtreecommitdiff
path: root/src/regress
diff options
context:
space:
mode:
Diffstat (limited to 'src/regress')
-rw-r--r--src/regress/lib/libcrypto/bn/bn_test.c26
1 files changed, 12 insertions, 14 deletions
diff --git a/src/regress/lib/libcrypto/bn/bn_test.c b/src/regress/lib/libcrypto/bn/bn_test.c
index 33050862ce..d95d826535 100644
--- a/src/regress/lib/libcrypto/bn/bn_test.c
+++ b/src/regress/lib/libcrypto/bn/bn_test.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: bn_test.c,v 1.3 2023/03/27 08:52:57 tb Exp $ */ 1/* $OpenBSD: bn_test.c,v 1.4 2023/04/07 22:14:20 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 *
@@ -92,7 +92,7 @@ const int num2 = 5; /* number of tests for slow functions */
92int test_add(BIO *bp); 92int test_add(BIO *bp);
93int test_sub(BIO *bp); 93int test_sub(BIO *bp);
94int test_lshift1(BIO *bp); 94int test_lshift1(BIO *bp);
95int test_lshift(BIO *bp, BN_CTX *ctx, BIGNUM *a_); 95int test_lshift(BIO *bp, BN_CTX *ctx, int use_lst);
96int test_rshift1(BIO *bp); 96int test_rshift1(BIO *bp);
97int test_rshift(BIO *bp, BN_CTX *ctx); 97int test_rshift(BIO *bp, BN_CTX *ctx);
98int test_div(BIO *bp, BN_CTX *ctx); 98int test_div(BIO *bp, BN_CTX *ctx);
@@ -122,10 +122,6 @@ int test_sqrt(BIO *bp, BN_CTX *ctx);
122int rand_neg(void); 122int rand_neg(void);
123static int results = 0; 123static int results = 0;
124 124
125static unsigned char lst[] =
126 "\xC6\x4F\x43\x04\x2A\xEA\xCA\x6E\x58\x36\x80\x5B\xE8\xC9"
127 "\x9B\x04\x5D\x48\x36\xC2\xFD\x16\xC9\x64\xF0";
128
129#define PRINT_ERROR printf("Error in %s [%s:%d]\n", __func__, __FILE__, \ 125#define PRINT_ERROR printf("Error in %s [%s:%d]\n", __func__, __FILE__, \
130 __LINE__) 126 __LINE__)
131 127
@@ -205,12 +201,12 @@ main(int argc, char *argv[])
205 (void)BIO_flush(out); 201 (void)BIO_flush(out);
206 202
207 message(out, "BN_lshift (fixed)"); 203 message(out, "BN_lshift (fixed)");
208 if (!test_lshift(out, ctx, BN_bin2bn(lst, sizeof(lst) - 1, NULL))) 204 if (!test_lshift(out, ctx, 1))
209 goto err; 205 goto err;
210 (void)BIO_flush(out); 206 (void)BIO_flush(out);
211 207
212 message(out, "BN_lshift"); 208 message(out, "BN_lshift");
213 if (!test_lshift(out, ctx, NULL)) 209 if (!test_lshift(out, ctx, 0))
214 goto err; 210 goto err;
215 (void)BIO_flush(out); 211 (void)BIO_flush(out);
216 212
@@ -2354,12 +2350,14 @@ test_sqrt(BIO *bp, BN_CTX *ctx)
2354} 2350}
2355 2351
2356int 2352int
2357test_lshift(BIO *bp, BN_CTX *ctx, BIGNUM *a_) 2353test_lshift(BIO *bp, BN_CTX *ctx, int use_lst)
2358{ 2354{
2359 BIGNUM *a = NULL, *b = NULL, *c = NULL, *d = NULL; 2355 BIGNUM *a = NULL, *b = NULL, *c = NULL, *d = NULL;
2360 int i; 2356 int i;
2361 int rc = 1; 2357 int rc = 1;
2362 2358
2359 if ((a = BN_new()) == NULL)
2360 goto err;
2363 if ((b = BN_new()) == NULL) 2361 if ((b = BN_new()) == NULL)
2364 goto err; 2362 goto err;
2365 if ((c = BN_new()) == NULL) 2363 if ((c = BN_new()) == NULL)
@@ -2368,11 +2366,11 @@ test_lshift(BIO *bp, BN_CTX *ctx, BIGNUM *a_)
2368 goto err; 2366 goto err;
2369 CHECK_GOTO(BN_one(c)); 2367 CHECK_GOTO(BN_one(c));
2370 2368
2371 if (a_) 2369 if (use_lst) {
2372 a = a_; 2370 if (!BN_hex2bn(&a, "C64F43042AEACA6E5836805BE8C99B04"
2373 else { 2371 "5D4836C2FD16C964F0"))
2374 if ((a = BN_new()) == NULL) 2372 goto err;
2375 goto err; 2373 } else {
2376 CHECK_GOTO(BN_bntest_rand(a, 200, 0, 0)); 2374 CHECK_GOTO(BN_bntest_rand(a, 200, 0, 0));
2377 BN_set_negative(a, rand_neg()); 2375 BN_set_negative(a, rand_neg());
2378 } 2376 }