Resolving addresses with A and AAAA entries may fail in some cases
Bug #1245179 reported by
maksis
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
DC++ |
Fix Released
|
Medium
|
Unassigned |
Bug Description
Consider the following case:
1. The client tries to connect to an address that has both A and AAAA entries
2. ::getaddrinfo returns the AAAA entry first
3. The client tries to connect via IPv6 but there's no IPv6 connectivity available (or it doesn't work for other reasons)
4. Socket::connect throws immediately instead of continuing with the A entry
I haven't seen this happening on Windows because it doesn't seem to return the AAAA entry if there is no (public) IPv6 connectivity available. However, Linux systems seem to generally return the AAAA first by default, regardless of the available connectivity. The attached patch should fix this issue.
Changed in dcplusplus: | |
importance: | Undecided → Medium |
tags: | added: core |
Changed in dcplusplus: | |
status: | New → In Progress |
To post a comment you must log in.
"In Progress: The assigned person is working on it."
Hmm?