platform/upstream/curl.git
11 years agozz40-xc-ovr.m4: avoid double single-quote usage
Yang Tse [Fri, 25 Jan 2013 00:47:29 +0000 (01:47 +0100)]
zz40-xc-ovr.m4: avoid double single-quote usage

11 years agozz40-xc-ovr.m4: parentheses balancing of 'case' statements
Yang Tse [Thu, 24 Jan 2013 23:44:11 +0000 (00:44 +0100)]
zz40-xc-ovr.m4: parentheses balancing of 'case' statements

m4 quadrigraph shell comment technique allows proper autoconf
parentheses balancing in shell 'case' statements. The presence
of unbalanced parentheses may otherwise trigger expansion bugs.

11 years agosmtp.c: Corrected RFC references
Steve Holme [Thu, 24 Jan 2013 23:41:57 +0000 (23:41 +0000)]
smtp.c: Corrected RFC references

The most recent version of the SMTP RFC is RFC5321 and not RFC2821 as
previously documented.

Added RFC1870 and re-ordered list numerically.

11 years agosmtp.c: Fixed failure detection during TLS upgrade
Steve Holme [Thu, 24 Jan 2013 20:27:43 +0000 (20:27 +0000)]
smtp.c: Fixed failure detection during TLS upgrade

smtp_state_upgrade_tls() would attempt to incorrectly complete the
upgrade to smtps and start the EHLO command if
Curl_ssl_connect_nonblocking() returned a failure code and if ssldone
was set to TRUE. This would only happen when a non-blocking API hadn't
been provided by the SSL implementation and curlssl_connect() was
called underneath.

11 years agopop3.c: Fixed failure detection during TLS upgrade
Steve Holme [Thu, 24 Jan 2013 20:24:39 +0000 (20:24 +0000)]
pop3.c: Fixed failure detection during TLS upgrade

pop3_state_upgrade_tls() would attempt to incorrectly complete the
upgrade to pop3s and start the CAPA command if
Curl_ssl_connect_nonblocking() returned a failure code and if ssldone
was set to TRUE. This would only happen when a non-blocking API hadn't
been provided by the SSL implementation and curlssl_connect() was
called underneath.

11 years agoimap.c: Fixed failure detection during TLS upgrade
Steve Holme [Thu, 24 Jan 2013 20:22:20 +0000 (20:22 +0000)]
imap.c: Fixed failure detection during TLS upgrade

imap_state_upgrade_tls() would attempt to incorrectly complete the
upgrade to imaps and start the CAPABILITY command if
Curl_ssl_connect_nonblocking() returned a failure code and if ssldone
was set to TRUE. This would only happen when a non-blocking API hadn't
been provided by the SSL implementation and curlssl_connect() was
called underneath.

11 years agozz40-xc-ovr.m4: internals overhauling
Yang Tse [Thu, 24 Jan 2013 17:39:56 +0000 (18:39 +0100)]
zz40-xc-ovr.m4: internals overhauling

- Update comments
- Execute commands in subshells
- Faster path separator check
- Fix missing 'test' command
- Rename private macros
- Minimize AC_REQUIRE usage

11 years agoemail: Removed unnecessary return statements
Steve Holme [Wed, 23 Jan 2013 21:59:56 +0000 (21:59 +0000)]
email: Removed unnecessary return statements

Small tidy up to remove unnecessary return statements prior to the next
fix.

11 years agozz40-xc-ovr.m4: redirect errors and warnings to stderr
Yang Tse [Wed, 23 Jan 2013 20:52:36 +0000 (21:52 +0100)]
zz40-xc-ovr.m4: redirect errors and warnings to stderr

11 years agozz40-xc-ovr.m4: AC_REQUIRE also XC_CONFIGURE_PREAMBLE success message
Yang Tse [Wed, 23 Jan 2013 17:16:52 +0000 (18:16 +0100)]
zz40-xc-ovr.m4: AC_REQUIRE also XC_CONFIGURE_PREAMBLE success message

11 years agozz60-xc-ovr.m4: tighten XC_OVR_ZZ60 macro placement requirements
Yang Tse [Wed, 23 Jan 2013 15:06:35 +0000 (16:06 +0100)]
zz60-xc-ovr.m4: tighten XC_OVR_ZZ60 macro placement requirements

11 years agoconfigure: use XC_CONFIGURE_PREAMBLE early checks
Yang Tse [Wed, 23 Jan 2013 12:54:08 +0000 (13:54 +0100)]
configure: use XC_CONFIGURE_PREAMBLE early checks

Some basic checks we make were placed early enough in generated
configure script when using autoconf 2.5X versions. Newer autoconf
versions expand these checks much further into the configure script,
rendering them useless. Using XC_CONFIGURE_PREAMBLE fixes placement
of early intended checks across all our autoconf supported versions.

11 years agozz40-xc-ovr.m4: provide XC_CONFIGURE_PREAMBLE macro
Yang Tse [Wed, 23 Jan 2013 12:51:03 +0000 (13:51 +0100)]
zz40-xc-ovr.m4: provide XC_CONFIGURE_PREAMBLE macro

11 years agoFAQ: update the SSL lib list and wording in question 2.2
Daniel Stenberg [Wed, 23 Jan 2013 12:17:36 +0000 (13:17 +0100)]
FAQ: update the SSL lib list and wording in question 2.2

11 years agocurl_sasl.c: Corrected references to RFC
Steve Holme [Tue, 22 Jan 2013 22:02:30 +0000 (22:02 +0000)]
curl_sasl.c: Corrected references to RFC

The most recent version of the RFC is RFC4422 and not RFC2222 as
previously documented.

11 years agoemail: Corrected references to SASL RFC
Steve Holme [Tue, 22 Jan 2013 18:37:12 +0000 (18:37 +0000)]
email: Corrected references to SASL RFC

The most recent version of the SASL RFC is RFC4422 and not RFC2222 as
previously documented.

11 years agoformpost: support quotes, commas and semicolon in file names
Ulion [Mon, 21 Jan 2013 22:20:09 +0000 (23:20 +0100)]
formpost: support quotes, commas and semicolon in file names

- document the double-quote and backslash need be escaped if quoting.
- libcurl formdata escape double-quote in filename by backslash.
- curl formparse can parse filename both contains '"' and ',' or ';'.
- curl now can uploading file with ',' or ';' in filename.

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

11 years agomemanalyze.pl: handle fopen() of file names with quotes
Daniel Stenberg [Tue, 22 Jan 2013 13:39:50 +0000 (14:39 +0100)]
memanalyze.pl: handle fopen() of file names with quotes

11 years agoxc-cc-check.m4: re-evaluate exporting and AC_SUBST'ing vars
Yang Tse [Mon, 21 Jan 2013 20:21:30 +0000 (21:21 +0100)]
xc-cc-check.m4: re-evaluate exporting and AC_SUBST'ing vars

Notes:

When running a configure script that has nested packages (for example
libcurl's configure with --enable-ares and c-ares sources embedded in
curl tree) and AC_CONFIG_SUBDIRS([nested-subdir]) machinery is used to
automatically run the nested configure script from within the parent
configure script, it happens that the nested _shell_ script will
inherit shell variables exported from the parent _shell_ script.

If for example parent configure script sets and exports LDFLAGS and LIBS
variables with proper values in order to link either a parent library or
program with a library which will be configured and built by a nested
package; It will happen that when the nested configure script runs, the
nested library does not exist yet and _any_ link-test done in the nested
configure will fail, such as those that autoconf macros perform in order
to detect existing compiler and its characteristics, the result is that
the nested configure script will fail with errors such as:

configure: error: C compiler cannot create executables

For now, we no longer export variables previously exported here.

On the other hand, AC_SUBST'ing them is appropriate and even with nested
packages each package's config.status gets its own package values.

So we reinstate AC_SUBST'ing previously AC_SUBST'ed variables.

11 years agoFAQ: 3.22 curl -X gives me HTTP problems
Daniel Stenberg [Mon, 21 Jan 2013 13:33:12 +0000 (14:33 +0100)]
FAQ: 3.22 curl -X gives me HTTP problems

11 years agoxc-cc-check.m4: avoid recursive package automake'ing breakage
Yang Tse [Mon, 21 Jan 2013 04:20:29 +0000 (05:20 +0100)]
xc-cc-check.m4: avoid recursive package automake'ing breakage

11 years agoxc-cc-check.m4: mark earlier variables that are to be exported
Yang Tse [Sun, 20 Jan 2013 20:06:49 +0000 (21:06 +0100)]
xc-cc-check.m4: mark earlier variables that are to be exported

11 years agoconfigure: autotools compatibility fixes - step I
Yang Tse [Sun, 20 Jan 2013 19:23:20 +0000 (20:23 +0100)]
configure: autotools compatibility fixes - step I

Fix proper macro expansion order across autotools versions for
C compiler and preprocessor program checks.

11 years agopop3.c: Fixed conditional compilation of the apop response function
Steve Holme [Sun, 20 Jan 2013 11:09:53 +0000 (11:09 +0000)]
pop3.c: Fixed conditional compilation of the apop response function

Extended the fix from commit 8b15c84ea91e to additionally exclude
pop3_state_apop_resp() if the CURL_DISABLE_CRYPTO_AUTH flag is
defined.

11 years agoMakefile.inc: fix $(top_srcdir) not allowed in _SOURCES variables
Yang Tse [Sun, 20 Jan 2013 03:17:11 +0000 (04:17 +0100)]
Makefile.inc: fix $(top_srcdir) not allowed in _SOURCES variables

11 years agoformadd: reject trying to read a directory where a file is expected
Daniel Stenberg [Sat, 19 Jan 2013 22:08:12 +0000 (23:08 +0100)]
formadd: reject trying to read a directory where a file is expected

Bug: http://curl.haxx.se/mail/archive-2013-01/0017.html
Reported by: Ulrich Doehner

11 years agocurl_easy_send.3: document return codes
Daniel Stenberg [Sat, 19 Jan 2013 21:58:56 +0000 (22:58 +0100)]
curl_easy_send.3: document return codes

Reported by: Craig Davison
Bug: http://curl.haxx.se/mail/lib-2013-01/0234.html

11 years agocurl_easy_recv.3: document return codes
Daniel Stenberg [Sat, 19 Jan 2013 21:58:02 +0000 (22:58 +0100)]
curl_easy_recv.3: document return codes

Reported by: Craig Davison
Bug: http://curl.haxx.se/mail/lib-2013-01/0234.html

11 years agoemail: General code tidy up
Steve Holme [Sat, 19 Jan 2013 09:49:17 +0000 (09:49 +0000)]
email: General code tidy up

Corrected some function argument definitions to maximize the 80
character line length limit and be in keeping with the curl
coding style.

11 years agopop3.c: Fixed a problem with pop3s connections not connecting properly
Steve Holme [Fri, 18 Jan 2013 21:55:19 +0000 (21:55 +0000)]
pop3.c: Fixed a problem with pop3s connections not connecting properly

Fixed an issue where Curl_ssl_connect_nonblocking() wouldn't complete
correctly and the ssldone flag wouldn't be set to true for pop3s based
connections.

Bug introduced in commit: 4ffb8a6398ed.

11 years agoRELEASE-NOTES: add references to several bugfixes+changes
Daniel Stenberg [Fri, 18 Jan 2013 14:57:11 +0000 (15:57 +0100)]
RELEASE-NOTES: add references to several bugfixes+changes

11 years agoRELEASE-NOTES: Added missing imap fix
Steve Holme [Fri, 18 Jan 2013 12:15:37 +0000 (12:15 +0000)]
RELEASE-NOTES: Added missing imap fix

Added missing imap fix as per commit 709b3506cd9b.

11 years agoruntests.pl: make VPATH builds find valgrind.supp
Yang Tse [Fri, 18 Jan 2013 10:20:41 +0000 (11:20 +0100)]
runtests.pl: make VPATH builds find valgrind.supp

11 years agoRELEASE-NOTES: synced with c43127414d89
Daniel Stenberg [Thu, 17 Jan 2013 23:12:18 +0000 (00:12 +0100)]
RELEASE-NOTES: synced with c43127414d89

11 years agoalways-multi: always use non-blocking internals
Daniel Stenberg [Thu, 17 Jan 2013 11:59:23 +0000 (12:59 +0100)]
always-multi: always use non-blocking internals

Remove internal separated behavior of the easy vs multi intercace.
curl_easy_perform() is now using the multi interface itself.

Several minor multi interface quirks and bugs have been fixed in the
process.

Much help with debugging this has been provided by: Yang Tse

11 years agourl.c: fix HTTP CONNECT tunnel establishment upon delayed response
Yang Tse [Thu, 17 Jan 2013 16:07:19 +0000 (17:07 +0100)]
url.c: fix HTTP CONNECT tunnel establishment upon delayed response

Fixes initial proxy response being processed by the tunneled protocol
handler instead of the HTTP wrapper handler. This issue would trigger
upon delayed CONNECT response from the proxy.

Additionally fixes a multi interface code-path in which connections
would not time out properly.

This does not fix known bug #39.

URL: http://curl.haxx.se/mail/lib-2013-01/0191.html

11 years ago--libcurl: fix for non-zero default options
Yves Arrouye [Mon, 14 Jan 2013 19:06:32 +0000 (20:06 +0100)]
--libcurl: fix for non-zero default options

If the default value for an option taking a long as its value is non
zero, and it is set by zero by a command line option, then that command
line option is not reflected in --libcurl's output. This is because line
520-521 of tool_setopt.c look like:

if(!lval)
    skip = TRUE;

An example of a command-line option doing so is the -k option that sets
CURLOPT_SLL_VERIFYPEER and CURLOPT_SSL_VERIFYHOST to 0L, when the
defaults are non-zero.

11 years agoFTP: reject illegal port numbers in EPSV 229 responses
Daniel Stenberg [Tue, 15 Jan 2013 21:35:48 +0000 (22:35 +0100)]
FTP: reject illegal port numbers in EPSV 229 responses

11 years agocommit bc682cbd follow-up
Yang Tse [Tue, 15 Jan 2013 18:40:41 +0000 (19:40 +0100)]
commit bc682cbd follow-up

11 years agobuild: use per-target '_CPPFLAGS' for those currently using default
Yang Tse [Tue, 15 Jan 2013 15:28:07 +0000 (16:28 +0100)]
build: use per-target '_CPPFLAGS' for those currently using default

Automake documents that doing this will make it choose a different name
for intermediate object files even when sharing source files across
targets of same Makefile.am.

Up to automake 1.13.1 target's intermediate object files were placed
in the build subdirectory of the target. We depended on this, probably
undocumented behavior, to achieve same behavior as if a per-target flag
had been specified when building targets that actually belong to
different Makefile.am files.

It seems automake 1.13.2 is going to break behavior mentioned above.

So, lets use a documented behavior in order to achieve same purpose,
across automake versions, no matter where automake wishes to place
intermediate object files.

Our build targets that already were using a per-target '_CFLAGS' or
'_CPPFLAGS' need no 'fixing', these were already 'fixed'. The only
Makefile.am or Makefile.in files in libcurl's source tree touched by
this 'fix' are tests/libtest/Makefile.inc and tests/unit/Makefile.inc.

11 years agotests/libtest/Makefile.inc: sort build targets
Yang Tse [Tue, 15 Jan 2013 15:04:31 +0000 (16:04 +0100)]
tests/libtest/Makefile.inc: sort build targets

11 years agotests/Makefile.am: remove wildcard usage in EXTRA_DIST
Yang Tse [Tue, 15 Jan 2013 11:36:08 +0000 (12:36 +0100)]
tests/Makefile.am: remove wildcard usage in EXTRA_DIST

11 years agonss: fix error messages for CURLE_SSL_{CACERT,CRL}_BADFILE
Kamil Dudka [Tue, 15 Jan 2013 11:58:08 +0000 (12:58 +0100)]
nss: fix error messages for CURLE_SSL_{CACERT,CRL}_BADFILE

Do not use the error messages from NSS for errors not occurring in NSS.

11 years agoTODO: Updated following IMAP SASL additions
Steve Holme [Mon, 14 Jan 2013 18:34:32 +0000 (18:34 +0000)]
TODO: Updated following IMAP SASL additions

11 years agoconfigure: fix automake 1.13 compatibility
Yang Tse [Mon, 14 Jan 2013 03:28:56 +0000 (04:28 +0100)]
configure: fix automake 1.13 compatibility

Tested with:

buildconf: autoconf version 2.69
buildconf: autom4te version 2.69
buildconf: autoheader version 2.69
buildconf: automake version 1.13.1
buildconf: aclocal version 1.13.1
buildconf: libtool version 2.4
buildconf: GNU m4 version 1.4.16

11 years agoBUGS: update bug tracker URL
Daniel Stenberg [Sun, 13 Jan 2013 22:16:11 +0000 (23:16 +0100)]
BUGS: update bug tracker URL

... and refresh number of lines of code

11 years agoCurl_resolver_getsock: fix the function description comment
Daniel Stenberg [Sat, 12 Jan 2013 21:33:38 +0000 (22:33 +0100)]
Curl_resolver_getsock: fix the function description comment

It referred to it by the wrong name and said it returned the wrong value.

Reported by: Gisle Vanem

11 years agonss: clear session cache if a client cert from file is used
Kamil Dudka [Fri, 11 Jan 2013 09:24:21 +0000 (10:24 +0100)]
nss: clear session cache if a client cert from file is used

This commit fixes a regression introduced in 052a08ff.

NSS caches certs/keys returned by the SSL_GetClientAuthDataHook callback
and if we connect second time to the same server, the cached cert/key
pair is used.  If we use multiple client certificates for different
paths on the same server, we need to clear the session cache to force
NSS to call the hook again.  The commit 052a08ff prevented the session
cache from being cleared if a client certificate from file was used.

The condition is now fixed to cover both cases: consssl->client_nickname
is not NULL if a client certificate from the NSS database is used and
connssl->obj_clicert is not NULL if a client certificate from file is
used.

Review by: Kai Engert

11 years agosockfilt.c: log file descriptor number on read/write error
Yang Tse [Thu, 10 Jan 2013 23:03:37 +0000 (00:03 +0100)]
sockfilt.c: log file descriptor number on read/write error

11 years agopackages/DOS/common.dj: remove COFF debug info generation
Gisle Vanem [Thu, 10 Jan 2013 18:58:59 +0000 (19:58 +0100)]
packages/DOS/common.dj: remove COFF debug info generation

gcc on DOS hasn't really supported COFF-debug (-gcoff) on djgpp for a
long time.

"Sounds like the COFF debug info generation has bit-rotted in GCC.
 Nothing new here, no other platform uses COFF AFAIK."

So lets drop it too.

URL: http://curl.haxx.se/mail/lib-2013-01/0130.html

11 years agocurl: ignore SIGPIPE - compilation fix - follow-up
Yang Tse [Wed, 9 Jan 2013 21:47:41 +0000 (22:47 +0100)]
curl: ignore SIGPIPE - compilation fix - follow-up

11 years agotest servers: handle W32/W64 SIGBREAK with exit_signal_handler
Yang Tse [Wed, 9 Jan 2013 21:19:03 +0000 (22:19 +0100)]
test servers: handle W32/W64 SIGBREAK with exit_signal_handler

11 years agotest servers: fix errno, ERRNO and SOCKERRNO usage for W32/W64
Yang Tse [Wed, 9 Jan 2013 14:10:23 +0000 (15:10 +0100)]
test servers: fix errno, ERRNO and SOCKERRNO usage for W32/W64

11 years agosockfilt.c: fix some W64 compiler warnings
Yang Tse [Wed, 9 Jan 2013 12:03:53 +0000 (13:03 +0100)]
sockfilt.c: fix some W64 compiler warnings

11 years agodocs: the --with-darwinssl option is available on Apple OSes
Nick Zitzmann [Mon, 7 Jan 2013 17:17:56 +0000 (10:17 -0700)]
docs: the --with-darwinssl option is available on Apple OSes

11 years agocurl: ignore SIGPIPE - compilation fix
Yang Tse [Wed, 9 Jan 2013 00:30:08 +0000 (01:30 +0100)]
curl: ignore SIGPIPE - compilation fix

11 years agobuild: fix circular header inclusion with other packages
Yang Tse [Sun, 6 Jan 2013 18:06:49 +0000 (19:06 +0100)]
build: fix circular header inclusion with other packages

This commit renames lib/setup.h to lib/curl_setup.h and
renames lib/setup_once.h to lib/curl_setup_once.h.

Removes the need and usage of a header inclusion guard foreign
to libcurl. [1]

Removes the need and presence of an alarming notice we carried
in old setup_once.h [2]

----------------------------------------

1 - lib/setup_once.h used __SETUP_ONCE_H macro as header inclusion guard
    up to commit ec691ca3 which changed this to HEADER_CURL_SETUP_ONCE_H,
    this single inclusion guard is enough to ensure that inclusion of
    lib/setup_once.h done from lib/setup.h is only done once.

    Additionally lib/setup.h has always used __SETUP_ONCE_H macro to
    protect inclusion of setup_once.h even after commit ec691ca3, this
    was to avoid a circular header inclusion triggered when building a
    c-ares enabled version with c-ares sources available which also has
    a setup_once.h header. Commit ec691ca3 exposes the real nature of
    __SETUP_ONCE_H usage in lib/setup.h, it is a header inclusion guard
    foreign to libcurl belonging to c-ares's setup_once.h

    The renaming this commit does, fixes the circular header inclusion,
    and as such removes the need and usage of a header inclusion guard
    foreign to libcurl. Macro __SETUP_ONCE_H no longer used in libcurl.

2 - Due to the circular interdependency of old lib/setup_once.h and the
    c-ares setup_once.h header, old file lib/setup_once.h has carried
    back from 2006 up to now days an alarming and prominent notice about
    the need of keeping libcurl's and c-ares's setup_once.h in sync.

    Given that this commit fixes the circular interdependency, the need
    and presence of mentioned notice is removed.

    All mentioned interdependencies come back from now old days when
    the c-ares project lived inside a curl subdirectory. This commit
    removes last traces of such fact.

11 years agocurl: ignore SIGPIPE
Daniel Stenberg [Tue, 8 Jan 2013 22:10:26 +0000 (23:10 +0100)]
curl: ignore SIGPIPE

This is a work-around for bug #1180 which is really libcurl's inability
to ignore SIGPIPE in a few cases. With this work-around at least curl
won't suffer from it!

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

11 years agosockfilt.c: fix some compiler warnings
Yang Tse [Tue, 8 Jan 2013 18:50:50 +0000 (19:50 +0100)]
sockfilt.c: fix some compiler warnings

11 years agoRevert "configure: update req to 2.59"
Daniel Stenberg [Tue, 8 Jan 2013 18:02:08 +0000 (19:02 +0100)]
Revert "configure: update req to 2.59"

This reverts commit 7a6d8b1b1a8fcc184c36d6b6e741e32250b4bacb.

URL: http://curl.haxx.se/mail/lib-2013-01/0103.html

11 years agopop3: Added support for non-blocking SSL upgrade
Steve Holme [Tue, 8 Jan 2013 11:31:48 +0000 (11:31 +0000)]
pop3: Added support for non-blocking SSL upgrade

Added support for asynchronous SSL upgrade when using the
multi-interface.

11 years agoconfigure: update req to 2.59
Daniel Stenberg [Tue, 8 Jan 2013 10:46:50 +0000 (11:46 +0100)]
configure: update req to 2.59

I ran the 2.59 version of autoupdate that updates obsoleted configure.ac
constructs to the 2.59 standard. With a little hands-on fiddling I
prevented it from ruining the quoting in AS_HELP_STRING() uses.

I subsequently also bumped the required autoconf version to 2.59
(released in December 2003) as I don't have an older autoconf version
around to test with and I can't be bothered to install one either...

Inspired by: Björn Stenberg
Related blog post: http://cazfi.livejournal.com/195108.html

11 years agoimap.c: Small tidy up to add missing comment
Steve Holme [Mon, 7 Jan 2013 18:07:04 +0000 (18:07 +0000)]
imap.c: Small tidy up to add missing comment

11 years agoimap: Added support for sasl digest-md5 authentication
Steve Holme [Mon, 7 Jan 2013 11:01:05 +0000 (11:01 +0000)]
imap: Added support for sasl digest-md5 authentication

11 years agoimap: Added support for sasl cram-md5 authentication
Steve Holme [Mon, 7 Jan 2013 07:35:49 +0000 (07:35 +0000)]
imap: Added support for sasl cram-md5 authentication

11 years agotests/server/sockfilt.c: Fixed integer comparison warning
Marc Hoersken [Mon, 7 Jan 2013 06:47:54 +0000 (07:47 +0100)]
tests/server/sockfilt.c: Fixed integer comparison warning

11 years agotests/server/sockfilt.c: Include required Win32 headers
Marc Hoersken [Mon, 7 Jan 2013 06:34:32 +0000 (07:34 +0100)]
tests/server/sockfilt.c: Include required Win32 headers

11 years agoimap: Added support for sasl ntlm authentication
Steve Holme [Mon, 7 Jan 2013 02:47:12 +0000 (02:47 +0000)]
imap: Added support for sasl ntlm authentication

11 years agoimap: Added support for sasl login authentication
Steve Holme [Sun, 6 Jan 2013 23:14:18 +0000 (23:14 +0000)]
imap: Added support for sasl login authentication

11 years agopop3.c: Fixed default authentication detection
Steve Holme [Sun, 6 Jan 2013 23:06:29 +0000 (23:06 +0000)]
pop3.c: Fixed default authentication detection

Fixed an issue where a server may positively respond to the CAPA command
but not list clear text as a valid authentication type.

11 years agocurl_sasl.c: Small code tidy up following imap changes
Steve Holme [Sun, 6 Jan 2013 22:32:33 +0000 (22:32 +0000)]
curl_sasl.c: Small code tidy up following imap changes

11 years agosmtp.c: Small code tidy up following imap changes
Steve Holme [Sun, 6 Jan 2013 22:32:05 +0000 (22:32 +0000)]
smtp.c: Small code tidy up following imap changes

11 years agopop3.c: Small code tidy up following imap changes
Steve Holme [Sun, 6 Jan 2013 22:31:21 +0000 (22:31 +0000)]
pop3.c: Small code tidy up following imap changes

11 years agoimap: Added support for sasl plain text authentication
Steve Holme [Sun, 6 Jan 2013 22:25:14 +0000 (22:25 +0000)]
imap: Added support for sasl plain text authentication

11 years agotests/server/sockfilt.c: Fixed support for listening sockets
Marc Hoersken [Sun, 6 Jan 2013 21:29:52 +0000 (22:29 +0100)]
tests/server/sockfilt.c: Fixed support for listening sockets

This commit fixes support for sockets that are ready to accept
a new connection and have previously been put into listening mode.

It also includes changes which are the result of investigation
regarding Windows STDIN. These changes are the preparation for further
improvements regarding support for reading data from STDIN on Windows.

Open issue: WaitForMultipleObjectsEx does not support PIPE handles
which are returned by GetStdHandle while running without a GUI.

11 years agotests/server/sockfilt.c: Set Windows Console to binary mode
Marc Hoersken [Sun, 6 Jan 2013 21:25:18 +0000 (22:25 +0100)]
tests/server/sockfilt.c: Set Windows Console to binary mode

11 years agotests/server/sockfilt.c: Improved log error messages
Marc Hoersken [Sun, 6 Jan 2013 21:23:32 +0000 (22:23 +0100)]
tests/server/sockfilt.c: Improved log error messages

Include error code and parameters in error messages.

11 years agoimap: Introduced the continue response in imap_endofresp()
Steve Holme [Sun, 6 Jan 2013 20:29:19 +0000 (20:29 +0000)]
imap: Introduced the continue response in imap_endofresp()

11 years agoimap: Added support for SASL based authentication mechanism detection
Steve Holme [Sun, 6 Jan 2013 19:13:58 +0000 (19:13 +0000)]
imap: Added support for SASL based authentication mechanism detection

Added support for detecting the supported SASL authentication mechanisms
via the CAPABILITY command.

11 years agoRevert changes relative to lib/*.[ch] recent renaming
Yang Tse [Fri, 4 Jan 2013 01:50:28 +0000 (02:50 +0100)]
Revert changes relative to lib/*.[ch] recent renaming

This reverts renaming and usage of lib/*.h header files done
28-12-2012, reverting 2 commits:

  f871de0... build: make use of 76 lib/*.h renamed files
  ffd8e12... build: rename 76 lib/*.h files

This also reverts removal of redundant include guard (redundant thanks
to changes in above commits) done 2-12-2013, reverting 1 commit:

  c087374... curl_setup.h: remove redundant include guard

This also reverts renaming and usage of lib/*.c source files done
3-12-2013, reverting 3 commits:

  13606bb... build: make use of 93 lib/*.c renamed files
  5b6e792... build: rename 93 lib/*.c files
  7d83dff... build: commit 13606bbfde follow-up 1

Start of related discussion thread:

  http://curl.haxx.se/mail/lib-2013-01/0012.html

Asking for confirmation on pushing this revertion commit:

  http://curl.haxx.se/mail/lib-2013-01/0048.html

Confirmation summary:

  http://curl.haxx.se/mail/lib-2013-01/0079.html

NOTICE: The list of 2 files that have been modified by other
intermixed commits, while renamed, and also by at least one
of the 6 commits this one reverts follows below. These 2 files
will exhibit a hole in history unless git's '--follow' option
is used when viewing logs.

  lib/curl_imap.h
  lib/curl_smtp.h

11 years agomk-ca-bundle.1: convert syntax to what's used elsewhere
Daniel Stenberg [Sat, 5 Jan 2013 23:15:36 +0000 (00:15 +0100)]
mk-ca-bundle.1: convert syntax to what's used elsewhere

... mostly to make sure roffit works better on it, but also to make our
man pages use a more unified style.

11 years agomk-ca-bundle.1: mention new -f, fix outputfile output
Daniel Stenberg [Sat, 5 Jan 2013 22:49:29 +0000 (23:49 +0100)]
mk-ca-bundle.1: mention new -f, fix outputfile output

also edited a few sentences to become more verbose

11 years agomk-ca-bundle: add -f, support passing to stdout and more
Daniel Stenberg [Sat, 5 Jan 2013 22:29:04 +0000 (23:29 +0100)]
mk-ca-bundle: add -f, support passing to stdout and more

1. When the downloaded data file from Mozilla is current, but the output
bundle does not exist: continue processing to create the bundle.  The
goal is to have the output file - not just download the latest input.

2. added -f option to force re-processing the file.  Useful for
debugging/testing the process.

3. added support for output to '-' (stdout), allowing the output to be
piped.

4. All progress and error messages go to STDERR rather than STDOUT (3)

5. The script opened and closed the output file many times
unnecessarily.  It now opens it once, does the output and closes it.

6. Backup of the input files happens after successful processing, not
before.

7. The output is written to a temporary file, and renamed to the
requested name after backup - this greatly reduces the window where the
file can be seen partially written.

8. all die calls have a \n at the end to suppress perl's traceback - the
traceback isn't useful to end users.

Patch: http://curl.haxx.se/mail/lib-2013-01/0045.html

11 years agoimap test server: fix typo in name of SELECT_imap() sub definition
Yang Tse [Sat, 5 Jan 2013 12:40:34 +0000 (13:40 +0100)]
imap test server: fix typo in name of SELECT_imap() sub definition

IMAP test server breaking typo introduced with commit b708a522a1

11 years agoimap test server: Added support for the CAPABILITY command
Steve Holme [Fri, 4 Jan 2013 13:15:10 +0000 (13:15 +0000)]
imap test server: Added support for the CAPABILITY command

Added support for the CAPABILITY command in preparation of upcoming
changes.

11 years agowriteout: -w now supports remote_ip/port and local_ip/port
Daniel Stenberg [Wed, 7 Nov 2012 22:30:25 +0000 (23:30 +0100)]
writeout: -w now supports remote_ip/port and local_ip/port

Added mention to the curl.1 man page.

Test case 1223 verifies remote_ip/port.

11 years agotest 1222: 8 chars object name generation && test 1221: adjustments
Yang Tse [Thu, 3 Jan 2013 11:40:55 +0000 (12:40 +0100)]
test 1222: 8 chars object name generation  &&  test 1221: adjustments

11 years agoINTERNALS: remove "footnote" never used
Daniel Stenberg [Thu, 3 Jan 2013 11:58:45 +0000 (12:58 +0100)]
INTERNALS: remove "footnote" never used

11 years agobuild: commit 13606bbfde follow-up 1
Yang Tse [Thu, 3 Jan 2013 09:52:56 +0000 (10:52 +0100)]
build: commit 13606bbfde follow-up 1

11 years agoFAQ: Can I write a server with libcurl?
Daniel Stenberg [Thu, 3 Jan 2013 09:15:02 +0000 (10:15 +0100)]
FAQ: Can I write a server with libcurl?

11 years agobuild: rename 93 lib/*.c files
Yang Tse [Thu, 3 Jan 2013 05:13:18 +0000 (06:13 +0100)]
build: rename 93 lib/*.c files

93 lib/*.c source files renamed to use our standard naming scheme.

This commit only does the file renaming.

----------------------------------------

  renamed:    lib/amigaos.c -> lib/curl_amigaos.c
  renamed:    lib/asyn-ares.c -> lib/curl_asyn_ares.c
  renamed:    lib/asyn-thread.c -> lib/curl_asyn_thread.c
  renamed:    lib/axtls.c -> lib/curl_axtls.c
  renamed:    lib/base64.c -> lib/curl_base64.c
  renamed:    lib/bundles.c -> lib/curl_bundles.c
  renamed:    lib/conncache.c -> lib/curl_conncache.c
  renamed:    lib/connect.c -> lib/curl_connect.c
  renamed:    lib/content_encoding.c -> lib/curl_content_encoding.c
  renamed:    lib/cookie.c -> lib/curl_cookie.c
  renamed:    lib/cyassl.c -> lib/curl_cyassl.c
  renamed:    lib/dict.c -> lib/curl_dict.c
  renamed:    lib/easy.c -> lib/curl_easy.c
  renamed:    lib/escape.c -> lib/curl_escape.c
  renamed:    lib/file.c -> lib/curl_file.c
  renamed:    lib/fileinfo.c -> lib/curl_fileinfo.c
  renamed:    lib/formdata.c -> lib/curl_formdata.c
  renamed:    lib/ftp.c -> lib/curl_ftp.c
  renamed:    lib/ftplistparser.c -> lib/curl_ftplistparser.c
  renamed:    lib/getenv.c -> lib/curl_getenv.c
  renamed:    lib/getinfo.c -> lib/curl_getinfo.c
  renamed:    lib/gopher.c -> lib/curl_gopher.c
  renamed:    lib/gtls.c -> lib/curl_gtls.c
  renamed:    lib/hash.c -> lib/curl_hash.c
  renamed:    lib/hmac.c -> lib/curl_hmac.c
  renamed:    lib/hostasyn.c -> lib/curl_hostasyn.c
  renamed:    lib/hostcheck.c -> lib/curl_hostcheck.c
  renamed:    lib/hostip.c -> lib/curl_hostip.c
  renamed:    lib/hostip4.c -> lib/curl_hostip4.c
  renamed:    lib/hostip6.c -> lib/curl_hostip6.c
  renamed:    lib/hostsyn.c -> lib/curl_hostsyn.c
  renamed:    lib/http.c -> lib/curl_http.c
  renamed:    lib/http_chunks.c -> lib/curl_http_chunks.c
  renamed:    lib/http_digest.c -> lib/curl_http_digest.c
  renamed:    lib/http_negotiate.c -> lib/curl_http_negotiate.c
  renamed:    lib/http_negotiate_sspi.c -> lib/curl_http_negotiate_sspi.c
  renamed:    lib/http_proxy.c -> lib/curl_http_proxy.c
  renamed:    lib/idn_win32.c -> lib/curl_idn_win32.c
  renamed:    lib/if2ip.c -> lib/curl_if2ip.c
  renamed:    lib/imap.c -> lib/curl_imap.c
  renamed:    lib/inet_ntop.c -> lib/curl_inet_ntop.c
  renamed:    lib/inet_pton.c -> lib/curl_inet_pton.c
  renamed:    lib/krb4.c -> lib/curl_krb4.c
  renamed:    lib/krb5.c -> lib/curl_krb5.c
  renamed:    lib/ldap.c -> lib/curl_ldap.c
  renamed:    lib/llist.c -> lib/curl_llist.c
  renamed:    lib/md4.c -> lib/curl_md4.c
  renamed:    lib/md5.c -> lib/curl_md5.c
  renamed:    lib/memdebug.c -> lib/curl_memdebug.c
  renamed:    lib/mprintf.c -> lib/curl_mprintf.c
  renamed:    lib/multi.c -> lib/curl_multi.c
  renamed:    lib/netrc.c -> lib/curl_netrc.c
  renamed:    lib/non-ascii.c -> lib/curl_non_ascii.c
  renamed:    lib/curl_non-ascii.h -> lib/curl_non_ascii.h
  renamed:    lib/nonblock.c -> lib/curl_nonblock.c
  renamed:    lib/nss.c -> lib/curl_nss.c
  renamed:    lib/nwlib.c -> lib/curl_nwlib.c
  renamed:    lib/nwos.c -> lib/curl_nwos.c
  renamed:    lib/openldap.c -> lib/curl_openldap.c
  renamed:    lib/parsedate.c -> lib/curl_parsedate.c
  renamed:    lib/pingpong.c -> lib/curl_pingpong.c
  renamed:    lib/polarssl.c -> lib/curl_polarssl.c
  renamed:    lib/pop3.c -> lib/curl_pop3.c
  renamed:    lib/progress.c -> lib/curl_progress.c
  renamed:    lib/qssl.c -> lib/curl_qssl.c
  renamed:    lib/rawstr.c -> lib/curl_rawstr.c
  renamed:    lib/rtsp.c -> lib/curl_rtsp.c
  renamed:    lib/security.c -> lib/curl_security.c
  renamed:    lib/select.c -> lib/curl_select.c
  renamed:    lib/sendf.c -> lib/curl_sendf.c
  renamed:    lib/share.c -> lib/curl_share.c
  renamed:    lib/slist.c -> lib/curl_slist.c
  renamed:    lib/smtp.c -> lib/curl_smtp.c
  renamed:    lib/socks.c -> lib/curl_socks.c
  renamed:    lib/socks_gssapi.c -> lib/curl_socks_gssapi.c
  renamed:    lib/socks_sspi.c -> lib/curl_socks_sspi.c
  renamed:    lib/speedcheck.c -> lib/curl_speedcheck.c
  renamed:    lib/splay.c -> lib/curl_splay.c
  renamed:    lib/ssh.c -> lib/curl_ssh.c
  renamed:    lib/sslgen.c -> lib/curl_sslgen.c
  renamed:    lib/ssluse.c -> lib/curl_ssluse.c
  renamed:    lib/strdup.c -> lib/curl_strdup.c
  renamed:    lib/strequal.c -> lib/curl_strequal.c
  renamed:    lib/strerror.c -> lib/curl_strerror.c
  renamed:    lib/strtok.c -> lib/curl_strtok.c
  renamed:    lib/strtoofft.c -> lib/curl_strtoofft.c
  renamed:    lib/telnet.c -> lib/curl_telnet.c
  renamed:    lib/tftp.c -> lib/curl_tftp.c
  renamed:    lib/timeval.c -> lib/curl_timeval.c
  renamed:    lib/transfer.c -> lib/curl_transfer.c
  renamed:    lib/url.c -> lib/curl_url.c
  renamed:    lib/version.c -> lib/curl_version.c
  renamed:    lib/warnless.c -> lib/curl_warnless.c
  renamed:    lib/wildcard.c -> lib/curl_wildcard.c

----------------------------------------

11 years agobuild: make use of 93 lib/*.c renamed files
Yang Tse [Thu, 3 Jan 2013 02:53:06 +0000 (03:53 +0100)]
build: make use of 93 lib/*.c renamed files

93 *.c source files renamed to use our standard naming scheme.

This change affects 77 files in libcurl's source tree.

11 years agoINSTALL: unify the SSL library texts
Daniel Stenberg [Wed, 2 Jan 2013 23:04:08 +0000 (00:04 +0100)]
INSTALL: unify the SSL library texts

Make them smaller and more similar for each separate SSL library
supported by the configure build

11 years agocurl_setup.h: remove redundant include guard
Yang Tse [Wed, 2 Jan 2013 21:27:36 +0000 (22:27 +0100)]
curl_setup.h: remove redundant include guard

11 years agobuild and tests: curl_10char_object_name() shell function
Yang Tse [Wed, 2 Jan 2013 19:12:15 +0000 (20:12 +0100)]
build and tests: curl_10char_object_name() shell function

lib/objnames.inc provides definition of curl_10char_object_name() shell
function. The intended purpose of this function is to transliterate a
(*.c) source file name that may be longer than 10 characters, or not,
into a string with at most 10 characters which may be used as an OS/400
object name.

Test case 1221 does unit testng of this function and also verifies
that it is possible to generate distinct short object names for all
curl and libcurl *.c source file names.

lib/objnames-test.sh is the shell script used for test case 1221.

tests/runtests.pl modified to accept shell script test cases.

More details inside lib/objnames.inc and lib/objnames-test.sh

11 years agoconfigure.ac: replace AM_CONFIG_HEADER with AC_CONFIG_HEADERS
Yang Tse [Tue, 1 Jan 2013 18:24:54 +0000 (19:24 +0100)]
configure.ac: replace AM_CONFIG_HEADER with AC_CONFIG_HEADERS

automake 1.13 errors if AM_CONFIG_HEADER is used in configure script.
automake 1.13 no longer autoupdates AM_CONFIG_HEADER to
AC_CONFIG_HEADERS, thing which automake has been doing since automake
version 1.7

Given that our first automake supported version is automake 1.7,
simply replacing AM_CONFIG_HEADER usage with AC_CONFIG_HEADERS seems
enough to yet support same automake versions.

Dave Reisner reported issue with 1.13 and provided patch.

http://curl.haxx.se/mail/lib-2012-12/0246.html

11 years agocurl-override.m4: provide AC_CONFIG_MACRO_DIR definition conditionally
Yang Tse [Tue, 1 Jan 2013 16:26:32 +0000 (17:26 +0100)]
curl-override.m4: provide AC_CONFIG_MACRO_DIR definition conditionally

Provide a 'traceable' AC_CONFIG_MACRO_DIR definition only when using
an autoconf version that does not provide it, instead of what we were
doing up to now of providing and overriding AC_CONFIG_MACRO_DIR for
all autoconf versions.

11 years agoimap.c: Minor follow up tidy up
Steve Holme [Sun, 30 Dec 2012 12:46:45 +0000 (12:46 +0000)]
imap.c: Minor follow up tidy up

11 years agoimap: Code tidy up prior to adding support for the CAPABILITY command
Steve Holme [Sun, 30 Dec 2012 12:44:09 +0000 (12:44 +0000)]
imap: Code tidy up prior to adding support for the CAPABILITY command

* Changing the order of the state machine to represent the order in
  which commands are sent to the server.

* Reworking the imap_endofresp() function as the FETCH response doesn't
  include the command id and shouldn't be part of the length comparison
  that takes into account the id string.

11 years agopop3_doing: Applied debug info message when function fails
Steve Holme [Sat, 29 Dec 2012 23:26:17 +0000 (23:26 +0000)]
pop3_doing: Applied debug info message when function fails

Applied the same debug message as used in smtp_doing() and imap_doing()
when pop3_multi_statemach() fails.