diff options
author | Christian Grothoff <christian@grothoff.org> | 2013-09-23 11:41:26 +0000 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2013-09-23 11:41:26 +0000 |
commit | 3a015cd331f0a88425670fb2c6361875df10229d (patch) | |
tree | a8ad53576609f072b1c7d187f416bb52cef58108 | |
parent | 5e4efd6667d9417e781ef8508f7460b6211f5a7a (diff) | |
download | libmicrohttpd-3a015cd331f0a88425670fb2c6361875df10229d.tar.gz libmicrohttpd-3a015cd331f0a88425670fb2c6361875df10229d.zip |
-fixes
-rw-r--r-- | src/testcurl/test_postform.c | 2 | ||||
-rw-r--r-- | src/testcurl/test_timeout.c | 71 |
2 files changed, 42 insertions, 31 deletions
diff --git a/src/testcurl/test_postform.c b/src/testcurl/test_postform.c index d9bec6c6..61e3fdf6 100644 --- a/src/testcurl/test_postform.c +++ b/src/testcurl/test_postform.c | |||
@@ -463,6 +463,8 @@ testExternalPost () | |||
463 | } | 463 | } |
464 | 464 | ||
465 | 465 | ||
466 | GCRY_THREAD_OPTION_PTHREAD_IMPL; | ||
467 | |||
466 | 468 | ||
467 | int | 469 | int |
468 | main (int argc, char *const *argv) | 470 | main (int argc, char *const *argv) |
diff --git a/src/testcurl/test_timeout.c b/src/testcurl/test_timeout.c index 0596a73a..4a65edd9 100644 --- a/src/testcurl/test_timeout.c +++ b/src/testcurl/test_timeout.c | |||
@@ -39,6 +39,7 @@ | |||
39 | static int oneone; | 39 | static int oneone; |
40 | 40 | ||
41 | static int withTimeout = 1; | 41 | static int withTimeout = 1; |
42 | |||
42 | static int withoutTimeout = 1; | 43 | static int withoutTimeout = 1; |
43 | 44 | ||
44 | struct CBC | 45 | struct CBC |
@@ -49,8 +50,37 @@ struct CBC | |||
49 | }; | 50 | }; |
50 | 51 | ||
51 | 52 | ||
52 | static void | 53 | static void |
53 | termination_cb (void *cls, struct MHD_Connection *connection, void **con_cls, enum MHD_RequestTerminationCode toe); | 54 | termination_cb (void *cls, |
55 | struct MHD_Connection *connection, | ||
56 | void **con_cls, | ||
57 | enum MHD_RequestTerminationCode toe) | ||
58 | { | ||
59 | int *test = cls; | ||
60 | |||
61 | switch (toe) | ||
62 | { | ||
63 | case MHD_REQUEST_TERMINATED_COMPLETED_OK : | ||
64 | if (test == &withoutTimeout) | ||
65 | { | ||
66 | withoutTimeout = 0; | ||
67 | } | ||
68 | break; | ||
69 | case MHD_REQUEST_TERMINATED_WITH_ERROR : | ||
70 | case MHD_REQUEST_TERMINATED_READ_ERROR : | ||
71 | break; | ||
72 | case MHD_REQUEST_TERMINATED_TIMEOUT_REACHED : | ||
73 | if (test == &withTimeout) | ||
74 | { | ||
75 | withTimeout = 0; | ||
76 | } | ||
77 | break; | ||
78 | case MHD_REQUEST_TERMINATED_DAEMON_SHUTDOWN: | ||
79 | break; | ||
80 | case MHD_REQUEST_TERMINATED_CLIENT_ABORT: | ||
81 | break; | ||
82 | } | ||
83 | } | ||
54 | 84 | ||
55 | 85 | ||
56 | static size_t | 86 | static size_t |
@@ -74,6 +104,7 @@ putBuffer_fail (void *stream, size_t size, size_t nmemb, void *ptr) | |||
74 | return 0; | 104 | return 0; |
75 | } | 105 | } |
76 | 106 | ||
107 | |||
77 | static size_t | 108 | static size_t |
78 | copyBuffer (void *ptr, size_t size, size_t nmemb, void *ctx) | 109 | copyBuffer (void *ptr, size_t size, size_t nmemb, void *ctx) |
79 | { | 110 | { |
@@ -86,6 +117,7 @@ copyBuffer (void *ptr, size_t size, size_t nmemb, void *ctx) | |||
86 | return size * nmemb; | 117 | return size * nmemb; |
87 | } | 118 | } |
88 | 119 | ||
120 | |||
89 | static int | 121 | static int |
90 | ahc_echo (void *cls, | 122 | ahc_echo (void *cls, |
91 | struct MHD_Connection *connection, | 123 | struct MHD_Connection *connection, |
@@ -125,6 +157,7 @@ ahc_echo (void *cls, | |||
125 | return ret; | 157 | return ret; |
126 | } | 158 | } |
127 | 159 | ||
160 | |||
128 | static int | 161 | static int |
129 | testWithoutTimeout () | 162 | testWithoutTimeout () |
130 | { | 163 | { |
@@ -238,32 +271,6 @@ testWithTimeout () | |||
238 | } | 271 | } |
239 | 272 | ||
240 | 273 | ||
241 | static void | ||
242 | termination_cb (void *cls, struct MHD_Connection *connection, void **con_cls, enum MHD_RequestTerminationCode toe) | ||
243 | { | ||
244 | int * test = cls; | ||
245 | switch (toe) | ||
246 | { | ||
247 | case MHD_REQUEST_TERMINATED_COMPLETED_OK : | ||
248 | if (test==&withoutTimeout) | ||
249 | { | ||
250 | withoutTimeout = 0; | ||
251 | } | ||
252 | break; | ||
253 | case MHD_REQUEST_TERMINATED_WITH_ERROR : | ||
254 | case MHD_REQUEST_TERMINATED_READ_ERROR : | ||
255 | break; | ||
256 | case MHD_REQUEST_TERMINATED_TIMEOUT_REACHED : | ||
257 | if (test==&withTimeout) | ||
258 | { | ||
259 | withTimeout = 0; | ||
260 | } | ||
261 | break; | ||
262 | case MHD_REQUEST_TERMINATED_DAEMON_SHUTDOWN : | ||
263 | break; | ||
264 | } | ||
265 | } | ||
266 | |||
267 | 274 | ||
268 | int | 275 | int |
269 | main (int argc, char *const *argv) | 276 | main (int argc, char *const *argv) |
@@ -276,10 +283,12 @@ main (int argc, char *const *argv) | |||
276 | errorCount += testWithoutTimeout (); | 283 | errorCount += testWithoutTimeout (); |
277 | errorCount += testWithTimeout (); | 284 | errorCount += testWithTimeout (); |
278 | if (errorCount != 0) | 285 | if (errorCount != 0) |
279 | fprintf (stderr, "Error during test execution (code: %u)\n", errorCount); | 286 | fprintf (stderr, |
287 | "Error during test execution (code: %u)\n", | ||
288 | errorCount); | ||
280 | curl_global_cleanup (); | 289 | curl_global_cleanup (); |
281 | if ((withTimeout == 0) && (withoutTimeout == 0)) | 290 | if ((withTimeout == 0) && (withoutTimeout == 0)) |
282 | return 0; | 291 | return 0; |
283 | else | 292 | else |
284 | return errorCount; /* 0 == pass */ | 293 | return errorCount; /* 0 == pass */ |
285 | } | 294 | } |