- Sep 29, 2007
-
-
Steinar H. Gunderson authored
-
Steinar H. Gunderson authored
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.
-
Gisle Vanem authored
-
Gisle Vanem authored
-
Steinar H. Gunderson authored
-
Steinar H. Gunderson authored
Read and process as many packets as possible in read_udp_packets, to avoid having to run the entire event loop once per packet. (Patch from the Google tree.)
-
Steinar H. Gunderson authored
There are two different places in write_tcp_data() that advance the 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.)
-
Steinar H. Gunderson authored
Reject names that are longer than 255 characters, to avoid problems with strict or buggy DNS server implementations. (Patch from the Google tree)
-
Steinar H. Gunderson authored
In ares_mkquery, make sure we set buflen and buf to reasonable values if there's an error. (Patch from the Google tree)
-
Steinar H. Gunderson authored
-
Steinar H. Gunderson authored
-
- Sep 28, 2007
-
-
Daniel Stenberg authored
notifier callback(s).
-
Daniel Stenberg authored
-
Daniel Stenberg authored
-
Daniel Stenberg authored
and API changes in the progress callback (and possibly more coming up from Steinar)
-
Dan Fandrich authored
-
Steinar H. Gunderson authored
-
Steinar H. Gunderson authored
-
Steinar H. Gunderson authored
Always register for TCP events even if there are no outstanding queries, as the other side could always close the connection, which is a valid event which should be responded to.
-
Steinar H. Gunderson authored
-
Steinar H. Gunderson authored
Support a few more socket options, and refactor the option setting a bit. (Patch from the Google tree.)
-
Steinar H. Gunderson authored
Make the query callbacks return the number of timeouts that happened during the execution of a query, and update documentation accordingly. (Patch from the Google tree.)
-
Steinar H. Gunderson authored
Three fixes in one commit (sorry): a) Take care of the tcpbuf if it ends 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.
-
Steinar H. Gunderson authored
-
- Sep 27, 2007
-
-
Dan Fandrich authored
-
Dan Fandrich authored
-
Dan Fandrich authored
-
Daniel Stenberg authored
-
Daniel Stenberg authored
is non-NULL before we FD_CLR
-
Daniel Stenberg authored
both to occur
-
Dan Fandrich authored
-
Dan Fandrich authored
variables to avoid shadowing global declarations.
-
Yang Tse authored
-
- Sep 26, 2007
-
-
Daniel Stenberg authored
-
Daniel Stenberg authored
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.
-
Daniel Stenberg authored
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.
-
- Sep 25, 2007
-
-
Dan Fandrich authored
-
Daniel Stenberg authored
out "written"
-
Dan Fandrich authored
-
Dan Fandrich authored
-