]> git.ipfire.org Git - thirdparty/curl.git/commit
connection: clarify `transport`
authorStefan Eissing <stefan@eissing.org>
Mon, 14 Jul 2025 09:41:59 +0000 (11:41 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 14 Jul 2025 12:33:18 +0000 (14:33 +0200)
commite9ae1bd404e9ec095ebebb9a89d62566555c36b4
treec987c7b82c46cb0ea2e1b74110ba03152f8bb7bf
parent674ad27f7738b726edce0ab2b3c664dbf84d5837
connection: clarify `transport`

The `transport` to use for a transfer, e.g. TCP/QUIC/UNIX/UDP, is
initially selected by options and protocol used. This is set at the
`struct connectdata` as `transport` member.

During connection establishment, this transport may change due to
Alt-Svc or Happy-Eyeballing. Most common is the switch from TCP to QUIC.

Rename the connection member to `transport_wanted` and add a way to
query the connection for the transport in use via a new connection
filter query.

The filter query can also be used in the happy eyeballing attempts when
code needs to know which transport is used by the "filter below". This
happens in wolfssl initialization, as one example.

Closes #17923
16 files changed:
lib/asyn-ares.c
lib/asyn-thrdd.c
lib/cf-https-connect.c
lib/cf-socket.c
lib/cfilters.c
lib/cfilters.h
lib/connect.c
lib/ftp.c
lib/hostip6.c
lib/http.c
lib/tftp.c
lib/url.c
lib/urldata.h
lib/vquic/vquic.c
lib/vquic/vquic.h
lib/vtls/wolfssl.c