Go to file
Jason Glasgow adc88ca203 multi: handle timeouts on DNS servers by checking for new sockets
If the first name server is not available, the multi interface does
not invoke the socket_cb when the DNS request to the first name server
timesout.  Ensure that the list of sockets are always updated after
calling Curl_resolver_is_resolved.

This bug can be reproduced if Curl is complied with --enable_ares and
your code uses the multi socket interfaces and the
CURLMOPT_SOCKETFUNCTION option.  To test try:
  iptables -I INPUT \
           -s $(sed -n -e '/name/{s/.* //p;q}' /etc/resolv.conf)/32 \
           -j REJECT
and then run a program which uses the multi-interface.
2011-12-02 10:18:52 +01:00
CMake sources: update source headers 2011-03-10 12:04:33 +01:00
docs symbols.pl: provide LIBCURL_HAS macro for apps 2011-11-24 22:56:39 +01:00
include CURLOPT_DNS_SERVERS: set name servers if possible 2011-11-17 22:52:33 +01:00
lib multi: handle timeouts on DNS servers by checking for new sockets 2011-12-02 10:18:52 +01:00
m4 configure openssl version check: handle lack of L suffix 2011-09-28 23:09:46 +02:00
packages - Prepare the ILE/RPG binding and OS400 documentation for the upcoming release 2011-10-26 14:48:20 +02:00
perl remove the CVSish $Id$ lines 2010-03-24 11:02:54 +01:00
src tvdiff_secs(): sub-zero time difference adjustment 2011-11-25 13:51:55 +01:00
tests test 815: verify POP3 dot-first-on-line unescaping 2011-12-01 10:20:42 +01:00
winbuild looks like this should be static, not dll 2011-06-24 11:49:07 -07:00
.gitattributes Add .gitattributes files to turn off CRLF translation for some files 2010-03-24 23:48:35 -04:00
.gitignore gitignore: config.cache 2011-06-30 09:58:45 +02:00
acinclude.m4 configure - m4: make CURL_CHECK_DEF ignore leading whitespace on symbol def 2011-09-27 22:01:58 +02:00
Android.mk curl has been built on many Android versions 2011-11-16 17:11:31 -08:00
buildconf buildconf: follow-up for commit 7e02f7fd 2011-11-30 21:53:21 +01:00
buildconf.bat keep a single copy of config-win32.h in version control repository. 2011-08-05 13:20:22 +02:00
CHANGES CHANGES: move all contents from CHANGES to CHANGES.0 2010-06-21 22:27:39 +02:00
CHANGES.0 CHANGES: move all contents from CHANGES to CHANGES.0 2010-06-21 22:27:39 +02:00
CMakeLists.txt cmake: find winsock when building on windows 2011-08-13 14:42:21 +02:00
configure.ac configure: avoid usage of macro PKG_CHECK_MODULES 2011-11-29 19:11:34 +01:00
COPYING COPYING: update the year to 2011 2011-01-29 23:41:15 +01:00
CTestConfig.cmake ENH: move dashboard location 2009-07-15 19:40:46 +00:00
curl-config.in curl-config: fix version output 2011-04-19 16:41:34 +02:00
curl-style.el remove the CVSish $Id$ lines 2010-03-24 11:02:54 +01:00
GIT-INFO s/CVS/git 2010-03-22 00:41:34 +01:00
install-sh removed trailing whitespace 2010-02-14 19:40:18 +00:00
libcurl.pc.in libcurl.pc: version number fix 2011-04-06 12:09:27 +02:00
log2changes.pl log2changes: correct command line, fix tag usage, change Version output 2010-06-21 22:21:25 +02:00
MacOSX-Framework MacOSX-Framework: updates for Snowleopard 2010-09-21 00:07:45 +02:00
Makefile.am include: cleanup 2011-05-09 10:20:31 +02:00
Makefile.dist Changed some main makefile targets. 2011-09-25 17:43:50 +02:00
Makefile.msvc.names build: refactoring of msvc makefiles to allow overriding of library filenames. 2010-12-20 21:53:44 +01:00
maketgz curl tool: reviewed code moved to tool_*.[ch] files 2011-10-06 17:39:00 +02:00
missing renamed generated config.h to curl_config.h in order to avoid clashes when libcurl is used with other projects which also have a config.h. 2009-07-14 13:25:14 +00:00
mkinstalldirs remove the CVSish $Id$ lines 2010-03-24 11:02:54 +01:00
README various changes of CVS to git 2010-03-22 00:34:09 +01:00
RELEASE-NOTES RELEASE-NOTES: synced with 1038d0aa1 2011-11-30 16:38:58 +01:00
sample.emacs remove the CVSish $Id$ lines 2010-03-24 11:02:54 +01:00
TODO-RELEASE TODO-RELEASE: postpone the remainders 2011-09-11 19:26:17 +02:00
vc6curl.dsw Renamed vc6 workspace and project files to avoid filename clash when used for conversion to later VS versions. 2009-05-08 17:51:44 +00:00

                                  _   _ ____  _
                              ___| | | |  _ \| |
                             / __| | | | |_) | |
                            | (__| |_| |  _ <| |___
                             \___|\___/|_| \_\_____|

README

  Curl is a command line tool for transferring data specified with URL
  syntax. Find out how to use curl by reading the curl.1 man page or the
  MANUAL document. Find out how to install Curl by reading the INSTALL
  document.

  libcurl is the library curl is using to do its job. It is readily
  available to be used by your software. Read the libcurl.3 man page to
  learn how!

  You find answers to the most frequent questions we get in the FAQ document.

  Study the COPYING file for distribution terms and similar. If you distribute
  curl binaries or other binaries that involve libcurl, you might enjoy the
  LICENSE-MIXING document.

CONTACT

  If you have problems, questions, ideas or suggestions, please contact us
  by posting to a suitable mailing list. See http://curl.haxx.se/mail/

  All contributors to the project are listed in the THANKS document.

WEB SITE

  Visit the curl web site for the latest news and downloads:

        http://curl.haxx.se/

GIT

  To download the very latest source off the GIT server do this:

    git clone git://github.com/bagder/curl.git

  (you'll get a directory named curl created, filled with the source code)

NOTICE

  Curl contains pieces of source code that is Copyright (c) 1998, 1999
  Kungliga Tekniska Högskolan. This notice is included here to comply with the
  distribution terms.