libtls: Only run socket tests with EdDSA keys if they are supported
authorTobias Brunner <tobias@strongswan.org>
Thu, 14 Jan 2021 14:45:34 +0000 (15:45 +0100)
committerTobias Brunner <tobias@strongswan.org>
Fri, 12 Feb 2021 13:35:23 +0000 (14:35 +0100)
ECDSA support is currently required to run the tests because ECDSA
cipher suites are not filtered when determining the supported cipher
suites.  Also required are ECDH groups.

src/libtls/tests/suites/test_socket.c
src/libtls/tests/tls_tests.h

index ee470e2..e9f7d83 100644 (file)
@@ -707,11 +707,6 @@ START_TEST(test_tls10_mutual)
 }
 END_TEST
 
-Suite *socket_suite_create()
-{
-       Suite *s;
-       TCase *tc;
-
 #define add_tls_test(func, version) \
        tcase_add_loop_test(tc, func, 0, \
                                                tls_crypto_get_supported_suites(TRUE, version, NULL));
@@ -719,6 +714,11 @@ Suite *socket_suite_create()
 #define add_tls_versions_test(func, from, to) \
        tcase_add_loop_test(tc, func, from, to+1);
 
+Suite *socket_suite_create()
+{
+       Suite *s;
+       TCase *tc;
+
        s = suite_create("socket");
 
        tc = tcase_create("TLS [1.0..1.3] client to TLS 1.3 server");
@@ -782,6 +782,16 @@ Suite *socket_suite_create()
        add_tls_test(test_tls10_mutual, TLS_1_0);
        suite_add_tcase(s, tc);
 
+       return s;
+}
+
+Suite *socket_suite_ed25519_create()
+{
+       Suite *s;
+       TCase *tc;
+
+       s = suite_create("socket ed25519");
+
        tc = tcase_create("TLS 1.3/ed25519");
        tcase_add_checked_fixture(tc, setup_ed25519_creds, teardown_creds);
        add_tls_test(test_tls13, TLS_1_3);
@@ -802,6 +812,16 @@ Suite *socket_suite_create()
        add_tls_test(test_tls10, TLS_1_0);
        suite_add_tcase(s, tc);
 
+       return s;
+}
+
+Suite *socket_suite_ed448_create()
+{
+       Suite *s;
+       TCase *tc;
+
+       s = suite_create("socket ed448");
+
        tc = tcase_create("TLS 1.3/ed448");
        tcase_add_checked_fixture(tc, setup_ed448_creds, teardown_creds);
        add_tls_test(test_tls13, TLS_1_3);
index b0d0d57..77e548e 100644 (file)
@@ -15,4 +15,6 @@
 
 TEST_SUITE(hkdf_suite_create)
 TEST_SUITE(socket_suite_create)
+TEST_SUITE_DEPEND(socket_suite_ed25519_create, PRIVKEY_GEN, KEY_ED25519)
+TEST_SUITE_DEPEND(socket_suite_ed448_create, PRIVKEY_GEN, KEY_ED448)
 TEST_SUITE(suites_suite_create)