Commit Graph

13573 Commits

Author SHA1 Message Date
Dan Fandrich
091c52fef7 Use the 3-argument open for compatibility with older perls 2010-11-19 15:27:28 -08:00
Matthias Bolte
a83870ef9d Detect socket errors in GnuTLS on Windows
On Windows, translate WSAGetLastError() to errno values as GNU
TLS does it internally, too. This is necessary because send() and
recv() on Windows don't set errno when they fail but GNU TLS
expects a proper errno value.

Bug: http://curl.haxx.se/bug/view.cgi?id=3110991
2010-11-19 13:34:07 -08:00
Yang Tse
a768e39b2d test servers: fix strict aliasing compiler warnings 2010-11-19 19:20:38 +01:00
Yang Tse
1c4fa240be configure: use autobuilds to temporarily verify strict aliasing warnings.
Temporarily, When cross-compiling with gcc 3.0 or later, enable strict aliasing
rules and warnings. Given that cross-compiled targets autobuilds do not run the
2010-11-18 17:12:15 +01:00
Julien Chaffraix
5046dd02b9 configure: Prevent link errors with --librtmp.
If --librtmp was specified but pkg-config could not find the librtmp
file, we would have undefined symbols when linking curl.

We prevent this error by disabling this case as suggested on the mailing
list.
2010-11-17 21:16:45 -08:00
Daniel Stenberg
4d6c0bdf74 RELEASE-NOTES: synced with cbf4961bf3 2010-11-15 00:07:55 +01:00
Daniel Stenberg
cbf4961bf3 gnutls->handshake: improved timeout handling
When no timeout is set, we call the socket_ready function with a timeout
value of 0 during handshake, which makes it loop too much/fast in this
function. It also made this function return CURLE_OPERATION_TIMEDOUT
wrongly on a slow handshake.

However, the particular bug report that highlighted this problem is not
solved by this fix, as this fix only makes the more proper error get
reported instead.

Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=594150
Reported by: Johannes Ernst
2010-11-14 12:42:29 +01:00
Julien Chaffraix
add5766dd4 urldata: Capitalize enum protect_level values.
This makes it easier to spot the enum values from the variables.
Removed some unneeded DEBUGASSERT added in the previous commit.
2010-11-13 14:42:34 -08:00
Julien Chaffraix
8d59d69449 security: tighten enum protection_level usage.
While changing Curl_sec_read_msg to accept an enum protection_level
instead of an int, I went ahead and fixed the usage of the associated
fields.

Some code was assuming that prot_clear == 0. Fixed those to use the
proper value. Added assertions prior to any code that would set the
protection level.
2010-11-13 14:12:43 -08:00
Yang Tse
465865c3cb configure: fix autoconf 2.68 warning: no AC_LANG_SOURCE call detected in body 2010-11-13 04:15:48 +01:00
Daniel Stenberg
c539b83138 curl.1: "a file", not an 2010-11-12 23:56:09 +01:00
Daniel Stenberg
0a2edfc348 version-check.pl: display version number for symbols
This script is the start of a helper tool that scans a source code and
outputs the most recent libcurl version it finds symbols for. Meaning
that if there's no conditions in the code, that's the earliest libcurl
version the scanned code requires.

It is not added to the Makefile.am yet as it is still a bit crude, but
I'm committing it to keep it and allow us to work on it.
2010-11-12 23:29:29 +01:00
Adam Light
64520e43d4 Makefile.vc6: fixed the xattr.c compile 2010-11-12 23:29:29 +01:00
Julien Chaffraix
c79f816c32 krb5: Use GSS_ERROR to check for error.
This is the advised way of checking for errors in the GSS-API RFC.
Also added some '\n' to the error message so that they are not mixed
with other outputs.
2010-11-12 08:24:32 -08:00
Julien Chaffraix
c8a7df108f security: Pass the right parameter to init.
init is expecting app_data. Passing it the struct connecdata would make
us crash later.
2010-11-12 08:24:32 -08:00
Daniel Stenberg
8636742256 HTTP Auth: Add CURLAUTH_ONLY
This is a meta symbol. OR this value together with a single specific
auth value to force libcurl to probe for un-restricted auth and if not,
only that single auth algorithm is acceptable.

For example you can use CURLAUTH_DIGEST|CURLAUTH_ONLY to make libcurl
first probe for what method to use, but yet only consider Digest to be
acceptable.

Using _only_ CURLAUTH_DIGEST without the CURLAUTH_ONLY field, will make
libcurl explicitly use Digest right away and not do any probing.
2010-11-11 16:44:50 +01:00
Daniel Stenberg
a1f32ffee5 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.
2010-11-11 15:16:21 +01:00
Yang Tse
fec5f03e22 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.
2010-11-11 12:35:12 +01:00
Yang Tse
2b2ac9068e configure: remove temporary autobuilds exercising of xattr function tests 2010-11-11 12:11:19 +01:00
Yang Tse
890425ecd7 configure: use autobuilds to temporarily exercise xattr function tests 2010-11-10 19:05:18 +01:00
Yang Tse
1df1032444 xattr: portability fix 2010-11-10 18:39:44 +01:00
Yang Tse
b1e4dce671 curl-functions: provide xattr function tests that also check number of arguments 2010-11-10 18:26:21 +01:00
Daniel Stenberg
0b20de0194 test1120: verify FTP response 421
curl mustn't try to use the control connection after the 421 is received
2010-11-10 15:36:42 +01:00
Daniel Stenberg
d596a523b9 ftpserver.pl: spellfix comment 2010-11-10 15:36:28 +01:00
Rutger Hofman
592df29f9c 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.
2010-11-10 15:08:18 +01:00
Stefan Tomanek
f1db21218b 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.
2010-11-10 10:43:05 +01:00
Dan Fandrich
892cacef43 Check for getinfo errors before setting attributes 2010-11-09 18:51:36 -08:00
Kamil Dudka
12b2412c52 ftp: treat server's response 421 as CURLE_OPERATION_TIMEDOUT
Bug: https://bugzilla.redhat.com/650255
Reported by: Simon H.
2010-11-09 18:13:20 +01:00
Daniel Stenberg
7d8343934b 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.
2010-11-09 14:20:23 +01:00
Yang Tse
7cebf22d57 serial number bump 2010-11-09 01:40:25 +01:00
Kamil Dudka
c6b97a8278 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.
2010-11-08 20:50:52 +01:00
Daniel Stenberg
f96a2641fc RELEASE-NOTES: synced with fc6c4c10f9
I also recounted and updated the command line and libcurl options.
2010-11-08 11:20:39 +01:00
Daniel Stenberg
fc6c4c10f9 help: indent the --xattr option like the others 2010-11-08 11:20:17 +01:00
Daniel Stenberg
152578fb33 curl.1: --resolve documented 2010-11-08 10:56:03 +01:00
Daniel Stenberg
0a41318f1d CURLOPT_RESOLVE: documented 2010-11-08 09:53:35 +01:00
Daniel Stenberg
4bde456f73 CURLOPT_USE_SSL: move from FTP options to connection options 2010-11-08 09:46:48 +01:00
Daniel Stenberg
689ee8345c xattr-check: correct the comment as well 2010-11-08 09:35:47 +01:00
Daniel Stenberg
5d4355f19b xattr: use const char * for const strings 2010-11-08 09:10:33 +01:00
Daniel Stenberg
710ecb6946 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.
2010-11-08 09:08:26 +01:00
Daniel Stenberg
1b24b89cca 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.
2010-11-08 08:56:21 +01:00
Yang Tse
dc3e7df1c9 fix compiler warning 2010-11-08 04:03:11 +01:00
Dan Fandrich
1171bc5c8a Added os-specific.c and xattr.c to the Symbian build files 2010-11-07 00:13:46 -07:00
Yang Tse
3adb68c605 xattr: fix VisualStudio builds 2010-11-07 04:05:52 +01:00
Yang Tse
34498c13be fix snapshot generation 2010-11-07 03:39:31 +01:00
Daniel Stenberg
517d3eb0a4 --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.
2010-11-05 22:26:54 +01:00
Alfred Gebert
6a07e704ca 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*
2010-11-05 15:53:41 +01:00
Daniel Stenberg
95719fbea6 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.
2010-11-05 14:07:38 +01:00
Stefan Tomanek
fbf51696ef 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).
2010-11-05 13:59:10 +01:00
Daniel Stenberg
1786950759 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.
2010-11-05 11:26:26 +01:00
Daniel Stenberg
87374a47c9 Revert: use Host: name for SNI and cert name checks
This reverts commit b0fd03f5b8,
4b2fbe1e97, afecd1aa13, 68cde058f6
2010-11-05 10:25:58 +01:00