aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2007-01-14- David McCreedy provided libcurl changes for doing HTTP communication onDaniel Stenberg
non-ASCII platforms. It does add some complexity, most notably with more #ifdefs, but I want to see this supported added and I can't see how we can add it without the extra stuff added.
2007-01-13fixed bad variable use when getting the size which we should read whenDaniel Stenberg
attempting not to read data that might belong to the next response (if pipelining)
2007-01-13make Curl_cookie_clearall() survive getting called with a NULL pointerDaniel Stenberg
2007-01-10Display crypto engine name correctly in debug message.Dan Fandrich
2007-01-08Correct error code for CCC/SSL shutdown failureLinus Nielsen Feltzing
2007-01-08Removed unused variable in Curl_ossl_shutdown()Linus Nielsen Feltzing
2007-01-06Fix compilation errors when building without SSLLinus Nielsen Feltzing
2007-01-05- Linus Nielsen Feltzing introduced the --ftp-ssl-ccc command line option toDaniel Stenberg
curl that uses the new CURLOPT_FTP_SSL_CCC option in libcurl. If enabled, it will make libcurl shutdown SSL/TLS after the authentication is done on a FTP-SSL operation.
2007-01-05Include <dos.h> for delay() on MSDOS.Gisle Vanem
2007-01-03- David McCreedy made changes to allow base64 encoding/decoding to work onDaniel Stenberg
non-ASCII platforms.
2007-01-03- Matt Witherspoon fixed the flaw which made libcurl 7.16.0 always storeDaniel Stenberg
downloaded data in two buffers, just to be able to deal with a special HTTP pipelining case. That is now only activated for pipelined transfers. In Matt's case, it showed as a considerable performance difference,
2007-01-02- Victor Snezhko helped us fix bug report #1603712Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=1603712) (known bug #36) --limit-rate (CURLOPT_MAX_SEND_SPEED_LARGE and CURLOPT_MAX_RECV_SPEED_LARGE) are broken on Windows (since 7.16.0, but that's when they were introduced as previous to that the limiting logic was made in the application only and not in the library). It was actually also broken on select()-based systems (as apposed to poll()) but we haven't had any such reports. We now use select(), Sleep() or delay() properly to sleep a while without waiting for anything input or output when the rate limiting is activated with the easy interface.
2006-12-29curl_easy_duphandle() sets the magic number in the new handleDaniel Stenberg
2006-12-22- Robert Foreman provided a prime example snippet showing how libcurl wouldDaniel Stenberg
get confused and not acknowledge the 'no_proxy' variable properly once it had used the proxy and you re-used the same easy handle. I made sure the proxy name is properly stored in the connect struct rather than the sessionhandle/easy struct.
2006-12-22Curl_getinfo() now checks for a NULL SessionHandle pointerDaniel Stenberg
2006-12-22- David McCreedy fixed a bad call to getsockname() that wrongly used a size_tDaniel Stenberg
variable to point to when it should be a socklen_t.
2006-12-22When setting a proxy with environment variables and (for example) runningDaniel Stenberg
'curl [URL]' with a URL without a protocol prefix, curl would not send a correct request as it failed to add the protocol prefix.
2006-12-21minor indent fixDaniel Stenberg
2006-12-21removed unused variablesDaniel Stenberg
2006-12-21Robson Braga Araujo reported bug #1618359Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=1618359) and subsequently provided a patch for it: when downloading 2 zero byte files in a row, curl 7.16.0 enters an infinite loop, while curl 7.16.1-20061218 does one additional unnecessary request. Fix: During the "Major overhaul introducing http pipelining support and shared connection cache within the multi handle." change, headerbytecount was moved to live in the Curl_transfer_keeper structure. But that structure is reset in the Transfer method, losing the information that we had about the header size. This patch moves it back to the connectdata struct.
2006-12-16recv() doesn't take MSG_NOSIGNAL in its forth argument so let's not pass it.Daniel Stenberg
Brendan Jurd pointed out.
2006-12-16Brendan Jurd provided a fix that now prevents libcurl from getting a SIGPIPEDaniel Stenberg
during certain conditions when GnuTLS is used.
2006-12-16Brendan Jurd pointed out these typosDaniel Stenberg
2006-12-15Fix typo.Gisle Vanem
2006-12-11Alexey Simak found out that when doing FTP with the multi interface andDaniel Stenberg
something went wrong like it got a bad response code back from the server, libcurl would leak memory. Added test case 538 to verify the fix. I also noted that the connection would get cached in that case, which doesn't make sense since it cannot be re-use when the authentication has failed. I fixed that issue too at the same time, and also that the path would be "remembered" in vain for cases where the connection was about to get closed.
2006-12-11PROT_CLOSEACTION doesn't have to be its own bit but can just as well justDaniel Stenberg
include the protocol bits of such actions, which currently only means FTP
2006-12-07fixed the printf formatting after I changed the type of 'excess'Daniel Stenberg
2006-12-06Sebastien Willemijns reported bug #1603712Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=1603712) which is about connections getting cut off prematurely when --limit-rate is used. While I found no such problems in my tests nor in my reading of the code, I found that the --limit-rate code was severly flawed (since it was moved into the lib, since 7.15.5) when used with the easy interface and it didn't work as documented so I reworked it somewhat and now it works for my tests.
2006-12-05Stefan Krause pointed out a compiler warning with a picky MSCV compiler whenDaniel Stenberg
passing a curl_off_t argument to the Curl_read_rewind() function which takes an size_t argument. Curl_read_rewind() also had debug code left in it and it was put in a different source file with no good reason when only used from one single spot.
2006-12-05removed the final traces of the closepolicy optionDaniel Stenberg
2006-12-05Jared Lundell filed bug report #1604956Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=1604956) which identified setting CURLOPT_MAXCONNECTS to zero caused libcurl to SIGSEGV. Starting now, libcurl will always internally use no less than 1 entry in the connection cache.
2006-12-05better preprocessor check for recent MSVC versionsDaniel Stenberg
2006-12-05CURLOPT_FORBID_REUSE works again with a cleaned up order of doing things inDaniel Stenberg
Curl_done()
2006-12-05oops, fix belonging to the previous curl_getdate() fix since it makes MSVCDaniel Stenberg
use gmtime_r
2006-12-05Martin Skinner brought back bug report #1230118 to haunt us once again.Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=1230118) curl_getdate() did not work properly for all input dates on Windows. It was mostly seen on some TZ time zones using DST. Luckily, Martin also provided a fix.
2006-12-05Alexey Simak filed bug report #1600447Daniel Stenberg
(http://curl.haxx.se/bug/view.cgi?id=1600447) in which he noted that active FTP connections don't work with the multi interface. The problem is here that the multi interface state machine has a state during which it can wait for the data connection to connect, but the active connection is not done in the same step in the sequence as the passive one is so it doesn't quite work for active. The active FTP code still use a blocking function to allow the remote server to connect. The fix (work-around is a better word) for this problem is to set the boolean prematurely that the data connection is completed, so that the "wait for connect" phase ends at once.
2006-12-05Matt Witherspoon fixed a problem case when the CPU load went to 100% when aDaniel Stenberg
HTTP upload was disconnected: "What appears to be happening is that my system (Linux 2.6.17 and 2.6.13) is setting *only* POLLHUP on poll() when the conditions in my previous mail occur. As you can see, select.c:Curl_select() does not check for POLLHUP. So basically what was happening, is poll() was returning immediately (with POLLHUP set), but when Curl_select() looked at the bits, neither POLLERR or POLLOUT was set. This still caused Curl_readwrite() to be called, which quickly returned. Then the transfer() loop kept continuing at full speed forever."
2006-12-01Toon Verwaest reported that there are servers that send the Content-Range:Daniel Stenberg
header in a third, not suppported by libcurl, format and we agreed that we could make the parser more forgiving to accept all the three found variations.
2006-11-27no need to access it with conn->data since data is already a local variableDaniel Stenberg
holding the conn->data value
2006-11-25Venkat Akella found out that libcurl did not like HTTP responses that simplyDaniel Stenberg
responded with a single status line and no headers nor body. Starting now, a HTTP response on a persistent connection (i.e not set to be closed after the response has been taken care of) must have Content-Length or chunked encoding set, or libcurl will simply assume that there is no body. To my horror I learned that we had no less than 57(!) test cases that did bad HTTP responses like this, and even the test http server (sws) responded badly when queried by the test system if it is the test system. So although the actual fix for the problem was tiny, going through all the newly failing test cases got really painful and boring.
2006-11-25James Housley fixed SCP downloading by setting the maxdownload.Daniel Stenberg
2006-11-25Make sure RETSIGTYPE is properly definedYang Tse
2006-11-24James Housley did lots of work and introduced SFTP downloads.Daniel Stenberg
2006-11-24Define HAVE_SIGNAL_H, HAVE_SIG_ATOMIC_T and HAVE_SIG_ATOMIC_T_VOLATILEYang Tse
as appropriate for platforms that don't have autotools support
2006-11-22Added a check in configure that verifies if <signal.h> is available,Yang Tse
defining HAVE_SIGNAL_H if the header is available. Added a check in configure that tests if the sig_atomic_t type is available, defining HAVE_SIG_ATOMIC_T if it is available. Providing a suitable default in setup_once.h if not available. Added a check in configure that tests if the sig_atomic_t type is already defined as volatile, defining HAVE_SIG_ATOMIC_T_VOLATILE if it is available and already defined as volatile.
2006-11-15Call libssh2_session_free() to release memory allocated duringGisle Vanem
libssh2 startup.
2006-11-14Free 'scp->path' in case of libssh2 setup failure.Gisle Vanem
2006-11-13bug #1595348 by Ron pointed out this flaw and fixDaniel Stenberg
2006-11-11fix header to match actual protoDaniel Stenberg
2006-11-11cleaned up Curl_write() and the sub functions it uses for various protocols.Daniel Stenberg
They all now return ssize_t to Curl_write(). Unfortunately, Curl_read() is in a sorrier state but it too would benefit from a similar cleanup.