aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-09-29Previously, processing a large batch of timeouts was O(n^2) in the number ofSteinar H. Gunderson
outstanding queries, and processing a DNS response packet was O(n) in the number of outstanding queries. To speed things up in Google, we added a few circular, doubly-linked lists of queries that are hash-bucketed based on the attributes we care about, so most important operations are now O(1). It might be that the number of buckets are higher than most people would need, but on a quick calculation it should only be 100kB or so even on a 64-bit system, so I've let it stay as-is.
2007-09-29We should standarise on C comments.Gisle Vanem
2007-09-29Fix compiler warning in setsockopt().Gisle Vanem
2007-09-29TCP queries can time out too, not just UDP queries. (Patch from the Google ↵Steinar H. Gunderson
tree.)
2007-09-29Read and process as many packets as possible in read_udp_packets, to avoid ↵Steinar H. Gunderson
having to run the entire event loop once per packet. (Patch from the Google tree.)
2007-09-29There are two different places in write_tcp_data() that advance the ↵Steinar H. Gunderson
send_queue; however, they are slightly different and only the first one properly uses a while loop. Consolidate both into a single function that DTTR. (Patch from the Google tree.)
2007-09-29Reject names that are longer than 255 characters, to avoid problems with ↵Steinar H. Gunderson
strict or buggy DNS server implementations. (Patch from the Google tree)
2007-09-29In ares_mkquery, make sure we set buflen and buf to reasonable values if ↵Steinar H. Gunderson
there's an error. (Patch from the Google tree)
2007-09-29Be stricter about what's a valid IP address in fake_hostent. (Patch from the ↵Steinar H. Gunderson
Google tree.)
2007-09-29Handle the root of the DNS tree correctly in ares_expand_name.Steinar H. Gunderson
2007-09-28Adapted the c-ares code to the API change c-ares 1.5.0 brings in theDaniel Stenberg
notifier callback(s).
2007-09-28rename variable to prevent shadow warningDaniel Stenberg
2007-09-28today's modifications by Steinar and meDaniel Stenberg
2007-09-28Bumped version to 1.5.0 for next release and soname bumped to 2 due to ABIDaniel Stenberg
and API changes in the progress callback (and possibly more coming up from Steinar)
2007-09-28Renamed a variable to avoid shadowing a global declarations.Dan Fandrich
2007-09-28Unrevert previous 'missing' hunks. They were missing since the patch is ↵Steinar H. Gunderson
still in for review :-)
2007-09-28Yet more missing hunks... Nggh.Steinar H. Gunderson
2007-09-28Always register for TCP events even if there are no outstanding queries, as ↵Steinar H. Gunderson
the other side could always close the connection, which is a valid event which should be responded to.
2007-09-28Forgot to include a few hunks from ares_process.c earlier. Fixing now.Steinar H. Gunderson
2007-09-28Support a few more socket options, and refactor the option setting a bit. ↵Steinar H. Gunderson
(Patch from the Google tree.)
2007-09-28Make the query callbacks return the number of timeouts that happened during ↵Steinar H. Gunderson
the execution of a query, and update documentation accordingly. (Patch from the Google tree.)
2007-09-28Three fixes in one commit (sorry): a) Take care of the tcpbuf if it ends ↵Steinar H. Gunderson
while queued for transmission, note broken servers and close them in the main loop, and store TCP socket generation number in order not to send the same query twice over the same socket.
2007-09-28Don't skip a server if it's the only one. (Bugfix from the Google tree.)Steinar H. Gunderson
2007-09-27Don't strdup an empty stringDan Fandrich
2007-09-27Renamed a few variables to avoid shadowing global declarations.Dan Fandrich
2007-09-27Removed cut-and-paste cruft leading to fclose() of an unopened fileDan Fandrich
2007-09-27a name resolve that times out is still a failed name resolveDaniel Stenberg
2007-09-27wrong, revert the previous "fix" and instead check that the fd_set pointerDaniel Stenberg
is non-NULL before we FD_CLR
2007-09-27eek, fix the conditions to return on either problem instead of requiringDaniel Stenberg
both to occur
2007-09-27Renamed a few variables to avoid shadowing global declarations.Dan Fandrich
2007-09-27Enabled a few more gcc warnings with --enable-debug. Renamed a fewDan Fandrich
variables to avoid shadowing global declarations.
2007-09-27Fix compiler warning: the address of 'env' will always evaluate as 'true'Yang Tse
2007-09-26we added a curl_easy_setopt() option tooDaniel Stenberg
2007-09-26Philip Langdale provided the new CURLOPT_POST301 option forDaniel Stenberg
curl_easy_setopt() that alters how libcurl functions when following redirects. It makes libcurl obey the RFC2616 when a 301 response is received after a non-GET request is made. Default libcurl behaviour is to change method to GET in the subsequent request (like it does for response code 302 - because that's what many/most browsers do), but with this CURLOPT_POST301 option enabled it will do what the spec says and do the next request using the same method again. I.e keep POST after 301. The curl tool got this option as --post301 Test case 1011 and 1012 were added to verify.
2007-09-26Max Katsev reported that when doing a libcurl FTP request withDaniel Stenberg
CURLOPT_NOBODY enabled but not CURLOPT_HEADER, libcurl wouldn't do TYPE before it does SIZE which makes it less useful. I walked over the code and made it do this properly, and added test case 542 to verify it.
2007-09-25Make glibc define the prototype for strcasestrDan Fandrich
2007-09-25a new Lua binding and I shortened the wording on several bindings by cuttingDaniel Stenberg
out "written"
2007-09-25#ifdef out a few more functions when SSL is disabled.Dan Fandrich
2007-09-25Use a native strcasestr() if found.Dan Fandrich
2007-09-24Immanuel Gregoire fixed KNOWN_BUGS #44: --ftp-method nocwd did not handleDaniel Stenberg
URLs ending with a slash properly (it should list the contents of that directory). Test case 351 brought back and also test 1010 was added.
2007-09-24Bad use of "its" replaceed with a rephrase. I noticed this flaw thanks to theDaniel Stenberg
Debian bug report http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=443734
2007-09-22Steinar H. Gunderson fixed: Correctly clear sockets from the fd_set on inDaniel Stenberg
several functions (write_tcp_data, read_tcp_data, read_udp_packets) so that if it fails and the socket is closed the following code doesn't try to use the file descriptor.
2007-09-22Steinar H. Gunderson modified c-ares to now also do to DNS retries even whenDaniel Stenberg
TCP is used since there are several edge cases where it still makes sense.
2007-09-22Brad House provided a fix for ares_save_options(): Apparently I overlookedDaniel Stenberg
something with the ares_save_options() where it would try to do a malloc(0) when no options of that type needed to be saved. On most platforms, this was fine because malloc(0) doesn't actually return NULL, but on AIX it does, so ares_save_options would return ARES_ENOMEM.
2007-09-21--proxy-negotiate is added in 7.17.1Daniel Stenberg
2007-09-21the NSS patch has been committedDaniel Stenberg
2007-09-21Available command line options: 119Daniel Stenberg
2007-09-21Mark Davies fixed Negotiate authentication over proxy, and also introducedDaniel Stenberg
the --proxy-negotiate command line option to allow a user to explicitly select it.
2007-09-20Added variable substitution to the <verify><file> section.Dan Fandrich
Made a few more tests work remotely.
2007-09-20reformatted to be similar to the FAQ to make it look nicer on the site:Daniel Stenberg
http://curl.haxx.se/docs/contribute.html