projects
/
openssl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fail if we fail to fetch the EVP_KEYMGMT
[openssl.git]
/
test
/
evp_test.c
diff --git
a/test/evp_test.c
b/test/evp_test.c
index 63ae14492040889eafd62bb74a9b852db1510248..6ed5bafba6067e8098aa31191f1c0ab8ab89ca39 100644
(file)
--- a/
test/evp_test.c
+++ b/
test/evp_test.c
@@
-1,5
+1,5
@@
/*
/*
- * Copyright 2015-20
19
The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2015-20
20
The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@@
-25,6
+25,8
@@
#include "testutil.h"
#include "evp_test.h"
#include "testutil.h"
#include "evp_test.h"
+DEFINE_STACK_OF_STRING()
+
#define AAD_NUM 4
typedef struct evp_test_method_st EVP_TEST_METHOD;
#define AAD_NUM 4
typedef struct evp_test_method_st EVP_TEST_METHOD;
@@
-2402,7
+2404,7
@@
static int keypair_test_run(EVP_TEST *t)
goto end;
}
goto end;
}
- if ((rv = EVP_PKEY_
cmp
(pair->privk, pair->pubk)) != 1 ) {
+ if ((rv = EVP_PKEY_
eq
(pair->privk, pair->pubk)) != 1 ) {
if ( 0 == rv ) {
t->err = "KEYPAIR_MISMATCH";
} else if ( -1 == rv ) {
if ( 0 == rv ) {
t->err = "KEYPAIR_MISMATCH";
} else if ( -1 == rv ) {
@@
-2504,8
+2506,8
@@
static int keygen_test_run(EVP_TEST *t)
{
KEYGEN_TEST_DATA *keygen = t->data;
EVP_PKEY *pkey = NULL;
{
KEYGEN_TEST_DATA *keygen = t->data;
EVP_PKEY *pkey = NULL;
+ int rv = 1;
- t->err = NULL;
if (EVP_PKEY_keygen(keygen->genctx, &pkey) <= 0) {
t->err = "KEYGEN_GENERATE_ERROR";
goto err;
if (EVP_PKEY_keygen(keygen->genctx, &pkey) <= 0) {
t->err = "KEYGEN_GENERATE_ERROR";
goto err;
@@
-2514,6
+2516,7
@@
static int keygen_test_run(EVP_TEST *t)
if (keygen->keyname != NULL) {
KEY_LIST *key;
if (keygen->keyname != NULL) {
KEY_LIST *key;
+ rv = 0;
if (find_key(NULL, keygen->keyname, private_keys)) {
TEST_info("Duplicate key %s", keygen->keyname);
goto err;
if (find_key(NULL, keygen->keyname, private_keys)) {
TEST_info("Duplicate key %s", keygen->keyname);
goto err;
@@
-2526,15
+2529,15
@@
static int keygen_test_run(EVP_TEST *t)
key->key = pkey;
key->next = private_keys;
private_keys = key;
key->key = pkey;
key->next = private_keys;
private_keys = key;
+ rv = 1;
} else {
EVP_PKEY_free(pkey);
}
} else {
EVP_PKEY_free(pkey);
}
-
return 1
;
+
t->err = NULL
;
err:
err:
- EVP_PKEY_free(pkey);
- return 0;
+ return rv;
}
static const EVP_TEST_METHOD keygen_test_method = {
}
static const EVP_TEST_METHOD keygen_test_method = {
@@
-2992,7
+2995,8
@@
static int key_unsupported(void)
long err = ERR_peek_error();
if (ERR_GET_LIB(err) == ERR_LIB_EVP
long err = ERR_peek_error();
if (ERR_GET_LIB(err) == ERR_LIB_EVP
- && ERR_GET_REASON(err) == EVP_R_UNSUPPORTED_ALGORITHM) {
+ && (ERR_GET_REASON(err) == EVP_R_UNSUPPORTED_ALGORITHM
+ || ERR_GET_REASON(err) == EVP_R_FETCH_FAILED)) {
ERR_clear_error();
return 1;
}
ERR_clear_error();
return 1;
}