cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: CURLOPT_HTTP_VERSION doesn't work?

From: A. Craig West <acraigwest_at_gmail.com>
Date: Thu, 8 Jan 2009 16:25:30 -0500

2009/1/7 A. Craig West <acraigwest_at_gmail.com>:
> 2009/1/7 Dan Fandrich <dan_at_coneharvesters.com>:
...
>> CONNECT version number can/could/should have an independent version number
>> to the contained request, in the same way that you can choose the SOCKS
>> version number separately (with CURLOPT_PROXYTYPE) from the HTTP request
>> carried over the SOCKS connection. In fact, you could compatibly create a
>> new CURLOPT_PROXYTYPE enumerated type for this (although that may not be the
>> cleanest place).
...
> I suspect the logic will be a lot simpler with a separate option,
> CURLOPT_PROXY_HTTP_VERSION. Where else besides CONNECT do we
> communicate with the proxy as a distinct entity from the destination
> server? I suppose I will find out tomorrow...

Looking at the curl_proxytype enum, I am nearly convinced that this is
the correct place this after all, as it seems more consistent with how
the SOCKS proxies are done. I am a fan of consistency... There are a
couple of options here, though, and I would like some opinions. I am
currently thinking of adding:
CURLPROXY_HTTP_1_0 = 1,
CURL_PROXY_HTTP_1_1 = 2,
and having CURLPROXY_HTTP act somewhat like the current
CURL_HTTP_VERSION_NONE, and try to determine for itself what to use.
The alternative would be just to add CURL_PROXY_HTTP_1_1 = 1, and have
it default to 1_0. This option has the advantage of preserving current
functionality, which apparently hasn't broken for very many people. I
have investigated our set-up here, and it appears that this is
breaking when doing https: authentication through a Microsoft ISA web
proxy.
The reaon I would prefer to have it use 1.1 if possible as a default
is that it appears to be more standards-compliant that way...
-Craig
Received on 2009-01-08