- Sep 05, 2010
-
-
Daniel Stenberg authored
Curl_getconnectinfo() is changed to return a proper curl_socket_t for the last socket so that it'll work more portably (and cause less compiler warnings).
-
- Sep 03, 2010
-
-
Guenter Knauf authored
-
- Sep 02, 2010
-
-
Guenter Knauf authored
-
- Sep 01, 2010
-
-
Guenter Knauf authored
-
Guenter Knauf authored
-
Daniel Stenberg authored
Add a timeout check for handles in the state machine so that they will timeout in all states disregarding what actions that may or may not happen. Fixed a bug in socket_action introduced recently when looping over timed out handles: it wouldn't assign the 'data' variable and thus it wouldn't properly take care of handles. In the update_timer function, the code now checks if the timeout has been removed and then it tells the application. Previously it would always let the remaining timeout(s) just linger to expire later on.
-
Daniel Stenberg authored
Curl_expire() set to 0 expires ALL timeouts so it should only be called if we truly and really want to remove all timeouts for the handle.
-
Daniel Stenberg authored
Make use of the helper function Curl_timeleft() instead of duplicating code.
-
- Aug 30, 2010
-
-
Daniel Stenberg authored
Each easy handle has a list of timeouts, so as soon as the main timeout for a handle expires, we must make sure to get the next entry from the list and re-add the handle to the splay tree. This was attempted previously but was done poorly in my commit 232ad654.
-
- Aug 28, 2010
-
-
Daniel Stenberg authored
When a new transfer is about to start we now set the proper timeouts to expire for the multi interface if they are set for the handle. This is a follow-up bugfix to make sure that easy handles timeout properly when the times expire and the multi interface is used. This also improves curl_multi_timeout().
-
- Aug 25, 2010
-
-
Daniel Stenberg authored
As the VC and RISCOS makefiles don't use the .inc file
-
Daniel Stenberg authored
-
Daniel Stenberg authored
The fix for the busyloop really only is a temporary work-around. It causes a BLOCKING behavior which is a NO-NO. This function should rather be split up in a do and a doing piece where the pieces that aren't possible to send now will be sent in the doing function repeatedly until the entire request is sent.
-
Cameron Kaiser authored
-
Cameron Kaiser authored
-
Cameron Kaiser authored
-
Cameron Kaiser authored
-
Daniel Stenberg authored
HTTP allows that a server sends trailing headers after all the chunks have been sent WITHOUT signalling their presence in the first response headers. The "Trailer:" header is only a SHOULD there and as we need to handle the situation even without that header I made libcurl ignore Trailer: completely. Test case 1116 was added to verify this and to make sure we handle more than one trailer header properly. Reported by: Patrick McManus Bug: http://curl.haxx.se/bug/view.cgi?id=3052450
-
- Aug 24, 2010
-
-
Ben Greear authored
-
- Aug 20, 2010
-
-
Dirk Manske authored
The correctly extracted errno contents were mistakenly overwritten by a newer value that wasn't the correct error value. Bug: http://curl.haxx.se/mail/lib-2010-08/0242.html
-
Guenter Knauf authored
The script works exactly same as the Perl one except for one thing: when the text descriptions generated with openssl are included then the md5 fingerprints are missing; seems openssl has either a bug or a feature which prints the md5 fingerprint output to stdout instead of writing them to specified file; this script could here do the same as what the Perl scripr does (redirect stdout into file) but this makes the script take up double the time because it needs to launch cmd.exe 140 times (fo each openssl call). So I think for now we just ommit the md5 fingerprints, and see if openssl will be fixed.
-
- Aug 19, 2010
-
-
Dan Fandrich authored
-
- Aug 18, 2010
-
-
Daniel Stenberg authored
I fell over this bug report that mentioned that libcurl could wrongly send more than one complete messages at the end of a transfer. Reading the code confirmed this, so I've added a new multi state to make it not happen. The mentioned bug report was made by Brad Jorsch but is (oddly enough) filed in Debian's bug tracker for the "wmweather+" tool. Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=593390
-
Guenter Knauf authored
-
Guenter Knauf authored
-
- Aug 16, 2010
-
-
Julien Chaffraix authored
Add a call to Curl_pgrsSetUploadSize in this case valided by a test case. Reported by: Никита Дорохин. Bug: http://curl.haxx.se/mail/lib-2010-04/0173.html
-
Daniel Stenberg authored
There's an error in http_negotiation.c where a mistake is using only userpwd even for proxy requests. Ludek provided a patch, but I decided to write the fix slightly different using his patch as inspiration. Reported by: Ludek Finstrle Bug: http://curl.haxx.se/bug/view.cgi?id=3046066
-
- Aug 15, 2010
-
-
Guenter Knauf authored
-
Daniel Stenberg authored
When detecting that the send or recv speed, the multi interface changes state to TOOFAST and previously there was no timeout set that would force a recheck but it would rely on the application to somehow call libcurl anyway. This now sets a timeout for a suitable future time to check again if the average transfer speed is then below the threshold again.
-
Daniel Stenberg authored
Curl_expire() is now expanded to hold a list of timeouts for each easy handle. Only the closest in time will be the one used as the primary timeout for the handle and will be used for the splay tree (which sorts and lists all handles within the multi handle). When the main timeout has triggered/expired, the next timeout in time that is kept in the list will be moved to the main timeout position and used as the key to splay with. This way, all timeouts that are set with Curl_expire() internally will end up as a proper timeout. Previously any Curl_expire() that set a _later_ timeout than what was already set was just silently ignored and thus missed. Setting Curl_expire() with timeout 0 (zero) will cancel all previously added timeouts. Corrects known bug #62.
-
Daniel Stenberg authored
When we specify the "insert after" entry as NULL, this function now inserts the new entry first in the list.
-
Daniel Stenberg authored
Instead of looping over all attached easy handles, this now keeps a list of messages in the multi handle. It allows curl_multi_info_read() to perform O(1) no matter how many easy handles that are handled. This is of importance since this function may be polled very frequently by apps using the multi interface.
-
- Aug 11, 2010
-
-
Guenter Knauf authored
-
- Aug 10, 2010
-
-
Daniel Stenberg authored
warning: conversion to 'long int' from 'time_t' may alter its value ... on win64 when time_t is 64bit and long is 32bit.
-
Daniel Stenberg authored
When the progress callback is called during the TCP connection, an error return would accidentally not abort the operation as intended but would instead be counted as a failure to connect to that particular IP and libcurl would just continue to try the next. I made singleipconnect() and trynextip() return CURLcode properly. Added bonus: it corrected the error code for bad --interface usages, like tested in test 1084 and test 1085. Reported by: Adam Light Bug: http://curl.haxx.se/mail/lib-2010-08/0105.html
-
Guenter Knauf authored
Final fix (hopefully!) for dll wlink loader; prefer faster internal rm if available.
-
Guenter Knauf authored
-
Guenter Knauf authored
Added the -br switch to dynamic builds which fixes the issue I saw with curl's --version output. Added debug info and symfile for debug builds to linker opts. Added DLL loader for wlink back, but this time dependend on wlink version. Patch posted to the list by malak.jiri AT gmail.com.
-
Guenter Knauf authored
The var %MAKEFLAGS is only set in 3 cases: if set as environment var or as macro definition from commandline, and either with the -u or -ms switch. Since all these cases are unlikely for the average user it should be safe to only test if %MAKEFLAGS is defined; this has the benefit that now all other switches can be used again in addition to the -u which was formerly not possible.
-
Daniel Stenberg authored
Curl_llist_init is never used outside of llist.c and thus it should be static. I also removed the protos for Curl_llist_insert_prev and Curl_llist_remove_next which are functions we removed from llist.c ages ago.
-