Daniel Stenberg [Thu, 11 Nov 2010 13:51:39 +0000 (14:51 +0100)]
ip_version: moved to connection struct
The IP version choice was previously only in the UserDefined struct
within the SessionHandle, but since we sometimes alter that option
during a request we need to have it on a per-connection basis.
I also moved more "init conn" code into the allocate_conn() function
which is designed for that purpose more or less.
Yang Tse [Thu, 11 Nov 2010 11:32:06 +0000 (12:32 +0100)]
buildconf: MAC OS X requires libtool version 1.5.26 or newer
MAC OS X requires libtool version 1.5.26 or newer, otherwise
configure will mishandle *.dSYM directories when it runs.
Yang Tse [Thu, 11 Nov 2010 11:11:19 +0000 (12:11 +0100)]
configure: remove temporary autobuilds exercising of xattr function tests
Yang Tse [Wed, 10 Nov 2010 18:05:18 +0000 (19:05 +0100)]
configure: use autobuilds to temporarily exercise xattr function tests
Yang Tse [Wed, 10 Nov 2010 17:39:44 +0000 (18:39 +0100)]
xattr: portability fix
Yang Tse [Wed, 10 Nov 2010 17:26:21 +0000 (18:26 +0100)]
curl-functions: provide xattr function tests that also check number of arguments
Daniel Stenberg [Wed, 10 Nov 2010 14:36:42 +0000 (15:36 +0100)]
test1120: verify FTP response 421
curl mustn't try to use the control connection after the 421 is received
Daniel Stenberg [Wed, 10 Nov 2010 14:36:28 +0000 (15:36 +0100)]
ftpserver.pl: spellfix comment
Rutger Hofman [Wed, 10 Nov 2010 14:08:18 +0000 (15:08 +0100)]
TFTP: resend the correct data
I found a bug in tftp_tx() in tftp.c. If a data resend is done after
reception of an ACK/OACK, the call to sendto is wrong.
Stefan Tomanek [Sun, 7 Nov 2010 15:54:49 +0000 (16:54 +0100)]
write extended attributes by using fsetxattr
Instead of reopening the downloaded file, fsetxattr uses the (already
open) file descriptor to attach extended attributes. This makes the
procedure more robust against errors caused by moved or deleted files.
Dan Fandrich [Wed, 10 Nov 2010 02:47:16 +0000 (18:47 -0800)]
Check for getinfo errors before setting attributes
Kamil Dudka [Tue, 9 Nov 2010 16:04:04 +0000 (17:04 +0100)]
ftp: treat server's response 421 as CURLE_OPERATION_TIMEDOUT
Bug: https://bugzilla.redhat.com/650255
Reported by: Simon H.
Daniel Stenberg [Tue, 9 Nov 2010 13:20:23 +0000 (14:20 +0100)]
symbols-in-version: add CURL_SOCKET_BAD
I also documented the filtering logic in the symbol-scan.pl function to
clarify why not all CURL_* symbols are included.
Yang Tse [Tue, 9 Nov 2010 00:40:25 +0000 (01:40 +0100)]
serial number bump
Kamil Dudka [Thu, 4 Nov 2010 20:44:02 +0000 (21:44 +0100)]
ftp: close connection as soon as ABOR has been sent
... and do not send ABOR unless really necessary.
Bug: https://bugzilla.redhat.com/649347
Reported by: Simon H.
Daniel Stenberg [Mon, 8 Nov 2010 10:20:39 +0000 (11:20 +0100)]
RELEASE-NOTES: synced with
fc6c4c10f9faab08
I also recounted and updated the command line and libcurl options.
Daniel Stenberg [Mon, 8 Nov 2010 10:20:17 +0000 (11:20 +0100)]
help: indent the --xattr option like the others
Daniel Stenberg [Mon, 8 Nov 2010 09:56:03 +0000 (10:56 +0100)]
curl.1: --resolve documented
Daniel Stenberg [Mon, 8 Nov 2010 08:53:35 +0000 (09:53 +0100)]
CURLOPT_RESOLVE: documented
Daniel Stenberg [Mon, 8 Nov 2010 08:46:48 +0000 (09:46 +0100)]
CURLOPT_USE_SSL: move from FTP options to connection options
Daniel Stenberg [Mon, 8 Nov 2010 08:35:47 +0000 (09:35 +0100)]
xattr-check: correct the comment as well
Daniel Stenberg [Mon, 8 Nov 2010 08:10:33 +0000 (09:10 +0100)]
xattr: use const char * for const strings
Daniel Stenberg [Mon, 8 Nov 2010 08:08:26 +0000 (09:08 +0100)]
setxattr: fix the checks
My copy and paste job was a little too much copy and I missed to adjust
it properly to sys/xattr.h all over and this is a fix to cure that.
Daniel Stenberg [Fri, 5 Nov 2010 21:31:40 +0000 (22:31 +0100)]
CURLOPT_RESOLVE: added
CURLOPT_RESOLVE is a new option that sends along a curl_slist with
name:port:address sets that will populate the DNS cache with entries so
that request can be "fooled" to use another host than what otherwise
would've been used. Previously we've encouraged the use of Host: for
that when dealing with HTTP, but this new feature has the added bonus
that it allows the name from the URL to be used for TLS SNI and server
certificate name checks as well.
This is a first change. Surely more will follow to make it decent.
Yang Tse [Mon, 8 Nov 2010 03:03:11 +0000 (04:03 +0100)]
fix compiler warning
Dan Fandrich [Sun, 7 Nov 2010 07:13:46 +0000 (00:13 -0700)]
Added os-specific.c and xattr.c to the Symbian build files
Yang Tse [Sun, 7 Nov 2010 03:05:52 +0000 (04:05 +0100)]
xattr: fix VisualStudio builds
Yang Tse [Sun, 7 Nov 2010 02:39:31 +0000 (03:39 +0100)]
fix snapshot generation
Daniel Stenberg [Fri, 5 Nov 2010 21:26:54 +0000 (22:26 +0100)]
--libcurl: simplify output
Removed the code that was needed for libcurl before 7.19.0 which now is
more than two years old.
Simplified the top comment and corrected the URL.
Alfred Gebert [Fri, 5 Nov 2010 14:53:41 +0000 (15:53 +0100)]
LDAP: detect non-binary attributes properly
If the query result has a binary attribute, the binary attribute is
base64 encoded. But all following non binary attributes are also base64
encoded which is wrong.
This is a test (LDAP server is public).
curl
ldap://x500.bund.de:389/o=Bund,c=DE?userCertificate,certificateSerialNumber?sub
?cn=*Woehleke*
Daniel Stenberg [Fri, 5 Nov 2010 13:07:38 +0000 (14:07 +0100)]
xattr: add configure check and #ifdefs
setxattr is a glibc call to set extended attributes, so configure now
checks for it and the code is adapted to only build when the
functionality is present.
Stefan Tomanek [Fri, 5 Nov 2010 11:39:46 +0000 (12:39 +0100)]
save metadata to extended file attributes
It is often convinient to track back the source of a once downloaded
file; this patch makes curl store the source URL and other metadata
alongside the retrieved file by using the extended attributes (if
supported by the file system and enabled by --xattr).
Daniel Stenberg [Fri, 5 Nov 2010 10:19:21 +0000 (11:19 +0100)]
test: remove test 580
Test 580 is removed again for two reasons:
1) Some compilers aren't satisfied by just a data variable called 'test'
when first.o wants a function called 'test'. The Solaris compiler says
"ld: warning: symbol `test' has differing types:" while the AIX compiler
downright rejects it.
2) Test case 1119 that was added after this test is way more complete
and cover everything test 580 does and more without introducing the same
problems.
Daniel Stenberg [Fri, 5 Nov 2010 09:24:22 +0000 (10:24 +0100)]
Daniel Stenberg [Thu, 4 Nov 2010 22:09:08 +0000 (23:09 +0100)]
TODO-RELEASE: "TLS SNI use Host:" is done
262 - Manual setting of TLS Server Name Indication - use Host:
Daniel Stenberg [Thu, 4 Nov 2010 21:55:45 +0000 (22:55 +0100)]
RELEASE-NOTES: synced with
7b823badbcab9d330
Daniel Stenberg [Thu, 4 Nov 2010 18:39:15 +0000 (19:39 +0100)]
curl.1: added a few missing exit codes
Daniel Stenberg [Thu, 4 Nov 2010 14:18:35 +0000 (15:18 +0100)]
certcheck: use the custom Host: name for checks
If you use a custom Host: name in a request to a SSL server, libcurl
will now use that given name when it verifies the server certificate to
be correct rather than using the host name used in the actual URL.
Daniel Stenberg [Thu, 4 Nov 2010 14:16:27 +0000 (15:16 +0100)]
SNI: simplify the custom host name use
The redirect check is already done at the position where the customhost
field is assigned so there's no point in doing that a second time.
Daniel Stenberg [Thu, 4 Nov 2010 13:58:15 +0000 (14:58 +0100)]
host: get the custom Host: name more genericly
When given a custom host name in a Host: header, we can use it for
several different purposes other than just cookies, so we rename it and
use it for SSL SNI etc.
Hongli Lai (Phusion) [Thu, 4 Nov 2010 11:54:58 +0000 (12:54 +0100)]
SNI: set name to custom Host header
OpenSSL SNI host name should be set to the custom Host header, if the
user provided one.
Daniel Stenberg [Thu, 4 Nov 2010 10:42:27 +0000 (11:42 +0100)]
fopen.c: re-indented, fixed previous mistake
I've made the code intended using curl-style now to look more like other
examples.
My previous "fix" was a bit too invasive but is now fixed again.
Daniel Stenberg [Thu, 4 Nov 2010 10:37:23 +0000 (11:37 +0100)]
multi use: call multi_perform even on select() timeouts
Daniel Stenberg [Thu, 4 Nov 2010 09:32:38 +0000 (10:32 +0100)]
example: add smtp-multi.c
An example application source code sending SMTP mail with the multi
interface. It is based on the code Alona Rossen provided, which in turn
is based on existing example/test code, and I converted it even more
into a decent example with a fair multi API use, put the info required
to edit at the top and I added some comments.
Daniel Stenberg [Thu, 4 Nov 2010 08:49:02 +0000 (09:49 +0100)]
CURLOPT_NOSIGNAL: add blurb about SIGPIPE
Dan Fandrich [Thu, 4 Nov 2010 02:03:02 +0000 (19:03 -0700)]
Allow building test 580 out of tree
Daniel Stenberg [Wed, 3 Nov 2010 10:25:06 +0000 (11:25 +0100)]
dist: add symbol-scan.pl to the tarball
Daniel Stenberg [Wed, 3 Nov 2010 10:23:54 +0000 (11:23 +0100)]
test1119: verify symbols-in-versions
Daniel Stenberg [Wed, 3 Nov 2010 10:22:46 +0000 (11:22 +0100)]
runtests: allow tests written as perl scripts
If a command is set type="perl", it can now specify a perl program that will
be run instead of an ordinary curl or built tool.
A perl test automatically disables memory and valgrind debugging.
Daniel Stenberg [Wed, 3 Nov 2010 10:20:19 +0000 (11:20 +0100)]
symbol-scan: verifies symbols-in-versions
This new script scans for all enums and #defines used by the curl/curl.h
and curl/multi.h headers. Then it reads all symbols mentioned in
symbols-in-vesions and make sure that there's no entries missing in
there. It then proceeds to verify that the entries that
symbols-in-vesions mentions but aren't found in the sources are truly
documented as removed.
This script is used in the new test case 1119
Daniel Stenberg [Wed, 3 Nov 2010 09:04:23 +0000 (10:04 +0100)]
symbols-in-versions: added 119 missing symbols
I've developed a script I call symbol-scan.pl that scans the curl.h and
multi.h header files and compare the symbols it finds in there with the
symbols symbols-in-versions documents and outputs a report on the
differences. Using this I've dug through the history to fill up
symbols-in-versions with all the symbols my script found mismatches for.
I will commit symbol-scan.pl separatly and think of a way to put it to
use in the build/tests so that we from now on will get this in-sync
check automatically.
Dan Fandrich [Wed, 3 Nov 2010 06:17:36 +0000 (23:17 -0700)]
Added mk580.pl to the tar ball
Daniel Stenberg [Tue, 2 Nov 2010 22:35:12 +0000 (23:35 +0100)]
symbols-in-versions: added missing symbols
Daniel Stenberg [Tue, 2 Nov 2010 22:34:37 +0000 (23:34 +0100)]
ignore: lib580.c is generated by mk580.pl
Daniel Stenberg [Tue, 2 Nov 2010 21:27:33 +0000 (22:27 +0100)]
test: added test 580 - verifies symbols-in-versions
The new perl script mk580.pl generates a C table in a fresh source file
named lib580.c and if that compiles fine we know that the file
docs/libcurl/symbols-in-versions at least doesn't include any symbols
that are misspelled.
An additional feature would be to somehow scan curl/curl.h and compare
with symbols-in-versions to see if there are symbols missing.
Daniel Stenberg [Tue, 2 Nov 2010 21:01:01 +0000 (22:01 +0100)]
spellfix: CURLOPT_TFTP_BLKSIZE it is
Kamil Dudka [Wed, 27 Oct 2010 08:54:35 +0000 (10:54 +0200)]
ftp: prevent server from hanging on closed data connection
Some FTP servers (e.g. Pure-ftpd) end up hanging if we close the data
connection before transferring all the requested data. If we send ABOR
in that case, it prevents the server from hanging.
Bug: https://bugzilla.redhat.com/643656
Reported by: Pasi Karkkainen, Patrick Monnerat
Dan Fandrich [Thu, 28 Oct 2010 22:47:57 +0000 (15:47 -0700)]
Removed a leftover mention of FTP in an error message
Dan Fandrich [Thu, 21 Oct 2010 21:33:35 +0000 (14:33 -0700)]
Removed the native Makefile.riscos files
These haven't worked in at least 8 years due to missing source
files, and most active RiscOS developers these days apparently
cross-compile anyway.
Signed-off-by: James Bursa <james@zamez.org>
Dan Fandrich [Thu, 21 Oct 2010 01:15:14 +0000 (18:15 -0700)]
Lightened the stack in wc_statemach to permit deeper recursion
Also, added a few hints to help compilers to perform tail call
recursion optimization.
Daniel Stenberg [Wed, 20 Oct 2010 21:31:34 +0000 (23:31 +0200)]
SSH: use libssh2_session_handshake()
In libssh2 1.2.8, libssh2_session_handshake() replaces
libssh2_session_startup() to fix the previous portability problem with
the socket type that was too small for win64 and thus easily could cause
crashes and more.
Daniel Stenberg [Wed, 20 Oct 2010 21:29:37 +0000 (23:29 +0200)]
SSH: avoid using the libssh2_ prefix
It is a bad idea to use the public prefix used by another library and
now we realize that libssh2 introduces a symbol in the upcoming version
1.2.8 that conflicts with our static function named libssh2_free.
Daniel Stenberg [Wed, 20 Oct 2010 12:57:43 +0000 (14:57 +0200)]
formdata: provide error message
When failing to build form post due to an error, the code now does a
proper failf(). Previously libcurl would report an error like "failed
creating formpost data" when a file wasn't possible to open which was
not easy for users to figure out.
I also lower cased a function name to be named more curl-style and
removed some unnecessary code.
Daniel Stenberg [Tue, 19 Oct 2010 18:20:06 +0000 (20:20 +0200)]
URL-parsing: consider ? a divider
The URL parser got a little stricter as it now considers a ? to be a
host name divider so that the slightly sloppier URLs work too. The
problem that made me do this change was the reported problem with an URL
like: www.example.com?email=name@example.com This form of URL is not
really a legal URL (due to the missing slash after the host name) but is
widely accepted by all major browsers and libcurl also already accepted
it, it was just the '@' letter that triggered the problem now.
The side-effect of this change is that now libcurl no longer accepts the
? letter as part of user-name or password when given in the URL, which
it used to accept (and is tested in test 191). That letter is however
mentioned in RFC3986 to be required to be percent encoded since it is
used as a divider.
Bug: http://curl.haxx.se/bug/view.cgi?id=
3090268
Daniel Stenberg [Tue, 19 Oct 2010 15:50:10 +0000 (17:50 +0200)]
curl_easy_setopt.3: spellfix
Daniel Stenberg [Tue, 19 Oct 2010 15:48:51 +0000 (17:48 +0200)]
curl_easy_setopt.3: CURLOPT_USE_SSL is not just for FTP
It is for FTP, SMTP, POP3, IMAP at least.
Daniel Stenberg [Mon, 18 Oct 2010 14:20:13 +0000 (16:20 +0200)]
krb4.h: removed unused prototypes
Daniel Stenberg [Mon, 18 Oct 2010 08:00:37 +0000 (10:00 +0200)]
krb4: make a few functions static
Daniel Stenberg [Sun, 17 Oct 2010 16:56:30 +0000 (18:56 +0200)]
TODO-RELEASE: cleanup for 7.21.3 works
"SFTP resume with 4GB file does not work" is now removed as I'm sure
this is really a libssh2 bug and not a libcurl bug.
7.21.2 is released already
Daniel Stenberg [Sun, 17 Oct 2010 16:55:36 +0000 (18:55 +0200)]
RELEASE-NOTES: sync with
09a2d93a0f17ca
Daniel Stenberg [Sun, 17 Oct 2010 16:50:38 +0000 (18:50 +0200)]
http_chunks: remove debug output
Accidentally left in there during my previous debugging of this
Daniel Stenberg [Thu, 14 Oct 2010 20:33:20 +0000 (22:33 +0200)]
Curl_setopt: disallow CURLOPT_USE_SSL without SSL support
In order to avoid for example the pingpong protocols to issue STARTTLS
(or equivalent) even though there's no SSL support built-in.
Reported by: Sune Ahlgren
Bug: http://curl.haxx.se/mail/archive-2010-10/0045.html
Daniel Stenberg [Thu, 14 Oct 2010 20:17:32 +0000 (22:17 +0200)]
options: check for features for some options
Some options, such as the automatic decompression and some SSL related
ones now will bail out if the underlying libcurl doesn't have support
for the particular feature needed.
Dan Fandrich [Thu, 14 Oct 2010 19:45:01 +0000 (12:45 -0700)]
Fixed the IPv6 host address in test1203
Reported by: Christian Weisgerber
Bug: http://curl.haxx.se/bug/view.cgi?id=
3087479
Daniel Stenberg [Thu, 14 Oct 2010 12:06:07 +0000 (14:06 +0200)]
curl_easy_setopt.3: clarify CURLOPT_CRLF
The option takes a parameter that should be 1 or 0 to enable or disable
the feature.
URL: http://curl.haxx.se/bug/view.cgi?id=
3086428
Guenter Knauf [Wed, 13 Oct 2010 23:22:40 +0000 (01:22 +0200)]
Some more small Watcom makefile fixes.
Guenter Knauf [Wed, 13 Oct 2010 22:57:36 +0000 (00:57 +0200)]
Added --noconfigure switch to testcurl.pl.
Guenter Knauf [Wed, 13 Oct 2010 15:29:47 +0000 (17:29 +0200)]
Modified Watcom makefiles to work on Linux too.
Guenter Knauf [Wed, 13 Oct 2010 14:38:24 +0000 (16:38 +0200)]
Added MingW32 rtmp target; changed Watcom targets.
Modified Watcom targets to avoid backslashs so that they can
work on Linux too.
Daniel Stenberg [Tue, 12 Oct 2010 22:26:19 +0000 (00:26 +0200)]
gitignore: ignore Makefile.vc10.dist made by maketgz
Daniel Stenberg [Tue, 12 Oct 2010 22:21:39 +0000 (00:21 +0200)]
curlver.h: start over at 7.21.3
Daniel Stenberg [Tue, 12 Oct 2010 22:21:00 +0000 (00:21 +0200)]
RELEASE-NOTES: start over towards 7.21.3
Daniel Stenberg [Tue, 12 Oct 2010 22:20:37 +0000 (00:20 +0200)]
THANKS: added contributors from 7.21.2
Daniel Stenberg [Tue, 12 Oct 2010 21:28:44 +0000 (23:28 +0200)]
RELEASE-NOTES: synced with
ecd624b8e774a85
Julien Chaffraix [Tue, 12 Oct 2010 15:27:56 +0000 (08:27 -0700)]
CMake: Build fix.
Do not match the trailing '\n' in the regular expression as this would
make us dump a ) parenthesis on a new line.
This fixes the following error:
would get transformed into:
)
Bug: http://curl.haxx.se/mail/lib-2010-10/0065.html
Reported by: Dimitre Dimitrov
Daniel Stenberg [Thu, 16 Sep 2010 21:11:48 +0000 (23:11 +0200)]
header_callback: strip off file path separated with backslashes
If the filename contains a backslash, only use filename portion. The
idea is that even systems that don't handle backslashes as path
separators probably want that path removed for convenience.
This flaw is considered a security problem, see the curl security
vulnerability http://curl.haxx.se/docs/adv_20101013.html
Dan Fandrich [Tue, 12 Oct 2010 19:12:40 +0000 (12:12 -0700)]
Get the curl source files for Amiga from Makefile.inc
This is similar to how it's done in the lib directory.
The Amiga build appears to have been broken for a year because
of a missing homedir.c
Dan Fandrich [Tue, 12 Oct 2010 18:22:18 +0000 (11:22 -0700)]
Added section on server-supplied names to security considerations
Guenter Knauf [Tue, 12 Oct 2010 13:31:41 +0000 (15:31 +0200)]
Fixed Watcom makefile.
Guenter Knauf [Tue, 12 Oct 2010 04:55:01 +0000 (06:55 +0200)]
Added build bits for librtmp / libssh2 to Watcom makefiles.
Guenter Knauf [Tue, 12 Oct 2010 02:31:56 +0000 (04:31 +0200)]
Added build bits for librtmp to NetWare makefiles.
Daniel Stenberg [Mon, 11 Oct 2010 22:01:40 +0000 (00:01 +0200)]
SFTP: more ignoring negative file sizes
As the change in
5f0ae7a0626cbe709 added a precaution against negative
file sizes that for some reason managed to get returned, this change now
introduces the same check at the second place in the code where the file
size from the libssh2 stat call is used.
This check might not be suitable for a 32 bit curl_off_t, but libssh2.h
assumes long long to work and to be 64 bit so I believe such a small
curl_off_t will be very unlikely to occur in the wild.
Daniel Stenberg [Mon, 11 Oct 2010 19:31:12 +0000 (21:31 +0200)]
SMTP: debug output for no known auth mechanisms supported
... and some minor source code whitespace edits
Daniel Stenberg [Mon, 11 Oct 2010 12:32:37 +0000 (14:32 +0200)]
test: urlglob error messages have no extra newline anymore
Guenter Knauf [Sun, 10 Oct 2010 22:39:24 +0000 (00:39 +0200)]
Added build bits for librtmp to MingW32 makefiles.
Daniel Stenberg [Fri, 8 Oct 2010 21:20:26 +0000 (23:20 +0200)]
RELEASE-NOTES: synced with
61f4cdb73ae4
Daniel Stenberg [Fri, 8 Oct 2010 21:12:34 +0000 (23:12 +0200)]
globbing: fix crash on unballanced open brace
Having an open brace without a closing brace caused a segfault.
Having a closing brace too many caused a silent error to occur, which
caused curl to bail out and return an error code but no error message
was shown. It does now!
All error message outputs no longer wrongly get _two_ newlines written
after the error message.
Reported by: Vlad Ureche
Bug: http://curl.haxx.se/bug/view.cgi?id=
3083942
Dan Locks [Thu, 7 Oct 2010 16:05:36 +0000 (18:05 +0200)]
libcurl.m4: AC_PATH_PROG fixes
The invocation of autoconf's AC_PATH_PROG( ) is not quite right for
finding curl-config. This fix corrects the negative case (where
curl-config is not found).
Daniel Stenberg [Wed, 6 Oct 2010 18:03:13 +0000 (20:03 +0200)]
FAQ: added "How do I submit my patch?"
Daniel Stenberg [Tue, 5 Oct 2010 13:00:19 +0000 (15:00 +0200)]
examples: use example.com in example URLs