The MD2 test uses the EVP APIs not the low level ones.
The test can be moved into the EVP tests and the separate executable removed. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10821)
This commit is contained in:
parent
9ce921f2da
commit
d3ac2eab65
5 changed files with 47 additions and 107 deletions
|
@ -33,7 +33,6 @@ IF[{- !$disabled{tests} -}]
|
|||
aborttest test_test \
|
||||
sanitytest rsa_complex exdatatest bntest \
|
||||
ectest ecstresstest ecdsatest gmdifftest pbelutest ideatest \
|
||||
md2test \
|
||||
hmactest \
|
||||
rc2test rc4test rc5test \
|
||||
destest mdc2test \
|
||||
|
@ -116,10 +115,6 @@ IF[{- !$disabled{tests} -}]
|
|||
INCLUDE[ideatest]=../include ../apps/include
|
||||
DEPEND[ideatest]=../libcrypto libtestutil.a
|
||||
|
||||
SOURCE[md2test]=md2test.c
|
||||
INCLUDE[md2test]=../include ../apps/include
|
||||
DEPEND[md2test]=../libcrypto libtestutil.a
|
||||
|
||||
SOURCE[hmactest]=hmactest.c
|
||||
INCLUDE[hmactest]=../include ../apps/include
|
||||
DEPEND[hmactest]=../libcrypto libtestutil.a
|
||||
|
|
|
@ -1,87 +0,0 @@
|
|||
/*
|
||||
* Copyright 1995-2017 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
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
/*
|
||||
* MD2 low level APIs are deprecated for public use, but still ok for
|
||||
* internal use.
|
||||
*/
|
||||
#include "internal/deprecated.h"
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include <openssl/provider.h>
|
||||
#include "internal/nelem.h"
|
||||
#include "testutil.h"
|
||||
|
||||
static OSSL_PROVIDER *prov = NULL;
|
||||
|
||||
#ifndef OPENSSL_NO_MD2
|
||||
# include <openssl/evp.h>
|
||||
# include <openssl/md2.h>
|
||||
|
||||
# ifdef CHARSET_EBCDIC
|
||||
# include <openssl/ebcdic.h>
|
||||
# endif
|
||||
|
||||
static char *test[] = {
|
||||
"",
|
||||
"a",
|
||||
"abc",
|
||||
"message digest",
|
||||
"abcdefghijklmnopqrstuvwxyz",
|
||||
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",
|
||||
"12345678901234567890123456789012345678901234567890123456789012345678901234567890",
|
||||
};
|
||||
|
||||
static char *ret[] = {
|
||||
"8350e5a3e24c153df2275c9f80692773",
|
||||
"32ec01ec4a6dac72c0ab96fb34c0b5d1",
|
||||
"da853b0d3f88d99b30283a69e6ded6bb",
|
||||
"ab4f496bfb2a530b219ff33031fe06b0",
|
||||
"4e8ddff3650292ab5a4108c3aa47940b",
|
||||
"da33def2a42df13975352846c30338cd",
|
||||
"d5976f79d83d3a0dc9806c3c66f3efd8",
|
||||
};
|
||||
|
||||
static int test_md2(int n)
|
||||
{
|
||||
char buf[80];
|
||||
unsigned char md[MD2_DIGEST_LENGTH];
|
||||
int i;
|
||||
|
||||
if (!TEST_true(EVP_Digest((unsigned char *)test[n], strlen(test[n]),
|
||||
md, NULL, EVP_md2(), NULL)))
|
||||
return 0;
|
||||
|
||||
for (i = 0; i < MD2_DIGEST_LENGTH; i++)
|
||||
sprintf(&(buf[i * 2]), "%02x", md[i]);
|
||||
if (!TEST_str_eq(buf, ret[n]))
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
int global_init(void)
|
||||
{
|
||||
prov = OSSL_PROVIDER_load(NULL, "legacy");
|
||||
|
||||
return prov != NULL;
|
||||
}
|
||||
void cleanup_tests(void)
|
||||
{
|
||||
OSSL_PROVIDER_unload(prov);
|
||||
}
|
||||
|
||||
int setup_tests(void)
|
||||
{
|
||||
#ifndef OPENSSL_NO_MD2
|
||||
ADD_ALL_TESTS(test_md2, OSSL_NELEM(test));
|
||||
#endif
|
||||
return 1;
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
#! /usr/bin/env perl
|
||||
# Copyright 2015-2016 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
|
||||
# in the file LICENSE in the source distribution or at
|
||||
# https://www.openssl.org/source/license.html
|
||||
|
||||
|
||||
use OpenSSL::Test::Simple;
|
||||
use OpenSSL::Test qw/:DEFAULT bldtop_dir/;
|
||||
|
||||
setup("test_md2");
|
||||
|
||||
simple_test("test_md2", "md2test", "md2");
|
|
@ -67,6 +67,9 @@ push @defltfiles, @chachafiles unless disabled("chacha");
|
|||
my @bffiles = qw( evpciph_bf.txt );
|
||||
push @defltfiles, @bffiles unless disabled("bf");
|
||||
|
||||
my @bffiles = qw( evpmd_md2.txt );
|
||||
push @defltfiles, @bffiles unless disabled("md2");
|
||||
|
||||
plan tests =>
|
||||
($no_fips ? 0 : 1) # FIPS install test
|
||||
+ (scalar(@configs) * scalar(@files))
|
||||
|
|
44
test/recipes/30-test_evp_data/evpmd_md2.txt
Normal file
44
test/recipes/30-test_evp_data/evpmd_md2.txt
Normal file
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# Copyright 2020 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
|
||||
# in the file LICENSE in the source distribution or at
|
||||
# https://www.openssl.org/source/license.html
|
||||
|
||||
Title = MD2 tests
|
||||
|
||||
Digest = MD2
|
||||
Availablein = legacy
|
||||
Input =
|
||||
Output = 8350e5a3e24c153df2275c9f80692773
|
||||
|
||||
Digest = MD2
|
||||
Availablein = legacy
|
||||
Input = "a"
|
||||
Output = 32ec01ec4a6dac72c0ab96fb34c0b5d1
|
||||
|
||||
Digest = MD2
|
||||
Availablein = legacy
|
||||
Input = "abc"
|
||||
Output = da853b0d3f88d99b30283a69e6ded6bb
|
||||
|
||||
Digest = MD2
|
||||
Availablein = legacy
|
||||
Input = "message digest"
|
||||
Output = ab4f496bfb2a530b219ff33031fe06b0
|
||||
|
||||
Digest = MD2
|
||||
Availablein = legacy
|
||||
Input = "abcdefghijklmnopqrstuvwxyz"
|
||||
Output = 4e8ddff3650292ab5a4108c3aa47940b
|
||||
|
||||
Digest = MD2
|
||||
Availablein = legacy
|
||||
Input = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
|
||||
Output = da33def2a42df13975352846c30338cd
|
||||
|
||||
Digest = MD2
|
||||
Availablein = legacy
|
||||
Input = "12345678901234567890123456789012345678901234567890123456789012345678901234567890"
|
||||
Output = d5976f79d83d3a0dc9806c3c66f3efd8
|
Loading…
Add table
Add a link
Reference in a new issue