Alessandro Ghedini [Wed, 14 Dec 2011 21:00:56 +0000 (22:00 +0100)]
docs: fix typo in curl_easy_setopt manpage
Yang Tse [Tue, 13 Dec 2011 17:37:33 +0000 (18:37 +0100)]
if2ip.[ch]: fix compilation with MinGW
Avoid 'interface' literal that some MinGW versions define as a macro
Yang Tse [Tue, 13 Dec 2011 15:18:08 +0000 (16:18 +0100)]
connect.c: fix compiler warning 'enumerated type is mixed with another type'
Yang Tse [Tue, 13 Dec 2011 15:08:42 +0000 (16:08 +0100)]
if2ip.c: fix compiler warning 'unused parameter'
Yang Tse [Tue, 13 Dec 2011 14:58:02 +0000 (15:58 +0100)]
pop3.c: fix compiler warning variable may be used uninitialized
Yang Tse [Tue, 13 Dec 2011 14:47:26 +0000 (15:47 +0100)]
if2ip.c: fix compiler warning 'enumerated type is mixed with another type'
Jason Glasgow [Fri, 4 Nov 2011 20:48:05 +0000 (16:48 -0400)]
CURLOPT_INTERFACE: avoid resolving interfaces names
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.
Daniel Stenberg [Mon, 12 Dec 2011 19:06:50 +0000 (20:06 +0100)]
RELEASE-NOTES: synced with
1259ccf7474
5 more bugfixes, 5 more contributors
Steve Holme [Sun, 11 Dec 2011 16:03:08 +0000 (16:03 +0000)]
ConnectionExists: Fix reuse for TLS upgraded connections
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.
Daniel Stenberg [Fri, 9 Dec 2011 21:51:08 +0000 (22:51 +0100)]
create_conn: don't switch to HTTP protocol if tunneling is enabled
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
Daniel Stenberg [Wed, 7 Dec 2011 22:08:15 +0000 (23:08 +0100)]
FAQ: add --resolve details to question 3.19
Gokhan Sengun [Wed, 7 Dec 2011 15:00:20 +0000 (16:00 +0100)]
Curl_closesocket: clear sock_accepted on close
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
Daniel Stenberg [Wed, 7 Dec 2011 14:52:25 +0000 (15:52 +0100)]
static SSL windows builds: add more libs to the link
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
Gokhan Sengun [Tue, 6 Dec 2011 22:41:24 +0000 (23:41 +0100)]
multi interface: fix block when CONNECT_ONLY option is used
Dan Fandrich [Wed, 7 Dec 2011 03:54:48 +0000 (19:54 -0800)]
Added some include files in a couple of example programs
This improves portability of the examples. This patch was
submitted to the OpenBSD ports collection by naddy.
Daniel Stenberg [Tue, 6 Dec 2011 19:02:57 +0000 (20:02 +0100)]
MakefileBuild: fix the static build
This is a left-over fix from commit
b7e242de0e that Tom Wright
suggested.
Reported by: Ward Willats
Daniel Stenberg [Tue, 6 Dec 2011 13:22:45 +0000 (14:22 +0100)]
OpenSSL: check for the SSLv2 function in configure
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.
Daniel Stenberg [Mon, 5 Dec 2011 22:19:50 +0000 (23:19 +0100)]
CURLOPT_CONNECTTIMEOUT: default is 300 seconds
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
Rob Ward [Mon, 5 Dec 2011 22:07:38 +0000 (23:07 +0100)]
progress function example: include timed interval
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.
Daniel Stenberg [Mon, 5 Dec 2011 21:58:30 +0000 (22:58 +0100)]
RELEASE-NOTES: synced with
347f951c390
8 more bugs, 5 more contributors
Daniel Stenberg [Mon, 5 Dec 2011 21:20:48 +0000 (22:20 +0100)]
SSH: fix CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
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
Daniel Stenberg [Mon, 5 Dec 2011 11:44:55 +0000 (12:44 +0100)]
Curl_resolver_is_resolved: differentiate between host/proxy errors
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
Daniel Stenberg [Mon, 5 Dec 2011 11:41:38 +0000 (12:41 +0100)]
c-ares: return proxy failure for all proxy types
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...
Daniel Stenberg [Mon, 5 Dec 2011 11:34:27 +0000 (12:34 +0100)]
FTP: close callback fix
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
Daniel Stenberg [Mon, 5 Dec 2011 10:42:10 +0000 (11:42 +0100)]
FTP: call opensocket callback properly
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().
Daniel Stenberg [Mon, 5 Dec 2011 09:58:38 +0000 (10:58 +0100)]
Curl_socket: internal replacement for socket()
Moved out into a separate function to work as a "generic" socket()
replacement.
Daniel Stenberg [Sun, 4 Dec 2011 22:10:12 +0000 (23:10 +0100)]
test: verify the opensocket callback for FTP
test 595: for passive FTP
test 596: for active FTP
Jason Glasgow [Thu, 1 Dec 2011 04:39:02 +0000 (23:39 -0500)]
CURLOPT_DNS_SERVERS: set name servers if possible (fix)
Ensure that CURLE_OK is returned if setting the name servers is successfull.
Daniel Stenberg [Fri, 2 Dec 2011 20:10:28 +0000 (21:10 +0100)]
multi interface: only use non-NULL function pointer!
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.
Jason Glasgow [Wed, 30 Nov 2011 20:23:44 +0000 (15:23 -0500)]
multi: handle timeouts on DNS servers by checking for new sockets
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.
Daniel Stenberg [Thu, 1 Dec 2011 09:20:42 +0000 (10:20 +0100)]
test 815: verify POP3 dot-first-on-line unescaping
Steve Holme [Wed, 30 Nov 2011 18:23:09 +0000 (18:23 +0000)]
POP3: fixed escaped dot not being striped out
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.
Yang Tse [Wed, 30 Nov 2011 20:53:21 +0000 (21:53 +0100)]
buildconf: follow-up for commit
7e02f7fd
Yang Tse [Wed, 30 Nov 2011 18:31:50 +0000 (19:31 +0100)]
buildconf: fix libtool 1.5.x warnings triggered with autoconf 2.6x or later
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.
Daniel Stenberg [Wed, 30 Nov 2011 15:38:58 +0000 (16:38 +0100)]
RELEASE-NOTES: synced with
1038d0aa1
5 bugfixes and 1 new contributor
Yang Tse [Tue, 29 Nov 2011 19:28:49 +0000 (20:28 +0100)]
pop3.c: fix compiler warning
Yang Tse [Tue, 29 Nov 2011 18:11:34 +0000 (19:11 +0100)]
configure: avoid usage of macro PKG_CHECK_MODULES
libidn option adjusted in order to use pkg-config info when available
in a similar way as we already do for other libraries.
Daniel Stenberg [Tue, 29 Nov 2011 12:43:46 +0000 (13:43 +0100)]
POP3: detect when LIST returns no mails
By making sure the function can detect an "end of body" sequence
immediately on the first line, test 811 is now enabled.
Daniel Stenberg [Tue, 29 Nov 2011 12:41:10 +0000 (13:41 +0100)]
ftpserver: output CRLF in logs
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.
Daniel Stenberg [Mon, 28 Nov 2011 22:02:35 +0000 (23:02 +0100)]
POP3: fix end of body detection
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.
Daniel Stenberg [Mon, 28 Nov 2011 22:34:16 +0000 (23:34 +0100)]
test: added POP3 test with dot-prefixed line
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
Daniel Stenberg [Sun, 27 Nov 2011 19:00:30 +0000 (20:00 +0100)]
configure: fix to make older pkg-config play well
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
Daniel Stenberg [Fri, 25 Nov 2011 22:15:58 +0000 (23:15 +0100)]
test 1211: FTP test to repeat bug #3429299
"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.
Mark Brand [Fri, 25 Nov 2011 22:00:16 +0000 (23:00 +0100)]
configure: add support for pkg-config detection of libidn
Daniel Stenberg [Fri, 25 Nov 2011 21:38:13 +0000 (22:38 +0100)]
FTP tests 1206 - 1209: don't expect QUIT
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.
Yang Tse [Fri, 25 Nov 2011 16:23:36 +0000 (17:23 +0100)]
CyaSSL 2.0+ library initialization adjustment
Jonas Schnelli [Fri, 25 Nov 2011 14:02:43 +0000 (15:02 +0100)]
rectify comment
Daniel Stenberg [Fri, 25 Nov 2011 13:58:55 +0000 (14:58 +0100)]
SSLSESSION_SHARED: new macro to check if session is shared
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.
Yang Tse [Fri, 25 Nov 2011 13:30:53 +0000 (14:30 +0100)]
telnet.c: fix MSVC compiler warning
Yang Tse [Fri, 25 Nov 2011 12:51:55 +0000 (13:51 +0100)]
tvdiff_secs(): sub-zero time difference adjustment
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.
Daniel Stenberg [Fri, 25 Nov 2011 09:56:18 +0000 (10:56 +0100)]
telnet: fix macros to allow proper semicolon use
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.
Laurent Rabret [Fri, 25 Nov 2011 09:35:34 +0000 (10:35 +0100)]
TELNET: improved treatment of options
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
Daniel Stenberg [Thu, 24 Nov 2011 23:09:43 +0000 (00:09 +0100)]
RELEASE-NOTES: synced with
2c905fd1f82
Jonas Schnelli [Thu, 24 Nov 2011 22:28:54 +0000 (23:28 +0100)]
query-part: ignore the URI part for given protocols
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.
Daniel Stenberg [Thu, 24 Nov 2011 21:55:09 +0000 (22:55 +0100)]
symbols.pl: provide LIBCURL_HAS macro for apps
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.
Yang Tse [Thu, 24 Nov 2011 17:18:42 +0000 (18:18 +0100)]
lib573.c: fix double data type variable comparison with zero
Yang Tse [Thu, 24 Nov 2011 17:13:09 +0000 (18:13 +0100)]
getinfo.c: reset app connect time when clearing session-info time variables
Yang Tse [Thu, 24 Nov 2011 11:11:52 +0000 (12:11 +0100)]
Fix unreleased regression when using windows gnutls versions older than 2.8
Mark Brand [Tue, 22 Nov 2011 21:48:15 +0000 (22:48 +0100)]
gnutls: only translate winsock errors for old versions
Bugfix: https handshake fails using gnutls 3 on windows
http://sourceforge.net/tracker/index.php?func=detail&aid=3441084&group_id=976&atid=100976
New gnutls versions have an error handler that knows about Winsock
errors, which is why gnutls_transport_set_global_errno() was deprecated
and then removed.
This is a correction of commit f5bb370 (blame me) which meant to
reimplement gnutls_transport_set_global_errno(), which is not necessary.
Daniel Stenberg [Mon, 21 Nov 2011 22:36:21 +0000 (23:36 +0100)]
protocol_connect: show verbose connect and set connect time
Regression: commit
b998d95b (shipped first in release 7.22.0) made the
condition always equal false that should reset the TIMER_CONNECT timer
and call the Curl_verboseconnect() function.
Reported by: "Captain Basil"
Bug: http://curl.haxx.se/mail/archive-2011-11/0035.html
Daniel Stenberg [Sun, 20 Nov 2011 22:33:46 +0000 (23:33 +0100)]
-J -O: use -O name if no Content-Disposition header comes!
A regression between 7.22.0 and 7.23.0 -- downloading a file with the
flags -O and -J results in the content being written to stdout if and
only if there was no Content-Disposition header in the http response. If
there is a C-D header with a filename attribute, the output is correctly
written.
Reported by: Dave Reisner
Bug: http://curl.haxx.se/mail/archive-2011-11/0030.html
Martin Storsjo [Tue, 15 Nov 2011 09:52:32 +0000 (11:52 +0200)]
Add support for using nettle instead of gcrypt as gnutls backend
Jonas Schnelli [Fri, 18 Nov 2011 19:30:46 +0000 (20:30 +0100)]
test: SFTP quote commands with * prefix
Related to the
f64812ca63 commit
Daniel Stenberg [Fri, 18 Nov 2011 19:27:07 +0000 (20:27 +0100)]
CURLOPT_QUOTE: SFTP supports the '*'-prefix now
Jonas Schnelli [Fri, 18 Nov 2011 14:55:09 +0000 (15:55 +0100)]
SFTP: support '*' prefix for quote operations
prefixing a command with '*' means it is allowed to fail without
aborting the chain actions
Daniel Stenberg [Thu, 17 Nov 2011 22:55:36 +0000 (23:55 +0100)]
getsessionid: don't ever return while locked
Also, check for the session sharing bit instead of comparing pointers
Daniel Stenberg [Thu, 17 Nov 2011 22:46:29 +0000 (23:46 +0100)]
Curl_ssl_getsessionid: increase the value, not the pointer
Daniel Stenberg [Thu, 17 Nov 2011 22:43:38 +0000 (23:43 +0100)]
THANKS: one new contributor in 7.23.1
Alejandro Alvarez Ayllon [Thu, 17 Nov 2011 22:34:38 +0000 (23:34 +0100)]
SSL session share: move the age counter to the share object
Previously the age counter would be counted individually in each easy
handle that shared SSL sessions!
Alejandro Alvarez Ayllon [Thu, 17 Nov 2011 22:33:42 +0000 (23:33 +0100)]
libtest build: add the missing lib586
Jason Glasgow [Tue, 12 Apr 2011 15:34:28 +0000 (11:34 -0400)]
CURLOPT_DNS_SERVERS: set name servers if possible
Daniel Stenberg [Thu, 17 Nov 2011 17:29:15 +0000 (18:29 +0100)]
RELEASE-NOTES: correct the release and contributor numbers
Daniel Stenberg [Thu, 17 Nov 2011 17:03:21 +0000 (18:03 +0100)]
FindWin32CACert: return OK even if CA cert isn't found
Bug: http://curl.haxx.se/mail/lib-2011-11/0180.html
Reported by: Mark Brand
Dan Fandrich [Thu, 17 Nov 2011 01:11:31 +0000 (17:11 -0800)]
curl has been built on many Android versions
Daniel Stenberg [Tue, 15 Nov 2011 19:44:49 +0000 (20:44 +0100)]
7.24.0: start the work
Daniel Stenberg [Tue, 15 Nov 2011 19:44:24 +0000 (20:44 +0100)]
THANKS: added 18 new contributors from 7.23.0
Dan Fandrich [Mon, 14 Nov 2011 22:03:31 +0000 (14:03 -0800)]
curl_easy_setopt arguments should be of type long in the examples
Daniel Stenberg [Sat, 12 Nov 2011 09:09:54 +0000 (10:09 +0100)]
RELEASE-NOTES: synced with
10120e6a
one more bug fix and contributor
Daniel Stenberg [Wed, 9 Nov 2011 21:50:36 +0000 (22:50 +0100)]
progress_cb: avoid buffer overflow
The progress bar output function would blindly use the terminal width
without bounds checking. When using a very wide terminal that caused a
buffer overflow and segfault.
We now limit the max bar with to 255 columns, and I simplified the code
to avoid an extra snprintf and buffer.
Bug: http://curl.haxx.se/bug/view.cgi?id=3435710
Reported by: Alexey Zakhlestin
Yang Tse [Fri, 11 Nov 2011 18:46:44 +0000 (19:46 +0100)]
Active mode FTP test cases with server not establishing data connection
591 -> FTP multi PORT and 425 on upload
592 -> FTP multi PORT and 421 on upload
593 -> FTP multi PORT upload, no data conn and no transient neg. reply
594 -> FTP multi PORT upload, no data conn and no positive prelim. reply
1206 -> FTP PORT and 425 on download
1207 -> FTP PORT and 421 on download
1208 -> FTP PORT download, no data conn and no transient negative reply
1209 -> FTP PORT download, no data conn and no positive preliminary reply
Guenter Knauf [Tue, 8 Nov 2011 04:46:46 +0000 (05:46 +0100)]
Fix to skip untrusted certs.
Daniel Stenberg [Sun, 6 Nov 2011 22:42:28 +0000 (23:42 +0100)]
RELEASE-NOTES: synced with
e3166df1bb3
4 new bugfixes, 2 more contributors
Daniel Stenberg [Sun, 6 Nov 2011 15:53:07 +0000 (16:53 +0100)]
ftp PORT: don't hang if bind() fails
When the user requests PORT with a specific port or port range, the code
could lock up in an endless loop. There's now an extra conditional that
makes sure to special treat the error and try the local address only
once so a second failure will abort the loop correctly.
Bug: http://curl.haxx.se/bug/view.cgi?id=3433968
Reported by: Gokhan Sengun
Daniel Stenberg [Sun, 6 Nov 2011 16:38:36 +0000 (17:38 +0100)]
pingpong: change two comments wrongly referring "FTP"
Just a sign of where the code originally was ripped out from. Now it is
generic "pingpong".
Daniel Stenberg [Sun, 6 Nov 2011 16:28:28 +0000 (17:28 +0100)]
test 590: verify the bug fix in
4851dafcf1
This test is created to verify Rene Bernhardt's patch which makes sure
libcurl properly _not_ deals with Negotiate if not asked to even if the
proxy says it can serve it.
Rene Bernhardt [Thu, 3 Nov 2011 22:25:17 +0000 (23:25 +0100)]
HTTP auth: fix proxy Negotiate bug
If a proxy offers several Authentication schemes where NTLM and
Negotiate are offered by the proxy and you tell libcurl not to use the
Negotiate scheme then the request never returns when the proxy answers
with its HTTP 407 reply.
It is reproducible by the following steps:
- Use a proxy that offers NTLM and Negotiate ( CURLOPT_PROXY and
CURLOPT_PROXYPORT )
- Tell libcurl NOT to use Negotiate CURL_EASY_SETOPT(CURLOPT_PROXYAUTH,
CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_NTLM )
- Start the request
The call to CURL_EASY_PERFORM never returns. If you switch on debug
logging you can see that libcurl issues a new request As soon as it
received the 407 reply. Instead it should return and set the response
code to 407.
Bug: http://curl.haxx.se/mail/lib-2011-10/0323.html
Yang Tse [Fri, 4 Nov 2011 12:08:37 +0000 (13:08 +0100)]
ssluse.c: fix calling of OpenSSL's ERR_remove_state(0)
Move calling of ERR_remove_state(0) a.k.a ERR_remove_thread_state(NULL)
from Curl_ossl_close_all() to Curl_ossl_cleanup().
In this way ERR_remove_state(0) is now only called in libcurl by
curl_global_cleanup(). Previously it would get called by functions
curl_easy_cleanup(), curl_multi_cleanup and potentially each time a
connection was removed from a connection cache leading to premature
destruction of OpenSSL's thread local state hash.
Multi-threaded apps using OpenSSL enabled libcurl should still call
function ERR_remove_state(0) or ERR_remove_thread_state(NULL) at the
very end end of threads that do not call curl_global_cleanup().
Yang Tse [Thu, 3 Nov 2011 22:26:38 +0000 (23:26 +0100)]
tool_cb_wrt.c: disambiguate warning message
Yang Tse [Thu, 3 Nov 2011 22:21:01 +0000 (23:21 +0100)]
tool_cfgable.c: pending check done
Yang Tse [Thu, 3 Nov 2011 20:56:51 +0000 (21:56 +0100)]
url.c and file.c: fix OOM triggered segfault
Daniel Stenberg [Thu, 3 Nov 2011 08:54:12 +0000 (09:54 +0100)]
rename ftp_ssl: the struct field is used for many protocols
Now called 'use_ssl' instead, which better matches the current CURLOPT
name and since the option is used for all pingpong protocols (at least)
it makes sense to not use 'ftp' in the name.
Daniel Stenberg [Wed, 2 Nov 2011 21:44:22 +0000 (22:44 +0100)]
gtls_connect_step1: remove use of deprecated functions
Use gnutls_priority_set_direct() instead of gnutls_protocol_set_priority().
Remove the gnutls_certificate_type_set_priority() use since x509 is the
default certificate type anyway.
Reported by: Vincent Torri
Yang Tse [Wed, 2 Nov 2011 21:34:41 +0000 (22:34 +0100)]
url.c and transfer.c: nullify connection pointer when free()'ed
Yang Tse [Wed, 2 Nov 2011 12:38:31 +0000 (13:38 +0100)]
FTP test server: NODATACONN commands follow-up
Make NODATACONN425 and NODATACONN421 return a 150 positive preliminary reply
before 425 or 421.
New NODATACONN150 returns 150 without further positive nor negative reply
Now NODATACONN doesn't reply anything at all.
Yang Tse [Tue, 1 Nov 2011 13:38:21 +0000 (14:38 +0100)]
multi.c: OOM handling fix
Yang Tse [Tue, 1 Nov 2011 13:11:36 +0000 (14:11 +0100)]
FTP test server: NODATACONN commands follow-up
Make NODATACONN custom commands apply to both active and passive FTP,
and ensure 425 and 421 are not returned unless data channel usage is
attempted.
Yang Tse [Tue, 1 Nov 2011 11:53:23 +0000 (12:53 +0100)]
tool_cb_see.h: fix compiler warning
Yang Tse [Mon, 31 Oct 2011 21:42:43 +0000 (22:42 +0100)]
setup.h: fix compiler warning
Yang Tse [Mon, 31 Oct 2011 06:29:13 +0000 (07:29 +0100)]
FTP test server: NODATACONN commands commit
c761fcb0 follow-up
Adjustments that make NODATACONN custom commands fully usable.
Dave Reisner [Sun, 30 Oct 2011 03:28:11 +0000 (04:28 +0100)]
doc/curl.1: fix sentence with ending for -# option
Try to be a little more descriptive about the effect of this flag,
rather than parroting what was said in the paragraph just above.