Latest update and remove TLSv1.3 draft
This commit is contained in:
+22
-4
@@ -864,6 +864,9 @@ typedef struct mac_data_st {
|
||||
size_t output_len;
|
||||
unsigned char *custom;
|
||||
size_t custom_len;
|
||||
/* MAC salt (blake2) */
|
||||
unsigned char *salt;
|
||||
size_t salt_len;
|
||||
/* Collection of controls */
|
||||
STACK_OF(OPENSSL_STRING) *controls;
|
||||
} MAC_DATA;
|
||||
@@ -947,6 +950,7 @@ static void mac_test_cleanup(EVP_TEST *t)
|
||||
OPENSSL_free(mdat->key);
|
||||
OPENSSL_free(mdat->iv);
|
||||
OPENSSL_free(mdat->custom);
|
||||
OPENSSL_free(mdat->salt);
|
||||
OPENSSL_free(mdat->input);
|
||||
OPENSSL_free(mdat->output);
|
||||
}
|
||||
@@ -962,6 +966,8 @@ static int mac_test_parse(EVP_TEST *t,
|
||||
return parse_bin(value, &mdata->iv, &mdata->iv_len);
|
||||
if (strcmp(keyword, "Custom") == 0)
|
||||
return parse_bin(value, &mdata->custom, &mdata->custom_len);
|
||||
if (strcmp(keyword, "Salt") == 0)
|
||||
return parse_bin(value, &mdata->salt, &mdata->salt_len);
|
||||
if (strcmp(keyword, "Algorithm") == 0) {
|
||||
mdata->alg = OPENSSL_strdup(value);
|
||||
if (!mdata->alg)
|
||||
@@ -1156,6 +1162,18 @@ static int mac_test_run_mac(EVP_TEST *t)
|
||||
}
|
||||
}
|
||||
|
||||
if (expected->salt != NULL) {
|
||||
rv = EVP_MAC_ctrl(ctx, EVP_MAC_CTRL_SET_SALT,
|
||||
expected->salt, expected->salt_len);
|
||||
if (rv == -2) {
|
||||
t->err = "MAC_CTRL_INVALID";
|
||||
goto err;
|
||||
} else if (rv <= 0) {
|
||||
t->err = "MAC_CTRL_ERROR";
|
||||
goto err;
|
||||
}
|
||||
}
|
||||
|
||||
if (expected->iv != NULL) {
|
||||
rv = EVP_MAC_ctrl(ctx, EVP_MAC_CTRL_SET_IV,
|
||||
expected->iv, expected->iv_len);
|
||||
@@ -1168,10 +1186,6 @@ static int mac_test_run_mac(EVP_TEST *t)
|
||||
}
|
||||
}
|
||||
|
||||
if (!EVP_MAC_init(ctx)) {
|
||||
t->err = "MAC_INIT_ERROR";
|
||||
goto err;
|
||||
}
|
||||
for (i = 0; i < sk_OPENSSL_STRING_num(expected->controls); i++) {
|
||||
char *p, *tmpval;
|
||||
char *value = sk_OPENSSL_STRING_value(expected->controls, i);
|
||||
@@ -1193,6 +1207,10 @@ static int mac_test_run_mac(EVP_TEST *t)
|
||||
goto err;
|
||||
}
|
||||
}
|
||||
if (!EVP_MAC_init(ctx)) {
|
||||
t->err = "MAC_INIT_ERROR";
|
||||
goto err;
|
||||
}
|
||||
if (!EVP_MAC_update(ctx, expected->input, expected->input_len)) {
|
||||
t->err = "MAC_UPDATE_ERROR";
|
||||
goto err;
|
||||
|
||||
Reference in New Issue
Block a user