View Issue Details

IDProjectCategoryView StatusLast Update
0001619libmicrohttpdotherpublic2010-12-25 23:22
Reportertimn Assigned ToChristian Grothoff  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version0.9.2 
Summary0001619: SSL/TLS test cases do not work on Fedora 14
DescriptionThe https test cases are broken on Fedora 14. The main reason is that the Fedora curl version uses NSS for SSL connections instead of GnuTLS or OpenSSL. For this version different cipher suite strings are required.

Additionally, the test cases are missing explicit linking against libraries of functions they use (i.e. gnutls). This is no longer allowed on Fedora, direct dependencies must always be explicit.

The attached patch fixes most of these problems. However, some problems remain because of which I disabled the test cases in the Fedora packages for now. See for example the log given below as additional info. For some reason the port is not freed. I couldn't reproduce this on my local system, but the build systems constantly have this problem. Could be a random or an ephemeral port be used for the tests? That would be perfect. I don't have the time to implement this atm though.

Another problem that I noticed with regards to https is that passing --enable-https will actually disable it. Similar goes for --enable-messages.
Additional Informationmake[5]: Entering directory `/builddir/build/BUILD/libmicrohttpd-0.9.2/src/testcurl/https'
curl version: libcurl/7.21.2 NSS/3.12.8.0 zlib/1.2.5 libidn/1.19 libssh2/1.2.7
Error: received handshake message out of context
curl_easy_perform failed: `Peer certificate cannot be authenticated with known CA certificates'
PASS: tls_daemon_options_test
PASS: mhds_multi_daemon_test
PASS: mhds_get_test
PASS: mhds_session_info_test
PASS: tls_thread_mode_test
PASS: tls_multi_thread_mode_test
Failed to bind to port 42433: Address already in use
Error: failed to start server
FAIL: tls_session_time_out_test
PASS: tls_authentication_test
======================================
1 of 8 tests failed
Please report to libmicrohttpd@gnu.org
======================================
TagsNo tags attached.
Attached Files
libmicrohttpd-0.9.2-fix-https-tests.patch (16,654 bytes)   
diff -urN libmicrohttpd-0.9.2/configure.ac libmicrohttpd-0.9.2.fix-https-tests/configure.ac
--- libmicrohttpd-0.9.2/configure.ac	2010-10-16 06:38:19.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/configure.ac	2010-11-16 01:03:08.368649717 -0500
@@ -211,9 +211,11 @@
   MHD_REQ_CURL_VERSION=7.16.4
   MHD_REQ_CURL_OPENSSL_VERSION=0.9.8
   MHD_REQ_CURL_GNUTLS_VERSION=2.2.3
+  MHD_REQ_CURL_NSS_VERSION=3.12.0
   AC_DEFINE_UNQUOTED([MHD_REQ_CURL_VERSION], "$MHD_REQ_CURL_VERSION", [required cURL version to run tests])
   AC_DEFINE_UNQUOTED([MHD_REQ_CURL_OPENSSL_VERSION], "$MHD_REQ_CURL_OPENSSL_VERSION", [required cURL SSL version to run tests])
   AC_DEFINE_UNQUOTED([MHD_REQ_CURL_GNUTLS_VERSION], "$MHD_REQ_CURL_GNUTLS_VERSION", [gnuTLS lib version - used in conjunction with cURL])
+  AC_DEFINE_UNQUOTED([MHD_REQ_CURL_NSS_VERSION], "$MHD_REQ_CURL_NSS_VERSION", [NSS lib version - used in conjunction with cURL])
 fi
 LIBS=$SAVE_LIBS
 AM_CONDITIONAL(HAVE_CURL, test x$curl = x1)
diff -urN libmicrohttpd-0.9.2/MHD_config.h.in libmicrohttpd-0.9.2.fix-https-tests/MHD_config.h.in
--- libmicrohttpd-0.9.2/MHD_config.h.in	2010-10-16 06:39:18.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/MHD_config.h.in	2010-11-16 01:03:40.574650260 -0500
@@ -200,6 +200,9 @@
 /* required cURL SSL version to run tests */
 #undef MHD_REQ_CURL_OPENSSL_VERSION
 
+/* required cURL NSS SSL version to run tests */
+#undef MHD_REQ_CURL_NSS_VERSION
+
 /* required cURL version to run tests */
 #undef MHD_REQ_CURL_VERSION
 
diff -urN libmicrohttpd-0.9.2/src/testcurl/curl_version_check.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/curl_version_check.c
--- libmicrohttpd-0.9.2/src/testcurl/curl_version_check.c	2010-07-27 13:53:24.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/curl_version_check.c	2010-11-16 01:47:24.080629155 -0500
@@ -67,6 +67,13 @@
   return s;
 }
 
+#if HTTPS_SUPPORT
+int
+curl_uses_nss_ssl()
+{
+  return (strstr(curl_version(), " NSS/") != NULL) ? 0 : -1;
+}
+#endif
 
 /*
  * check local libcurl version matches required version
@@ -135,6 +142,11 @@
       ssl_ver = strchr (ssl_ver, '/');
       req_ssl_ver = MHD_REQ_CURL_OPENSSL_VERSION;
     }
+  else if (strncmp ("NSS", ssl_ver, strlen ("NSS")) == 0)
+    {
+      ssl_ver = strchr (ssl_ver, '/');
+      req_ssl_ver = MHD_REQ_CURL_NSS_VERSION;
+    }
   else
     {
       fprintf (stderr, "Error: unrecognized curl ssl library\n");
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/Makefile.am libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/Makefile.am
--- libmicrohttpd-0.9.2/src/testcurl/https/Makefile.am	2010-08-20 07:20:57.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/Makefile.am	2010-11-16 02:12:45.787619291 -0500
@@ -19,12 +19,14 @@
   tls_authentication_test \
   mhds_multi_daemon_test \
   mhds_get_test \
-  mhds_get_test_select \
   mhds_session_info_test \
   tls_thread_mode_test \
   tls_multi_thread_mode_test \
   tls_session_time_out_test
 
+# disabled atm
+#mhds_get_test_select
+
 EXTRA_DIST = cert.pem key.pem tls_test_keys.h tls_test_common.h
 
 # tls_authentication_test currently fails for unknown reasons
@@ -32,13 +34,15 @@
   tls_daemon_options_test \
   mhds_multi_daemon_test \
   mhds_get_test \
-  mhds_get_test_select \
   mhds_session_info_test \
   tls_thread_mode_test \
   tls_multi_thread_mode_test \
   tls_session_time_out_test \
   tls_authentication_test
 
+# disabled atm
+# mhds_get_test_select
+
 # cURL dependent tests
 tls_session_time_out_test_SOURCES = \
   tls_session_time_out_test.c \
@@ -46,7 +50,7 @@
 tls_session_time_out_test_LDADD  = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
 
 tls_daemon_options_test_SOURCES = \
   tls_daemon_options_test.c \
@@ -54,7 +58,7 @@
 tls_daemon_options_test_LDADD = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
 
 tls_thread_mode_test_SOURCES = \
   tls_thread_mode_test.c \
@@ -62,7 +66,7 @@
 tls_thread_mode_test_LDADD = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
 
 tls_multi_thread_mode_test_SOURCES = \
   tls_multi_thread_mode_test.c \
@@ -70,7 +74,7 @@
 tls_multi_thread_mode_test_LDADD = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
 
 tls_authentication_test_SOURCES = \
   tls_authentication_test.c \
@@ -78,7 +82,7 @@
 tls_authentication_test_LDADD  = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
 
 mhds_session_info_test_SOURCES = \
   mhds_session_info_test.c \
@@ -86,7 +90,7 @@
 mhds_session_info_test_LDADD  = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
 
 mhds_multi_daemon_test_SOURCES = \
   mhds_multi_daemon_test.c \
@@ -94,7 +98,7 @@
 mhds_multi_daemon_test_LDADD  = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@  
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
 
 mhds_get_test_SOURCES = \
   mhds_get_test.c \
@@ -102,7 +106,7 @@
 mhds_get_test_LDADD  = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@  
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
 
 
 mhds_get_test_select_SOURCES = \
@@ -111,4 +115,5 @@
 mhds_get_test_select_LDADD  = \
   $(top_builddir)/src/testcurl/libcurl_version_check.a \
   $(top_builddir)/src/daemon/libmicrohttpd.la \
-  @LIBCURL@  
+  @LIBCURL@ -lgnutls @LIBGCRYPT_LIBS@
+
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/mhds_get_test.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/mhds_get_test.c
--- libmicrohttpd-0.9.2/src/testcurl/https/mhds_get_test.c	2010-08-20 07:20:57.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/mhds_get_test.c	2010-11-16 01:45:46.418865809 -0500
@@ -33,6 +33,7 @@
 #include "tls_test_common.h"
 
 int curl_check_version (const char *req_version, ...);
+int curl_uses_nss_ssl ();
 extern const char srv_key_pem[];
 extern const char srv_self_signed_cert_pem[];
 extern const char srv_signed_cert_pem[];
@@ -101,12 +102,24 @@
       fprintf (stderr, "Error: %s\n", strerror (errno));
       return -1;
     }
+
+  char *aes256_sha_tlsv1   = "AES256-SHA";
+  char *aes256_sha_sslv3   = "AES256-SHA";
+  char *des_cbc3_sha_tlsv1 = "DES-CBC3-SHA";
+
+  if (curl_uses_nss_ssl() == 0)
+    {
+      aes256_sha_tlsv1 = "rsa_aes_256_sha";
+      aes256_sha_sslv3 = "rsa_aes_256_sha";
+      des_cbc3_sha_tlsv1 = "rsa_aes_128_sha";
+    }
+
   errorCount +=
-    test_secure_get (NULL, "AES256-SHA", CURL_SSLVERSION_TLSv1);
+    test_secure_get (NULL, aes256_sha_tlsv1, CURL_SSLVERSION_TLSv1);
   errorCount +=
-    test_secure_get (NULL, "AES256-SHA", CURL_SSLVERSION_SSLv3);
+    test_secure_get (NULL, aes256_sha_sslv3, CURL_SSLVERSION_SSLv3);
   errorCount +=
-    test_cipher_option (NULL, "DES-CBC3-SHA", CURL_SSLVERSION_TLSv1);
+    test_cipher_option (NULL, des_cbc3_sha_tlsv1, CURL_SSLVERSION_TLSv1);
 
   print_test_result (errorCount, argv[0]);
 
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/mhds_get_test_select.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/mhds_get_test_select.c
--- libmicrohttpd-0.9.2/src/testcurl/https/mhds_get_test_select.c	2010-08-20 07:20:57.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/mhds_get_test_select.c	2010-11-16 02:03:05.568891406 -0500
@@ -33,6 +33,7 @@
 #include "tls_test_common.h"
 
 int curl_check_version (const char *req_version, ...);
+int curl_uses_nss_ssl ();
 extern const char srv_key_pem[];
 extern const char srv_self_signed_cert_pem[];
 extern const char srv_signed_cert_pem[];
@@ -100,10 +101,20 @@
 			MHD_OPTION_END);
   if (d == NULL)
     return 256;
+
+  char *aes256_sha = "AES256-SHA";
+  if (curl_uses_nss_ssl() == 0)
+    {
+      aes256_sha = "rsa_aes_256_sha";
+    }
+
   c = curl_easy_init ();
   curl_easy_setopt (c, CURLOPT_URL, "https://localhost:1082/hello_world");
   curl_easy_setopt (c, CURLOPT_WRITEFUNCTION, &copyBuffer);
   curl_easy_setopt (c, CURLOPT_WRITEDATA, &cbc);
+  /* TLS options */
+  curl_easy_setopt (c, CURLOPT_SSLVERSION, CURL_SSLVERSION_SSLv3);
+  curl_easy_setopt (c, CURLOPT_SSL_CIPHER_LIST, aes256_sha);
   curl_easy_setopt (c, CURLOPT_SSL_VERIFYPEER, 0);
   curl_easy_setopt (c, CURLOPT_SSL_VERIFYHOST, 0);
   curl_easy_setopt (c, CURLOPT_FAILONERROR, 1);
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/mhds_multi_daemon_test.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/mhds_multi_daemon_test.c
--- libmicrohttpd-0.9.2/src/testcurl/https/mhds_multi_daemon_test.c	2010-08-20 07:20:57.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/mhds_multi_daemon_test.c	2010-11-16 01:57:31.641705415 -0500
@@ -106,9 +106,14 @@
       return -1;
     }
 
+  char *aes256_sha = "AES256-SHA";
+  if (curl_uses_nss_ssl() == 0)
+    {
+      aes256_sha = "rsa_aes_256_sha";
+    }
   
   errorCount +=
-    test_concurent_daemon_pair (NULL, "AES256-SHA", CURL_SSLVERSION_SSLv3);
+    test_concurent_daemon_pair (NULL, aes256_sha, CURL_SSLVERSION_SSLv3);
 
   print_test_result (errorCount, "concurent_daemon_pair");
 
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/mhds_session_info_test.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/mhds_session_info_test.c
--- libmicrohttpd-0.9.2/src/testcurl/https/mhds_session_info_test.c	2010-07-26 15:23:08.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/mhds_session_info_test.c	2010-11-16 01:57:38.703535871 -0500
@@ -116,6 +116,12 @@
   if (d == NULL)
     return 2;
 
+  char *aes256_sha = "AES256-SHA";
+  if (curl_uses_nss_ssl() == 0)
+    {
+      aes256_sha = "rsa_aes_256_sha";
+    }
+
   c = curl_easy_init ();
 #if DEBUG_HTTPS_TEST
   curl_easy_setopt (c, CURLOPT_VERBOSE, 1);
@@ -128,7 +134,7 @@
   curl_easy_setopt (c, CURLOPT_FILE, &cbc);
   /* TLS options */
   curl_easy_setopt (c, CURLOPT_SSLVERSION, CURL_SSLVERSION_SSLv3);
-  curl_easy_setopt (c, CURLOPT_SSL_CIPHER_LIST, "AES256-SHA");
+  curl_easy_setopt (c, CURLOPT_SSL_CIPHER_LIST, aes256_sha);
   /* currently skip any peer authentication */
   curl_easy_setopt (c, CURLOPT_SSL_VERIFYPEER, 0);
   curl_easy_setopt (c, CURLOPT_SSL_VERIFYHOST, 0);
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/tls_authentication_test.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/tls_authentication_test.c
--- libmicrohttpd-0.9.2/src/testcurl/https/tls_authentication_test.c	2010-08-20 07:20:57.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/tls_authentication_test.c	2010-11-16 02:05:42.844662619 -0500
@@ -62,7 +62,7 @@
       return -1;
     }
 
-  ret = test_daemon_get (NULL, cipher_suite, proto_version, DEAMON_TEST_PORT, 1);
+  ret = test_daemon_get (NULL, cipher_suite, proto_version, DEAMON_TEST_PORT, 0);
 
   MHD_stop_daemon (d);
   return ret;
@@ -86,8 +86,14 @@
       return -1;
     }
 
+  char *aes256_sha = "AES256-SHA";
+  if (curl_uses_nss_ssl() == 0)
+    {
+      aes256_sha = "rsa_aes_256_sha";
+    }
+
   errorCount +=
-    test_secure_get (NULL, "AES256-SHA", CURL_SSLVERSION_TLSv1);
+    test_secure_get (NULL, aes256_sha, CURL_SSLVERSION_TLSv1);
 
   print_test_result (errorCount, argv[0]);
 
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/tls_daemon_options_test.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/tls_daemon_options_test.c
--- libmicrohttpd-0.9.2/src/testcurl/https/tls_daemon_options_test.c	2010-08-20 07:20:57.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/tls_daemon_options_test.c	2010-11-16 01:55:19.009616601 -0500
@@ -94,10 +94,20 @@
       fprintf (stderr, "Error: %s\n", strerror (errno));
       return -1;
     }
+
+  char *aes128_sha = "AES128-SHA";
+  char *aes256_sha = "AES256-SHA";
+  if (curl_uses_nss_ssl() == 0)
+    {
+      aes128_sha = "rsa_aes_128_sha";
+      aes256_sha = "rsa_aes_256_sha";
+    }
+
+
   errorCount +=
     test_wrap ("TLS1.0-AES-SHA1",
 	       &test_https_transfer, NULL, daemon_flags,
-	       "AES128-SHA1",
+	       aes128_sha,
 	       CURL_SSLVERSION_TLSv1,
 	       MHD_OPTION_HTTPS_MEM_KEY, srv_key_pem,
 	       MHD_OPTION_HTTPS_MEM_CERT, srv_self_signed_cert_pem,
@@ -106,7 +116,7 @@
   errorCount +=
     test_wrap ("TLS1.0-AES-SHA1",
 	       &test_https_transfer, NULL, daemon_flags,
-	       "AES128-SHA1",
+	       aes128_sha,
 	       CURL_SSLVERSION_SSLv3,
 	       MHD_OPTION_HTTPS_MEM_KEY, srv_key_pem,
 	       MHD_OPTION_HTTPS_MEM_CERT, srv_self_signed_cert_pem,
@@ -116,7 +126,7 @@
   errorCount +=
     test_wrap ("SSL3.0-AES-SHA1",
 	       &test_https_transfer, NULL, daemon_flags,
-	       "AES128-SHA1",
+	       aes128_sha,
 	       CURL_SSLVERSION_SSLv3,
 	       MHD_OPTION_HTTPS_MEM_KEY, srv_key_pem,
 	       MHD_OPTION_HTTPS_MEM_CERT, srv_self_signed_cert_pem,
@@ -141,7 +151,7 @@
   errorCount +=
     test_wrap ("TLS1.0 vs SSL3",
 	       &test_unmatching_ssl_version, NULL, daemon_flags,
-	       "AES256-SHA",
+	       aes256_sha,
 	       CURL_SSLVERSION_SSLv3,
 	       MHD_OPTION_HTTPS_MEM_KEY, srv_key_pem,
 	       MHD_OPTION_HTTPS_MEM_CERT, srv_self_signed_cert_pem,
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/tls_multi_thread_mode_test.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/tls_multi_thread_mode_test.c
--- libmicrohttpd-0.9.2/src/testcurl/https/tls_multi_thread_mode_test.c	2010-08-20 07:20:57.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/tls_multi_thread_mode_test.c	2010-11-16 01:57:50.148631662 -0500
@@ -136,11 +136,17 @@
       return -1;
     }
 
+  char *aes256_sha = "AES256-SHA";
+  if (curl_uses_nss_ssl() == 0)
+    {
+      aes256_sha = "rsa_aes_256_sha";
+    }
+
   errorCount +=
     test_wrap ("multi threaded daemon, single client", &test_single_client,
                NULL,
                MHD_USE_SSL | MHD_USE_DEBUG | MHD_USE_THREAD_PER_CONNECTION,
-               "AES256-SHA", CURL_SSLVERSION_TLSv1, MHD_OPTION_HTTPS_MEM_KEY,
+               aes256_sha, CURL_SSLVERSION_TLSv1, MHD_OPTION_HTTPS_MEM_KEY,
                srv_key_pem, MHD_OPTION_HTTPS_MEM_CERT,
                srv_self_signed_cert_pem, MHD_OPTION_END);
 
@@ -148,7 +154,7 @@
     test_wrap ("multi threaded daemon, parallel client",
                &test_parallel_clients, NULL,
                MHD_USE_SSL | MHD_USE_DEBUG | MHD_USE_THREAD_PER_CONNECTION,
-               "AES256-SHA", CURL_SSLVERSION_TLSv1, MHD_OPTION_HTTPS_MEM_KEY,
+               aes256_sha, CURL_SSLVERSION_TLSv1, MHD_OPTION_HTTPS_MEM_KEY,
                srv_key_pem, MHD_OPTION_HTTPS_MEM_CERT,
                srv_self_signed_cert_pem, MHD_OPTION_END);
 
diff -urN libmicrohttpd-0.9.2/src/testcurl/https/tls_thread_mode_test.c libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/tls_thread_mode_test.c
--- libmicrohttpd-0.9.2/src/testcurl/https/tls_thread_mode_test.c	2010-08-20 07:20:57.000000000 -0400
+++ libmicrohttpd-0.9.2.fix-https-tests/src/testcurl/https/tls_thread_mode_test.c	2010-11-16 01:58:05.230615529 -0500
@@ -137,11 +137,17 @@
       return -1;
     }
 
+  char *aes256_sha = "AES256-SHA";
+  if (curl_uses_nss_ssl() == 0)
+    {
+      aes256_sha = "rsa_aes_256_sha";
+    }
+
   errorCount +=
     test_wrap ("single threaded daemon, single client", &test_single_client,
                NULL,
                MHD_USE_SELECT_INTERNALLY | MHD_USE_SSL | MHD_USE_DEBUG,
-               "AES256-SHA", CURL_SSLVERSION_TLSv1, MHD_OPTION_HTTPS_MEM_KEY,
+               aes256_sha, CURL_SSLVERSION_TLSv1, MHD_OPTION_HTTPS_MEM_KEY,
                srv_key_pem, MHD_OPTION_HTTPS_MEM_CERT,
                srv_self_signed_cert_pem, MHD_OPTION_END);
 
@@ -149,7 +155,7 @@
     test_wrap ("single threaded daemon, parallel clients",
                &test_parallel_clients, NULL,
                MHD_USE_SELECT_INTERNALLY | MHD_USE_SSL | MHD_USE_DEBUG,
-               "AES256-SHA", CURL_SSLVERSION_TLSv1, MHD_OPTION_HTTPS_MEM_KEY,
+               aes256_sha, CURL_SSLVERSION_TLSv1, MHD_OPTION_HTTPS_MEM_KEY,
                srv_key_pem, MHD_OPTION_HTTPS_MEM_CERT,
                srv_self_signed_cert_pem, MHD_OPTION_END);
 

Activities

Christian Grothoff

2010-11-18 23:12

manager   ~0004176

I've applied your patch EXCEPT for removing the one testcase from the build as SVN 13741.

Christian Grothoff

2010-11-18 23:14

manager   ~0004177

As for the port issue, if the port was available when the tests were started (which they should be on a build host IMO), then it is a bug if it is not available for some test later, and should be treated as such (investigated, not dropped from the tests!).

As for the configure.ac --enable issue, a patch would be welcome; however, I think this is a separate bug and the main issue here (NSS, -lgnutls) is resolved so I'll call this one resolved for now.

Issue History

Date Modified Username Field Change
2010-11-16 16:34 timn New Issue
2010-11-16 16:34 timn File Added: libmicrohttpd-0.9.2-fix-https-tests.patch
2010-11-17 08:07 Christian Grothoff Status new => assigned
2010-11-17 08:07 Christian Grothoff Assigned To => Christian Grothoff
2010-11-18 23:12 Christian Grothoff Note Added: 0004176
2010-11-18 23:14 Christian Grothoff Note Added: 0004177
2010-11-18 23:14 Christian Grothoff Status assigned => resolved
2010-11-18 23:14 Christian Grothoff Resolution open => fixed
2010-12-25 23:22 Christian Grothoff Status resolved => closed