diff options
author | Christian Grothoff <christian@grothoff.org> | 2016-02-20 12:30:43 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2016-02-20 12:30:43 +0000 |
commit | 8d83647523111e7d514cd8d045a0ffceccb86104 (patch) | |
tree | a978738711ac63a43b647db22ac95b72846ba49a | |
parent | a6249094154d811189c1e25c9eb2001712ecb571 (diff) |
-check for versions, report tests as skipped if versions missmatch
-rw-r--r-- | src/testcurl/https/test_https_session_info.c | 15 | ||||
-rw-r--r-- | src/testcurl/https/test_https_sni.c | 4 | ||||
-rw-r--r-- | src/testcurl/https/test_tls_options.c | 20 |
3 files changed, 26 insertions, 13 deletions
diff --git a/src/testcurl/https/test_https_session_info.c b/src/testcurl/https/test_https_session_info.c index 97be81af..12d70f7b 100644 --- a/src/testcurl/https/test_https_session_info.c +++ b/src/testcurl/https/test_https_session_info.c @@ -1,6 +1,6 @@ /* This file is part of libmicrohttpd - Copyright (C) 2007 Christian Grothoff + Copyright (C) 2007, 2016 Christian Grothoff libmicrohttpd is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published @@ -168,6 +168,7 @@ int main (int argc, char *const *argv) { unsigned int errorCount = 0; + const char *ssl_version; gcry_control (GCRYCTL_ENABLE_QUICK_RANDOM, 0); #ifdef GCRYCTL_INITIALIZATION_FINISHED @@ -178,6 +179,18 @@ main (int argc, char *const *argv) fprintf (stderr, "Error (code: %u)\n", errorCount); return -1; } + + ssl_version = curl_version_info (CURLVERSION_NOW)->ssl_version; + if (NULL == ssl_version) + { + fprintf (stderr, "Curl does not support SSL. Cannot run the test.\n"); + return 77; + } + if (0 != strncmp (ssl_version, "GnuTLS", 6)) + { + fprintf (stderr, "This test can be run only with libcurl-gnutls.\n"); + return 77; + } #if LIBCURL_VERSION_NUM >= 0x072200 errorCount += test_query_session (); #endif diff --git a/src/testcurl/https/test_https_sni.c b/src/testcurl/https/test_https_sni.c index 50be1499..ce7b9f6b 100644 --- a/src/testcurl/https/test_https_sni.c +++ b/src/testcurl/https/test_https_sni.c @@ -256,7 +256,7 @@ main (int argc, char *const *argv) if (0 != curl_global_init (CURL_GLOBAL_ALL)) { fprintf (stderr, "Error: %s\n", strerror (errno)); - return -1; + return 77; } load_keys ("host1", ABS_SRCDIR "/host1.crt", ABS_SRCDIR "/host1.key"); load_keys ("host2", ABS_SRCDIR "/host2.crt", ABS_SRCDIR "/host2.key"); @@ -288,6 +288,6 @@ int main () { fprintf (stderr, "SNI not supported by GnuTLS < 3.0\n"); - return 0; + return 77; } #endif diff --git a/src/testcurl/https/test_tls_options.c b/src/testcurl/https/test_tls_options.c index 391dc594..72ccaced 100644 --- a/src/testcurl/https/test_tls_options.c +++ b/src/testcurl/https/test_tls_options.c @@ -1,17 +1,17 @@ /* This file is part of libmicrohttpd - Copyright (C) 2007, 2010 Christian Grothoff - + Copyright (C) 2007, 2010, 2016 Christian Grothoff + libmicrohttpd is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - + libmicrohttpd is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with libmicrohttpd; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, @@ -92,24 +92,24 @@ main (int argc, char *const *argv) #endif if (curl_check_version (MHD_REQ_CURL_VERSION)) { - return 0; + return 77; } ssl_version = curl_version_info (CURLVERSION_NOW)->ssl_version; if (NULL == ssl_version) { fprintf (stderr, "Curl does not support SSL. Cannot run the test.\n"); - return 0; + return 77; } if (0 != strncmp (ssl_version, "GnuTLS", 6)) { fprintf (stderr, "This test can be run only with libcurl-gnutls.\n"); - return 0; + return 77; } if (0 != curl_global_init (CURL_GLOBAL_ALL)) { fprintf (stderr, "Error: %s\n", strerror (errno)); - return 0; + return 77; } const char *aes128_sha = "AES128-SHA"; @@ -119,9 +119,9 @@ main (int argc, char *const *argv) aes128_sha = "rsa_aes_128_sha"; aes256_sha = "rsa_aes_256_sha"; } - - if (0 != + + if (0 != test_wrap ("TLS1.0-AES-SHA1", &test_https_transfer, NULL, daemon_flags, aes128_sha, |