Latest update.

This commit is contained in:
2020-01-21 10:59:59 +09:00
parent 0f7abb4eb6
commit f2d048b604
94 changed files with 989 additions and 10719 deletions
+15
View File
@@ -331,6 +331,8 @@ typedef struct digest_data_st {
/* Expected output */
unsigned char *output;
size_t output_len;
/* Padding type */
int pad_type;
} DIGEST_DATA;
static int digest_test_init(EVP_TEST *t, const char *alg)
@@ -353,6 +355,7 @@ static int digest_test_init(EVP_TEST *t, const char *alg)
t->data = mdat;
mdat->digest = digest;
mdat->fetched_digest = fetched_digest;
mdat->pad_type = 0;
if (fetched_digest != NULL)
TEST_info("%s is fetched", alg);
return 1;
@@ -380,6 +383,8 @@ static int digest_test_parse(EVP_TEST *t,
return evp_test_buffer_set_count(value, mdata->input);
if (strcmp(keyword, "Ncopy") == 0)
return evp_test_buffer_ncopy(value, mdata->input);
if (strcmp(keyword, "Padding") == 0)
return (mdata->pad_type = atoi(value)) > 0;
return 0;
}
@@ -394,6 +399,7 @@ static int digest_test_run(EVP_TEST *t)
EVP_MD_CTX *mctx;
unsigned char *got = NULL;
unsigned int got_len;
OSSL_PARAM params[2];
t->err = "TEST_FAILURE";
if (!TEST_ptr(mctx = EVP_MD_CTX_new()))
@@ -408,6 +414,15 @@ static int digest_test_run(EVP_TEST *t)
t->err = "DIGESTINIT_ERROR";
goto err;
}
if (expected->pad_type > 0) {
params[0] = OSSL_PARAM_construct_int(OSSL_DIGEST_PARAM_PAD_TYPE,
&expected->pad_type);
params[1] = OSSL_PARAM_construct_end();
if (!TEST_int_gt(EVP_MD_CTX_set_params(mctx, params), 0)) {
t->err = "PARAMS_ERROR";
goto err;
}
}
if (!evp_test_buffer_do(expected->input, digest_update_fn, mctx)) {
t->err = "DIGESTUPDATE_ERROR";
goto err;