curl/lib/vquic
Stefan Eissing 0535f6ec71
http3: initial support for OpenSSL 3.2 QUIC stack
- HTTP/3 for curl using OpenSSL's own QUIC stack together
  with nghttp3
- configure with `--with-openssl-quic` to enable curl to
  build this. This requires the nghttp3 library
- implementation with the following restrictions:
  * macOS has to use an unconnected UDP socket due to an
    issue in OpenSSL's datagram implementation
    See https://github.com/openssl/openssl/issues/23251
    This makes connections to non-reponsive servers hang.
  * GET requests will send the indicator that they have
    no body in a separate QUIC packet. This may result
    in processing delays or Transfer-Encodings on proxied
    requests
  * uploads that encounter blocks will use 100% cpu as
    detection of these flow control issue is not working
    (we have not figured out to pry that from OpenSSL).

Closes #12734
2024-01-22 16:15:45 +01:00
..
curl_msh3.c lib: eliminate conn->cselect_bits 2023-12-14 15:20:05 +01:00
curl_msh3.h
curl_ngtcp2.c vquic: extract TLS setup into own source 2024-01-11 10:43:00 +01:00
curl_ngtcp2.h
curl_osslq.c http3: initial support for OpenSSL 3.2 QUIC stack 2024-01-22 16:15:45 +01:00
curl_osslq.h http3: initial support for OpenSSL 3.2 QUIC stack 2024-01-22 16:15:45 +01:00
curl_quiche.c vquic: extract TLS setup into own source 2024-01-11 10:43:00 +01:00
curl_quiche.h
vquic_int.h vquic: extract TLS setup into own source 2024-01-11 10:43:00 +01:00
vquic-tls.c http3: initial support for OpenSSL 3.2 QUIC stack 2024-01-22 16:15:45 +01:00
vquic-tls.h vquic: extract TLS setup into own source 2024-01-11 10:43:00 +01:00
vquic.c http3: initial support for OpenSSL 3.2 QUIC stack 2024-01-22 16:15:45 +01:00
vquic.h