aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2019-02-23 14:47:44 +0100
committerChristian Grothoff <christian@grothoff.org>2019-02-23 14:47:44 +0100
commit4a51e331051e3fa5be10f4962c3834b524f58ab0 (patch)
treeba13f0c488a7681ddc91aa1a71c31628110b4eb7
parent3219c14674743302f943c3884e8383de4c4427e6 (diff)
actually disable 100 continue
-rw-r--r--ChangeLog3
-rw-r--r--src/lib/exchange_api_curl_defaults.c21
-rw-r--r--src/lib/exchange_api_handle.c5
3 files changed, 7 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index 48bb761f7..77fd48cff 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,6 @@
+Sat Feb 23 14:47:12 CET 2019
+ Actually disable 100 CONTINUE. -CG
+
Sun Aug 19 15:15:48 CEST 2018
Increase various limits and rework transaction scopes to
improve scalability. -CG
diff --git a/src/lib/exchange_api_curl_defaults.c b/src/lib/exchange_api_curl_defaults.c
index 1a25e564e..3ac1dfdbe 100644
--- a/src/lib/exchange_api_curl_defaults.c
+++ b/src/lib/exchange_api_curl_defaults.c
@@ -55,26 +55,5 @@ TEL_curl_easy_get (const char *url)
CURLOPT_TCP_FASTOPEN,
1L));
#endif
- {
- /* Unfortunately libcurl needs chunk to be alive until after
- curl_easy_perform. To avoid manual cleanup, we keep
- one static list here. */
- static struct curl_slist *chunk = NULL;
- if (NULL == chunk)
- {
- /* With POST requests, we do not want to wait for the
- "100 Continue" response, as our request bodies are usually
- small and directy sending them saves us a round trip.
-
- Clearing the expect header like this disables libcurl's
- default processing of the header.
-
- Disabling this header is safe for other HTTP methods, thus
- we don't distinguish further before setting it. */
- chunk = curl_slist_append (chunk, "Expect:");
- }
- GNUNET_assert (CURLE_OK == curl_easy_setopt (eh, CURLOPT_HTTPHEADER, chunk));
- }
-
return eh;
}
diff --git a/src/lib/exchange_api_handle.c b/src/lib/exchange_api_handle.c
index 158afd56f..986bcc4c1 100644
--- a/src/lib/exchange_api_handle.c
+++ b/src/lib/exchange_api_handle.c
@@ -1740,7 +1740,10 @@ TALER_EXCHANGE_connect
TALER_LOG_DEBUG ("Connecting to the exchange (%s)\n",
url);
-
+ /* Disable 100 continue processing */
+ GNUNET_break (GNUNET_OK ==
+ GNUNET_CURL_append_header (ctx,
+ "Expect:"));
exchange = GNUNET_new (struct TALER_EXCHANGE_Handle);
exchange->ctx = ctx;
exchange->url = GNUNET_strdup (url);