On Mon, 10 Jan 2011, Vsevolod Novikov wrote:

Please don't top-post!

I've made a decision to freeze trying to plug custom async resolver into the CURL, just because the CURL doesn't allow me to catch canceling and/or destroying resolving contexts on the easy handle. There is a work around to avoid using resolver inside a CURL.

Feel free to suggest or even provide improvements. As we already offer threaded resolvers using win32 or pthreads successfully it is a bit surprising to me that it can't be done.

Now almost stable port is made basing on CURL v.7.21.2. Using the CURL v.7.21.3 leads to infinite connection loose after some number of successful requests.

So again, if this really is a libcurl bug then you should be able to provide a recipe that we can use to repeat the problem in our ends. I will be happy to work on hunting it down once you provide an example showing me how to repeat it.

Really the bug, described before, (leading to segmentation fault) happens only with custom async resolver.

Right, but as you haven't shown us any code and we probably don't even know the custom resolver you talk of, I don't think there's any evidence to point fingers and say that this is a libcurl bug.

I've made several tests and found, that trying to return resolving results in asynchronous manner outside of the Curl_getaddrinfo() using Curl_addrinfo_callback() at any point leads to stable reproducing of the bug, independently on resolving algorithm itself. Moreover, I've found that the example using async resolver works unstable (infinite connection loose) even when it is not failed immediately after the start, f.e. on the Android host.

Please provide us with the sample code that causes problems when used with libcurl built to use the threaded resolver!

Also, I know lots of people already use the "stock" libcurl perfectly fine on Android which indicates it isn't a generic problem on that platform.

--

 / daniel.haxx.se
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html

Reply via email to