Daniel Stenberg [Mon, 27 Aug 2012 21:49:08 +0000 (23:49 +0200)]
libcurl-share.3: remove wrong info of what can be shared
"Currently you can only share DNS and/or COOKIE data" is incorrect since
also SSL sessions can be shared.
Bug: http://curl.haxx.se/bug/view.cgi?id=3562261
Reported by: Joe Mason
Dave Reisner [Mon, 23 Jul 2012 15:34:25 +0000 (15:34 +0000)]
examples: use do/while loop for multi examples
It's conceivable that after the first time curl_multi_perform returns,
the outvalue still_running will be 0, but work will have been done. This
is shown by a workload of small, purely file:// based URLs. Ensure that
we always read pending messages off the multi handle by forcing the
while loop to run at least once.
Daniel Stenberg [Mon, 27 Aug 2012 12:50:53 +0000 (14:50 +0200)]
curl.h: fix comment to refer to current names
CURLOPT_USE_SSL should be set to CURLUSESSL_* and nothing else in modern
libcurl versions.
Daniel Stenberg [Mon, 27 Aug 2012 12:48:56 +0000 (14:48 +0200)]
ftpsget: simple example showing a FTPS fetch
Daniel Stenberg [Mon, 27 Aug 2012 12:42:56 +0000 (14:42 +0200)]
sftpget: SFTP is not "SSH FTP"
Armel Asselin [Mon, 27 Aug 2012 12:33:27 +0000 (14:33 +0200)]
sftpget: example showing a simple SFTP download
... using SSH-agent
Daniel Stenberg [Sun, 26 Aug 2012 22:16:03 +0000 (00:16 +0200)]
curl_multi_perform.3: extended/clarified
Daniel Stenberg [Thu, 23 Aug 2012 08:53:08 +0000 (10:53 +0200)]
INSTALL.cmake: clarify some flaws/limits in the cmake build
Daniel Stenberg [Tue, 21 Aug 2012 20:30:47 +0000 (22:30 +0200)]
https.c example: spell check used define
Bug: http://curl.haxx.se/bug/view.cgi?id=3559845
Reported by: Olivier Berger
Daniel Stenberg [Sat, 18 Aug 2012 22:18:34 +0000 (00:18 +0200)]
configure: update the copyright years for the output
Nick Zitzmann [Fri, 17 Aug 2012 04:31:41 +0000 (22:31 -0600)]
darwinssl: add TLS 1.1 and 1.2 support, replace deprecated functions
In Mountain Lion, Apple added TLS 1.1 and 1.2, and deprecated a number
of SecureTransport functions, some of which we were using. We now check
to see if the replacement functions are present, and if so, we use them
instead. The old functions are still present for users of older
cats. Also fixed a build warning that started to appear under Mountain
Lion
Daniel Stenberg [Thu, 16 Aug 2012 21:32:55 +0000 (23:32 +0200)]
curl_easy_setopt: documented CURLSOCKTYPE_ACCEPT for SOCKOPTFUNCTION
Gokhan Sengun [Sun, 24 Jun 2012 23:06:50 +0000 (02:06 +0300)]
ftp: active conn, place calling sockopt callback at the end of function
Commit
b91d29a28e170c16d65d956db79f2cd3a82372d2 introduces a bug and breaks Curl_closesocket function. sock_accepted flag for the second socket should be tagged as TRUE before the sockopt callback is called because in case the callback returns an error, Curl_closesocket function is going to call the - fclosesocket - callback for the accept()ed socket
Gokhan Sengun [Sun, 24 Jun 2012 22:46:01 +0000 (01:46 +0300)]
ftp: active conn, allow application to set sockopt after accept() call
For active FTP connections, applications may need setting the sockopt after accept() call returns successful. This fix gives a call to the callback registered with CURL_SOCKOPTFUNCTION option. Also a new sock type - CURLSOCKTYPE_ACCEPT - is added. This type is to be passed to application callbacks with - purpose - parameter. Applications may use this parameter to distinguish between socket types.
Daniel Stenberg [Thu, 16 Aug 2012 17:24:33 +0000 (19:24 +0200)]
configure: remove the --enable/disable-nonblocking options
Removing this option as it currently only functions to lure people into
wrongly using it and falsely believing that libcurl will work fine
without using nonblocking sockets internally - which leads to hard to
track or understand errors.
Ant Bryan [Mon, 13 Aug 2012 20:32:42 +0000 (16:32 -0400)]
MANUAL review
Daniel Stenberg [Fri, 10 Aug 2012 08:54:38 +0000 (10:54 +0200)]
curl.1: shorten lines, avoid referring to libcurl instead of curl
Ant Bryan [Fri, 10 Aug 2012 08:49:22 +0000 (10:49 +0200)]
curl.1: fix more consistent wording
"If this option is used several times, the last one will be used."
uniformity
Daniel Stenberg [Fri, 10 Aug 2012 06:57:27 +0000 (08:57 +0200)]
ssh: use the libssh2 agent API conditionally
Commit
e351972bc89aa4c brought in the ssh agent support but some uses of
the libssh2 agent API was done unconditionally which wasn't good enough
since that API hasn't always been present.
Daniel Stenberg [Fri, 10 Aug 2012 06:54:29 +0000 (08:54 +0200)]
white space fix: shorten long line
... to please checksrc.pl
Kamil Dudka [Thu, 9 Aug 2012 12:08:11 +0000 (14:08 +0200)]
docs: update the links to cipher-suites supported by NSS
... and make the list of cipher-suites in nss.c readable by humans.
Bug: http://curl.haxx.se/mail/archive-2012-08/0016.html
Kamil Dudka [Thu, 9 Aug 2012 07:40:00 +0000 (09:40 +0200)]
nss: do not print misleading NSS error codes
Daniel Stenberg [Wed, 8 Aug 2012 21:19:05 +0000 (23:19 +0200)]
RELEASE-NOTES: synced with
0774386b23
5 more bug fixes, one change, 6 contributors
Armel Asselin [Fri, 16 Mar 2012 21:40:39 +0000 (22:40 +0100)]
docs: mention CURLSSH_AUTH_AGENT
Armel Asselin [Fri, 9 Mar 2012 16:24:42 +0000 (17:24 +0100)]
SSH: added agent based authentication
CURLSSH_AUTH_AGENT is a new auth type for SSH
Daniel Stenberg [Wed, 8 Aug 2012 21:01:34 +0000 (23:01 +0200)]
bump version to 7.28.0
I am about to merge the first patch that adds changes into the pending
release, and thus we bump the minor number.
Daniel Stenberg [Wed, 8 Aug 2012 21:01:14 +0000 (23:01 +0200)]
RELEASE-NOTES: added missing link
Daniel Stenberg [Wed, 8 Aug 2012 12:58:09 +0000 (14:58 +0200)]
curl_version: fixed Value stored to 'len' is never read
Fixed this (harmless) clang-analyzer warning. Also fixed the source
indentation level.
Daniel Stenberg [Wed, 8 Aug 2012 12:54:38 +0000 (14:54 +0200)]
TODO-RELEASE: the (nil) bug is fixed
Daniel Stenberg [Wed, 8 Aug 2012 12:50:32 +0000 (14:50 +0200)]
add_next_timeout: minor restructure of code
By reading the ->head pointer and using that instead of the ->size
number to figure out if there's a list remaining we avoid the (false
positive) clang-analyzer warning that we might dereference of a null
pointer.
Daniel Stenberg [Wed, 8 Aug 2012 11:49:35 +0000 (13:49 +0200)]
verbose messages: fixed output of hostnames in re-used connections
I suspect this is a regression introduced in commit
207cf150, included
since 7.24.0.
Avoid showing '(nil)' as hostname in verbose output by making sure the
hostname fixup function is called early enough to set the pointers that
are used for this. The name data is set again for each request even for
re-used connections to handle multiple hostnames over the same
connection (like with proxy) or that the casing etc of the host name is
changed between requests (which has proven to be important at least once
in the past).
Test1011 was modified to use a redirect with a re-used a connection
since it then showed the bug and now lo longer does. There's currently
no easy way to have the test suite detect 'nil' texts in verbose ouputs
so no tests will detect if this problem gets reintroduced.
Bug: http://curl.haxx.se/mail/lib-2012-07/0111.html
Reported by: Gisle Vanem
Nick Zitzmann [Tue, 7 Aug 2012 23:08:54 +0000 (17:08 -0600)]
metalink: Un-broke the build when building --with-darwinssl
Guenter Knauf [Wed, 8 Aug 2012 03:03:16 +0000 (05:03 +0200)]
Fix some compiler warnings.
Daniel Stenberg [Tue, 7 Aug 2012 22:04:00 +0000 (00:04 +0200)]
TODO-RELEASE: two bugs fixed
These are now addressed:
323 - patch - select.c / Curl_socket_check() interrupted
325 - Avoid leak of local device string when reusing connection
Daniel Stenberg [Tue, 7 Aug 2012 22:03:30 +0000 (00:03 +0200)]
curl.1: minor format fix for --data-ascii
... and removal of trailing whitespace on a single line
Ant Bryan [Tue, 7 Aug 2012 17:15:06 +0000 (13:15 -0400)]
curl man page cleanup
Mike Crowe [Tue, 17 Jul 2012 16:43:49 +0000 (18:43 +0200)]
Avoid leak of local device string when reusing connection
Ensure that the copy of the CURLOPT_INTERFACE string is freed if we
decide we can reuse an existing connection.
Daniel Stenberg [Tue, 7 Aug 2012 21:30:05 +0000 (23:30 +0200)]
Curl_socket_check: fix timeout return value for select users
This is the same fix applied for the conditional code that uses select()
that was already done for the poll specific code in commit
b61e8b81f5038.
Maxime Larocque [Tue, 7 Aug 2012 21:24:13 +0000 (23:24 +0200)]
Curl_socket_check: fix return code for timeout
We found a problem with ftp transfer using libcurl (7.23 and 7.25)
inside an application which is receiving unix signals (SIGUSR1,
SIGUSR2...) almost continuously. (Linux 2.4, PowerPC, HAVE_POLL_FINE
defined).
Curl_socket_check() uses poll() to wait for the socket, and retries it
when a signal is received (EINTR). However, if a signal is received and
it also happens that the timeout has been reached, Curl_socket_check()
returns -1 instead of 0 (indicating an error instead of a timeout).
In our case, the result is an aborted connection even before the ftp
banner is received from the server, and a return value of
CURLE_OUT_OF_MEMORY from curl_easy_perform() (Curl_pp_multi_statemach(),
in pingpong.c, actually returns OOM if Curl_socket_check() fails :-)
Funny to debug on a system on which OOM is a possible cause).
Bug: http://curl.haxx.se/mail/lib-2012-07/0122.html
Daniel Stenberg [Tue, 7 Aug 2012 21:20:06 +0000 (23:20 +0200)]
RELEASE-NOTES: synced with
b4a558041fdf65c0
Daniel Stenberg [Tue, 7 Aug 2012 21:19:42 +0000 (23:19 +0200)]
TODO-RELEASE: fixed another bug
bug #3544688 "crash during retry with libcurl and SFTP"
Daniel Stenberg [Tue, 7 Aug 2012 13:01:54 +0000 (15:01 +0200)]
WSAPoll: disabled on all windows builds
Due to WSAPoll bugs, libcurl does not work as intended. When the cURL
library is used to setup a connection to an incorrect port, normally the
result is CURLE_COULDNT_CONNECT, /* 7 */, but due to the bug in WSAPoll,
the result now is CURLE_OPERATION_TIMEDOUT, /* 28 - the timeout time was
reached */.
On August 1, Jan Koen Annot opened a case for this to Microsoft Premier
Online (https://premier.microsoft.com/). The support engineer handling
the case wrote that the case description is quite clear. He will try to
reproduce the issue and then proceed with troubleshooting it.
Reported by: Jan Koen Annot
Bug: http://curl.haxx.se/mail/lib-2012-07/0310.html
Daniel Stenberg [Tue, 7 Aug 2012 12:55:19 +0000 (14:55 +0200)]
retry request: only access the HTTP data if in fact HTTP
When figuring out if the data stream needs to be rewound when the
request is to be resent, we must not access the HTTP struct unless the
protocol used is indeed HTTP...
Bug: http://curl.haxx.se/bug/view.cgi?id=3544688
Daniel Stenberg [Tue, 7 Aug 2012 12:48:34 +0000 (14:48 +0200)]
TODO: support DANE, we already support gnutls without gcrypt
Daniel Stenberg [Tue, 7 Aug 2012 12:13:09 +0000 (14:13 +0200)]
curl-config: parentheses fix
Braces, not parentheses, should be used for shell variable names.
Bug: http://curl.haxx.se/bug/view.cgi?id=3551460
Reported by: Edward Sheldrake
Daniel Stenberg [Tue, 7 Aug 2012 11:57:13 +0000 (13:57 +0200)]
VC build: add define for openssl
This fixes a build failure of lib/ssluse.c.
Bug: http://curl.haxx.se/bug/view.cgi?id=3552997
Daniel Stenberg [Tue, 7 Aug 2012 11:49:13 +0000 (13:49 +0200)]
TODO-RELEASE: two bugs fixed!
Daniel Stenberg [Tue, 7 Aug 2012 11:45:59 +0000 (13:45 +0200)]
globbing: fix segfault when >9 globs were used
Stupid lack of range checks caused the code to overwrite local variables
after glob number nine. Added checks now.
Bug: http://curl.haxx.se/bug/view.cgi?id=3546353
Joe Mason [Mon, 6 Aug 2012 17:44:38 +0000 (13:44 -0400)]
sws: close sockets properly
Fix a bug where closed sockets (fd -1) were left in the all_sockets
list, because of missing parens in a pointer arithmetic expression
Reenable the tests that were locking up due to this bug.
Joe Mason [Mon, 6 Aug 2012 17:43:52 +0000 (13:43 -0400)]
Remove debug logs that were accidentally checked in
Joe Mason [Mon, 6 Aug 2012 17:01:46 +0000 (13:01 -0400)]
Use select in sws, which has better cross-platform support than poll
Joe Mason [Mon, 6 Aug 2012 16:36:08 +0000 (12:36 -0400)]
Use cross-platform curlx_nonblock instead of fcntl in sws
Daniel Stenberg [Mon, 6 Aug 2012 21:59:28 +0000 (23:59 +0200)]
operate: fix clang-analyzer warnings for never read variables
Two separate "Value stored to 'XXX' is never read" warnings
Daniel Stenberg [Mon, 6 Aug 2012 21:32:49 +0000 (23:32 +0200)]
operate: fix clang-analyzer warning
Value stored to 'separator' is never read
Daniel Stenberg [Mon, 6 Aug 2012 17:20:35 +0000 (19:20 +0200)]
metalink: change code order to build with gnutls-nettle
Bug: http://curl.haxx.se/bug/view.cgi?id=3554668
Reported by: Anthony G. Basile
Daniel Stenberg [Mon, 6 Aug 2012 13:04:25 +0000 (15:04 +0200)]
gtls: fix build failure by including nettle-specific headers
Bug: http://curl.haxx.se/bug/view.cgi?id=3554668
Reported by: Anthony G. Basile
Guenter Knauf [Mon, 6 Aug 2012 09:45:06 +0000 (11:45 +0200)]
Fixed compiler warning - argument is type long.
Daniel Stenberg [Sun, 5 Aug 2012 22:33:25 +0000 (00:33 +0200)]
DISABLED: disable the new tests that do NTLM
The tests 2025, 2028 and 2031 don't work for me so I'll have them
disabled for now until we solve the problem.
Joe Mason [Thu, 19 Jul 2012 17:58:10 +0000 (13:58 -0400)]
Add tests of auth retries
Joe Mason [Fri, 3 Aug 2012 16:37:52 +0000 (12:37 -0400)]
Cleanup handshake after clean NTLM failure
Joe Mason [Fri, 27 Jul 2012 21:25:45 +0000 (17:25 -0400)]
Zero out auth structs before transfer
Joe Mason [Thu, 2 Aug 2012 21:22:46 +0000 (17:22 -0400)]
Add a polling loop in main to read from more than one socket at once. Add the O_NONBLOCK and
SO_KEEPALIVE flag to all sockets. Note that several loops which used to continue on a return value
of 0 (theoretical since 0 would never be returned without O_NONBLOCK) now break on 0 so that they
won't continue reading until after poll is called again.
Joe Mason [Thu, 2 Aug 2012 21:11:05 +0000 (17:11 -0400)]
Change return values of get_request, accept_connection and service_connection to add a return code
for non-blocking sockets: now -1 means error or connection finished, 1 means data was read, and 0
means there is no data available now so need to wait for poll (new return value)
Joe Mason [Wed, 1 Aug 2012 21:09:38 +0000 (17:09 -0400)]
Hoist the loop out of get_request, and make sure that it can be reentered when a request is
half-finished.
Note the the req struct used to be re-initialized AFTER reading pipeline data, so now that we
initialize it from the caller we must be careful not to overwrite the pipeline data.
Also we now need to handle the case where the buffer is already full when get_request is called -
previously this never happened as it was always called with an empty buffer and looped until done.
Now get_request is called in a loop, so the next step is to run the loop on a socket only when poll
signals it is readable.
Joe Mason [Wed, 1 Aug 2012 17:30:46 +0000 (13:30 -0400)]
Move blocks of code from the sws main loop into their own functions for easier refactoring later.
The next step will be to call the correct function after a poll, rather than looping unconditionally
Joe Mason [Wed, 1 Aug 2012 17:22:02 +0000 (13:22 -0400)]
Remove the --fork option of sws, since it makes refactoring to use poll more complicated and should
be redundant once we poll
Kamil Dudka [Mon, 30 Jul 2012 12:20:07 +0000 (14:20 +0200)]
file: use fdopen() for uploaded files if available
It eliminates noisy events when using inotify and fixes a TOCTOU issue.
Bug: https://bugzilla.redhat.com/844385
Guenter Knauf [Sun, 29 Jul 2012 13:14:40 +0000 (15:14 +0200)]
Added DWANT_IDN_PROTOTYPES define for MSVC too.
Discussion on the list: http://curl.haxx.se/mail/lib-2012-07/0271.html
Guenter Knauf [Sun, 29 Jul 2012 12:30:52 +0000 (14:30 +0200)]
Added Win32 problems.
Guenter Knauf [Sun, 29 Jul 2012 12:15:23 +0000 (14:15 +0200)]
Added hint to read docs/INSTALL too.
Guenter Knauf [Sun, 29 Jul 2012 11:16:58 +0000 (13:16 +0200)]
Added new file to distro.
Steve Holme [Sat, 28 Jul 2012 10:46:50 +0000 (11:46 +0100)]
TODO: Updated after 7.27.0 release
Removed APOP and SASL authentication from the POP3 section and metalink
support from the client section as these features were implemented in
this release.
Moved adding gssapi to SASL into it's own section rather than repeat it
for each protocol.
Daniel Stenberg [Fri, 27 Jul 2012 22:16:51 +0000 (00:16 +0200)]
TODO-RELEASE: updated after 7.27.0 release
Daniel Stenberg [Fri, 27 Jul 2012 22:00:26 +0000 (00:00 +0200)]
THANKS: 12 new contributors from the 7.27.0 release
Daniel Stenberg [Fri, 27 Jul 2012 21:57:27 +0000 (23:57 +0200)]
version bump: start towards next release
Let's call it 7.27.1 for now, but it it probably going to become 7.28.0
when released.
Guenter Knauf [Fri, 27 Jul 2012 01:54:58 +0000 (03:54 +0200)]
Fixed compiler warning 'unused parameter'.
Guenter Knauf [Fri, 27 Jul 2012 01:27:51 +0000 (03:27 +0200)]
Added prototypes to kill compiler warning.
Guenter Knauf [Fri, 27 Jul 2012 01:19:21 +0000 (03:19 +0200)]
Added --with-winidn to configure.
This needs another look from the configure experts. I tested that
it works so far with MinGW64 cross-compiler; libcurl builds and
links fine, but curl not yet ...
Ant Bryan [Tue, 24 Jul 2012 02:57:41 +0000 (22:57 -0400)]
Update man page info on --metalink and typo.
Daniel Stenberg [Thu, 26 Jul 2012 22:31:15 +0000 (00:31 +0200)]
RELEASE-NOTES: remove mentioned of bug never in a release
The --silent bug came with
7561a0fc834c435 which was never in a release.
Pointed out by Kamil Dudka
Daniel Stenberg [Thu, 26 Jul 2012 22:14:33 +0000 (00:14 +0200)]
RELEASE-NOTES: synced with
33b815e894fb
4 more bugfixes, 3 more contributors
Guenter Knauf [Thu, 26 Jul 2012 00:49:39 +0000 (02:49 +0200)]
Changed Windows IDN text to 'WinIDN'.
Synced the output to the same short form as we now use for
Windows SSL (WinSSL).
Nick Zitzmann [Tue, 17 Jul 2012 02:20:57 +0000 (20:20 -0600)]
darwinssl: fixed freeze involving the multi interface
Previously the curl_multi interface would freeze if darwinssl was
enabled and at least one of the handles tried to connect to a Web site
using HTTPS. Removed the "wouldblock" state darwinssl was using because
I figured out a solution for our "would block but in which direction?"
dilemma.
Guenter Knauf [Wed, 25 Jul 2012 11:16:22 +0000 (13:16 +0200)]
Added support for tls-srp to MinGW builds.
Daniel Stenberg [Mon, 23 Jul 2012 22:29:39 +0000 (00:29 +0200)]
curl_easy_setopt: fix typo
Reported by: Santhana Todatry
Daniel Stenberg [Sun, 22 Jul 2012 20:38:38 +0000 (22:38 +0200)]
keepalive: multiply value for OS-specific units
DragonFly uses milliseconds, while our API and Linux use full seconds.
Reported by: John Marino
Bug: http://curl.haxx.se/bug/view.cgi?id=3546257
Kamil Dudka [Fri, 20 Jul 2012 11:33:58 +0000 (13:33 +0200)]
http: print reason phrase from HTTP status line on error
Bug: https://bugzilla.redhat.com/676596
Kamil Dudka [Sat, 21 Jul 2012 23:55:45 +0000 (01:55 +0200)]
tool_operate: fix misplaced initialization of orig_noprogress
... and orig_isatty which caused --silent to be entirely ignored in case
the standard output was redirected to a file!
Anton Yabchinskiy [Sat, 21 Jul 2012 10:40:25 +0000 (14:40 +0400)]
Client's "qop" value should not be quoted (RFC2617, section 3.2.2).
Guenter Knauf [Sat, 21 Jul 2012 07:02:03 +0000 (09:02 +0200)]
Fixed typo.
Daniel Stenberg [Sun, 15 Jul 2012 22:18:37 +0000 (00:18 +0200)]
make: make distclean work again
The clean-local hook needed some polish to make sure make distclean
works. Added comment describing why.
Daniel Stenberg [Sun, 15 Jul 2012 20:59:09 +0000 (22:59 +0200)]
test Makefile: only feature 'unit' once in the list of dirs
Dan Fandrich [Fri, 20 Jul 2012 19:02:58 +0000 (21:02 +0200)]
Fixed some typos in documentation
Guenter Knauf [Fri, 20 Jul 2012 15:22:10 +0000 (17:22 +0200)]
Fixed CR issue with Win32 version on MSYS.
Previous fix didnt work on Linux ...
Guenter Knauf [Fri, 20 Jul 2012 13:39:28 +0000 (15:39 +0200)]
Fixed CR issue with Win32 version on MSYS.
Guenter Knauf [Fri, 20 Jul 2012 13:30:41 +0000 (15:30 +0200)]
Fixed MSYS <-> Windows path convertion.
Replaced the Windows real path from mount hack with a more
reliable and simpler hack: the MSYS shell has a builtin pwd
which understands a -W option which does convertion to Windows
paths. Tested and confirmed that this works on all MSYS versions
I have back to a 3 year old one.
Guenter Knauf [Thu, 19 Jul 2012 14:31:08 +0000 (16:31 +0200)]
Follow-up fix to detect SSL libs with MinGW.
1) the check for winssl needs to come before nss check
2) the SSL checks must begin with a new if or else we will
never find any SSL lib with MinGW.
Guenter Knauf [Tue, 17 Jul 2012 18:35:23 +0000 (20:35 +0200)]
Tell git to not convert configure-related files.
Guenter Knauf [Tue, 17 Jul 2012 05:13:58 +0000 (07:13 +0200)]
Trial to teach runtests.pl about WinSSL.
Guenter Knauf [Tue, 17 Jul 2012 04:55:38 +0000 (06:55 +0200)]
Fixed warning 'uninitialized value in numeric gt'.
This is a MSYS/MinGW-only warning; full warning text is:
Use of uninitialized value in numeric gt (>) at ../../curl/tests/runtests.pl line 2227.