From e39754f6a242c99a80a274280b61e884e5abcc7e Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 11 Apr 2023 11:20:12 +0200 Subject: curl: add --proxy-http2 For trying HTTP/2 with an HTTPS proxy. Closes #10926 --- src/tool_getparam.c | 8 +++++++- src/tool_listhelp.c | 5 ++++- 2 files changed, 11 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/tool_getparam.c b/src/tool_getparam.c index 6d6cac3db..b33e60300 100644 --- a/src/tool_getparam.c +++ b/src/tool_getparam.c @@ -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; diff --git a/src/tool_listhelp.c b/src/tool_listhelp.c index 7611cf6a0..61550de72 100644 --- a/src/tool_listhelp.c +++ b/src/tool_listhelp.c @@ -5,7 +5,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) Daniel Stenberg, , et al. + * Copyright (C) Daniel Stenberg, , 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
", "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}, -- cgit v1.2.1