summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorPauli <paul.dale@oracle.com>2020-01-13 15:42:46 +1000
committerPauli <paul.dale@oracle.com>2020-01-14 19:50:18 +1000
commitd3ac2eab6572e348cff33b02690e1177dcd6a4bd (patch)
treef976289040e8e411134052bd28c8f5651633aac9 /test
parent9ce921f2dacc9f56b8ae932ae9c299670700a297 (diff)
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)
Diffstat (limited to 'test')
-rw-r--r--test/build.info5
-rw-r--r--test/md2test.c87
-rw-r--r--test/recipes/05-test_md2.t15
-rw-r--r--test/recipes/30-test_evp.t3
-rw-r--r--test/recipes/30-test_evp_data/evpmd_md2.txt44
5 files changed, 47 insertions, 107 deletions
diff --git a/test/build.info b/test/build.info
index c54b7bc5a4..d8e390197e 100644
--- a/test/build.info
+++ b/test/build.info
@@ -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
diff --git a/test/md2test.c b/test/md2test.c
deleted file mode 100644
index b2dfe82035..0000000000
--- a/test/md2test.c
+++ /dev/null
@@ -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;
-}
diff --git a/test/recipes/05-test_md2.t b/test/recipes/05-test_md2.t
deleted file mode 100644
index 00caba54dd..0000000000
--- a/test/recipes/05-test_md2.t
+++ /dev/null
@@ -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");
diff --git a/test/recipes/30-test_evp.t b/test/recipes/30-test_evp.t
index 23c4aa8620..e7759bf5dc 100644
--- a/test/recipes/30-test_evp.t
+++ b/test/recipes/30-test_evp.t
@@ -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))
diff --git a/test/recipes/30-test_evp_data/evpmd_md2.txt b/test/recipes/30-test_evp_data/evpmd_md2.txt
new file mode 100644
index 0000000000..cd0d5c6f88
--- /dev/null
+++ b/test/recipes/30-test_evp_data/evpmd_md2.txt
@@ -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