aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/CMakeLists.txt118
-rw-r--r--tests/Makefile.am115
-rwxr-xr-xtests/mlkem_tests.sh24
-rw-r--r--tests/renegotiation_test.bat14
-rwxr-xr-xtests/renegotiation_test.sh15
5 files changed, 248 insertions, 38 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 480d893..d7cc499 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -6,9 +6,13 @@ include_directories(
6 ../crypto/asn1 6 ../crypto/asn1
7 ../crypto/bio 7 ../crypto/bio
8 ../crypto/bn 8 ../crypto/bn
9 ../crypto/bytestring
9 ../crypto/curve25519 10 ../crypto/curve25519
11 ../crypto/ec
10 ../crypto/evp 12 ../crypto/evp
13 ../crypto/mlkem
11 ../crypto/modes 14 ../crypto/modes
15 ../crypto/sha
12 ../crypto/x509 16 ../crypto/x509
13 ../ssl 17 ../ssl
14 ../apps/openssl 18 ../apps/openssl
@@ -18,6 +22,30 @@ include_directories(
18 ../include/compat 22 ../include/compat
19) 23)
20 24
25if(HOST_AARCH64)
26 include_directories(../crypto/arch/aarch64/)
27elseif(HOST_ARM)
28 include_directories(../crypto/arch/arm/)
29elseif(HOST_I386)
30 include_directories(../crypto/arch/i386/)
31elseif(HOST_LOONGARCH64)
32 include_directories(../crypto/arch/loongarch64)
33elseif(HOST_MIPS64)
34 include_directories(../crypto/arch/mips64)
35elseif(HOST_MIPS)
36 include_directories(../crypto/arch/mips)
37elseif(HOST_POWERPC)
38 include_directories(../crypto/arch/powerpc)
39elseif(HOST_POWERPC64)
40 include_directories(../crypto/arch/powerpc64)
41elseif(HOST_RISCV64)
42 include_directories(../crypto/arch/riscv64)
43elseif(HOST_SPARC64)
44 include_directories(../crypto/arch/sparc64)
45elseif(HOST_X86_64)
46 include_directories(../crypto/arch/amd64)
47endif()
48
21add_definitions(-D_PATH_SSL_CA_FILE=\"${CMAKE_CURRENT_SOURCE_DIR}/../cert.pem\") 49add_definitions(-D_PATH_SSL_CA_FILE=\"${CMAKE_CURRENT_SOURCE_DIR}/../cert.pem\")
22 50
23file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR} TEST_SOURCE_DIR) 51file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR} TEST_SOURCE_DIR)
@@ -303,9 +331,9 @@ target_link_libraries(cipherstest ${OPENSSL_TEST_LIBS})
303add_platform_test(cipherstest cipherstest) 331add_platform_test(cipherstest cipherstest)
304 332
305## clienttest 333## clienttest
306#add_executable(clienttest clienttest.c) 334add_executable(clienttest clienttest.c)
307#target_link_libraries(clienttest ${OPENSSL_TEST_LIBS}) 335target_link_libraries(clienttest ${OPENSSL_TEST_LIBS})
308#add_platform_test(clienttest clienttest) 336add_platform_test(clienttest clienttest)
309 337
310# cmstest 338# cmstest
311add_executable(cmstest cmstest.c) 339add_executable(cmstest cmstest.c)
@@ -368,6 +396,7 @@ add_platform_test(ecc_cdh ecc_cdh)
368# ec_asn1_test 396# ec_asn1_test
369add_executable(ec_asn1_test ec_asn1_test.c) 397add_executable(ec_asn1_test ec_asn1_test.c)
370target_link_libraries(ec_asn1_test ${OPENSSL_TEST_LIBS}) 398target_link_libraries(ec_asn1_test ${OPENSSL_TEST_LIBS})
399prepare_emscripten_test_target(ec_asn1_test)
371add_platform_test(ec_asn1_test ec_asn1_test) 400add_platform_test(ec_asn1_test ec_asn1_test)
372 401
373# ec_point_conversion 402# ec_point_conversion
@@ -396,16 +425,16 @@ add_executable(ed25519test ed25519test.c)
396target_link_libraries(ed25519test ${OPENSSL_TEST_LIBS}) 425target_link_libraries(ed25519test ${OPENSSL_TEST_LIBS})
397add_platform_test(ed25519test ed25519test) 426add_platform_test(ed25519test ed25519test)
398 427
428# err_test
429add_executable(err_test err_test.c)
430target_link_libraries(err_test ${OPENSSL_TEST_LIBS})
431add_platform_test(err_test err_test)
432
399# evp_ecx_test 433# evp_ecx_test
400add_executable(evp_ecx_test evp_ecx_test.c) 434add_executable(evp_ecx_test evp_ecx_test.c)
401target_link_libraries(evp_ecx_test ${OPENSSL_TEST_LIBS}) 435target_link_libraries(evp_ecx_test ${OPENSSL_TEST_LIBS})
402add_platform_test(evp_ecx_test evp_ecx_test) 436add_platform_test(evp_ecx_test evp_ecx_test)
403 437
404# evp_pkey_check
405add_executable(evp_pkey_check evp_pkey_check.c)
406target_link_libraries(evp_pkey_check ${OPENSSL_TEST_LIBS})
407add_platform_test(evp_pkey_check evp_pkey_check)
408
409# evp_pkey_cleanup 438# evp_pkey_cleanup
410add_executable(evp_pkey_cleanup evp_pkey_cleanup.c) 439add_executable(evp_pkey_cleanup evp_pkey_cleanup.c)
411target_link_libraries(evp_pkey_cleanup ${OPENSSL_TEST_LIBS}) 440target_link_libraries(evp_pkey_cleanup ${OPENSSL_TEST_LIBS})
@@ -511,6 +540,28 @@ add_executable(md_test md_test.c)
511target_link_libraries(md_test ${OPENSSL_TEST_LIBS}) 540target_link_libraries(md_test ${OPENSSL_TEST_LIBS})
512add_platform_test(md_test md_test) 541add_platform_test(md_test md_test)
513 542
543# mlkem_tests
544add_executable(mlkem_tests mlkem_tests.c mlkem_tests_util.c parse_test_file.c)
545target_link_libraries(mlkem_tests ${OPENSSL_TEST_LIBS})
546prepare_emscripten_test_target(mlkem_tests)
547if(NOT WIN32)
548 add_test(NAME mlkem_tests COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/mlkem_tests.sh)
549 set_tests_properties(mlkem_tests PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}")
550endif()
551# XXX - add tests for Windows
552
553# mlkem_iteration_tests
554add_executable(mlkem_iteration_tests mlkem_iteration_tests.c mlkem_tests_util.c)
555target_link_libraries(mlkem_iteration_tests ${OPENSSL_TEST_LIBS})
556prepare_emscripten_test_target(mlkem_iteration_tests)
557add_platform_test(mlkem_iteration_tests mlkem_iteration_tests)
558
559# mlkem_unittest
560add_executable(mlkem_unittest mlkem_unittest.c mlkem_tests_util.c)
561target_link_libraries(mlkem_unittest ${OPENSSL_TEST_LIBS})
562prepare_emscripten_test_target(mlkem_unittest)
563add_platform_test(mlkem_unittest mlkem_unittest)
564
514# objectstest 565# objectstest
515add_executable(objectstest objectstest.c) 566add_executable(objectstest objectstest.c)
516target_link_libraries(objectstest ${OPENSSL_TEST_LIBS}) 567target_link_libraries(objectstest ${OPENSSL_TEST_LIBS})
@@ -520,7 +571,7 @@ add_platform_test(objectstest objectstest)
520if(ENABLE_EXTRATESTS) 571if(ENABLE_EXTRATESTS)
521 add_executable(ocsp_test ocsp_test.c) 572 add_executable(ocsp_test ocsp_test.c)
522 target_link_libraries(ocsp_test ${OPENSSL_TEST_LIBS}) 573 target_link_libraries(ocsp_test ${OPENSSL_TEST_LIBS})
523 if(NOT MSVC) 574 if(NOT WIN32)
524 add_test(NAME ocsptest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/ocsptest.sh) 575 add_test(NAME ocsptest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/ocsptest.sh)
525 else() 576 else()
526 add_test(NAME ocsptest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/ocsptest.bat $<TARGET_FILE:ocsp_test>) 577 add_test(NAME ocsptest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/ocsptest.bat $<TARGET_FILE:ocsp_test>)
@@ -569,7 +620,7 @@ add_platform_test(policy policy)
569# pq_test 620# pq_test
570add_executable(pq_test pq_test.c) 621add_executable(pq_test pq_test.c)
571target_link_libraries(pq_test ${OPENSSL_TEST_LIBS}) 622target_link_libraries(pq_test ${OPENSSL_TEST_LIBS})
572if(NOT MSVC) 623if(NOT WIN32)
573 add_test(NAME pq_test COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/pq_test.sh) 624 add_test(NAME pq_test COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/pq_test.sh)
574else() 625else()
575 add_test(NAME pq_test COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/pq_test.bat 626 add_test(NAME pq_test COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/pq_test.bat
@@ -582,7 +633,7 @@ set(QUICTEST_SRC quictest.c)
582add_executable(quictest ${QUICTEST_SRC}) 633add_executable(quictest ${QUICTEST_SRC})
583target_link_libraries(quictest ${OPENSSL_TEST_LIBS}) 634target_link_libraries(quictest ${OPENSSL_TEST_LIBS})
584prepare_emscripten_test_target(quictest) 635prepare_emscripten_test_target(quictest)
585if(NOT MSVC) 636if(NOT WIN32)
586 add_test(NAME quictest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/quictest.sh) 637 add_test(NAME quictest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/quictest.sh)
587else() 638else()
588 add_test(NAME quictest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/quictest.bat $<TARGET_FILE:quictest>) 639 add_test(NAME quictest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/quictest.bat $<TARGET_FILE:quictest>)
@@ -614,6 +665,18 @@ add_executable(record_layer_test record_layer_test.c)
614target_link_libraries(record_layer_test ${OPENSSL_TEST_LIBS}) 665target_link_libraries(record_layer_test ${OPENSSL_TEST_LIBS})
615add_platform_test(record_layer_test record_layer_test) 666add_platform_test(record_layer_test record_layer_test)
616 667
668# renegotiation_test
669set(RENEGOTIATION_TEST_SRC renegotiation_test.c)
670add_executable(renegotiation_test ${RENEGOTIATION_TEST_SRC})
671target_link_libraries(renegotiation_test ${OPENSSL_TEST_LIBS})
672prepare_emscripten_test_target(renegotiation_test)
673if(NOT MSVC)
674 add_test(NAME renegotiation_test COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/renegotiation_test.sh)
675else()
676 add_test(NAME renegotiation_test COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/renegotiation_test.bat $<TARGET_FILE:renegotiation_test>)
677endif()
678set_tests_properties(renegotiation_test PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}")
679
617# rfc3779 680# rfc3779
618add_executable(rfc3779 rfc3779.c) 681add_executable(rfc3779 rfc3779.c)
619target_link_libraries(rfc3779 ${OPENSSL_TEST_LIBS}) 682target_link_libraries(rfc3779 ${OPENSSL_TEST_LIBS})
@@ -632,6 +695,11 @@ add_executable(rmd_test rmd_test.c)
632target_link_libraries(rmd_test ${OPENSSL_TEST_LIBS}) 695target_link_libraries(rmd_test ${OPENSSL_TEST_LIBS})
633add_platform_test(rmd_test rmd_test) 696add_platform_test(rmd_test rmd_test)
634 697
698# rsa_method_test
699add_executable(rsa_method_test rsa_method_test.c)
700target_link_libraries(rsa_method_test ${OPENSSL_TEST_LIBS})
701add_platform_test(rsa_method_test rsa_method_test)
702
635# rsa_padding_test 703# rsa_padding_test
636add_executable(rsa_padding_test rsa_padding_test.c) 704add_executable(rsa_padding_test rsa_padding_test.c)
637target_link_libraries(rsa_padding_test ${OPENSSL_TEST_LIBS}) 705target_link_libraries(rsa_padding_test ${OPENSSL_TEST_LIBS})
@@ -648,7 +716,7 @@ add_platform_test(rsa_test rsa_test)
648add_executable(servertest servertest.c) 716add_executable(servertest servertest.c)
649target_link_libraries(servertest ${OPENSSL_TEST_LIBS}) 717target_link_libraries(servertest ${OPENSSL_TEST_LIBS})
650prepare_emscripten_test_target(servertest) 718prepare_emscripten_test_target(servertest)
651if(NOT MSVC) 719if(NOT WIN32)
652 add_test(NAME servertest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/servertest.sh) 720 add_test(NAME servertest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/servertest.sh)
653else() 721else()
654 add_test(NAME servertest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/servertest.bat $<TARGET_FILE:servertest>) 722 add_test(NAME servertest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/servertest.bat $<TARGET_FILE:servertest>)
@@ -665,7 +733,7 @@ set(SHUTDOWNTEST_SRC shutdowntest.c)
665add_executable(shutdowntest ${SHUTDOWNTEST_SRC}) 733add_executable(shutdowntest ${SHUTDOWNTEST_SRC})
666target_link_libraries(shutdowntest ${OPENSSL_TEST_LIBS}) 734target_link_libraries(shutdowntest ${OPENSSL_TEST_LIBS})
667prepare_emscripten_test_target(shutdowntest) 735prepare_emscripten_test_target(shutdowntest)
668if(NOT MSVC) 736if(NOT WIN32)
669 add_test(NAME shutdowntest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/shutdowntest.sh) 737 add_test(NAME shutdowntest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/shutdowntest.sh)
670else() 738else()
671 add_test(NAME shutdowntest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/shutdowntest.bat $<TARGET_FILE:shutdowntest>) 739 add_test(NAME shutdowntest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/shutdowntest.bat $<TARGET_FILE:shutdowntest>)
@@ -676,7 +744,7 @@ set_tests_properties(shutdowntest PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_D
676# Emscripten does not support socketpair syscall. 744# Emscripten does not support socketpair syscall.
677if(NOT (CMAKE_SYSTEM_NAME MATCHES "WindowsStore" OR EMSCRIPTEN)) 745if(NOT (CMAKE_SYSTEM_NAME MATCHES "WindowsStore" OR EMSCRIPTEN))
678 set(SIGNERTEST_SRC signertest.c) 746 set(SIGNERTEST_SRC signertest.c)
679 check_function_exists(pipe2 HAVE_PIPE2) 747 check_symbol_exists(pipe2 "fcntl.h;unistd.h" HAVE_PIPE2)
680 if(HAVE_PIPE2) 748 if(HAVE_PIPE2)
681 add_definitions(-DHAVE_PIPE2) 749 add_definitions(-DHAVE_PIPE2)
682 else() 750 else()
@@ -737,7 +805,7 @@ add_platform_test(ssl_versions ssl_versions)
737add_executable(ssltest ssltest.c) 805add_executable(ssltest ssltest.c)
738target_link_libraries(ssltest ${OPENSSL_TEST_LIBS}) 806target_link_libraries(ssltest ${OPENSSL_TEST_LIBS})
739prepare_emscripten_test_target(ssltest) 807prepare_emscripten_test_target(ssltest)
740if(NOT MSVC) 808if(NOT WIN32)
741 add_test(NAME ssltest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/ssltest.sh) 809 add_test(NAME ssltest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/ssltest.sh)
742else() 810else()
743 add_test(NAME ssltest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/ssltest.bat $<TARGET_FILE:ssltest> $<TARGET_FILE:openssl>) 811 add_test(NAME ssltest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/ssltest.bat $<TARGET_FILE:ssltest> $<TARGET_FILE:openssl>)
@@ -748,7 +816,7 @@ set_tests_properties(ssltest PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}")
748# access various files for IO. Adding such files to --preload-file is infeasible. 816# access various files for IO. Adding such files to --preload-file is infeasible.
749if(NOT EMSCRIPTEN) 817if(NOT EMSCRIPTEN)
750 # testdsa 818 # testdsa
751 if(NOT MSVC) 819 if(NOT WIN32)
752 add_test(NAME testdsa COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testdsa.sh) 820 add_test(NAME testdsa COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testdsa.sh)
753 else() 821 else()
754 add_test(NAME testdsa COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testdsa.bat $<TARGET_FILE:openssl>) 822 add_test(NAME testdsa COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testdsa.bat $<TARGET_FILE:openssl>)
@@ -756,7 +824,7 @@ if(NOT EMSCRIPTEN)
756 set_tests_properties(testdsa PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}") 824 set_tests_properties(testdsa PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}")
757 825
758 # testenc 826 # testenc
759 if(NOT MSVC) 827 if(NOT WIN32)
760 add_test(NAME testenc COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testenc.sh) 828 add_test(NAME testenc COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testenc.sh)
761 else() 829 else()
762 add_test(NAME testenc COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testenc.bat $<TARGET_FILE:openssl>) 830 add_test(NAME testenc COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testenc.bat $<TARGET_FILE:openssl>)
@@ -764,7 +832,7 @@ if(NOT EMSCRIPTEN)
764 set_tests_properties(testenc PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}") 832 set_tests_properties(testenc PROPERTIES ENVIRONMENT "srcdir=${TEST_SOURCE_DIR}")
765 833
766 # testrsa 834 # testrsa
767 if(NOT MSVC) 835 if(NOT WIN32)
768 add_test(NAME testrsa COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testrsa.sh) 836 add_test(NAME testrsa COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testrsa.sh)
769 else() 837 else()
770 add_test(NAME testrsa COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testrsa.bat $<TARGET_FILE:openssl>) 838 add_test(NAME testrsa COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/testrsa.bat $<TARGET_FILE:openssl>)
@@ -792,7 +860,7 @@ add_platform_test(tlslegacytest tlslegacytest)
792# Emscripten does not support socketpair syscall. 860# Emscripten does not support socketpair syscall.
793if(NOT (CMAKE_SYSTEM_NAME MATCHES "WindowsStore" OR EMSCRIPTEN)) 861if(NOT (CMAKE_SYSTEM_NAME MATCHES "WindowsStore" OR EMSCRIPTEN))
794 set(TLSTEST_SRC tlstest.c) 862 set(TLSTEST_SRC tlstest.c)
795 check_function_exists(pipe2 HAVE_PIPE2) 863 check_symbol_exists(pipe2 "fcntl.h;unistd.h" HAVE_PIPE2)
796 if(HAVE_PIPE2) 864 if(HAVE_PIPE2)
797 add_definitions(-DHAVE_PIPE2) 865 add_definitions(-DHAVE_PIPE2)
798 else() 866 else()
@@ -801,7 +869,7 @@ if(NOT (CMAKE_SYSTEM_NAME MATCHES "WindowsStore" OR EMSCRIPTEN))
801 869
802 add_executable(tlstest ${TLSTEST_SRC}) 870 add_executable(tlstest ${TLSTEST_SRC})
803 target_link_libraries(tlstest ${LIBTLS_TEST_LIBS}) 871 target_link_libraries(tlstest ${LIBTLS_TEST_LIBS})
804 if(NOT MSVC) 872 if(NOT WIN32)
805 add_test(NAME tlstest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/tlstest.sh) 873 add_test(NAME tlstest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/tlstest.sh)
806 else() 874 else()
807 add_test(NAME tlstest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/tlstest.bat $<TARGET_FILE:tlstest>) 875 add_test(NAME tlstest COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/tlstest.bat $<TARGET_FILE:tlstest>)
@@ -834,11 +902,6 @@ add_executable(verifytest verifytest.c)
834target_link_libraries(verifytest ${LIBTLS_TEST_LIBS}) 902target_link_libraries(verifytest ${LIBTLS_TEST_LIBS})
835add_platform_test(verifytest verifytest) 903add_platform_test(verifytest verifytest)
836 904
837# whirlpool_test
838add_executable(whirlpool_test whirlpool_test.c)
839target_link_libraries(whirlpool_test ${OPENSSL_TEST_LIBS})
840add_platform_test(whirlpool_test whirlpool_test)
841
842# x25519test 905# x25519test
843add_executable(x25519test x25519test.c) 906add_executable(x25519test x25519test.c)
844target_link_libraries(x25519test ${OPENSSL_TEST_LIBS}) 907target_link_libraries(x25519test ${OPENSSL_TEST_LIBS})
@@ -870,6 +933,11 @@ add_executable(x509_info x509_info.c)
870target_link_libraries(x509_info ${OPENSSL_TEST_LIBS}) 933target_link_libraries(x509_info ${OPENSSL_TEST_LIBS})
871add_platform_test(x509_info x509_info) 934add_platform_test(x509_info x509_info)
872 935
936# x509_name_test
937add_executable(x509_name_test x509_name_test.c)
938target_link_libraries(x509_name_test ${OPENSSL_TEST_LIBS})
939add_platform_test(x509_name_test x509_name_test)
940
873# x509name 941# x509name
874add_executable(x509name x509name.c) 942add_executable(x509name x509name.c)
875target_link_libraries(x509name ${OPENSSL_TEST_LIBS}) 943target_link_libraries(x509name ${OPENSSL_TEST_LIBS})
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 76ed83a..b58de21 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -10,15 +10,64 @@ AM_CPPFLAGS += -I $(top_srcdir)/crypto/
10AM_CPPFLAGS += -I $(top_srcdir)/crypto/asn1 10AM_CPPFLAGS += -I $(top_srcdir)/crypto/asn1
11AM_CPPFLAGS += -I $(top_srcdir)/crypto/bio 11AM_CPPFLAGS += -I $(top_srcdir)/crypto/bio
12AM_CPPFLAGS += -I $(top_srcdir)/crypto/bn 12AM_CPPFLAGS += -I $(top_srcdir)/crypto/bn
13AM_CPPFLAGS += -I $(top_srcdir)/crypto/bytestring
13AM_CPPFLAGS += -I $(top_srcdir)/crypto/curve25519 14AM_CPPFLAGS += -I $(top_srcdir)/crypto/curve25519
15AM_CPPFLAGS += -I $(top_srcdir)/crypto/ec
14AM_CPPFLAGS += -I $(top_srcdir)/crypto/evp 16AM_CPPFLAGS += -I $(top_srcdir)/crypto/evp
17AM_CPPFLAGS += -I $(top_srcdir)/crypto/mlkem
15AM_CPPFLAGS += -I $(top_srcdir)/crypto/modes 18AM_CPPFLAGS += -I $(top_srcdir)/crypto/modes
19AM_CPPFLAGS += -I $(top_srcdir)/crypto/sha
16AM_CPPFLAGS += -I $(top_srcdir)/crypto/x509 20AM_CPPFLAGS += -I $(top_srcdir)/crypto/x509
17AM_CPPFLAGS += -I $(top_srcdir)/ssl 21AM_CPPFLAGS += -I $(top_srcdir)/ssl
18AM_CPPFLAGS += -I $(top_srcdir)/apps/openssl 22AM_CPPFLAGS += -I $(top_srcdir)/apps/openssl
19AM_CPPFLAGS += -I $(top_srcdir)/apps/openssl/compat 23AM_CPPFLAGS += -I $(top_srcdir)/apps/openssl/compat
20AM_CPPFLAGS += -D_PATH_SSL_CA_FILE=\"$(top_srcdir)/cert.pem\" 24AM_CPPFLAGS += -D_PATH_SSL_CA_FILE=\"$(top_srcdir)/cert.pem\"
21 25
26# arch
27if HOST_AARCH64
28AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/aarch64/
29endif
30
31if HOST_ARM
32AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/arm/
33endif
34
35if HOST_I386
36AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/i386/
37endif
38
39if HOST_LOONGARCH64
40AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/loongarch64/
41endif
42
43if HOST_MIPS
44AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/mips/
45endif
46
47if HOST_MIPS64
48AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/mips64/
49endif
50
51if HOST_POWERPC
52AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/powerpc/
53endif
54
55if HOST_POWERPC64
56AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/powerpc64/
57endif
58
59if HOST_RISCV64
60AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/riscv64/
61endif
62
63if HOST_SPARC64
64AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/sparc64/
65endif
66
67if HOST_X86_64
68AM_CPPFLAGS += -I$(top_srcdir)/crypto/arch/amd64/
69endif
70
22noinst_LTLIBRARIES = libtest.la 71noinst_LTLIBRARIES = libtest.la
23libtest_la_LIBADD = $(libcrypto_la_objects) 72libtest_la_LIBADD = $(libcrypto_la_objects)
24libtest_la_LIBADD += $(libcompat_la_objects) 73libtest_la_LIBADD += $(libcompat_la_objects)
@@ -297,9 +346,9 @@ check_PROGRAMS += cipherstest
297cipherstest_SOURCES = cipherstest.c 346cipherstest_SOURCES = cipherstest.c
298 347
299## clienttest 348## clienttest
300#TESTS += clienttest 349TESTS += clienttest
301#check_PROGRAMS += clienttest 350check_PROGRAMS += clienttest
302#clienttest_SOURCES = clienttest.c 351clienttest_SOURCES = clienttest.c
303 352
304# cmstest 353# cmstest
305TESTS += cmstest 354TESTS += cmstest
@@ -389,16 +438,16 @@ TESTS += ed25519test
389check_PROGRAMS += ed25519test 438check_PROGRAMS += ed25519test
390ed25519test_SOURCES = ed25519test.c 439ed25519test_SOURCES = ed25519test.c
391 440
441# err_test
442TESTS += err_test
443check_PROGRAMS += err_test
444err_test_SOURCES = err_test.c
445
392# evp_ecx_test 446# evp_ecx_test
393TESTS += evp_ecx_test 447TESTS += evp_ecx_test
394check_PROGRAMS += evp_ecx_test 448check_PROGRAMS += evp_ecx_test
395evp_ecx_test_SOURCES = evp_ecx_test.c 449evp_ecx_test_SOURCES = evp_ecx_test.c
396 450
397# evp_pkey_check
398TESTS += evp_pkey_check
399check_PROGRAMS += evp_pkey_check
400evp_pkey_check_SOURCES = evp_pkey_check.c
401
402# evp_pkey_cleanup 451# evp_pkey_cleanup
403TESTS += evp_pkey_cleanup 452TESTS += evp_pkey_cleanup
404check_PROGRAMS += evp_pkey_cleanup 453check_PROGRAMS += evp_pkey_cleanup
@@ -501,6 +550,35 @@ TESTS += md_test
501check_PROGRAMS += md_test 550check_PROGRAMS += md_test
502md_test_SOURCES = md_test.c 551md_test_SOURCES = md_test.c
503 552
553noinst_HEADERS += mlkem_tests_util.h
554noinst_HEADERS += parse_test_file.h
555
556# mlkem_tests
557TESTS += mlkem_tests.sh
558check_PROGRAMS += mlkem_tests
559mlkem_tests_SOURCES = mlkem_tests.c mlkem_tests_util.c parse_test_file.c
560EXTRA_DIST += mlkem_tests.sh
561EXTRA_DIST += mlkem768_decap_tests.txt
562EXTRA_DIST += mlkem768_encap_tests.txt
563EXTRA_DIST += mlkem768_keygen_tests.txt
564EXTRA_DIST += mlkem768_nist_decap_tests.txt
565EXTRA_DIST += mlkem768_nist_keygen_tests.txt
566EXTRA_DIST += mlkem1024_decap_tests.txt
567EXTRA_DIST += mlkem1024_encap_tests.txt
568EXTRA_DIST += mlkem1024_keygen_tests.txt
569EXTRA_DIST += mlkem1024_nist_decap_tests.txt
570EXTRA_DIST += mlkem1024_nist_keygen_tests.txt
571
572# mlkem_iteration_tests
573TESTS += mlkem_iteration_tests
574check_PROGRAMS += mlkem_iteration_tests
575mlkem_iteration_tests_SOURCES = mlkem_iteration_tests.c mlkem_tests_util.c
576
577# mlkem_unittest
578TESTS += mlkem_unittest
579check_PROGRAMS += mlkem_unittest
580mlkem_unittest_SOURCES = mlkem_unittest.c mlkem_tests_util.c
581
504# objectstest 582# objectstest
505TESTS += objectstest 583TESTS += objectstest
506check_PROGRAMS += objectstest 584check_PROGRAMS += objectstest
@@ -615,6 +693,12 @@ TESTS += record_layer_test
615check_PROGRAMS += record_layer_test 693check_PROGRAMS += record_layer_test
616record_layer_test_SOURCES = record_layer_test.c 694record_layer_test_SOURCES = record_layer_test.c
617 695
696# renegotiation_test
697TESTS += renegotiation_test.sh
698check_PROGRAMS += renegotiation_test
699renegotiation_test_SOURCES = renegotiation_test.c
700EXTRA_DIST += renegotiation_test.sh renegotiation_test.bat
701
618# rfc3779 702# rfc3779
619TESTS += rfc3779 703TESTS += rfc3779
620rfc3779_CPPFLAGS = $(AM_CPPFLAGS) 704rfc3779_CPPFLAGS = $(AM_CPPFLAGS)
@@ -637,6 +721,11 @@ TESTS += rmd_test
637check_PROGRAMS += rmd_test 721check_PROGRAMS += rmd_test
638rmd_test_SOURCES = rmd_test.c 722rmd_test_SOURCES = rmd_test.c
639 723
724# rsa_method_test
725TESTS += rsa_method_test
726check_PROGRAMS += rsa_method_test
727rsa_method_test_SOURCES = rsa_method_test.c
728
640# rsa_padding_test 729# rsa_padding_test
641TESTS += rsa_padding_test 730TESTS += rsa_padding_test
642check_PROGRAMS += rsa_padding_test 731check_PROGRAMS += rsa_padding_test
@@ -795,11 +884,6 @@ TESTS += verifytest
795check_PROGRAMS += verifytest 884check_PROGRAMS += verifytest
796verifytest_SOURCES = verifytest.c 885verifytest_SOURCES = verifytest.c
797 886
798# whirlpool
799TESTS += whirlpool_test
800check_PROGRAMS += whirlpool_test
801whirlpool_test_SOURCES = whirlpool_test.c
802
803# x25519test 887# x25519test
804TESTS += x25519test 888TESTS += x25519test
805check_PROGRAMS += x25519test 889check_PROGRAMS += x25519test
@@ -830,6 +914,11 @@ TESTS += x509_info
830check_PROGRAMS += x509_info 914check_PROGRAMS += x509_info
831x509_info_SOURCES = x509_info.c 915x509_info_SOURCES = x509_info.c
832 916
917# x509_name_test
918TESTS += x509_name_test
919check_PROGRAMS += x509_name_test
920x509_name_test_SOURCES = x509_name_test.c
921
833# x509name 922# x509name
834TESTS += x509name 923TESTS += x509name
835check_PROGRAMS += x509name 924check_PROGRAMS += x509name
diff --git a/tests/mlkem_tests.sh b/tests/mlkem_tests.sh
new file mode 100755
index 0000000..2a9856e
--- /dev/null
+++ b/tests/mlkem_tests.sh
@@ -0,0 +1,24 @@
1#!/bin/sh
2set -e
3
4TEST=./mlkem_tests
5if [ -e ./mlkem_tests.exe ]; then
6 TEST=./mlkem_tests.exe
7elif [ -e ./mlkem_tests.js ]; then
8 TEST="node ./mlkem_tests.js"
9fi
10
11if [ -z $srcdir ]; then
12 srcdir=.
13fi
14
15$TEST mlkem768_decap_tests $srcdir/mlkem768_decap_tests.txt
16$TEST mlkem768_encap_tests $srcdir/mlkem768_encap_tests.txt
17$TEST mlkem768_keygen_tests $srcdir/mlkem768_keygen_tests.txt
18$TEST mlkem768_nist_decap_tests $srcdir/mlkem768_nist_decap_tests.txt
19$TEST mlkem768_nist_keygen_tests $srcdir/mlkem768_nist_keygen_tests.txt
20$TEST mlkem1024_decap_tests $srcdir/mlkem1024_decap_tests.txt
21$TEST mlkem1024_encap_tests $srcdir/mlkem1024_encap_tests.txt
22$TEST mlkem1024_keygen_tests $srcdir/mlkem1024_keygen_tests.txt
23$TEST mlkem1024_nist_decap_tests $srcdir/mlkem1024_nist_decap_tests.txt
24$TEST mlkem1024_nist_keygen_tests $srcdir/mlkem1024_nist_keygen_tests.txt
diff --git a/tests/renegotiation_test.bat b/tests/renegotiation_test.bat
new file mode 100644
index 0000000..0086046
--- /dev/null
+++ b/tests/renegotiation_test.bat
@@ -0,0 +1,14 @@
1@echo off
2setlocal enabledelayedexpansion
3REM renegotiation_test.bat
4
5set renegotiation_test_bin=%1
6set renegotiation_test_bin=%renegotiation_test_bin:/=\%
7if not exist %renegotiation_test_bin% exit /b 1
8
9%renegotiation_test_bin% %srcdir%\server1-rsa.pem %srcdir%\server1-rsa-chain.pem %srcdir%\ca-root-rsa.pem
10if !errorlevel! neq 0 (
11 exit /b 1
12)
13
14endlocal
diff --git a/tests/renegotiation_test.sh b/tests/renegotiation_test.sh
new file mode 100755
index 0000000..bbf27c8
--- /dev/null
+++ b/tests/renegotiation_test.sh
@@ -0,0 +1,15 @@
1#!/bin/sh
2set -e
3
4renegotiation_test_bin=./renegotiation_test
5if [ -e ./renegotiation_test.exe ]; then
6 renegotiation_test_bin=./renegotiation_test.exe
7elif [ -e ./renegotiation_test.js ]; then
8 renegotiation_test_bin="node ./renegotiation_test.js"
9fi
10
11if [ -z $srcdir ]; then
12 srcdir=.
13fi
14
15$renegotiation_test_bin $srcdir/server1-rsa.pem $srcdir/server1-rsa-chain.pem $srcdir/ca-root-rsa.pem