aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-12-12CURLOPT_INTERFACE: avoid resolving interfaces namesJason Glasgow
Do not try to resolve interfaces names via DNS by recognizing interface names in a few ways. If the interface option argument has a prefix of "if!" then treat the argument as only an interface. Similarly, if the interface argument is the name of an interface (even if it does not have an IP address assigned), treat it as an interface name. Finally, if the interface argument is prefixed by "host!" treat it as a hostname that must be resolved by /etc/hosts or DNS. These changes allow a client using the multi interfaces to avoid blocking on name resolution if the interface loses its IP address or disappears.
2011-12-12RELEASE-NOTES: synced with 1259ccf7474Daniel Stenberg
5 more bugfixes, 5 more contributors
2011-12-12ConnectionExists: Fix reuse for TLS upgraded connectionsSteve Holme
Fixed the connection reuse detection in ConnectionExists() when comparing a new connection that is non-SSL based against that of a SSL based connection that has become so by being upgraded via TLS.
2011-12-09create_conn: don't switch to HTTP protocol if tunneling is enabledDaniel Stenberg
This is a regression since who knows when. When spotting that a HTTP proxy is used we must not uncondititionally enable the HTTP protocol since if we do tunneling through the proxy we're still using the target protocol. Reported by: Naveen Chandran
2011-12-07FAQ: add --resolve details to question 3.19Daniel Stenberg
2011-12-07Curl_closesocket: clear sock_accepted on closeGokhan Sengun
As a follow-up from commit d5b5f64bce3a8, clear the sock_accepted status when such a socket is closed to avoid a re-used connection to retain the state wrongly. Bug: http://curl.haxx.se/mail/lib-2011-12/0079.html
2011-12-07static SSL windows builds: add more libs to the linkDaniel Stenberg
Starting with some recent OpenSSL versions (1.0.0e was mentioned) linking with a static openssl requires a set of more libs to be linked on Windows. Thanks also to Steve Holme and Martin Storsjö for additional feedback. Bug: http://curl.haxx.se/mail/lib-2011-12/0063.html Reported by: Ward Willats
2011-12-07multi interface: fix block when CONNECT_ONLY option is usedGokhan Sengun
2011-12-06Added some include files in a couple of example programsDan Fandrich
This improves portability of the examples. This patch was submitted to the OpenBSD ports collection by naddy.
2011-12-06MakefileBuild: fix the static buildDaniel Stenberg
This is a left-over fix from commit b7e242de0e that Tom Wright suggested. Reported by: Ward Willats
2011-12-06OpenSSL: check for the SSLv2 function in configureDaniel Stenberg
If no SSLv2 was detected in OpenSSL by configure, then we enforce the OPENSSL_NO_SSL2 define as it seems some people report it not being defined properly in the OpenSSL headers.
2011-12-05CURLOPT_CONNECTTIMEOUT: default is 300 secondsDaniel Stenberg
If the option is set to 0, the default timeout will be used - which in modern libcurl versions equals 300 seconds (== 5 minutes). Bug: http://curl.haxx.se/mail/lib-2011-12/0051.html Reported by: Vladimir Grishchenko
2011-12-05progress function example: include timed intervalRob Ward
Adds a timer based off of CURLINFO_TOTAL_TIME that is used to perform certain actions after a minimum amount of time has passed using the progress function. As a consequence the curl handle is now also passed into the progress function. Progress example now also includes an example of how to retreive the TOTAL_TIME and print it out.
2011-12-05RELEASE-NOTES: synced with 347f951c390Daniel Stenberg
8 more bugs, 5 more contributors
2011-12-05SSH: fix CURLOPT_SSH_HOST_PUBLIC_KEY_MD5Daniel Stenberg
When a 32 digit hex key is given as a hostkey md5 checksum, the code would still run it against the knownhost check and not properly acknowledge that the md5 should then be the sole guide for. The verbose output now includes the evaluated MD5 hostkey checksum. Some related source code comments were also updated. Bug: http://curl.haxx.se/bug/view.cgi?id=3451592 Reported by: Reza Arbab
2011-12-05Curl_resolver_is_resolved: differentiate between host/proxy errorsDaniel Stenberg
As there are different return codes for host vs proxy errors, this function now properly returns the code properly depending on what was attempted to get resolved. Bug: http://curl.haxx.se/mail/archive-2011-12/0010.html Reported by: Jason Liu
2011-12-05c-ares: return proxy failure for all proxy typesDaniel Stenberg
When making a distinction which return code to return, the code previously only regarded HTTP proxies to be proxies and thus return host-related errors for failures on other proxy types than HTTP. Now all proxy types will be considered proxies...
2011-12-05FTP: close callback fixDaniel Stenberg
Keep track of which sockets that are the result of accept() calls and refuse to call the closesocket callback for those sockets. Test case 596 now verifies that the open socket callback is called the same number of times as the closed socket callback for active FTP connections. Bug: http://curl.haxx.se/mail/lib-2011-12/0018.html Reported by: Gokhan Sengun
2011-12-05FTP: call opensocket callback properlyDaniel Stenberg
When the new socket is created for an active connection, it is now done using the open socket callback. Test case 596 was modified to run fine, although it hides the fact that the close callback is still called too many times, as it also gets called for closing sockets that were created with accept().
2011-12-05Curl_socket: internal replacement for socket()Daniel Stenberg
Moved out into a separate function to work as a "generic" socket() replacement.
2011-12-04test: verify the opensocket callback for FTPDaniel Stenberg
test 595: for passive FTP test 596: for active FTP
2011-12-02CURLOPT_DNS_SERVERS: set name servers if possible (fix)Jason Glasgow
Ensure that CURLE_OK is returned if setting the name servers is successfull.
2011-12-02multi interface: only use non-NULL function pointer!Daniel Stenberg
If the socket callback function pointer hasn't been set, we must not attempt to use it. Commit adc88ca20 made it more likely to occur.
2011-12-02multi: handle timeouts on DNS servers by checking for new socketsJason Glasgow
If the first name server is not available, the multi interface does not invoke the socket_cb when the DNS request to the first name server timesout. Ensure that the list of sockets are always updated after calling Curl_resolver_is_resolved. This bug can be reproduced if Curl is complied with --enable_ares and your code uses the multi socket interfaces and the CURLMOPT_SOCKETFUNCTION option. To test try: iptables -I INPUT \ -s $(sed -n -e '/name/{s/.* //p;q}' /etc/resolv.conf)/32 \ -j REJECT and then run a program which uses the multi-interface.
2011-12-01test 815: verify POP3 dot-first-on-line unescapingDaniel Stenberg
2011-12-01POP3: fixed escaped dot not being striped outSteve Holme
Changed the eob detection to work across the whole of the buffer so that lines that begin with a dot (which the server will have escaped) are passed to the client application correctly.
2011-11-30buildconf: follow-up for commit 7e02f7fdYang Tse
2011-11-30buildconf: fix libtool 1.5.x warnings triggered with autoconf 2.6x or laterYang Tse
Using libtool 1.5.x (x < 26) with autoconf 2.6x or later generates warnings due to some libtool variables not following naming convention for variables that will be cached. This is addressed renaming a couple of variables to make these follow expected naming convention.
2011-11-30RELEASE-NOTES: synced with 1038d0aa1Daniel Stenberg
5 bugfixes and 1 new contributor
2011-11-29pop3.c: fix compiler warningYang Tse
2011-11-29configure: avoid usage of macro PKG_CHECK_MODULESYang Tse
libidn option adjusted in order to use pkg-config info when available in a similar way as we already do for other libraries.
2011-11-29POP3: detect when LIST returns no mailsDaniel Stenberg
By making sure the function can detect an "end of body" sequence immediately on the first line, test 811 is now enabled.
2011-11-29ftpserver: output CRLF in logsDaniel Stenberg
Previously the log function would just filter out all CR and LF occurances from the log to make it more readable. This had the downside that it made it very hard to see CR LFs when they actually matters. Now, they're instead converted to "[CR]" and "[LR]" in the log to become apparent to readers.
2011-11-29POP3: fix end of body detectionDaniel Stenberg
Curl_pop3_write() now has a state machine that scans for the end of a POP3 body so that the CR LF '.' CR LF sequence can come in everything from one up to five subsequent packets. Test case 810 is modified to use SLOWDOWN which makes the server pause between each single byte and thus makes the POP3 body get sent to curl basically one byte at a time.
2011-11-28test: added POP3 test with dot-prefixed lineDaniel Stenberg
Test 815 is disabled for now since libcurl currently doesn't unescape such lines the way it should. See mail: http://curl.haxx.se/mail/lib-2011-11/0324.html
2011-11-27configure: fix to make older pkg-config play wellDaniel Stenberg
configure.ac:1349: error: possibly undefined macro: PKG_CONFIG_LIBDIR Obviously this is not a problem with pkg-config 0.26 but older versions seem to show this. Fix suggested by: Kamil Dudka Reported by: Guenter Bug: http://curl.haxx.se/mail/lib-2011-11/0298.html
2011-11-25test 1211: FTP test to repeat bug #3429299Daniel Stenberg
"Active FTP hangs if server does not open data connection" The server first sends a 150 and then when libcurl waits for the data transfer, the server sends a 425.
2011-11-25configure: add support for pkg-config detection of libidnMark Brand
2011-11-25FTP tests 1206 - 1209: don't expect QUITDaniel Stenberg
The protocol parts for these tests do not include QUIT simply because the error is CURLE_OPERATION_TIMEDOUT (28) which is a generic timeout error without specificly saying for which connection it concerns, and for timeouts libcurl marks the control channel as "invalid". As this test case times out for the data connection it could still use the control channel.
2011-11-25CyaSSL 2.0+ library initialization adjustmentYang Tse
2011-11-25rectify commentJonas Schnelli
2011-11-25SSLSESSION_SHARED: new macro to check if session is sharedDaniel Stenberg
Added convenience macro to use to check if a handle is using a shared SSL session, and fixed so that Curl_ssl_close_all() doesn't lock when the session isn't shared.
2011-11-25telnet.c: fix MSVC compiler warningYang Tse
2011-11-25tvdiff_secs(): sub-zero time difference adjustmentYang Tse
Skip a floating point addition operation when integral part of time difference is zero. This avoids potential floating point addition rounding problems while preserving decimal part value.
2011-11-25telnet: fix macros to allow proper semicolon useDaniel Stenberg
Macros that look like function calls need to be made so that we can use semicolons properly for indentation and for reducing the risk for mistakes when using them.
2011-11-25TELNET: improved treatment of optionsLaurent Rabret
1) enables the Window Size option 2) allows the server to enable the echo mode 3) allows an app using libcurl to disable the default binary mode Signed-off-by: Laurent Rabret
2011-11-25RELEASE-NOTES: synced with 2c905fd1f82Daniel Stenberg
2011-11-24query-part: ignore the URI part for given protocolsJonas Schnelli
By setting PROTOPT_NOURLQUERY in the protocol handler struct, the protocol will get the "query part" of the URL cut off before the data is handled by the protocol-specific code. This makes libcurl adhere to RFC3986 section 2.2. Test 1220 is added to verify a file:// URL with query-part.
2011-11-24symbols.pl: provide LIBCURL_HAS macro for appsDaniel Stenberg
Experience has shown that the symbols-in-versions file is very useful to applications that want to build with a wide range of libcurl versions. It is however easy to get it wrong and the source gets a bit messy with all the fixed numerical comparisions. The point of this script is to provide an easy-to-use macro for libcurl- using applications to do preprocessor checks for specific libcurl defines, and yet make the code clearly show what the macro is used for.
2011-11-24lib573.c: fix double data type variable comparison with zeroYang Tse