From 4a51e331051e3fa5be10f4962c3834b524f58ab0 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sat, 23 Feb 2019 14:47:44 +0100 Subject: actually disable 100 continue --- src/lib/exchange_api_curl_defaults.c | 21 --------------------- src/lib/exchange_api_handle.c | 5 ++++- 2 files changed, 4 insertions(+), 22 deletions(-) (limited to 'src') 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); -- cgit v1.2.3