[libsoup/carlosgc/tls-glib-networking] tests: fix SSL test with glib-networking >= 2.65.90




commit af574cf8bebbcb234b05a2919cad53f8d7c8c645
Author: Carlos Garcia Campos <cgarcia igalia com>
Date:   Wed Sep 9 14:44:25 2020 +0200

    tests: fix SSL test with glib-networking >= 2.65.90
    
    To make SSL tests fail with our testing certificate we create and empty
    GTlsDatabase passing /dev/null to g_tls_file_database_new(). This no
    longer works with newer glib-networking, since an empty file is
    considered an error by gnutls and
    g_tls_file_database_gnutls_populate_trust_list() now handles gnutls
    errors properly. Instead, we can just use the system CA file that won't
    contain our testing certificate for sure.
    
    Fixes #201

 tests/ssl-test.c | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)
---
diff --git a/tests/ssl-test.c b/tests/ssl-test.c
index 735ba416..2c93ca85 100644
--- a/tests/ssl-test.c
+++ b/tests/ssl-test.c
@@ -3,7 +3,6 @@
 #include "test-utils.h"
 
 SoupURI *uri;
-GTlsDatabase *null_tlsdb;
 
 static void
 do_properties_test_for_session (SoupSession *session)
@@ -37,7 +36,7 @@ do_async_properties_tests (void)
 
        session = soup_test_session_new (SOUP_TYPE_SESSION_ASYNC, NULL);
        g_object_set (G_OBJECT (session),
-                     SOUP_SESSION_TLS_DATABASE, null_tlsdb,
+                     SOUP_SESSION_SSL_USE_SYSTEM_CA_FILE, TRUE,
                      SOUP_SESSION_SSL_STRICT, FALSE,
                      NULL);
        do_properties_test_for_session (session);
@@ -53,7 +52,7 @@ do_sync_properties_tests (void)
 
        session = soup_test_session_new (SOUP_TYPE_SESSION_SYNC, NULL);
        g_object_set (G_OBJECT (session),
-                     SOUP_SESSION_TLS_DATABASE, null_tlsdb,
+                     SOUP_SESSION_SSL_USE_SYSTEM_CA_FILE, TRUE,
                      SOUP_SESSION_SSL_STRICT, FALSE,
                      NULL);
        do_properties_test_for_session (session);
@@ -106,7 +105,7 @@ do_strictness_test (gconstpointer data)
        }
        if (!test->with_ca_list) {
                g_object_set (G_OBJECT (session),
-                             SOUP_SESSION_TLS_DATABASE, null_tlsdb,
+                             SOUP_SESSION_SSL_USE_SYSTEM_CA_FILE, TRUE,
                              NULL);
        }
 
@@ -433,7 +432,6 @@ main (int argc, char **argv)
 {
        SoupServer *server = NULL;
        int i, ret;
-       GError *error = NULL;
 
        test_init (argc, argv, NULL);
 
@@ -441,9 +439,6 @@ main (int argc, char **argv)
                server = soup_test_server_new (SOUP_TEST_SERVER_IN_THREAD);
                soup_server_add_handler (server, NULL, server_handler, NULL, NULL);
                uri = soup_test_server_get_uri (server, "https", "127.0.0.1");
-
-               null_tlsdb = g_tls_file_database_new ("/dev/null", &error);
-               g_assert_no_error (error);
        } else
                uri = NULL;
 
@@ -463,7 +458,6 @@ main (int argc, char **argv)
        if (tls_available) {
                soup_uri_free (uri);
                soup_test_server_quit_unref (server);
-               g_object_unref (null_tlsdb);
        }
 
        test_cleanup ();


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]