diff options
author | Dan Fandrich <dan@coneharvesters.com> | 2008-10-14 23:52:36 +0000 |
---|---|---|
committer | Dan Fandrich <dan@coneharvesters.com> | 2008-10-14 23:52:36 +0000 |
commit | 9b3f863cf5b34fc0c57a369e36dea18889093ad8 (patch) | |
tree | 33fc6270a1577f3db94dfcf7ba5a64cd8eac68c0 /docs/TODO | |
parent | 2f2ed4e40ebb31c80fdaeff2ab9c48d8e1654f02 (diff) |
Added signal-based resolver timeout issue
Diffstat (limited to 'docs/TODO')
-rw-r--r-- | docs/TODO | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -18,6 +18,7 @@ 1.4 Get IP address 1.5 c-ares ipv6 1.6 configure-based info in public headers + 1.7 signal-based resolver timeouts 2. libcurl - multi interface 2.1 More non-blocking @@ -161,6 +162,18 @@ The remaining problems to solve involve the platforms that can't run configure. +1.7 signal-based resolver timeouts + + libcurl built without an asynchronous resolver library uses alarm() to time + out DNS lookups. When a timeout occurs, this causes libcurl to jump from the + signal handler back into the library with a sigsetjmp, which effectively + causes libcurl to continue running within the signal handler. This is + non-portable and could cause problems on some platforms. A discussion on the + problem is available at http://curl.haxx.se/mail/lib-2008-09/0197.html + + Also, alarm() provides timeout resolution only to the nearest second. alarm + ought to be replaced by setitimer on systems that support it. + 2. libcurl - multi interface 2.1 More non-blocking |