CURLOPT_HTTP_VERSION: seting this to 3 forces HTTP/3 use directly

Even though it cannot fall-back to a lower HTTP version automatically. The
safer way to upgrade remains via CURLOPT_ALTSVC.

CURLOPT_H3 no longer has any bits that do anything and might be removed
before we remove the experimental label.

Updated the curl tool accordingly to use "--http3".

Closes #4197
This commit is contained in:
Daniel Stenberg 2019-08-07 14:17:48 +02:00
parent 317076876a
commit 026840e35c
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
16 changed files with 43 additions and 39 deletions

View file

@ -169,10 +169,10 @@ static CURLcode http_setup_conn(struct connectdata *conn)
Curl_mime_initpart(&http->form, conn->data);
data->req.protop = http;
if(data->set.h3opts & CURLH3_DIRECT) {
if(data->set.httpversion == CURL_HTTP_VERSION_3) {
if(conn->handler->flags & PROTOPT_SSL)
/* Only go h3-direct on HTTPS URLs. It needs a UDP socket and does the
QUIC dance. */
/* Only go HTTP/3 directly on HTTPS URLs. It needs a UDP socket and does
the QUIC dance. */
conn->transport = TRNSPRT_QUIC;
else {
failf(data, "HTTP/3 requested for non-HTTPS URL");