platform/upstream/curl.git
11 years agocurl.1: fix typo in --xattr description
Daniel Stenberg [Tue, 25 Jun 2013 08:41:16 +0000 (10:41 +0200)]
curl.1: fix typo in --xattr description

Bug: http://curl.haxx.se/bug/view.cgi?id=1252
Reported-by: Jean-Noël Rouvignac
11 years agoRELEASE-NOTES: synced with 365c5ba39591
Daniel Stenberg [Tue, 25 Jun 2013 08:35:21 +0000 (10:35 +0200)]
RELEASE-NOTES: synced with 365c5ba39591

The 10 first bug fixes for the pending release...

11 years agoformpost: better random boundaries
Daniel Stenberg [Mon, 24 Jun 2013 20:24:35 +0000 (22:24 +0200)]
formpost: better random boundaries

When doing multi-part formposts, libcurl used a pseudo-random value that
was seeded with time(). This turns out to be bad for users who formpost
data that is provided with users who then can guess how the boundary
string will look like and then they can forge a different formpost part
and trick the receiver.

My advice to such implementors is (still even after this change) to not
rely on the boundary strings being cryptographically strong. Fix your
code and logic to not depend on them that much!

I moved the Curl_rand() function into the sslgen.c source file now to be
able to take advantage of the SSL library's random function if it
provides one. If not, try to use the RANDOM_FILE for seeding and as a
last resort keep the old logic, just modified to also add microseconds
which makes it harder to properly guess the exact seed.

The formboundary() function in formdata.c is now using 64 bit entropy
for the boundary and therefore the string of dashes was reduced by 4
letters and there are 16 hex digits following it. The total length is
thus still the same.

Bug: http://curl.haxx.se/bug/view.cgi?id=1251
Reported-by: "Floris"
11 years agoprintf: make sure %x are treated unsigned
Daniel Stenberg [Tue, 25 Jun 2013 07:52:06 +0000 (09:52 +0200)]
printf: make sure %x are treated unsigned

When using %x, the number must be treated as unsigned as otherwise it
would get sign-extended on for example 64bit machines and do wrong
output. This problem showed when doing printf("%08x", 0xffeeddcc) on a
64bit host.

11 years agotests: add test1395 to the tarball
Daniel Stenberg [Mon, 24 Jun 2013 07:25:58 +0000 (09:25 +0200)]
tests: add test1395 to the tarball

11 years agoSIGPIPE: don't use 'data' in sigpipe restore
Daniel Stenberg [Mon, 24 Jun 2013 07:02:19 +0000 (09:02 +0200)]
SIGPIPE: don't use 'data' in sigpipe restore

Follow-up fix from 7d80ed64e43515.

The SessionHandle may not be around to use when we restore the sigpipe
sighandler so we store the no_signal boolean in the local struct to know
if/how to restore.

11 years agoTODO: 1.8 Modified buffer size approach
Daniel Stenberg [Sun, 23 Jun 2013 20:48:39 +0000 (22:48 +0200)]
TODO: 1.8 Modified buffer size approach

Thoughts around buffer sizes and what might be possible to do...

11 years agoc-ares: improve error message on failed resolve
Daniel Stenberg [Sun, 23 Jun 2013 18:25:38 +0000 (20:25 +0200)]
c-ares: improve error message on failed resolve

When the c-ares based resolver backend failed to resolve a name, it
tried to show the name that failed from existing structs. This caused
the wrong output and shown hostname when for example --interface
[hostname] was used and that name resolving failed.

Now we use the hostname used in the actual resolve attempt in the error
message as well.

Bug: http://curl.haxx.se/bug/view.cgi?id=1191
Reported-by: Kim Vandry
11 years agoossl_recv: check for an OpenSSL error, don't assume
Daniel Stenberg [Sun, 23 Jun 2013 08:31:04 +0000 (10:31 +0200)]
ossl_recv: check for an OpenSSL error, don't assume

When we recently started to treat a zero return code from SSL_read() as
an error we also got false positives - which primarily looks to be
because the OpenSSL documentation is wrong and a zero return code is not
at all an error case in many situations.

Now ossl_recv() will check with ERR_get_error() to see if there is a
stored error and only then consider it to be a true error if SSL_read()
returned zero.

Bug: http://curl.haxx.se/bug/view.cgi?id=1249
Reported-by: Nach M. S.
Patch-by: Nach M. S.
11 years agoMerge branch 'master' of https://github.com/bagder/curl
Nick Zitzmann [Sat, 22 Jun 2013 21:16:05 +0000 (15:16 -0600)]
Merge branch 'master' of https://github.com/bagder/curl

11 years agodarwinssl: fix crash that started happening in Lion
Nick Zitzmann [Sat, 22 Jun 2013 21:13:36 +0000 (15:13 -0600)]
darwinssl: fix crash that started happening in Lion

Something (a recent security update maybe?) changed in Lion, and now it
has changed SSLCopyPeerTrust such that it may return noErr but also give
us a null trust, which caught us off guard and caused an eventual crash.

11 years agoSIGPIPE: ignored while inside the library
Daniel Stenberg [Sun, 10 Mar 2013 23:39:52 +0000 (00:39 +0100)]
SIGPIPE: ignored while inside the library

... and restore the ordinary handling again when it returns. This is
done for curl_easy_perform() and curl_easy_cleanup() only for now - and
only when built to use OpenSSL as backend as this is the known culprit
for the spurious SIGPIPEs people have received.

Bug: http://curl.haxx.se/bug/view.cgi?id=1180
Reported by: Lluís Batlle i Rossell

11 years agoKNOWN_BUGS: #83 unable to load non-default openssl engines
Daniel Stenberg [Sat, 22 Jun 2013 20:24:36 +0000 (22:24 +0200)]
KNOWN_BUGS: #83 unable to load non-default openssl engines

11 years agotest1396: invoke the correct test tool!
Daniel Stenberg [Sat, 22 Jun 2013 20:20:31 +0000 (22:20 +0200)]
test1396: invoke the correct test tool!

This erroneously run unit test 1310 instead of 1396!

11 years agotest1230: avoid using hard-wired port number
Kamil Dudka [Sat, 22 Jun 2013 20:12:49 +0000 (22:12 +0200)]
test1230: avoid using hard-wired port number

... to prevent failure when a non-default -b option is given

11 years agocurl-config.in: replace tabs by spaces
Kamil Dudka [Sat, 22 Jun 2013 20:08:42 +0000 (22:08 +0200)]
curl-config.in: replace tabs by spaces

11 years agodarwinssl: reform OS-specific #defines
Nick Zitzmann [Sat, 22 Jun 2013 18:23:26 +0000 (12:23 -0600)]
darwinssl: reform OS-specific #defines

This doesn't need to be in the release notes. I cleaned up a lot of the #if
lines in the code to use MAC_OS_X_VERSION_MIN_REQUIRED and
MAC_OS_X_VERSION_MAX_ALLOWED instead of checking for whether things like
__MAC_10_6 or whatever were defined, because for some SDKs Apple has released
they were defined out of place.

11 years agodocs: fix typo in curl_easy_getinfo manpage
Alessandro Ghedini [Sat, 22 Jun 2013 13:21:19 +0000 (15:21 +0200)]
docs: fix typo in curl_easy_getinfo manpage

11 years agodotdot: introducing dot file path cleanup
Daniel Stenberg [Sat, 15 Jun 2013 21:47:02 +0000 (23:47 +0200)]
dotdot: introducing dot file path cleanup

RFC3986 details how a path part passed in as part of a URI should be
"cleaned" from dot sequences before getting used. The described
algorithm is now implemented in lib/dotdot.c with the accompanied test
case in test 1395.

Bug: http://curl.haxx.se/bug/view.cgi?id=1200
Reported-by: Alex Vinnik
11 years agobump: start working towards what most likely will become 7.32.0
Daniel Stenberg [Sat, 22 Jun 2013 12:13:28 +0000 (14:13 +0200)]
bump: start working towards what most likely will become 7.32.0

11 years agoTHANKS: added 24 new contributors from the 7.31.0 release
Daniel Stenberg [Sat, 22 Jun 2013 11:52:27 +0000 (13:52 +0200)]
THANKS: added 24 new contributors from the 7.31.0 release

11 years agoRELEASE-NOTES: synced with 0de7249bb39a2 - 7.31.0
Daniel Stenberg [Sat, 22 Jun 2013 09:30:31 +0000 (11:30 +0200)]
RELEASE-NOTES: synced with 0de7249bb39a2 - 7.31.0

11 years agounit1396: unit tests to verify curl_easy_(un)escape
Daniel Stenberg [Sun, 19 May 2013 21:30:06 +0000 (23:30 +0200)]
unit1396: unit tests to verify curl_easy_(un)escape

11 years agoCurl_urldecode: no peeking beyond end of input buffer
Daniel Stenberg [Sun, 19 May 2013 21:24:29 +0000 (23:24 +0200)]
Curl_urldecode: no peeking beyond end of input buffer

Security problem: CVE-2013-2174

If a program would give a string like "%FF" to curl_easy_unescape() but
ask for it to decode only the first byte, it would still parse and
decode the full hex sequence. The function then not only read beyond the
allowed buffer but it would also deduct the *unsigned* counter variable
for how many more bytes there's left to read in the buffer by two,
making the counter wrap. Continuing this, the function would go on
reading beyond the buffer and soon writing beyond the allocated target
buffer...

Bug: http://curl.haxx.se/docs/adv_20130622.html
Reported-by: Timo Sirainen
11 years agoUse opened body.out file and write content to it.
Guenter Knauf [Thu, 20 Jun 2013 20:53:37 +0000 (22:53 +0200)]
Use opened body.out file and write content to it.

11 years agomulti_socket: react on socket close immediately
Daniel Stenberg [Wed, 19 Jun 2013 21:54:28 +0000 (23:54 +0200)]
multi_socket: react on socket close immediately

As a remedy to the problem when a socket gets closed and a new one is
opened with the same file descriptor number and as a result
multi.c:singlesocket() doesn't detect the difference, the new function
Curl_multi_closed() gets told when a socket is closed so that it can be
removed from the socket hash. When the old one has been removed, a new
socket should be detected fine by the singlesocket() on next invoke.

Bug: http://curl.haxx.se/bug/view.cgi?id=1248
Reported-by: Erik Johansson
11 years agoRELEASE-NOTES: synced with e305f5ec715f
Daniel Stenberg [Thu, 20 Jun 2013 20:27:33 +0000 (22:27 +0200)]
RELEASE-NOTES: synced with e305f5ec715f

11 years agoTODO: mention the DANE patch from March
Daniel Stenberg [Tue, 18 Jun 2013 07:38:06 +0000 (09:38 +0200)]
TODO: mention the DANE patch from March

11 years agoCURLOPT_COOKIELIST: take cookie share lock
Daniel Stenberg [Mon, 17 Jun 2013 21:29:05 +0000 (23:29 +0200)]
CURLOPT_COOKIELIST: take cookie share lock

When performing COOKIELIST operations the cookie lock needs to be taken
for the cases where the cookies are shared among multiple handles!

Verified by Benjamin Gilbert's updated test 506

Bug: http://curl.haxx.se/bug/view.cgi?id=1215
Reported-by: Benjamin Gilbert
11 years agotest506: verify that CURLOPT_COOKIELIST takes share lock
Benjamin Gilbert [Mon, 17 Jun 2013 21:28:35 +0000 (23:28 +0200)]
test506: verify that CURLOPT_COOKIELIST takes share lock

It doesn't right now: http://curl.haxx.se/bug/view.cgi?id=1215

11 years agoTODO: HTTP2/SPDY support
Daniel Stenberg [Sat, 15 Jun 2013 12:36:35 +0000 (14:36 +0200)]
TODO: HTTP2/SPDY support

11 years agocurl_easy_setopt.3: clarify CURLOPT_PROGRESSFUNCTION frequency
Daniel Stenberg [Fri, 14 Jun 2013 21:17:14 +0000 (23:17 +0200)]
curl_easy_setopt.3: clarify CURLOPT_PROGRESSFUNCTION frequency

Make it clearer that the CURLOPT_PROGRESSFUNCTION callback will be
called more frequently than once per second when things are happening.

11 years agoRELEASE-NOTES: synced with 9c3e098259b82
Daniel Stenberg [Thu, 13 Jun 2013 21:01:32 +0000 (23:01 +0200)]
RELEASE-NOTES: synced with 9c3e098259b82

Mention 7 recent bug fixes and their associated contributors

11 years agocurl_multi_wait.3: clarify the numfds counter
Daniel Stenberg [Thu, 13 Jun 2013 20:38:53 +0000 (22:38 +0200)]
curl_multi_wait.3: clarify the numfds counter

11 years agocurl_easy_perform: avoid busy-looping
Daniel Stenberg [Thu, 13 Jun 2013 17:27:12 +0000 (19:27 +0200)]
curl_easy_perform: avoid busy-looping

When curl_multi_wait() finds no file descriptor to wait for, it returns
instantly and this must be handled gracefully within curl_easy_perform()
or cause a busy-loop. Starting now, repeated fast returns without any
file descriptors is detected and a gradually increasing sleep will be
used (up to a max of 1000 milliseconds) before continuing the loop.

Bug: http://curl.haxx.se/bug/view.cgi?id=1238
Reported-by: Miguel Angel
11 years agocookies: follow-up fix for path checking
YAMADA Yasuharu [Wed, 12 Jun 2013 09:19:56 +0000 (11:19 +0200)]
cookies: follow-up fix for path checking

The initial fix to only compare full path names were done in commit
04f52e9b4db0 but found out to be incomplete. This takes should make the
change more complete and there's now two additional tests to verify
(test 31 and 62).

11 years agolib1900: use tutil_tvnow instead of gettimeofday
Sergei Nikulov [Tue, 11 Jun 2013 22:04:03 +0000 (02:04 +0400)]
lib1900: use tutil_tvnow instead of gettimeofday

Makes it build on windows

11 years agoaxtls: now done non-blocking
Eric Hu [Wed, 12 Jun 2013 08:36:31 +0000 (10:36 +0200)]
axtls: now done non-blocking

11 years agotest2033: requires NTLM support
Eric Hu [Wed, 12 Jun 2013 08:34:10 +0000 (10:34 +0200)]
test2033: requires NTLM support

11 years agoKNOWN_BUGS: #82 failed build with Borland compiler
Daniel Stenberg [Mon, 10 Jun 2013 22:21:16 +0000 (00:21 +0200)]
KNOWN_BUGS: #82 failed build with Borland compiler

11 years agoCurl_output_digest: support auth-int for empty entity body
Daniel Stenberg [Mon, 10 Jun 2013 22:08:13 +0000 (00:08 +0200)]
Curl_output_digest: support auth-int for empty entity body

By always returning the md5 for an empty body when auth-int is asked
for, libcurl now at least sometimes does the right thing.

Bug: http://curl.haxx.se/bug/view.cgi?id=1235
Patched-by: Nach M. S.
11 years agomulti_socket: reduce timeout inaccuracy margin
Daniel Stenberg [Mon, 10 Jun 2013 08:09:16 +0000 (10:09 +0200)]
multi_socket: reduce timeout inaccuracy margin

Allow less room for "triggered too early" mistakes by applications /
timers on non-windows platforms. Starting now, we assume that a timeout
call is never made earlier than 3 milliseconds before the actual
timeout. This greatly improves timeout accuracy on Linux.

Bug: http://curl.haxx.se/bug/view.cgi?id=1228
Reported-by: Hang Su
11 years agocert_stuff: avoid double free in the PKCS12 code
Daniel Stenberg [Mon, 10 Jun 2013 21:42:48 +0000 (23:42 +0200)]
cert_stuff: avoid double free in the PKCS12 code

In the pkcs12 code, we get a list of x509 records returned from
PKCS12_parse but when iterating over the list and passing each to
SSL_CTX_add_extra_chain_cert() we didn't also properly remove them from
the "stack", which made them get freed twice (both in sk_X509_pop_free()
and then later in SSL_CTX_free).

This isn't really documented anywhere...

Bug: http://curl.haxx.se/bug/view.cgi?id=1236
Reported-by: Nikaiw
11 years agocert_stuff: remove code duplication in the pkcs12 logic
Daniel Stenberg [Mon, 10 Jun 2013 14:10:44 +0000 (16:10 +0200)]
cert_stuff: remove code duplication in the pkcs12 logic

11 years agoaxtls: honor disabled VERIFYHOST
Aleksey Tulinov [Fri, 7 Jun 2013 22:20:38 +0000 (00:20 +0200)]
axtls: honor disabled VERIFYHOST

When VERIFYHOST == 0, libcurl should let invalid certificates to pass.

11 years agocurl_easy_setopt.3: HTTP header with no content
Peter Gal [Fri, 7 Jun 2013 14:39:16 +0000 (16:39 +0200)]
curl_easy_setopt.3: HTTP header with no content

Update the documentation on how to specify a HTTP header with no
content.

11 years agoRELEASE-NOTES: synced with 87cf677eca55
Daniel Stenberg [Fri, 7 Jun 2013 08:39:21 +0000 (10:39 +0200)]
RELEASE-NOTES: synced with 87cf677eca55

Added 11 bugs and 7 contributors

11 years agolib1500: remove bad check
Daniel Stenberg [Thu, 6 Jun 2013 20:20:39 +0000 (22:20 +0200)]
lib1500: remove bad check

After curl_multi_wait() returns, this test checked that we got exactly
one file descriptor told to read from, but we cannot be sure that is
true. curl_multi_wait() will sometimes return earlier without any file
descriptor to handle, just just because it is a suitable time to call
*perform().

This problem showed up with commit 29bf0598.

Bug: http://curl.haxx.se/mail/lib-2013-06/0029.html
Reported-by: Fabian Keil
11 years agotests/Makefile: typo in the perlcheck target
Daniel Stenberg [Tue, 4 Jun 2013 21:22:11 +0000 (23:22 +0200)]
tests/Makefile: typo in the perlcheck target

Bug: http://curl.haxx.se/bug/view.cgi?id=1239
Reported-by: Christian Weisgerber
11 years agotest1230: verify CONNECT to a numerical ipv6-address
Daniel Stenberg [Tue, 4 Jun 2013 20:52:13 +0000 (22:52 +0200)]
test1230: verify CONNECT to a numerical ipv6-address

11 years agosws: support extracting test number from CONNECT ipv6-address!
Daniel Stenberg [Tue, 4 Jun 2013 20:50:58 +0000 (22:50 +0200)]
sws: support extracting test number from CONNECT ipv6-address!

If an ipv6-address is provided to CONNECT, the last hexadecimal group in
the address will be used as the test number! For example the address
"[1234::ff]" would be treated as test case 255.

11 years agocurl_multi_wait: only use internal timer if not -1
Daniel Stenberg [Tue, 4 Jun 2013 11:22:40 +0000 (13:22 +0200)]
curl_multi_wait: only use internal timer if not -1

commit 29bf0598aad5 introduced a problem when the "internal" timeout is
prefered to the given if shorter, as it didn't consider the case where
-1 was returned. Now the internal timeout is only considered if not -1.

Reported-by: Tor Arntsen
Bug: http://curl.haxx.se/mail/lib-2013-06/0015.html

11 years agolibcurl-tutorial.3: added a section on IPv6
Dan Fandrich [Mon, 3 Jun 2013 20:44:05 +0000 (22:44 +0200)]
libcurl-tutorial.3: added a section on IPv6

Also added a (correctly-escaped) backslash to the autoexec.bat
example file and a new Windows character device name with
a colon as examples of other characters that are special
and potentially dangerous (this reverts and reworks commit
7d8d2a54).

11 years agocurl_multi_wait: reduce timeout if the multi handle wants to
Daniel Stenberg [Mon, 3 Jun 2013 18:19:51 +0000 (20:19 +0200)]
curl_multi_wait: reduce timeout if the multi handle wants to

If the multi handle's pending timeout is less than what is passed into
this function, it will now opt to use the shorter time anyway since it
is a very good hint that the handle wants to process something in a
shorter time than what otherwise would happen.

curl_multi_wait.3 was updated accordingly to clarify

This is the reason for bug #1224

Bug: http://curl.haxx.se/bug/view.cgi?id=1224
Reported-by: Andrii Moiseiev
11 years agomulti_runsingle: switch an if() condition for readability
Daniel Stenberg [Mon, 3 Jun 2013 18:13:35 +0000 (20:13 +0200)]
multi_runsingle: switch an if() condition for readability

... because there's an identical check right next to it so using the
operators in the check in the same order increases readability.

11 years agocurl_schannel.c: Removed variable unused since 35874298e4
Marc Hoersken [Sun, 2 Jun 2013 18:21:42 +0000 (20:21 +0200)]
curl_schannel.c: Removed variable unused since 35874298e4

11 years agocurl_setup.h: Fixed redefinition warning using mingw-w64
Marc Hoersken [Sun, 2 Jun 2013 13:53:08 +0000 (15:53 +0200)]
curl_setup.h: Fixed redefinition warning using mingw-w64

11 years agomulti_runsingle: add braces to clarify the code
Daniel Stenberg [Thu, 30 May 2013 21:34:33 +0000 (23:34 +0200)]
multi_runsingle: add braces to clarify the code

11 years agolibcurl-tutorial.3: remove incorrect backslash
Daniel Stenberg [Tue, 28 May 2013 11:37:08 +0000 (13:37 +0200)]
libcurl-tutorial.3: remove incorrect backslash

A single backslash in the content is not legal nroff syntax.

Reported and fixed by: Eric S. Raymond
Bug: http://curl.haxx.se/bug/view.cgi?id=1234

11 years agocurl_formadd.3: fixed wrong "end-marker" syntax
Daniel Stenberg [Tue, 28 May 2013 11:35:13 +0000 (13:35 +0200)]
curl_formadd.3: fixed wrong "end-marker" syntax

Reported and fixed by: Eric S. Raymond
Bug: http://curl.haxx.se/bug/view.cgi?id=1233

11 years agocurl.1: clarify that --silent still outputs data
Daniel Stenberg [Tue, 28 May 2013 09:37:29 +0000 (11:37 +0200)]
curl.1: clarify that --silent still outputs data

11 years agoDigest auth: escape user names with \ or " in them
Daniel Stenberg [Mon, 27 May 2013 17:45:12 +0000 (19:45 +0200)]
Digest auth: escape user names with \ or " in them

When sending the HTTP Authorization: header for digest, the user name
needs to be escaped if it contains a double-quote or backslash.

Test 1229 was added to verify

Reported and fixed by: Nach M. S
Bug: http://curl.haxx.se/bug/view.cgi?id=1230

11 years agoossl_recv: SSL_read() returning 0 is an error too
Mike Giancola [Wed, 22 May 2013 21:42:33 +0000 (23:42 +0200)]
ossl_recv: SSL_read() returning 0 is an error too

SSL_read can return 0 for "not successful", according to the open SSL
documentation: http://www.openssl.org/docs/ssl/SSL_read.html

11 years agoossl_send: SSL_write() returning 0 is an error too
Mike Giancola [Wed, 22 May 2013 21:08:27 +0000 (23:08 +0200)]
ossl_send: SSL_write() returning 0 is an error too

We found that in specific cases if the connection is abruptly closed,
the underlying socket is listed in a close_wait state. We continue to
call the curl_multi_perform, curl_mutli_fdset etc. None of these APIs
report the socket closed / connection finished.  Since we have cases
where the multi connection is only used once, this can pose a problem
for us. I've read that if another connection was to come in, curl would
see the socket as bad and attempt to close it at that time -
unfortunately, this does not work for us.

I found that in specific situations, if SSL_write returns 0, curl did
not recognize the socket as closed (or errored out) and did not report
it to the application. I believe we need to change the code slightly, to
check if ssl_write returns 0. If so, treat it as an error - the same as
a negative return code.

For OpenSSL - the ssl_write documentation is here:
http://www.openssl.org/docs/ssl/SSL_write.html

11 years agoKNOWN_BUGS: curl -OJC- fails to resume
Daniel Stenberg [Tue, 21 May 2013 21:58:52 +0000 (23:58 +0200)]
KNOWN_BUGS: curl -OJC- fails to resume

Bug: http://curl.haxx.se/bug/view.cgi?id=1169

11 years agoCurl_cookie_add: handle IPv6 hosts
Daniel Stenberg [Tue, 21 May 2013 21:28:59 +0000 (23:28 +0200)]
Curl_cookie_add: handle IPv6 hosts

1 - don't skip host names with a colon in them in an attempt to bail out
on HTTP headers in the cookie file parser. It was only a shortcut anyway
and trying to parse a file with HTTP headers will still be handled, only
slightly slower.

2 - don't skip domain names based on number of dots. The original
netscape cookie spec had this oddity mentioned and while our code
decreased the check to only check for two, the existing cookie spec has
no such dot counting required.

Bug: http://curl.haxx.se/bug/view.cgi?id=1221
Reported-by: Stefan Neis
11 years agocurl_easy_setopt.3: expand the PROGRESSFUNCTION section
Daniel Stenberg [Mon, 20 May 2013 08:49:50 +0000 (10:49 +0200)]
curl_easy_setopt.3: expand the PROGRESSFUNCTION section

Explain the callback and its arguments better and with more descriptive
text.

11 years agotests: add test1394 file to the tarball
Daniel Stenberg [Sun, 19 May 2013 10:44:44 +0000 (12:44 +0200)]
tests: add test1394 file to the tarball

11 years agotarball: include the xmlstream example
Daniel Stenberg [Sun, 19 May 2013 09:21:56 +0000 (11:21 +0200)]
tarball: include the xmlstream example

11 years agoxmlstream: XML stream parsing example source code
David Strauss [Sun, 19 May 2013 09:14:01 +0000 (02:14 -0700)]
xmlstream: XML stream parsing example source code

Add an XML stream parsing example using Expat. Add missing ignore for
the binary from an unrelated example.

11 years agocookies: only consider full path matches
YAMADA Yasuharu [Sat, 18 May 2013 20:51:31 +0000 (22:51 +0200)]
cookies: only consider full path matches

I found a bug which cURL sends cookies to the path not to aim at.
For example:
- cURL sends a request to http://example.fake/hoge/
- server returns cookie which with path=/hoge;
  the point is there is NOT the '/' end of path string.
- cURL sends a request to http://example.fake/hogege/ with the cookie.

The reason for this old "feature" is because that behavior is what is
described in the original netscape cookie spec:
http://curl.haxx.se/rfc/cookie_spec.html

The current cookie spec (RFC6265) clarifies the situation:
http://tools.ietf.org/html/rfc6265#section-5.2.4

11 years agoaxtls: prevent memleaks on SSL handshake failures
Eric Hu [Thu, 16 May 2013 18:26:42 +0000 (20:26 +0200)]
axtls: prevent memleaks on SSL handshake failures

11 years agoRevert "WIN32 MemoryTracking: track wcsdup() _wcsdup() and _tcsdup() usage"
Daniel Stenberg [Sun, 12 May 2013 13:10:01 +0000 (15:10 +0200)]
Revert "WIN32 MemoryTracking: track wcsdup() _wcsdup() and _tcsdup() usage"

This reverts commit 8ec2cb5544b86306b702484ea785b6b9596562ab.

We don't have any code anywhere in libcurl (or the curl tool) that use
wcsdup so there's no such memory use to track. It seems to cause mild
problems with the Borland compiler though that we may avoid by reverting
this change again.

Bug: http://curl.haxx.se/mail/lib-2013-05/0070.html

11 years agoRELEASE-NOTES: synced with ae26ee3489588f0
Daniel Stenberg [Sun, 12 May 2013 12:35:43 +0000 (14:35 +0200)]
RELEASE-NOTES: synced with ae26ee3489588f0

11 years agoUpdated zlib version in build files.
Guenter Knauf [Sat, 11 May 2013 15:08:00 +0000 (17:08 +0200)]
Updated zlib version in build files.

11 years agoOS X framework: fix invalid symbolic link
Renaud Guillard [Thu, 9 May 2013 15:31:56 +0000 (17:31 +0200)]
OS X framework: fix invalid symbolic link

11 years agonss: give PR_INTERVAL_NO_WAIT instead of -1 to PR_Recv/PR_Send
Daniel Stenberg [Tue, 7 May 2013 21:30:52 +0000 (23:30 +0200)]
nss: give PR_INTERVAL_NO_WAIT instead of -1 to PR_Recv/PR_Send

Reported by: David Strauss
Bug: http://curl.haxx.se/mail/lib-2013-05/0088.html

11 years agolibtest: gitignore more binary files
Daniel Stenberg [Wed, 8 May 2013 12:35:45 +0000 (14:35 +0200)]
libtest: gitignore more binary files

11 years agoservercert: allow empty subject
Daniel Stenberg [Sun, 5 May 2013 21:15:27 +0000 (23:15 +0200)]
servercert: allow empty subject

Bug: http://curl.haxx.se/bug/view.cgi?id=1220
Patch by: John Gardiner Myers

11 years agotests: Added new SMTP tests to verify commit 99b40451836d
Steve Holme [Sat, 4 May 2013 16:50:53 +0000 (17:50 +0100)]
tests: Added new SMTP tests to verify commit 99b40451836d

11 years agoruntests.pl: support nonewline="yes" in client/stdin sections
Daniel Stenberg [Tue, 7 May 2013 20:51:59 +0000 (22:51 +0200)]
runtests.pl: support nonewline="yes" in client/stdin sections

11 years agobuild: fixed unit1394 for debug and metlink builds
Daniel Stenberg [Mon, 6 May 2013 21:28:04 +0000 (23:28 +0200)]
build: fixed unit1394 for debug and metlink builds

11 years agounit1394.c: plug the curl tool unit test in
Kamil Dudka [Fri, 3 May 2013 11:26:25 +0000 (13:26 +0200)]
unit1394.c: plug the curl tool unit test in

11 years agounit1394.c: basis of a unit test for parse_cert_parameter()
Jared Jennings [Fri, 5 Apr 2013 14:01:31 +0000 (16:01 +0200)]
unit1394.c: basis of a unit test for parse_cert_parameter()

11 years agosrc/Makefile.am: build static lib for unit tests if enabled
Kamil Dudka [Fri, 3 May 2013 21:03:58 +0000 (23:03 +0200)]
src/Makefile.am: build static lib for unit tests if enabled

11 years agotool_getparam: ensure string termination in parse_cert_parameter()
Kamil Dudka [Fri, 3 May 2013 20:57:18 +0000 (22:57 +0200)]
tool_getparam: ensure string termination in parse_cert_parameter()

11 years agotool_getparam: fix memleak in handling the -E option
Kamil Dudka [Fri, 3 May 2013 20:16:46 +0000 (22:16 +0200)]
tool_getparam: fix memleak in handling the -E option

11 years agotool_getparam: describe what parse_cert_parameter() does
Kamil Dudka [Fri, 5 Apr 2013 14:10:46 +0000 (16:10 +0200)]
tool_getparam: describe what parse_cert_parameter() does

... and de-duplicate the code initializing *passphrase

11 years agocurl.1: document escape sequences recognized by -E
Kamil Dudka [Fri, 3 May 2013 21:12:00 +0000 (23:12 +0200)]
curl.1: document escape sequences recognized by -E

11 years agocurl -E: allow to escape ':' in cert nickname
Jared Jennings [Fri, 5 Apr 2013 14:01:31 +0000 (16:01 +0200)]
curl -E: allow to escape ':' in cert nickname

11 years agocurl_schannel.c: Fixed invalid memory access during SSL shutdown
Marc Hoersken [Sun, 5 May 2013 15:57:37 +0000 (17:57 +0200)]
curl_schannel.c: Fixed invalid memory access during SSL shutdown

11 years agosmtp: Fix trailing whitespace warning
Steve Holme [Sat, 4 May 2013 17:37:50 +0000 (18:37 +0100)]
smtp: Fix trailing whitespace warning

11 years agosmtp: Fix compilation warning
Steve Holme [Sat, 4 May 2013 12:24:05 +0000 (13:24 +0100)]
smtp: Fix compilation warning

comparison between signed and unsigned integer expressions

11 years agoRELEASE-NOTES: synced with 92ef5f19c801
Steve Holme [Sat, 4 May 2013 09:04:08 +0000 (10:04 +0100)]
RELEASE-NOTES: synced with 92ef5f19c801

11 years agosmtp: Updated RFC-2821 references to RFC-5321
Steve Holme [Sat, 4 May 2013 08:58:32 +0000 (09:58 +0100)]
smtp: Updated RFC-2821 references to RFC-5321

11 years agosmtp: Fixed sending of double CRLF caused by first in EOB
Steve Holme [Sat, 4 May 2013 08:52:09 +0000 (09:52 +0100)]
smtp: Fixed sending of double CRLF caused by first in EOB

If the mail sent during the transfer contains a terminating <CRLF> then
we should not send the first <CRLF> of the EOB as specified in RFC-5321.

Additionally don't send the <CRLF> if there is "no mail data" as the
DATA command already includes it.

11 years agotests: Corrected MAIL SIZE for CRLF line endings
Steve Holme [Fri, 3 May 2013 19:08:21 +0000 (20:08 +0100)]
tests: Corrected MAIL SIZE for CRLF line endings

... which was missed in commit: f5c3d9538452

11 years agotests: Corrected infilesize for CRLF line endings
Steve Holme [Fri, 3 May 2013 17:27:06 +0000 (18:27 +0100)]
tests: Corrected infilesize for CRLF line endings

... which was missed in commit: f5c3d9538452

11 years agotests: Corrected test1406 to be RFC2821 compliant
Steve Holme [Fri, 3 May 2013 17:22:18 +0000 (18:22 +0100)]
tests: Corrected test1406 to be RFC2821 compliant

11 years agotests: Corrected test1320 to be RFC2821 compliant
Steve Holme [Thu, 2 May 2013 21:49:16 +0000 (22:49 +0100)]
tests: Corrected test1320 to be RFC2821 compliant