]> git.ipfire.org Git - thirdparty/curl.git/commit
http2: support HTTP/2 to forward proxies, non-tunneling
authorStefan Eissing <stefan@eissing.org>
Fri, 14 Apr 2023 09:38:14 +0000 (11:38 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 17 Apr 2023 15:27:49 +0000 (17:27 +0200)
commitfc2f1e547a4a4b4bec5fd3c8bfde5136706488a1
tree3d3194251c317144d529b35bb928567a84a9b57b
parentfb1d62ff0736961032a489a0a8bff4b79b13eccb
http2: support HTTP/2 to forward proxies, non-tunneling

- with `--proxy-http2` allow h2 ALPN negotiation to
  forward proxies
- applies to http: requests against a https: proxy only,
  as https: requests will auto-tunnel
- adding a HTTP/1 request parser in http1.c
- removed h2h3.c
- using new request parser in nghttp2 and all h3 backends
- adding test 2603 for request parser
- adding h2 proxy test cases to test_10_*

scorecard.py: request scoring accidentally always run curl
with '-v'. Removed that, expect double numbers.

labeller: added http1.* and h2-proxy sources to detection

Closes #10967
28 files changed:
.github/labeler.yml
lib/Makefile.inc
lib/bufq.c
lib/bufq.h
lib/cf-h2-proxy.c
lib/dynhds.c
lib/dynhds.h
lib/h2h3.c [deleted file]
lib/http.c
lib/http.h
lib/http1.c [new file with mode: 0644]
lib/http1.h [moved from lib/h2h3.h with 51% similarity]
lib/http2.c
lib/vquic/curl_msh3.c
lib/vquic/curl_ngtcp2.c
lib/vquic/curl_quiche.c
lib/vtls/vtls.c
tests/data/Makefile.inc
tests/data/test2603 [new file with mode: 0644]
tests/http/scorecard.py
tests/http/test_10_proxy.py
tests/http/test_13_proxy_auth.py
tests/http/testenv/curl.py
tests/unit/CMakeLists.txt
tests/unit/Makefile.am
tests/unit/Makefile.inc
tests/unit/unit2602.c
tests/unit/unit2603.c [new file with mode: 0644]