Age | Commit message (Collapse) | Author | |
---|---|---|---|
2006-07-13 | Fix compiler warning. | Yang Tse | |
2006-07-10 | DNS cache must use the multi DNS cache if the easy handle's one is not using ↵ | Yang Tse | |
anyone in curl_multi_add_handle. | |||
2006-07-07 | Ingmar Runge provided a source snippet that caused a crash. The reason for | Daniel Stenberg | |
the crash was that libcurl internally was a bit confused about who owned the DNS cache at all times so if you created an easy handle that uses a shared DNS cache and added that to a multi handle it would crash. Now we keep more careful internal track of exactly what kind of DNS cache each easy handle uses: None, Private (allocated for and used only by this single handle), Shared (points to a cache held by a shared object), Global (points to the global cache) or Multi (points to the cache within the multi handle that is automatically shared between all easy handles that are added with private caches). | |||
2006-06-28 | fix better minor compiler warning | Yang Tse | |
2006-06-28 | fix minor compiler warning | Yang Tse | |
2006-06-23 | Arve Knudsen found a flaw in curl_multi_fdset() for systems where | Daniel Stenberg | |
curl_socket_t is unsigned (like Windows) that could cause it to wrongly return a max fd of -1. | |||
2006-06-22 | Peter Silva introduced CURLOPT_MAX_SEND_SPEED_LARGE and | Daniel Stenberg | |
CURLOPT_MAX_RECV_SPEED_LARGE that limit tha maximum rate libcurl is allowed to send or receive data. This kind of adds the the command line tool's option --limit-rate to the library. The rate limiting logic in the curl app is now removed and is instead provided by libcurl itself. Transfer rate limiting will now also work for -d and -F, which it didn't before. | |||
2006-05-27 | adapted to the new Curl_splayremovebyaddr() proto | Daniel Stenberg | |
2006-05-26 | long/int cleanup to silence picky compiler warnings | Daniel Stenberg | |
2006-05-09 | Robson Braga Araujo fixed a memory leak when you added an easy handle to a | Daniel Stenberg | |
multi stack and that easy handle had already been used to do one or more easy interface transfers, as then the code threw away the previously used DNS cache without properly freeing it. | |||
2006-04-26 | Fixed signed/unsigned convertion errors in Salford-C. | Gisle Vanem | |
#ifdef around WSAEDISCON in strerror.c. | |||
2006-04-25 | prevent signed/unsigned warnings | Daniel Stenberg | |
2006-04-21 | each socket is used by exactly one easy handle, but of course each easy handle | Daniel Stenberg | |
can and will use more than one socket | |||
2006-04-18 | attempt to silence the MIPSPro compiler warning | Daniel Stenberg | |
2006-04-10 | First curl_multi_socket() commit. Should primarily be considered as an internal | Daniel Stenberg | |
code rearrange to fit the future better. | |||
2006-02-23 | argh, forgot the check for a connection before we call Curl_done | Daniel Stenberg | |
2006-02-23 | Lots of work and analysis by "xbx___" in bug #1431750 | Daniel Stenberg | |
(http://curl.haxx.se/bug/view.cgi?id=1431750) helped me identify and fix two different but related bugs: 1) Removing an easy handle from a multi handle before the transfer is done could leave a connection in the connection cache for that handle that is in a state that isn't suitable for re-use. A subsequent re-use could then read from a NULL pointer and segfault. 2) When an easy handle was removed from the multi handle, there could be an outstanding c-ares DNS name resolve request. When the response arrived, it caused havoc since the connection struct it "belonged" to could've been freed already. Now Curl_done() is called when an easy handle is removed from a multi handle pre-maturely (that is, before the transfer was complteted). Curl_done() also makes sure to cancel all (if any) outstanding c-ares requests. | |||
2006-02-11 | Karl M added the CURLOPT_CONNECT_ONLY and CURLINFO_LASTSOCKET options that | Daniel Stenberg | |
an app can use to let libcurl only connect to a remote host and then extract the socket from libcurl. libcurl will then not attempt to do any transfer at all after the connect is done. | |||
2005-03-08 | remove old printf() debug leftover | Daniel Stenberg | |
2005-02-09 | FTP code turned into state machine. Not completely yet, but a good start. | Daniel Stenberg | |
The tag 'before_ftp_statemachine' was set just before this commit in case of future need. | |||
2005-01-30 | if the DO operation returns failure, bail out and close down nicely to | Daniel Stenberg | |
prevent memory leakage | |||
2005-01-29 | Using the multi interface, and doing a requsted a re-used connection that | Daniel Stenberg | |
gets closed just after the request has been sent failed and did not re-issue a request on a fresh reconnect like the easy interface did. Now it does! (define CURL_MULTIEASY, run test case 160) | |||
2005-01-29 | multi interface: when a request is denied due to "Maximum redirects followed" | Daniel Stenberg | |
libcurl leaked the last Location: URL. | |||
2005-01-25 | Use plain structs and not typedef'ed ones in the hash and linked-list code. | Daniel Stenberg | |
2005-01-11 | Renamed easy.h and multi.h to easyif.h and multiif.h to make sure they don't | Daniel Stenberg | |
shadow our public headers with the former names. | |||
2005-01-11 | Cyrill Osterwalder posted a detailed analysis about a bug that occurs when | Daniel Stenberg | |
using a custom Host: header and curl fails to send a request on a re-used persistent connection and thus creates a new connection and resends it. It then sent two Host: headers. Cyrill's analysis was posted here: http://curl.haxx.se/mail/archive-2005-01/0022.html | |||
2005-01-10 | Use Curl_easy_addmulti() to clear associations from easy handles to multi | Daniel Stenberg | |
handles. Include multi.h to get proto. | |||
2005-01-10 | Pavel Orehov reported memory problems with the multi interface in bug report | Daniel Stenberg | |
#1098843. In short, a shared DNS cache was setup for a multi handle and when the shared cache was deleted before the individual easy handles, the latter cleanups caused read/writes to already freed memory. | |||
2004-08-31 | fix the return code for curl_multi_add_handle() | Daniel Stenberg | |
2004-06-29 | First attempt at making the multi interface work when connecting to a host | Daniel Stenberg | |
that resolves to multiple IP addresses. | |||
2004-05-17 | new Curl_done() proto | Daniel Stenberg | |
2004-05-17 | better bailing out on memory failure | Daniel Stenberg | |
2004-05-17 | bail out nicely if strdup() returns NULL, removed trailing whitespace | Daniel Stenberg | |
2004-05-13 | return on memory alloc fail | Daniel Stenberg | |
2004-05-12 | Curl_done() and the protocol-specific conn->curl_done() functions now all | Daniel Stenberg | |
take a CURLcode as a second argument, that is non-zero when Curl_done() is called after an error was returned from Curl_do() (or similar). | |||
2004-05-11 | curl_global_init_mem() allows the memory functions to be replaced. | Daniel Stenberg | |
memory.h is included everywhere for this. | |||
2004-04-26 | Major hostip.c cleanup and split into multiple files and easier #ifdef | Daniel Stenberg | |
usage. | |||
2004-03-30 | adjusted to the new dns cache function to hide more hostip internals | Daniel Stenberg | |
2004-03-30 | init the dns pointer to NULL for clarity | Daniel Stenberg | |
2004-03-11 | Gisle Vanem's fixes to use CURL_SOCKET_BAD more instead of -1 for sockets. | Daniel Stenberg | |
2004-03-10 | curl_socket_t mistakes cleanup | Daniel Stenberg | |
2004-03-09 | Use curl_socket_t instead of int for holding sockets. The typedefs and | Daniel Stenberg | |
defines are in setup.h. | |||
2004-03-04 | When following to a new URL, we must make sure to call Curl_done() first, | Daniel Stenberg | |
since the current connection must be taken care of properly before we move on. Christopher R. Palmer reported a problem he found due to this mistake. | |||
2004-02-05 | compiler warning fix, compare struct pointers of the same type | Daniel Stenberg | |
2004-01-12 | Peter Sylvester brought code that now allows a callback to modified the URL | Daniel Stenberg | |
even when the multi interface is used, and then libcurl will simulate a "follow location" to that new URL. Test 509 was added to test this feature. | |||
2004-01-07 | updated year in the copyright string | Daniel Stenberg | |
2003-11-24 | FTPS support added as RFC2228 and the murray-ftp-auth-ssl draft describe it | Daniel Stenberg | |
2003-10-18 | minor fix to not shadow a variable | Daniel Stenberg | |
2003-10-13 | Clear the connection pointer after the async resolve has failed. | Daniel Stenberg | |
This cures the problem reported by Giuseppe Attardi on October 12, 2003. | |||
2003-10-04 | Based on a patch provided by Siddhartha Prakash Jain. In Curl_resolv() when | Daniel Stenberg | |
my_getaddrinfo() has been called (and wait has been set to TRUE), we check if the name already is resolved and if so don't return wait status to the parent. This can happen with IP-only names. |