platform/upstream/curl.git
11 years agohttp2: adjust to new nghttp2_pack_settings_payload proto
Daniel Stenberg [Mon, 9 Sep 2013 13:18:09 +0000 (15:18 +0200)]
http2: adjust to new nghttp2_pack_settings_payload proto

This function was modified in nghttp2 git commit a1c3f89c72e51

11 years agourl: handle abortion by read/write callbacks, too
Kamil Dudka [Mon, 9 Sep 2013 11:10:53 +0000 (13:10 +0200)]
url: handle abortion by read/write callbacks, too

Otherwise, the FTP protocol would unnecessarily hang 60 seconds if
aborted in the CURLOPT_HEADERFUNCTION callback.

Reported by: Tomas Mlcoch
Bug: https://bugzilla.redhat.com/1005686

11 years agoldap: fix the build for systems with ldap_url_parse()
Daniel Stenberg [Sun, 8 Sep 2013 22:01:52 +0000 (00:01 +0200)]
ldap: fix the build for systems with ldap_url_parse()

Make sure that the custom struct fields are only used by code that
doesn't use a struct defintion from the outside.

Attempts to fix the problem introduced in 3dc6fc42bfc61b

11 years agopingpong: Check SSL library buffers for already read data
Jiri Hruska [Sun, 8 Sep 2013 23:05:14 +0000 (01:05 +0200)]
pingpong: Check SSL library buffers for already read data

Otherwise the connection can get stuck during various phases, waiting
for new data on the socket using select() etc., but it will never be
received as the data has already been read into SSL library.

11 years agoimap: Fixed calculation of transfer when partial FETCH received
Steve Holme [Sun, 8 Sep 2013 09:30:43 +0000 (10:30 +0100)]
imap: Fixed calculation of transfer when partial FETCH received

The transfer size would be calculated incorrectly if the email contained
within the FETCH response, had been partially received by the pingpong
layer. As such the following, example output, would be seen if the
amount remaining was smaller than the amount received:

* Excess found in a non pipelined read: excess = 1394, size = 262,
  maxdownload = 262, bytecount = 1374
* transfer closed with -1112 bytes remaining to read

Bug: http://curl.haxx.se/mail/lib-2013-08/0170.html
Reported-by: John Dunn
11 years agoftpserver.pl: Fixed empty array checks
Steve Holme [Sun, 8 Sep 2013 22:59:49 +0000 (23:59 +0100)]
ftpserver.pl: Fixed empty array checks

...from commits 28427b408326a1 and e8313697b6554b.

11 years agoftpserver: Reworked AUTH support to allow for specifying the mechanisms
Steve Holme [Sun, 8 Sep 2013 20:46:32 +0000 (21:46 +0100)]
ftpserver: Reworked AUTH support to allow for specifying the mechanisms

Renamed SUPPORTAUTH to AUTH and added support for specifying a list of
supported SASL mechanisms to return to the client.

Additionally added the directive to the FILEFORMAT document.

11 years agoftpserver: Reworked CAPA support to allow for specifying the capabilities
Steve Holme [Sun, 8 Sep 2013 20:17:47 +0000 (21:17 +0100)]
ftpserver: Reworked CAPA support to allow for specifying the capabilities

Renamed SUPPORTCAPA to CAPA and added support for specifying a list of
supported capabilities to return to the client.

Additionally added the directive to the FILEFORMAT document.

11 years agoftpserver.pl: Corrected POP3 LIST as message numbers should be contiguous
Steve Holme [Sun, 8 Sep 2013 19:16:49 +0000 (20:16 +0100)]
ftpserver.pl: Corrected POP3 LIST as message numbers should be contiguous

The message numbers given in the LIST response are an index into the
list, which are only valid for the current session, rather than being a
unique message identifier. An index would only be missing from the LIST
response if a DELE command had been issued within the same session and
had not been committed by the end of session QUIT command. Once
committed the POP3 server will regenerate the message numbers in the
next session to be contiguous again. As such our LIST response should
list message numbers contiguously until we support a DELE command in the
same session.

Should a POP3 user require the unique message ID for any or all
messages then they should use the extended UIDL command. This command
will be supported by the test ftpserver in an upcoming commit.

11 years agocurl_easy_pause: suggest one way to unpause
Clemens Gruber [Sun, 8 Sep 2013 17:01:26 +0000 (19:01 +0200)]
curl_easy_pause: suggest one way to unpause

11 years agotests: Updated descriptions to be more meaningful
Steve Holme [Sun, 8 Sep 2013 15:57:15 +0000 (16:57 +0100)]
tests: Updated descriptions to be more meaningful

11 years agotests: Added test for POP3 NOOP command
Steve Holme [Sun, 8 Sep 2013 15:55:39 +0000 (16:55 +0100)]
tests: Added test for POP3 NOOP command

11 years agoftpserver.pl: Added support for POP3 NOOP command
Steve Holme [Sun, 8 Sep 2013 15:41:12 +0000 (16:41 +0100)]
ftpserver.pl: Added support for POP3 NOOP command

11 years agoftpserver.pl: Fixed 'Use of uninitialized value $args in string ne'
Steve Holme [Sun, 8 Sep 2013 15:39:41 +0000 (16:39 +0100)]
ftpserver.pl: Fixed 'Use of uninitialized value $args in string ne'

11 years agotests: Added test for POP3 STAT command
Steve Holme [Sun, 8 Sep 2013 07:51:37 +0000 (08:51 +0100)]
tests: Added test for POP3 STAT command

11 years agoftpserver.pl: Added support for POP STAT command
Steve Holme [Sun, 8 Sep 2013 07:37:37 +0000 (08:37 +0100)]
ftpserver.pl: Added support for POP STAT command

11 years agoftpserver.pl: Moved POP3 QUIT handler into own function
Steve Holme [Sun, 8 Sep 2013 07:35:38 +0000 (08:35 +0100)]
ftpserver.pl: Moved POP3 QUIT handler into own function

11 years agoftpserver.pl: Reordered the POP3 handlers to be alphabetical
Steve Holme [Sat, 7 Sep 2013 22:20:08 +0000 (23:20 +0100)]
ftpserver.pl: Reordered the POP3 handlers to be alphabetical

In preparation for additional POP3 tests, re-ordered the command
function defintions to be sorted alphabetically.

11 years agoftpserver.pl: Corrected misaligned indentation in POP3 handlers
Steve Holme [Sat, 7 Sep 2013 22:14:54 +0000 (23:14 +0100)]
ftpserver.pl: Corrected misaligned indentation in POP3 handlers

Fixed incorrect indentation used in both the RETR_pop3 and LIST_pop3
functions which was 5 and 9 characters rather than 4 and 8.

11 years agotests: Added test for POP3 DELE command
Steve Holme [Sat, 7 Sep 2013 18:49:12 +0000 (19:49 +0100)]
tests: Added test for POP3 DELE command

11 years agoftpserver.pl: Added support for POP3 DELE command
Steve Holme [Sat, 7 Sep 2013 18:27:52 +0000 (19:27 +0100)]
ftpserver.pl: Added support for POP3 DELE command

11 years agohttp2: include curl_memory.h
Daniel Stenberg [Sat, 7 Sep 2013 17:47:26 +0000 (19:47 +0200)]
http2: include curl_memory.h

Detected by test 1132

11 years agohttp: fix build warning under LLVM
Nick Zitzmann [Sat, 7 Sep 2013 15:00:11 +0000 (10:00 -0500)]
http: fix build warning under LLVM

When building the code using LLVM Clang without NGHTTP2, I was getting
this warning:
../lib/http.h:155:1: warning: empty struct is a GNU extension [-Wgnu]
Placing a dummy variable into the data structure silenced the warning.

11 years agohttp2: actually init nghttp2 and send HTTP2-Settings properly
Daniel Stenberg [Sat, 7 Sep 2013 11:01:43 +0000 (13:01 +0200)]
http2: actually init nghttp2 and send HTTP2-Settings properly

11 years agoREADME.http2: how to use it best with the multi API?
Daniel Stenberg [Sat, 7 Sep 2013 09:12:12 +0000 (11:12 +0200)]
README.http2: how to use it best with the multi API?

11 years agohttp2: first embryo toward Upgrade:
Daniel Stenberg [Sat, 7 Sep 2013 09:03:23 +0000 (11:03 +0200)]
http2: first embryo toward Upgrade:

11 years agohttp: rename use_http_1_1 to use_http_1_1plus
Daniel Stenberg [Wed, 4 Sep 2013 21:24:15 +0000 (23:24 +0200)]
http: rename use_http_1_1 to use_http_1_1plus

Since it now actually says if 1.1 or a later version should be used.

11 years agoconfigure: improve CURL_CHECK_COMPILER_PROTOTYPE_MISMATCH
Daniel Stenberg [Sat, 7 Sep 2013 09:12:36 +0000 (11:12 +0200)]
configure: improve CURL_CHECK_COMPILER_PROTOTYPE_MISMATCH

The compiler test used a variable before it was assigned when it tried
to see how it acts on a mismatching prototype, which could cause a false
positive.

11 years agoPass password to OpenSSL engine by user interface
Petr Písař [Tue, 20 Aug 2013 15:02:53 +0000 (17:02 +0200)]
Pass password to OpenSSL engine by user interface

Recent OpenSSL uses user interface abstraction to negotiate access to
private keys in the cryprographical engines. An OpenSSL application is
expected to implement the user interface. Otherwise a default one
provided by OpenSSL (interactive standard I/O) will be used and the
aplication will have no way how to pass a password to the engine.

Longer-desc: http://curl.haxx.se/mail/lib-2013-08/0265.html

11 years agourlglob: improved error messages and column number on bad use
Daniel Stenberg [Fri, 6 Sep 2013 21:27:47 +0000 (23:27 +0200)]
urlglob: improved error messages and column number on bad use

Introduce a convenience macro and keep of the column better so that it
can point out the offending column better.

Updated test 75 accordingly.

11 years agourlglob: avoid error code translation
Daniel Stenberg [Fri, 6 Sep 2013 12:20:03 +0000 (14:20 +0200)]
urlglob: avoid error code translation

By using the correct values from the start we don't have to translate
them!

11 years agourlglob: avoid NULL pointer dereference
Daniel Stenberg [Fri, 6 Sep 2013 12:12:44 +0000 (14:12 +0200)]
urlglob: avoid NULL pointer dereference

Thanks to clang-analyzer

11 years agohttp2: use correct include for snprintf
Gisle Vanem [Fri, 6 Sep 2013 11:56:35 +0000 (13:56 +0200)]
http2: use correct include for snprintf

Using the first little merge of nghttp2 into libcurl, I stumbeled on the
missing 'snprintf' in MSVCRT. Isn't this how we do it for other libcurl
files?  I.e. use 'curl_msnprintf' and not 'snprintf' directly:

11 years ago--data: mention CRLF treatment when reading from file
Daniel Stenberg [Fri, 6 Sep 2013 11:52:56 +0000 (13:52 +0200)]
--data: mention CRLF treatment when reading from file

11 years agoLDAP: fix bad free() when URL parsing failed
Geoff Beier [Thu, 5 Sep 2013 21:51:53 +0000 (17:51 -0400)]
LDAP: fix bad free() when URL parsing failed

When an error occurs parsing an LDAP URL, The ludp->lud_attrs[i] entries
could be freed even though they sometimes point to data within an
allocated area.

This change introduces a lud_attrs_dup[] array for the duplicated string
pointers, and it removes the unused lud_exts array.

Bug: http://curl.haxx.se/mail/lib-2013-08/0209.html

11 years agodarwinssl: add support for PKCS#12 files for client authentication
Nick Zitzmann [Thu, 5 Sep 2013 23:57:06 +0000 (18:57 -0500)]
darwinssl: add support for PKCS#12 files for client authentication

I also documented the fact that the OpenSSL engine also supports them.

11 years agosymbols: added HTTP2 symbols and sorted list
Daniel Stenberg [Thu, 5 Sep 2013 10:04:41 +0000 (12:04 +0200)]
symbols: added HTTP2 symbols and sorted list

CURL_HTTP_VERSION_2_0 and CURL_VERSION_HTTP2 are new

11 years agoconfigure: add HTTP2 as a curl-config --feature output
Daniel Stenberg [Thu, 5 Sep 2013 10:03:24 +0000 (12:03 +0200)]
configure: add HTTP2 as a curl-config --feature output

Fixes the test 1014 failure

11 years agocurl: unbreak --http1.0 again
Daniel Stenberg [Thu, 5 Sep 2013 07:56:05 +0000 (09:56 +0200)]
curl: unbreak --http1.0 again

I broke it in 2eabb7d590

11 years agoSASL: fix compiler warnings
Daniel Stenberg [Wed, 4 Sep 2013 20:32:57 +0000 (22:32 +0200)]
SASL: fix compiler warnings

comparison between signed and unsigned integer expressions

suggest parentheses around '&&' within '||' (twice)

11 years agocurl: add --http1.1 and --http2.0 options
Daniel Stenberg [Wed, 4 Sep 2013 20:28:16 +0000 (22:28 +0200)]
curl: add --http1.1 and --http2.0 options

11 years agoCurl_setopt: refuse CURL_HTTP_VERSION_2_0 if built without support
Daniel Stenberg [Tue, 3 Sep 2013 21:32:08 +0000 (23:32 +0200)]
Curl_setopt: refuse CURL_HTTP_VERSION_2_0 if built without support

11 years agohttp2: add http2.[ch] and add nghttp2 version output
Daniel Stenberg [Tue, 3 Sep 2013 21:17:06 +0000 (23:17 +0200)]
http2: add http2.[ch] and add nghttp2 version output

11 years agocurl -V: output HTTP2 as a feature if present
Daniel Stenberg [Tue, 3 Sep 2013 21:14:51 +0000 (23:14 +0200)]
curl -V: output HTTP2 as a feature if present

11 years agocurl.h: add CURL_VERSION_HTTP2 as a feature
Daniel Stenberg [Tue, 3 Sep 2013 21:11:07 +0000 (23:11 +0200)]
curl.h: add CURL_VERSION_HTTP2 as a feature

It isn't added as a separate protocol as HTTP2 will be done over HTTP://
URLs that can be upgraded to HTTP2 if the server supports it as well.

11 years agoimap/smtp: Fixed incorrect SASL mechanism selection with XOAUTH2 servers
Steve Holme [Wed, 4 Sep 2013 20:27:01 +0000 (21:27 +0100)]
imap/smtp: Fixed incorrect SASL mechanism selection with XOAUTH2 servers

XOAUTH2 would be selected in preference to LOGIN and PLAIN if the IMAP
or SMTP server advertised support for it even though a user's password
was supplied but bearer token wasn't.

Modified the selection logic so that XOAUTH2 will only be selected if
the server supports it and A) The curl user/libcurl programmer has
specifically asked for XOAUTH via the ;AUTH=XOAUTH login option or 2)
The bearer token is specified. Obviously if XOAUTH is asked for via
the login option but no token is specified the user will receive a
authentication failure which makes more sense than no known
authentication mechanisms supported!

11 years agocurl.h: added CURL_HTTP_VERSION_2_0
Daniel Stenberg [Mon, 2 Sep 2013 21:30:38 +0000 (23:30 +0200)]
curl.h: added CURL_HTTP_VERSION_2_0

Initial library considerations documented in lib/README.http2

11 years agoconfigure: added --with-nghttp2
Daniel Stenberg [Mon, 2 Sep 2013 21:14:23 +0000 (23:14 +0200)]
configure: added --with-nghttp2

11 years agoacinclude: fix --without-ca-path when cross-compiling
Daniel Stenberg [Tue, 3 Sep 2013 22:01:03 +0000 (00:01 +0200)]
acinclude: fix --without-ca-path when cross-compiling

The commit 7b074a460b64811 to CURL_CHECK_CA_BUNDLE in 7.31 (don't check
for paths when cross-compiling) causes --without-ca-path to no longer
works when cross-compiling, since ca and capath only ever get set to
"no" when not cross-compiling, I attach a patch that works for me. Also
in the cross-compilation case, no ca-path seems to be a better default
(IMVHO) than empty ca-path.

Bug: http://curl.haxx.se/bug/view.cgi?id=1273
Patch-by: Stefan Neis
11 years agolib1512.c: Fixed compilation warning
Steve Holme [Mon, 2 Sep 2013 19:39:53 +0000 (20:39 +0100)]
lib1512.c: Fixed compilation warning

An enumerated type is mixed with another type.

...as well as a small coding style error.

11 years agoKilled warning 'res' might be used uninitialized.
Guenter Knauf [Sun, 1 Sep 2013 21:08:29 +0000 (23:08 +0200)]
Killed warning 'res' might be used uninitialized.

11 years agourl.c: Fixed compilation warning
Steve Holme [Sun, 1 Sep 2013 12:30:12 +0000 (13:30 +0100)]
url.c: Fixed compilation warning

An enumerated type is mixed with another type

11 years agoeasy.c: Fixed compilation warning
Steve Holme [Sun, 1 Sep 2013 11:48:50 +0000 (12:48 +0100)]
easy.c: Fixed compilation warning

warning: `code' might be used uninitialized in this function

11 years ago-x: rephrased the --proxy section somewhat
Daniel Stenberg [Sat, 31 Aug 2013 20:55:53 +0000 (22:55 +0200)]
-x: rephrased the --proxy section somewhat

11 years agotests: Added test for IMAP CHECK command
Steve Holme [Sat, 31 Aug 2013 17:31:47 +0000 (18:31 +0100)]
tests: Added test for IMAP CHECK command

11 years agoftpserver.pl: Added support for the IMAP CHECK command
Steve Holme [Sat, 31 Aug 2013 17:29:15 +0000 (18:29 +0100)]
ftpserver.pl: Added support for the IMAP CHECK command

11 years agoRemoved reference to krb4.c.
Guenter Knauf [Sat, 31 Aug 2013 17:12:35 +0000 (19:12 +0200)]
Removed reference to krb4.c.

11 years agoftpserver.pl: Corrected flawed logic in commit 1ca6ed7b75cad0
Steve Holme [Sat, 31 Aug 2013 10:10:20 +0000 (11:10 +0100)]
ftpserver.pl: Corrected flawed logic in commit 1ca6ed7b75cad0

11 years agoimap: Fixed response check for EXPUNGE command
Steve Holme [Sat, 31 Aug 2013 09:49:49 +0000 (10:49 +0100)]
imap: Fixed response check for EXPUNGE command

11 years agoftpserver.pl: Added argument check to IMAP command handlers
Steve Holme [Sat, 31 Aug 2013 09:41:25 +0000 (10:41 +0100)]
ftpserver.pl: Added argument check to IMAP command handlers

Added BAD argument check to the following IMAP command handlers:

APPEND, STORE, LIST, EXAMINE, STATUS and SEARCH

11 years agoftpserver.pl: More whitespace corrections
Steve Holme [Sat, 31 Aug 2013 09:35:05 +0000 (10:35 +0100)]
ftpserver.pl: More whitespace corrections

LIST_imap() had a second level of indentation at 9 characters and not 8.

11 years agoftpserver.pl: Small correction tidy up
Steve Holme [Fri, 30 Aug 2013 21:11:17 +0000 (22:11 +0100)]
ftpserver.pl: Small correction tidy up

Corrected some IMAP variable names and whitespace issues.

11 years agodocs: Added documentation for CURLOPT_BEARER
Kyle L. Huff [Fri, 30 Aug 2013 12:50:13 +0000 (08:50 -0400)]
docs: Added documentation for CURLOPT_BEARER

11 years agocurl.1: Add usage of '--bearer' option
Kyle L. Huff [Fri, 30 Aug 2013 12:47:04 +0000 (08:47 -0400)]
curl.1: Add usage of '--bearer' option

11 years agotests: Added tests for IMAP CREATE, DELETE and RENAME commands
Steve Holme [Fri, 30 Aug 2013 17:56:56 +0000 (18:56 +0100)]
tests: Added tests for IMAP CREATE, DELETE and RENAME commands

11 years agoftpserver: Bareword "to_mailbox" not allowed
Daniel Stenberg [Fri, 30 Aug 2013 13:21:39 +0000 (15:21 +0200)]
ftpserver: Bareword "to_mailbox" not allowed

Added missing $

11 years agoftpserver.pl: Added support for IMAP CREATE, DELETE and RENAME commands
Steve Holme [Fri, 30 Aug 2013 06:35:00 +0000 (07:35 +0100)]
ftpserver.pl: Added support for IMAP CREATE, DELETE and RENAME commands

11 years agoFTP: fix getsock during DO_MORE state
Daniel Stenberg [Tue, 20 Aug 2013 20:45:47 +0000 (22:45 +0200)]
FTP: fix getsock during DO_MORE state

... when doing upload it would return the wrong values at times. This
commit attempts to cleanup the mess.

Bug: http://curl.haxx.se/mail/lib-2013-08/0109.html
Reported-by: Mike Mio
11 years agocurl_multi_remove_handle: allow multiple removes
Daniel Stenberg [Thu, 29 Aug 2013 20:08:01 +0000 (22:08 +0200)]
curl_multi_remove_handle: allow multiple removes

When removing an already removed handle, avoid that to ruin the
internals and just return OK instead.

11 years agoftpserver.pl: Updated IMAP EXAMINE handler to use dynamic test data
Steve Holme [Thu, 29 Aug 2013 19:08:27 +0000 (20:08 +0100)]
ftpserver.pl: Updated IMAP EXAMINE handler to use dynamic test data

11 years agounit1304: include memdebug and free everything correctly
Daniel Stenberg [Thu, 29 Aug 2013 10:50:15 +0000 (12:50 +0200)]
unit1304: include memdebug and free everything correctly

11 years agoCurl_parsenetrc: document that the arguments must be allocated
Daniel Stenberg [Thu, 29 Aug 2013 10:49:56 +0000 (12:49 +0200)]
Curl_parsenetrc: document that the arguments must be allocated

11 years agoeasy: rename struct monitor to socketmonitor
Daniel Stenberg [Thu, 29 Aug 2013 07:57:14 +0000 (09:57 +0200)]
easy: rename struct monitor to socketmonitor

'struct monitor', introduced in 6cf8413e, already exists in an IRIX
header file (sys/mon.h) which gets included via various standard headers
by lib/easy.c

cc-1101 cc: ERROR File = ../../curl/lib/easy.c, Line = 458
"monitor" has already been declared in the current scope.

Reported-by: Tor Arntsen
11 years agoftpserver.pl: Added SELECT check to IMAP FETCH and STORE handlers
Steve Holme [Thu, 29 Aug 2013 06:20:03 +0000 (07:20 +0100)]
ftpserver.pl: Added SELECT check to IMAP FETCH and STORE handlers

11 years agoftpserver.pl: Corrected accidental move of logmsg() call
Steve Holme [Wed, 28 Aug 2013 21:58:33 +0000 (22:58 +0100)]
ftpserver.pl: Corrected accidental move of logmsg() call

Corrected the call to logmsg() in the IMAP SEARCH handler from commit
4ae7b7ea691497 as it should have been outputting the what argument and
not the test number.

11 years agoftpserver: add missing '}' from 4ae7b7ea69149
Daniel Stenberg [Wed, 28 Aug 2013 20:59:19 +0000 (22:59 +0200)]
ftpserver: add missing '}' from 4ae7b7ea69149

11 years agoftpserver.pl: Added SELECT check to IMAP SEARCH command
Steve Holme [Wed, 28 Aug 2013 17:56:19 +0000 (18:56 +0100)]
ftpserver.pl: Added SELECT check to IMAP SEARCH command

11 years agoftpserver.pl: Fixed IMAP SEARCH command
Steve Holme [Wed, 28 Aug 2013 17:51:59 +0000 (18:51 +0100)]
ftpserver.pl: Fixed IMAP SEARCH command

11 years agobump: next release is 7.33.0 due to added features
Daniel Stenberg [Wed, 28 Aug 2013 07:32:48 +0000 (09:32 +0200)]
bump: next release is 7.33.0 due to added features

11 years agosymbols-in-versions: add CURLOPT_XOAUTH2_BEARER
Daniel Stenberg [Wed, 28 Aug 2013 07:31:37 +0000 (09:31 +0200)]
symbols-in-versions: add CURLOPT_XOAUTH2_BEARER

11 years agotests: Added test for IMAP SEARCH command
Steve Holme [Wed, 28 Aug 2013 06:27:10 +0000 (07:27 +0100)]
tests: Added test for IMAP SEARCH command

11 years agovalgrind.supp: fix for regular curl_easy_perform too
Daniel Stenberg [Tue, 27 Aug 2013 22:09:27 +0000 (00:09 +0200)]
valgrind.supp: fix for regular curl_easy_perform too

When we introduced curl_easy_perform_ev, this got a slightly modified
call trace. Without this, test 165 causes a false positive valgrind
error.

11 years agovalgrind.supp: add the event-based call stack-trace too
Daniel Stenberg [Tue, 27 Aug 2013 21:34:51 +0000 (23:34 +0200)]
valgrind.supp: add the event-based call stack-trace too

Without this, test 165 triggers a valgrind error when ran with
curl_easy_perform_ev

11 years agomulti_socket: improved 100-continue timeout handling
Daniel Stenberg [Tue, 27 Aug 2013 20:32:51 +0000 (22:32 +0200)]
multi_socket: improved 100-continue timeout handling

When waiting for a 100-continue response from the server, the
Curl_readwrite() will refuse to run if called until the timeout has been
reached.

We timeout code in multi_socket() allows code to run slightly before the
actual timeout time, so for test 154 it could lead to the function being
executed but refused in Curl_readwrite() and then the application would
just sit idling forever.

This was detected with runtests.pl -e on test 154.

11 years agoftpserver.pl: Added support for IMAP SEARCH command
Steve Holme [Tue, 27 Aug 2013 19:47:31 +0000 (20:47 +0100)]
ftpserver.pl: Added support for IMAP SEARCH command

11 years agotool_operate.c: Fixed compilation warning
Steve Holme [Tue, 27 Aug 2013 15:39:16 +0000 (16:39 +0100)]
tool_operate.c: Fixed compilation warning

warning: implicit declaration of function 'checkpasswd'

11 years agocurl: Moved check for password out of get parameter loop
Steve Holme [Sun, 25 Aug 2013 21:32:34 +0000 (22:32 +0100)]
curl: Moved check for password out of get parameter loop

Moved the calls to checkpasswd() out of the getparameter() function
which allows for any related arguments to be specified on the command
line before or after --user (and --proxy-user).

For example: --bearer doesn't need to be specified before --user to
prevent curl from asking for an unnecessary password as is the case
with commit e7dcc454c67a2f.

11 years agoRELEASE-NOTES: synced with acf59be7f09a7
Steve Holme [Mon, 26 Aug 2013 22:27:07 +0000 (23:27 +0100)]
RELEASE-NOTES: synced with acf59be7f09a7

11 years agocurl: added --bearer option to help
Kyle L. Huff [Sun, 25 Aug 2013 17:19:46 +0000 (13:19 -0400)]
curl: added --bearer option to help

Added the --bearer option to the help output

11 years agocurl: added basic SASL XOAUTH2 support
Kyle L. Huff [Sun, 25 Aug 2013 17:18:59 +0000 (13:18 -0400)]
curl: added basic SASL XOAUTH2 support

Added the ability to specify an XOAUTH2 bearer token [RFC6750] via the
--bearer option.

Example usage:
  curl --url "imaps://imap.gmail.com:993/INBOX/;UID=1" --ssl-reqd
  --bearer ya29.AHES6Z...OMfsHYI --user username@example.com

11 years agotool_urlglob.c: Fixed compiler warnings
Steve Holme [Mon, 26 Aug 2013 10:41:35 +0000 (11:41 +0100)]
tool_urlglob.c: Fixed compiler warnings

warning: 'variable' may be used uninitialized in this function

11 years agosecurity.h: rename to curl_sec.h to avoid name collision
Daniel Stenberg [Mon, 26 Aug 2013 09:51:18 +0000 (11:51 +0200)]
security.h: rename to curl_sec.h to avoid name collision

I brought back security.h in commit bb5529331334e. As we actually
already found out back in 2005 in commit 62970da675249, the file name
security.h causes problems so I renamed it curl_sec.h instead.

11 years agoruntests.pl: allow -vc point to a separate curl binary to verify with
Daniel Stenberg [Mon, 26 Aug 2013 07:17:55 +0000 (09:17 +0200)]
runtests.pl: allow -vc point to a separate curl binary to verify with

The specified curl binary will then be used to verify the running
server(s) instead of the development version. This is very useful in
some cases when the development version fails to verify correctly as
then the test case may not run at all.

The actual test will still be run with the "normal" curl executable
(unless the test case specifies something differently).

11 years agosmtp: added basic SASL XOAUTH2 support
Kyle L. Huff [Sun, 25 Aug 2013 17:17:58 +0000 (13:17 -0400)]
smtp: added basic SASL XOAUTH2 support

Added the ability to use an XOAUTH2 bearer token [RFC6750] with SMTP for
authentication using RFC6749 "OAuth 2.0 Authorization Framework".

The bearer token is expected to be valid for the user specified in
conn->user. If CURLOPT_XOAUTH2_BEARER is defined and the connection has
an advertised auth mechanism of "XOAUTH2", the user and access token are
formatted as a base64 encoded string and sent to the server as
"AUTH XOAUTH2 <bearer token>".

11 years agoimap: added basic SASL XOAUTH2 support
Kyle L. Huff [Sun, 25 Aug 2013 17:17:35 +0000 (13:17 -0400)]
imap: added basic SASL XOAUTH2 support

Added the ability to use an XOAUTH2 bearer token [RFC6750] with IMAP for
authentication using RFC6749 "OAuth 2.0 Authorization Framework".

The bearer token is expected to be valid for the user specified in
conn->user. If CURLOPT_XOAUTH2_BEARER is defined and the connection has
an advertised auth mechanism of "XOAUTH2", the user and access token are
formatted as a base64 encoded string and sent to the server as
"A001 AUTHENTICATE XOAUTH2 <bearer token>".

11 years agosecurity.h: Fixed compilation warning
Steve Holme [Mon, 26 Aug 2013 09:14:16 +0000 (10:14 +0100)]
security.h: Fixed compilation warning

ISO C forbids forward references to 'enum' types

11 years agoKNOWN_BUGS: refer to bug numbers with the existing number series
Daniel Stenberg [Sun, 25 Aug 2013 22:29:33 +0000 (00:29 +0200)]
KNOWN_BUGS: refer to bug numbers with the existing number series

The old numbers would still redirect but who knows for how long...

11 years agooptions: added basic SASL XOAUTH2 support
Kyle L. Huff [Sun, 25 Aug 2013 17:17:20 +0000 (13:17 -0400)]
options: added basic SASL XOAUTH2 support

Added the ability to specify an XOAUTH2 bearer token [RFC6750] via the
option CURLOPT_XOAUTH2_BEARER for authentication using RFC6749 "OAuth
2.0 Authorization Framework".

11 years agosasl: added basic SASL XOAUTH2 support
Kyle L. Huff [Sun, 25 Aug 2013 17:17:01 +0000 (13:17 -0400)]
sasl: added basic SASL XOAUTH2 support

Added the ability to generated a base64 encoded XOAUTH2 token
containing: "user=<username>^Aauth=Bearer <bearer token>^A^A"
as per RFC6749 "OAuth 2.0 Authorization Framework".

11 years agoFTP: remove krb4 support
Daniel Stenberg [Fri, 23 Aug 2013 14:16:42 +0000 (16:16 +0200)]
FTP: remove krb4 support

We've announced this pending removal for a long time and we've
repeatedly asked if anyone would care or if anyone objects. Nobody has
objected. It has probably not even been working for a good while since
nobody has tested/used this code recently.

The stuff in krb4.h that was generic enough to be used by other sources
is now present in security.h