asyn-ares: connect async

Make separate queries for A and AAAA records. Hand out A/AAAA/HTTPS
information before all queries are complete.

Closes #21205
This commit is contained in:
Stefan Eissing 2026-04-02 11:10:33 +02:00 committed by Daniel Stenberg
parent d99df64405
commit a28540787c
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
5 changed files with 190 additions and 115 deletions

View file

@ -27,21 +27,21 @@ Get three URLs with bad hostname - cache
CURL_DNS_SERVER=127.0.0.1:%DNSPORT
</setenv>
<command>
http://examplehost.example/%TESTNUMBER http://examplehost.example/%TESTNUMBER http://examplehost.example/%TESTNUMBER
http://examplehost.invalid/%TESTNUMBER http://examplehost.invalid/%TESTNUMBER http://examplehost.invalid/%TESTNUMBER
</command>
</client>
# Verify data after the test has been "shot"
<verify>
# curl: (6) Could not resolve host: examplehost.example
# curl: (6) Could not resolve host: examplehost.invalid
<errorcode>
6
</errorcode>
# Ignore HTTPS requests here
<dns host="examplehost.example QTYPE A">
QNAME examplehost.example QTYPE A
QNAME examplehost.example QTYPE AAAA
<dns host="examplehost.invalid QTYPE A">
QNAME examplehost.invalid QTYPE A
QNAME examplehost.invalid QTYPE AAAA
</dns>
</verify>
</testcase>