mirror of
https://github.com/curl/curl.git
synced 2024-12-09 06:30:06 +08:00
curl: add --proxy-http2
For trying HTTP/2 with an HTTPS proxy. Closes #10926
This commit is contained in:
parent
c39f981ff4
commit
e39754f6a2
@ -178,6 +178,7 @@ DPAGES = \
|
||||
proxy-crlfile.d \
|
||||
proxy-digest.d \
|
||||
proxy-header.d \
|
||||
proxy-http2.d \
|
||||
proxy-insecure.d \
|
||||
proxy-key-type.d \
|
||||
proxy-key.d \
|
||||
|
18
docs/cmdline-opts/proxy-http2.d
Normal file
18
docs/cmdline-opts/proxy-http2.d
Normal file
@ -0,0 +1,18 @@
|
||||
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
SPDX-License-Identifier: curl
|
||||
Long: proxy-http2
|
||||
Tags: Versions HTTP/2
|
||||
Protocols: HTTP
|
||||
Added: 8.1.0
|
||||
Mutexed:
|
||||
Requires: HTTP/2
|
||||
See-also: proxy
|
||||
Help: Use HTTP/2 with HTTPS proxy
|
||||
Category: http proxy
|
||||
Example: --proxy-http2 -x proxy $URL
|
||||
Multi: boolean
|
||||
---
|
||||
Tells curl to try negotiate HTTP version 2 with a HTTPS proxy. The proxy might
|
||||
still only offer HTTP/1 and then curl will stick to using that version.
|
||||
|
||||
This has no effect for any other kinds of proxies.
|
@ -165,6 +165,7 @@
|
||||
--proxy-crlfile 7.52.0
|
||||
--proxy-digest 7.12.0
|
||||
--proxy-header 7.37.0
|
||||
--proxy-http2 8.1.0
|
||||
--proxy-insecure 7.52.0
|
||||
--proxy-key 7.52.0
|
||||
--proxy-key-type 7.52.0
|
||||
|
@ -211,6 +211,7 @@ static const struct LongShort aliases[]= {
|
||||
{"04", "http3", ARG_NONE},
|
||||
{"05", "http3-only", ARG_NONE},
|
||||
{"09", "http0.9", ARG_BOOL},
|
||||
{"0a", "proxy-http2", ARG_BOOL},
|
||||
{"1", "tlsv1", ARG_NONE},
|
||||
{"10", "tlsv1.0", ARG_NONE},
|
||||
{"11", "tlsv1.1", ARG_NONE},
|
||||
@ -1449,6 +1450,10 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */
|
||||
/* Allow HTTP/0.9 responses! */
|
||||
config->http09_allowed = toggle;
|
||||
break;
|
||||
case 'a':
|
||||
/* --proxy-http2 */
|
||||
config->proxyver = CURLPROXY_HTTPS2;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case '1': /* --tlsv1* options */
|
||||
@ -2373,7 +2378,8 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */
|
||||
default:
|
||||
/* --proxy */
|
||||
GetStr(&config->proxy, nextarg);
|
||||
config->proxyver = CURLPROXY_HTTP;
|
||||
if(config->proxyver != CURLPROXY_HTTPS2)
|
||||
config->proxyver = CURLPROXY_HTTP;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -5,7 +5,7 @@
|
||||
* | (__| |_| | _ <| |___
|
||||
* \___|\___/|_| \_\_____|
|
||||
*
|
||||
* Copyright (C) Daniel Stenberg, <daniel.se>, et al.
|
||||
* Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
*
|
||||
* This software is licensed as described in the file COPYING, which
|
||||
* you should have received as part of this distribution. The terms
|
||||
@ -498,6 +498,9 @@ const struct helptxt helptext[] = {
|
||||
{" --proxy-header <header/@file>",
|
||||
"Pass custom header(s) to proxy",
|
||||
CURLHELP_PROXY},
|
||||
{" --proxy-http2",
|
||||
"Use HTTP/2 with HTTPS proxy",
|
||||
CURLHELP_HTTP | CURLHELP_PROXY},
|
||||
{" --proxy-insecure",
|
||||
"Do HTTPS proxy connections without verifying the proxy",
|
||||
CURLHELP_PROXY | CURLHELP_TLS},
|
||||
|
Loading…
Reference in New Issue
Block a user