commit dc4af6f6001a35f965a088d9b20d6a26cd94254a
parent 49edf6b94d0aa8588a0ac31801a597c99d405c44
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
Date: Sun, 26 May 2019 17:06:04 +0300
perf_get_concurrent11: added new test, fixed "11" mode detection
Diffstat:
2 files changed, 31 insertions(+), 19 deletions(-)
diff --git a/src/testcurl/Makefile.am b/src/testcurl/Makefile.am
@@ -29,6 +29,7 @@ THREAD_ONLY_TESTS = \
if HAVE_POSIX_THREADS
THREAD_ONLY_TESTS += \
+ perf_get_concurrent11 \
test_quiesce \
test_concurrent_stop \
perf_get_concurrent
@@ -144,13 +145,22 @@ perf_get_LDADD = \
perf_get_concurrent_SOURCES = \
perf_get_concurrent.c \
- gauger.h
+ gauger.h mhd_has_in_name.h
perf_get_concurrent_CFLAGS = \
$(PTHREAD_CFLAGS) $(AM_CFLAGS)
perf_get_concurrent_LDADD = \
$(top_builddir)/src/microhttpd/libmicrohttpd.la \
$(PTHREAD_LIBS) @LIBCURL@
+perf_get_concurrent11_SOURCES = \
+ perf_get_concurrent.c \
+ gauger.h mhd_has_in_name.h
+perf_get_concurrent11_CFLAGS = \
+ $(PTHREAD_CFLAGS) $(AM_CFLAGS)
+perf_get_concurrent11_LDADD = \
+ $(top_builddir)/src/microhttpd/libmicrohttpd.la \
+ $(PTHREAD_LIBS) @LIBCURL@
+
test_digestauth_SOURCES = \
test_digestauth.c
test_digestauth_LDADD = \
diff --git a/src/testcurl/perf_get_concurrent.c b/src/testcurl/perf_get_concurrent.c
@@ -41,6 +41,7 @@
#include <time.h>
#include <pthread.h>
#include "gauger.h"
+#include "mhd_has_in_name.h"
#if defined(CPU_COUNT) && (CPU_COUNT+0) < 2
#undef CPU_COUNT
@@ -182,23 +183,23 @@ thread_gets (void *param)
unsigned int i;
char * const url = (char*) param;
+ c = curl_easy_init ();
+ curl_easy_setopt (c, CURLOPT_URL, url);
+ curl_easy_setopt (c, CURLOPT_WRITEFUNCTION, ©Buffer);
+ curl_easy_setopt (c, CURLOPT_WRITEDATA, NULL);
+ curl_easy_setopt (c, CURLOPT_FAILONERROR, 1L);
+ curl_easy_setopt (c, CURLOPT_TIMEOUT, 150L);
+ if (oneone)
+ curl_easy_setopt (c, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
+ else
+ curl_easy_setopt (c, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
+ curl_easy_setopt (c, CURLOPT_CONNECTTIMEOUT, 150L);
+ /* NOTE: use of CONNECTTIMEOUT without also
+ setting NOSIGNAL results in really weird
+ crashes on my system! */
+ curl_easy_setopt (c, CURLOPT_NOSIGNAL, 1L);
for (i=0;i<ROUNDS;i++)
{
- c = curl_easy_init ();
- curl_easy_setopt (c, CURLOPT_URL, url);
- curl_easy_setopt (c, CURLOPT_WRITEFUNCTION, ©Buffer);
- curl_easy_setopt (c, CURLOPT_WRITEDATA, NULL);
- curl_easy_setopt (c, CURLOPT_FAILONERROR, 1);
- curl_easy_setopt (c, CURLOPT_TIMEOUT, 150L);
- if (oneone)
- curl_easy_setopt (c, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
- else
- curl_easy_setopt (c, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
- curl_easy_setopt (c, CURLOPT_CONNECTTIMEOUT, 150L);
- /* NOTE: use of CONNECTTIMEOUT without also
- setting NOSIGNAL results in really weird
- crashes on my system! */
- curl_easy_setopt (c, CURLOPT_NOSIGNAL, 1);
if (CURLE_OK != (errornum = curl_easy_perform (c)))
{
fprintf (stderr,
@@ -207,8 +208,8 @@ thread_gets (void *param)
curl_easy_cleanup (c);
return "curl error";
}
- curl_easy_cleanup (c);
}
+ curl_easy_cleanup (c);
return NULL;
}
@@ -467,8 +468,9 @@ main (int argc, char *const *argv)
int port = 1100;
(void)argc; /* Unused. Silent compiler warning. */
- oneone = (NULL != strrchr (argv[0], (int) '/')) ?
- (NULL != strstr (strrchr (argv[0], (int) '/'), "11")) : 0;
+ if (NULL == argv || 0 == argv[0])
+ return 99;
+ oneone = has_in_name (argv[0], "11");
if (oneone)
port += 15;
if (0 != curl_global_init (CURL_GLOBAL_WIN32))