aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2007-01-24Only shut down SSL if the CCC command succeeded.Dan Fandrich
2007-01-24moved the SSL pending function to the proper place and nameDaniel Stenberg
2007-01-24bail out on strdup() errorsDaniel Stenberg
2007-01-23- David McCreedy did NTLM changes mainly for non-ASCII platforms:Daniel Stenberg
#1 There's a compilation error in http_ntlm.c if USE_NTLM2SESSION is NOT defined. I noticed this while testing various configurations. Line 867 of the current http_ntlm.c is a closing bracket for an if/else pair that only gets compiled in if USE_NTLM2SESSION is defined. But this closing bracket wasn't in an #ifdef so the code fails to compile unless USE_NTLM2SESSION was defined. Lines 198 and 140 of my patch wraps that closing bracket in an #ifdef USE_NTLM2SESSION. #2 I noticed several picky compiler warnings when DEBUG_ME is defined. I've fixed them with casting. By the way, DEBUG_ME was a huge help in understanding this code. #3 Hopefully the last non-ASCII conversion patch for libcurl in a while. I changed the "NTLMSSP" literal to hex since this signature must always be in ASCII. Conversion code was strategically added where necessary. And the Curl_base64_encode calls were changed so the binary "blobs" http_ntlm.c creates are NOT translated on non-ASCII platforms.
2007-01-23very minor indent changeDaniel Stenberg
2007-01-23enabled build with libssh2; fixed copyright for new year..Gunter Knauf
2007-01-17Supress "comparison between signed and unsigned" warning.Gisle Vanem
2007-01-16David McCreedy fixed a flaw from his previous non-ascii HTTP patchDaniel Stenberg
2007-01-16- Armel Asselin improved libcurl to behave a lot better when an easy handleDaniel Stenberg
doing an FTP transfer is removed from a multi handle before completion. The fix also fixed the "alive counter" to be correct on "premature removal" for all protocols.
2007-01-16restore previous addition to the amount of data that is returnedDaniel Stenberg
2007-01-16Fixed a small memory leak in tftp uploads discovered by curl's memory leakDan Fandrich
detector. Also changed tftp downloads to URL-unescape the downloaded file name.
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