aboutsummaryrefslogtreecommitdiff
path: root/lib/url.c
AgeCommit message (Collapse)Author
2007-03-23fix debug messageDaniel Stenberg
2007-03-11can just as well NULLify the pointer in a single spotDaniel Stenberg
2007-03-10Eygene Ryabinkin fixed a use-after-free issue with HTTP transfers with theDaniel Stenberg
multi interface
2007-03-07Honour --ftp-ssl-control on ftps:// URLs to allow encrypted control andDan Fandrich
unencrypted data connections.
2007-02-27- Hang Kin Lau found and fixed: When I use libcurl to connect to an httpsDaniel Stenberg
server through a proxy and have the remote https server port set using the CURLOPT_PORT option, protocol gets reset to http from https after the first request. User defined URL was modified internally by libcurl and subsequent reuse of the easy handle may lead to connection using a different protocol (if not originally http). I found that libcurl hardcoded the protocol to "http" when it tries to regenerate the URL if CURLOPT_PORT is set. I tried to fix the problem as follows and it's working fine so far
2007-02-26Removed inclusion of <sys/types.h> and <sys/stat.h> in .c-filesGisle Vanem
since they're already included through "setup.h".
2007-02-22compiler warning fixYang Tse
2007-02-21- Ravi Pratap provided work on libcurl making pipelining more robust andDaniel Stenberg
fixing some bugs: o Don't mix GET and POST requests in a pipeline o Fix the order in which requests are dispatched from the pipeline o Fixed several curl bugs with pipelining when the server is returning chunked encoding: * Added states to chunked parsing for final CRLF * Rewind buffer after parsing chunk with data remaining * Moved chunked header initializing to a spot just before receiving headers
2007-02-21fix compiler warning "enumerated type mixed with another type"Yang Tse
2007-02-20New FTP CCC functionality - adds passive and active mode to accomodate for ↵Linus Nielsen Feltzing
different server behaviour
2007-02-19- Shmulik Regev found a memory leak in re-used HTTPS connections, at leastDaniel Stenberg
when the multi interface was used.
2007-02-19- Robson Braga Araujo made passive FTP transfers work with SOCKS (both 4 andDaniel Stenberg
5).
2007-02-18- Jeff Pohlmeyer identified two problems: first a rather obscure problem withDaniel Stenberg
the multi interface and connection re-use that could make a curl_multi_remove_handle() ruin a pointer in another handle. The second problem was less of an actual problem but more of minor quirk: the re-using of connections wasn't properly checking if the connection was marked for closure.
2007-02-12- Shmulik Regev fixed so that the final CRLF of HTTP response headers are sentDaniel Stenberg
to the debug callback. - Shmulik Regev added CURLOPT_HTTP_CONTENT_DECODING and CURLOPT_HTTP_TRANSFER_DECODING that if set to zero will disable libcurl's internal decoding of content or transfer encoded content. This may be preferable in cases where you use libcurl for proxy purposes or similar. The command line tool got a --raw option to disable both at once.
2007-02-05- Michael Wallner provided a patch that adds support for CURLOPT_TIMEOUT_MSDaniel Stenberg
and CURLOPT_CONNECTTIMEOUT_MS that, as their names should hint, do the timeouts with millisecond resolution instead. The only restriction to that is the alarm() (sometimes) used to abort name resolves as that uses full seconds. I fixed the FTP response timeout part of the patch. Internally we now count and keep the timeouts in milliseconds but it also means we multiply set timeouts with 1000. The effect of this is that no timeout can be set to more than 2^31 milliseconds (on 32 bit systems), which equals 24.86 days. We probably couldn't before either since the code did *1000 on the timeout values on several places already.
2007-02-03- Manfred Schwarb reported that socks5 support was broken and help us pinpointDaniel Stenberg
the problem. The code now tries harder to use httproxy and proxy where apppropriate, as not all proxies are HTTP...
2007-02-01compiler warning fixYang Tse
2007-01-31add debug messages for initialization failuresYang Tse
2007-01-28Andreas Rieke added extra infof() for when a connection is not re-used due toDaniel Stenberg
SSL conditions not being the same
2007-01-25Fixed a dangling pointer problem that prevented the http_proxy environmentDan Fandrich
variable from being properly used in many cases (and caused test case 63 to fail).
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-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-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.
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-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-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-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-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-05CURLOPT_FORBID_REUSE works again with a cleaned up order of doing things inDaniel Stenberg
Curl_done()
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-09Dmitriy Sergeyev found a SIGSEGV with his test04.c example posted on 7 NovDaniel Stenberg
2006. It turned out we wrongly assumed that the connection cache was present when tearing down a connection.
2006-11-07Olaf fixed a leftover problem with the CONNECT fix of his that would leave aDaniel Stenberg
wrong error message in the error message buffer.
2006-11-06compiler warning fixYang Tse
2006-11-03Olaf Stueben provided a patch that I edited slightly. It fixes the notoriousDaniel Stenberg
KNOWN_BUGS #25, which happens when a proxy closes the connection when libcurl has sent CONNECT, as part of an authentication negotiation. Starting now, libcurl will re-connect accordingly and continue the authentication as it should.
2006-11-02James Housley brought support for SCP transfersDaniel Stenberg
2006-10-29Make more human readable and maintainable previousYang Tse
compiler warning fix since it was Ok and actually avoids the targeted compiler warning.
2006-10-27Compiler warning fix.Yang Tse
Assigning the const value zero to a pointer to function results in a null pointer value assignment to the function pointer. Assignment of any nonzero value is what should result in a implementation compiler dependent result. Since what we want to do here is the first case, this should not trigger compiler warnings related with conversions from 'pointer to data' to 'pointer to function'. Our autobuild test suite will judge.
2006-10-27Do an explicit typecast of data pointers to function pointersYang Tse
to avoid picky compiler warnings, since this is what we want!
2006-10-26Fix Curl_open() not reporting failure when allocation of theYang Tse
buffer used to store headers in the SessionHandle failed.
2006-10-24other pipelining fixes by Ravi Pratap, that now makes pipelines get used betterDaniel Stenberg
2006-10-23the check in ConnectionExists() for not re-using a non-resolved connection nowDaniel Stenberg
applies for asynch name resolves in general and not only ares
2006-10-23Ravi Pratap provided a major update with pipelining fixes. We also no longerDaniel Stenberg
re-use connections (for pipelining) before the name resolving is done.
2006-10-20When a resolve is made on a pipelined connection we need to detect it properlyDaniel Stenberg
(when the resoling isn't completede yet) and not confuse it with a simple connection re-use (non-pipelined).
2006-10-19Builds using synchronous name resolver dislike marking the connection as async.Yang Tse
2006-10-18When a connection is re-used, it can be flagged for re-use before the nameDaniel Stenberg
resolving is completed so we must make sure to survive it and mark the connection as async (ie not yet connected completely).
2006-10-18cut out matching host names starting with telnet or ftps, since they hardlyDaniel Stenberg
ever actually are used
2006-10-17Fixed compile error in HAVE_SIGACTION case.Dan Fandrich
2006-10-17Avoid typecasting a signed char to an int when using is*() functions, as thatDaniel Stenberg
could very well cause a negate number get passed in and thus cause reading outside of the array usually used for this purpose. We avoid this by using the uppercase macro versions introduced just now that does some extra crazy typecasts to avoid byte codes > 127 to cause negative int values.