diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/regress/lib/libcrypto/ecdsa/ecdsatest.c | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/regress/lib/libcrypto/ecdsa/ecdsatest.c b/src/regress/lib/libcrypto/ecdsa/ecdsatest.c index 45ffd91ab4..6cbe345d08 100644 --- a/src/regress/lib/libcrypto/ecdsa/ecdsatest.c +++ b/src/regress/lib/libcrypto/ecdsa/ecdsatest.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ecdsatest.c,v 1.11 2022/08/31 09:36:46 tb Exp $ */ | 1 | /* $OpenBSD: ecdsatest.c,v 1.12 2022/08/31 09:38:00 tb Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * Written by Nils Larsch for the OpenSSL project. | 3 | * Written by Nils Larsch for the OpenSSL project. |
| 4 | */ | 4 | */ |
| @@ -251,7 +251,8 @@ test_builtin(BIO *out) | |||
| 251 | BIO_printf(out, "."); | 251 | BIO_printf(out, "."); |
| 252 | (void)BIO_flush(out); | 252 | (void)BIO_flush(out); |
| 253 | /* create signature */ | 253 | /* create signature */ |
| 254 | sig_len = ECDSA_size(eckey); | 254 | if ((sig_len = ECDSA_size(eckey)) == 0) |
| 255 | goto builtin_err; | ||
| 255 | if ((signature = malloc(sig_len)) == NULL) | 256 | if ((signature = malloc(sig_len)) == NULL) |
| 256 | goto builtin_err; | 257 | goto builtin_err; |
| 257 | if (!ECDSA_sign(0, digest, 20, signature, &sig_len, eckey)) { | 258 | if (!ECDSA_sign(0, digest, 20, signature, &sig_len, eckey)) { |
| @@ -332,6 +333,12 @@ test_builtin(BIO *out) | |||
| 332 | r = NULL; | 333 | r = NULL; |
| 333 | s = NULL; | 334 | s = NULL; |
| 334 | 335 | ||
| 336 | if ((sig_len = i2d_ECDSA_SIG(ecdsa_sig, NULL)) <= 0) | ||
| 337 | goto builtin_err; | ||
| 338 | free(signature); | ||
| 339 | if ((signature = calloc(1, sig_len)) == NULL) | ||
| 340 | goto builtin_err; | ||
| 341 | |||
| 335 | sig_ptr2 = signature; | 342 | sig_ptr2 = signature; |
| 336 | sig_len = i2d_ECDSA_SIG(ecdsa_sig, &sig_ptr2); | 343 | sig_len = i2d_ECDSA_SIG(ecdsa_sig, &sig_ptr2); |
| 337 | if (ECDSA_verify(0, digest, 20, signature, sig_len, | 344 | if (ECDSA_verify(0, digest, 20, signature, sig_len, |
| @@ -349,6 +356,12 @@ test_builtin(BIO *out) | |||
| 349 | r = NULL; | 356 | r = NULL; |
| 350 | s = NULL; | 357 | s = NULL; |
| 351 | 358 | ||
| 359 | if ((sig_len = i2d_ECDSA_SIG(ecdsa_sig, NULL)) <= 0) | ||
| 360 | goto builtin_err; | ||
| 361 | free(signature); | ||
| 362 | if ((signature = calloc(1, sig_len)) == NULL) | ||
| 363 | goto builtin_err; | ||
| 364 | |||
| 352 | sig_ptr2 = signature; | 365 | sig_ptr2 = signature; |
| 353 | sig_len = i2d_ECDSA_SIG(ecdsa_sig, &sig_ptr2); | 366 | sig_len = i2d_ECDSA_SIG(ecdsa_sig, &sig_ptr2); |
| 354 | if (ECDSA_verify(0, digest, 20, signature, sig_len, | 367 | if (ECDSA_verify(0, digest, 20, signature, sig_len, |
