Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
curl_multi_remove_handle() can block until DNS resolution finishes even when using c-ares #3371
This is related to #2975, but it's not exactly the same issue.
When configured to use c-ares as the DNS resolver, and a handle is still waiting for DNS resolution (such as when the DNS server is unreachable), the
This behaviour appears to have been introduced as part of ac9a179.
I understand that it might not be possible to cancel an in-progress DNS request with all resolver backends without blocking. It does seem like it should be possible to cancel an in-progress c-ares DNS request without blocking.
(BTW, it looks like there is at least one case where
Agreed. The c-ares backend shouldn't wait for completion for resolves it doesn't care about anymore and it doesn't have to do it.
We could even just make it more explicit and provide a
Would you like to work on a fix for this?