Change #264031
| Category | curl |
| Changed by | Stefan Eissing <stefan@eissing.org> |
| Changed at | Wed 08 Apr 2026 23:15:39 |
| Repository | https://github.com/curl/curl.git |
| Project | curl |
| Branch | master |
| Revision | 567803db797ae656dbdf4a630785e51b68798060 |
Comments
dns: https-eyeballing async Make cf-https-connect work async correctly: - only start first baller when at least one A/AAAA address is available - select first connect attempt after that with HTTPS-RR info there or not. - select second connect attempt only when HTTPS-RR is resolved (may have resolved to "not known") and select possible ALPN from things known by then. May not select any second attempt when first already covers everything. This means when the HTTPS-RR is known at/before the first address is resolved, everything behaves as before. When the HTTPS-RR is late, a first connection attempt will have been started. Any ALPN preference from the HTTPS-RR that is not already ongoing will then start the second attempt. For HTTPS-RRs that recommend 2 or more ALPNs, the first will always be attempted: either it is already ongong or it will be the ALPN for the second attempt. The 2nd ALPN recommendation from HTTPS-RR *may* be honored or not, depending on what is already selected. The difference in behaviour between early/late HTTPS-RR resolve cannot be helped - unless we do not perform any attempts before it arrives. Trade offs. Closes #21267
Changed files
- lib/cf-dns.c
- lib/cf-dns.h
- lib/cf-https-connect.c
- lib/vquic/vquic.c