Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
GitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
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?