# [PATCH] smart-http: Really never use Expect: 100-continue

2 messages from 2011-03-14 to 2011-03-14. Participants: Shawn O. Pearce, Junio C Hamano.
Thread: https://gitlist.dev/t/26728

## Shawn O. Pearce, 2011-03-14 18:28

Subject: [PATCH] smart-http: Really never use Expect: 100-continue
Message-ID: <1300127297-8025-1-git-send-email-spearce@spearce.org>
URL: https://gitlist.dev/e/1300127297-8025-1-git-send-email-spearce%40spearce.org

```
libcurl may choose to try and use Expect: 100-continue for
any type of POST, not just a Transfer: chunked-encoding type.
Force it to disable this feature, as not all proxy servers support
100-continue and leaving it enabled can cause 1 second stalls during
the negotiation phase of fetch-pack/upload-pack.

In ("206b099d26 smart-http: Don't use Expect: 100-Continue") we
tried to disable this for only large POST bodies, but it should be
disabled for every POST body.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---

 This should be applied onto the tip of sp/maint-smart-http-sans-100-continue.

 remote-curl.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/remote-curl.c b/remote-curl.c
index 256326a..1f41a90 100644
--- a/remote-curl.c
+++ b/remote-curl.c
@@ -453,12 +453,12 @@ static int post_rpc(struct rpc_state *rpc)
 
 	headers = curl_slist_append(headers, rpc->hdr_content_type);
 	headers = curl_slist_append(headers, rpc->hdr_accept);
+	headers = curl_slist_append(headers, "Expect:");
 
 	if (large_request) {
 		/* The request body is large and the size cannot be predicted.
 		 * We must use chunked encoding to send it.
 		 */
-		headers = curl_slist_append(headers, "Expect:");
 		headers = curl_slist_append(headers, "Transfer-Encoding: chunked");
 		rpc->initial_buffer = 1;
 		curl_easy_setopt(slot->curl, CURLOPT_READFUNCTION, rpc_out);
-- 
1.7.4.1.408.gb6b16.dirty

```

## Junio C Hamano, 2011-03-14 19:34

Subject: Re: [PATCH] smart-http: Really never use Expect: 100-continue
Message-ID: <7vtyf5cx8f.fsf@alter.siamese.dyndns.org>
URL: https://gitlist.dev/e/7vtyf5cx8f.fsf%40alter.siamese.dyndns.org
In-Reply-To: <1300127297-8025-1-git-send-email-spearce@spearce.org>

```
Thanks; will queue.

```
