[Issue 19385] New: Question: How to set curl options for HTTP from inside dmd?
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Nov 9 23:07:57 UTC 2018
https://issues.dlang.org/show_bug.cgi?id=19385
Issue ID: 19385
Summary: Question: How to set curl options for HTTP from inside
dmd?
Product: D
Version: D2
Hardware: x86
OS: Windows
Status: NEW
Severity: enhancement
Priority: P1
Component: dmd
Assignee: nobody at puremagic.com
Reporter: alex.braunegg at gmail.com
Hi,
In Curl 7.62.0, this now defaults to using HTTP 2.0 for connections where h2 is
available, when build with h2 support.
Is there a way to set the libcurl options to force http 1.1 for all connections
rather than using 'no flag' which lets libcurl choose the connection mechanism?
I have tried the following:
import std.net.curl;
http = HTTP();
http.handle.set(CurlOption.http_version,"v1_1");
However this generates the following error:
std.net.curl.CurlException at std/net/curl.d(4340): Unsupported protocol on handle
555E47E726A0
Can anyone advise how to set the curl options so that I can tell the library to
only use http 1.1?
The issue I am trying to solve is - when DMD is using HTTP2 for file downloads,
'something' is happening when the file download is being completed which is
causing an error - as the file 'disappears'. When downgrading the curl library
to 7.61.0 (which does not enable http2 by default) there is no issue.
References:
https://dlang.org/library/etc/c/curl/curl_http_version.html
https://github.com/abraunegg/onedrive/issues/220
https://github.com/curl/curl/issues/3253
--
More information about the Digitalmars-d-bugs
mailing list