summaryrefslogtreecommitdiff
path: root/plugins/FTPFileYM/curl-7.29.0/CHANGES
diff options
context:
space:
mode:
authorKirill Volinsky <mataes2007@gmail.com>2013-02-25 10:15:31 +0000
committerKirill Volinsky <mataes2007@gmail.com>2013-02-25 10:15:31 +0000
commitdcce39da3e6f7485dca39950dfc835563de3c3ea (patch)
tree0f0269e524cc83e41e4614e3c84abe3580ad2c9c /plugins/FTPFileYM/curl-7.29.0/CHANGES
parentd395ad5aceb634b5ccfcb8d31b4b1574e557469e (diff)
1 step: libcurl static link
git-svn-id: http://svn.miranda-ng.org/main/trunk@3763 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/FTPFileYM/curl-7.29.0/CHANGES')
-rw-r--r--plugins/FTPFileYM/curl-7.29.0/CHANGES5751
1 files changed, 5751 insertions, 0 deletions
diff --git a/plugins/FTPFileYM/curl-7.29.0/CHANGES b/plugins/FTPFileYM/curl-7.29.0/CHANGES
new file mode 100644
index 0000000000..08f0a8f60d
--- /dev/null
+++ b/plugins/FTPFileYM/curl-7.29.0/CHANGES
@@ -0,0 +1,5751 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
+ Changelog
+
+Version 7.29.0 (6 Feb 2013)
+
+Daniel Stenberg (6 Feb 2013)
+- vms: config-vms.h is removed, no use trying to distribute it
+
+- RELEASE-NOTES: mention the SASL buffer overflow
+
+- [Eldar Zaitov brought this change]
+
+ Curl_sasl_create_digest_md5_message: fix buffer overflow
+
+ When negotiating SASL DIGEST-MD5 authentication, the function
+ Curl_sasl_create_digest_md5_message() uses the data provided from the
+ server without doing the proper length checks and that data is then
+ appended to a local fixed-size buffer on the stack.
+
+ This vulnerability can be exploited by someone who is in control of a
+ server that a libcurl based program is accessing with POP3, SMTP or
+ IMAP. For applications that accept user provided URLs, it is also
+ thinkable that a malicious user would feed an application with a URL to
+ a server hosting code targetting this flaw.
+
+ Bug: http://curl.haxx.se/docs/adv_20130206.html
+
+Steve Holme (6 Feb 2013)
+- FEATURES: Removed erroneous whitespace
+
+ Removed whitespace introduced in commit 5f8f20f5e65b that caused
+ formatting issues when generating the website docs.
+
+Yang Tse (6 Feb 2013)
+- setup-vms.h: post VMS patch cleanup - III
+
+ - rename post-config-vms.h to setup-vms.h
+ - move its inclusion into proper location in curl_setup.h
+
+- vms_show: post VMS patch cleanup - II
+
+ - remove multiple declarations of vms_show and add comments
+
+- tool_main.c: post VMS patch cleanup - I
+
+ - remove header inclusion already done in curl_setup_once.h
+
+Steve Holme (6 Feb 2013)
+- FEATURES: Added SSPI to list of NTLM libraries
+
+- FEATURES: Added Secure Transport and qssl to list of SSL libraries
+
+- FEATURES: Added email feature set
+
+ Added SMTP, SMTPS, POP3, POP3S, IMAP and IMAPS features.
+
+- imap.h: Corrected incorrect comment clarification
+
+ Corrected comment clarification made in commit 167717b8069a.
+
+- COPYING: Updated copyright year to include 2013
+
+Daniel Stenberg (5 Feb 2013)
+- RELEASE-NOTES: synced with 25f351424b3538
+
+ 8 more bug fixes mentioned
+
+- [John E. Malmberg brought this change]
+
+ VMS: fix and generate the VMS build config
+
+ config_h.com is a new file that generates a config.h file based on the
+ curl_config.h.in file and a quick scan of the configure script. This is
+ actually a generic procedure that is shared with other VMS packages.
+
+ The existing pre-built config-vms.h had over 100 entries that were not
+ correct and in some cases conflicted with the build options available in
+ the build_vms.com.
+
+ generate_config_vms_h_curl.com is a helper procedure to the
+ config_h.com. It covers the cases that the generic config_h.com is not
+ able to figure out, and accepts input from the build_vms.com procedure.
+
+ build_curlbuild_h.com is a new file to generate the curlbuild.h file
+ that Curl is now using when it is using a curl_config.h file.
+
+ post-config-vms.h is a new file that is needed to provide VMS specific
+ definitions, and most of them need to be set before the system header
+ files are included.
+
+ The VMS build procedure is fixed:
+
+ 1. Fixed to link in the correct HP ssl library.
+ 2. Fixed to detect if HP Kerberos is installed.
+ 3. Fixed to detect if HP LDAP is installed.
+ 4. Fixed to detect if gnv$libzshr is installed.
+ 5. Simplified the input parameter parsing to not use a loop.
+ 6. Warn that 64 bit pointer option support is not complete
+ in comments.
+ 7. Default to IEEE floating if platform supports it so
+ resulting libcurl will be compatible with other
+ open source projects on VMS.
+ 8. Default to LARGEFILE if platform supports it.
+ 9. Default to enable SSL, LDAP, Kerberos, libz
+ if the libraries are present.
+ 10. Build with exact case global symbols for libcurl.
+ 11. Generate linker option file needed.
+ 12. Compiler list option only commonly needed items.
+ 13. fulllist option for those who really want it.
+ 14. Create debug symbol file on Alpha, IA64.
+
+- Curl_proxyCONNECT: return once CONNECT is sent
+
+ By doing this unconditionally, we infer a simpler and more defined
+ behavior. This also has the upside that test 1021 no longer fails for me
+ even if I run with valgrind.
+
+ Also fixed some wrong comments.
+
+Steve Holme (5 Feb 2013)
+- email: Reworked comments in the endofresp() functions
+
+ Tidied up the comments in the endofresp() functions to be more
+ meaningful prior to release.
+
+Marc Hoersken (5 Feb 2013)
+- schannel: Removed extended error connection setup flag
+
+ According KB975858 this flag may cause problems on Windows 7 and
+ Windows Server 2008 R2 systems. Extended error information is not
+ currently used by libcurl and therefore not a requirement.
+
+ The flag may improve the SSL-connection shutdown in case of an
+ error. This means it might be a good improvement in the future.
+
+ Fixes bug/issue #1187 - thanks for the report
+
+Daniel Stenberg (5 Feb 2013)
+- [Tor Arntsen brought this change]
+
+ singleipconnect: Update *sockp for all CURLE_OK
+
+ The 56b7c87c7 change left a case where a good sockfd was not copied to
+ *sockp before returning with CURLE_OK
+
+- curl_easy_perform: Value stored to 'mcode' is never read
+
+ pointed out by clang-analyzer
+
+- singleipconnect: remove dead assignment
+
+ pointed out by clang-analyzer
+
+Linus Nielsen Feltzing (5 Feb 2013)
+- CURLMOPT_MAXCONNECTS: restore functionality
+
+ When a connection is no longer used, it is kept in the cache. If the
+ cache is full, the oldest idle connection is closed. If no connection is
+ idle, the current one is closed instead.
+
+Steve Holme (5 Feb 2013)
+- RELEASE-NOTES: Updated following recent changes to the email protocols
+
+ Added recent additions and fixes following the changes to imap, pop3
+ and smtp. Additionally added another contributor that helped to test
+ the imap sasl changes.
+
+- email: Provided extra comments following recent pop3/imap fixes
+
+ Provided additional clarification about the logic of the authenticate()
+ functions following commit 6b6bdc83bd36 and b4270a9af1d0.
+
+Daniel Stenberg (5 Feb 2013)
+- [Andrei Kurushin brought this change]
+
+ winbuild: include version info for .dll .exe
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1186
+
+- FAQ: clarify 5.13 How do I stop an ongoing transfer
+
+ Rich Gray provided good feedback and we now clarify that you can in fact
+ stop a multi transfer at any point you like by removing the easy handle.
+
+- [Matt Arsenault brought this change]
+
+ cmake: Fix mingw build
+
+- [Sergei Nikulov brought this change]
+
+ cmake: updated OpenSSL build
+
+Steve Holme (4 Feb 2013)
+- pop3.c: Updated variable names to use shorter / more readable variant
+
+ Tidied up code from commit 6b6bdc83bdUpdated where a few instances of
+ the pop3c struct variable used the longer conndata struct rather than
+ matching what other code in pop3_authenticate() used.
+
+Guenter Knauf (4 Feb 2013)
+- updated copyright years.
+
+- configure: update the copyright years for the output.
+
+Steve Holme (3 Feb 2013)
+- imap: Fixed no known authentication mechanism when fallback is required
+
+ Fixed an issue where (lib)curl is compiled without support for a
+ supported challenge-response based SASL authentication mechanism, such
+ as CRAM-MD5 or NTLM, the server doesn't support the LOGIN or PLAIN
+ mechanisms and (lib)curl doesn't fallback to Clear Text authentication.
+
+ Note: In order to fallback to Clear Text authentication properly this
+ fix adds support for the LOGINDISABLED server capability.
+ imap: Fixed no known authentication mechanism when fallback is required
+
+ Fixed an issue where (lib)curl is compiled without support for a
+ supported challenge-response based SASL authentication mechanism, such
+ as CRAM-MD5 or NTLM, the server doesn't support the LOGIN or PLAIN
+ mechanisms and (lib)curl doesn't fallback to Clear Text authentication.
+
+ Note: In order to fallback to Clear Text authentication properly this
+ fix adds support for the LOGINDISABLED server capability.
+
+ Related bug: http://curl.haxx.se/mail/lib-2013-02/0004.html
+ Reported by: Stanislav Ivochkin
+
+- pop3: Fixed no known authentication mechanism when fallback is required
+
+ Fixed an issue where (lib)curl is compiled without support for a
+ supported challenge-response based SASL authentication mechanism, such
+ as CRAM-MD5 or NTLM, the server doesn't support the LOGIN or PLAIN
+ mechanisms and (lib)curl doesn't fallback to APOP or Clear Text
+ authentication.
+
+ Bug: http://curl.haxx.se/mail/lib-2013-02/0004.html
+ Reported by: Stanislav Ivochkin
+
+Daniel Stenberg (1 Feb 2013)
+- singleipconnect: simplify and clean up
+
+ Remove timeout argument that's never used.
+
+ Make the actual connection get detected on a single spot to reduce code
+ duplication.
+
+ Store the IPv6 state already when the connection is attempted.
+
+- Curl_perfom: removed
+
+ Curl_perfom is no longer used anywhere since the always-multi commit
+ c43127414d89ccb9, and some related functions were used only from within
+ Curl_perfom.
+
+Guenter Knauf (30 Jan 2013)
+- Updated date.
+
+Yang Tse (30 Jan 2013)
+- zz40-xc-ovr.m4: fix 'wc' detection - follow-up 2
+
+ - Fix a pair of single quotes to double quotes.
+
+ URL: http://curl.haxx.se/mail/lib-2013-01/0355.html
+ Reported by: Tor Arntsen
+
+- zz40-xc-ovr.m4: fix 'wc' detection - follow-up
+
+ - Take into account that 'wc' may return leading spaces and/or tabs.
+
+ - Set initial IFS to space, tab and newline.
+
+- zz40-xc-ovr.m4: fix 'wc' detection
+
+ - Take into account that 'wc' may return leading spaces.
+
+ - Set internationalization behavior variables.
+
+ Tor Arntsen analyzed and reported the issue.
+
+ URL: http://curl.haxx.se/mail/lib-2013-01/0351.html
+
+- zz40-xc-ovr.m4: check another three basic utilities
+
+Guenter Knauf (29 Jan 2013)
+- Fixed debug.c to work again unchanged.
+
+ Added CURLOPT_FOLLOWLOCATION since example.com is now redirected.
+
+Daniel Stenberg (29 Jan 2013)
+- [Nick Zitzmann brought this change]
+
+ darwinssl: Fix bug where packets were sometimes transmitted twice
+
+ There was a bug where, if SSLWrite() returned errSSLWouldBlock but did
+ succeed in transmitting at least something, then we'd incorrectly
+ resend the packet. Now we never take errSSLWouldBlock as a sign that
+ nothing was transferred to/from the server.
+
+ Bug: http://curl.haxx.se/mail/lib-2013-01/0295.html
+ Reported by: Bruno de Carvalho
+
+- [Nick Zitzmann brought this change]
+
+ FAQ: "Darwinssl" is AKA "Secure Transport" and supports NTLM
+
+- RELEASE-NOTES: only list Nick once
+
+ Even though he's a fine dude, once is enough for this time!
+
+Yang Tse (28 Jan 2013)
+- zz40-xc-ovr.m4: 1.0 interface stabilization
+
+ - Stabilization results in 4 public interface m4 macros:
+ XC_CONFIGURE_PREAMBLE
+ XC_CONFIGURE_PREAMBLE_VER_MAJOR
+ XC_CONFIGURE_PREAMBLE_VER_MINOR
+ XC_CHECK_PATH_SEPARATOR
+ - Avoid one level of internal indirection
+ - Update comments
+ - Drop XC_OVR_ZZ40 macro
+
+Kamil Dudka (28 Jan 2013)
+- docs: fix typos in man pages
+
+ Reported by: Jiri Jaburek
+ Bug: https://bugzilla.redhat.com/896544
+
+- docs: update the comments about loading CA certs with NSS
+
+ Bug: https://bugzilla.redhat.com/696783
+
+Guenter Knauf (28 Jan 2013)
+- Updated dependency libs.
+
+- Fixed simple.c to work again unchanged.
+
+ Added CURLOPT_FOLLOWLOCATION since example.com is now redirected.
+
+Steve Holme (27 Jan 2013)
+- smtp.c: Fixed unnecessary state change if starttls fails
+
+ The state machine should only be changed to SMTP_STARTTLS when the
+ STARTTLS command has been successfully sent to the server.
+
+- pop3.c: Fixed unnecessary state change if starttls fails
+
+ The state machine should only be changed to POP3_STARTTLS when the
+ STLS command has been successfully sent to the server.
+
+- imap.c: Fixed unnecessary state change if starttls fails
+
+ The state machine should only be changed to IMAP_STARTTLS when the
+ STARTTLS command has been successfully sent to the server.
+
+- email: Updated comment regarding ssldone usage
+
+ Updated the ssldone comment as multi mode is always used internally now.
+
+Yang Tse (26 Jan 2013)
+- zz40-xc-ovr.m4: emit witness message in configure BODY
+
+ This avoids witness message in output when running configure --help,
+ while sending the message to config.log for other configure runs.
+
+Steve Holme (25 Jan 2013)
+- smtp.c: Added comments to smtp_endofresp()
+
+ Minor code tidy up to add comments similar to those used in the pop3
+ and imap end of resp functions, in order to assist anyone reading the
+ code and highlight the similarities between each of these protocols.
+
+Yang Tse (25 Jan 2013)
+- zz40-xc-ovr.m4: truly do version conditional overriding
+
+ - version conditional overriding
+ - catch unexpanded XC macros
+ - fix double words in comments
+
+- zz40-xc-ovr.m4: fix variable assignment of subshell output bashism
+
+ Tor Arntsen analyzed and reported the issue.
+
+ URL: http://curl.haxx.se/mail/lib-2013-01/0306.html
+
+- zz40-xc-ovr.m4: reinstate strict AC_REQUIRE macro dependencies
+
+- zz40-xc-ovr.m4: avoid double single-quote usage
+
+- 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.
+
+Steve Holme (24 Jan 2013)
+- 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.
+
+- 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.
+
+- 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.
+
+- 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.
+
+Yang Tse (24 Jan 2013)
+- 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
+
+Steve Holme (23 Jan 2013)
+- email: Removed unnecessary return statements
+
+ Small tidy up to remove unnecessary return statements prior to the next
+ fix.
+
+Yang Tse (23 Jan 2013)
+- zz40-xc-ovr.m4: redirect errors and warnings to stderr
+
+- zz40-xc-ovr.m4: AC_REQUIRE also XC_CONFIGURE_PREAMBLE success message
+
+- zz60-xc-ovr.m4: tighten XC_OVR_ZZ60 macro placement requirements
+
+- 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.
+
+- zz40-xc-ovr.m4: provide XC_CONFIGURE_PREAMBLE macro
+
+Daniel Stenberg (23 Jan 2013)
+- FAQ: update the SSL lib list and wording in question 2.2
+
+Steve Holme (22 Jan 2013)
+- curl_sasl.c: Corrected references to RFC
+
+ The most recent version of the RFC is RFC4422 and not RFC2222 as
+ previously documented.
+
+- email: Corrected references to SASL RFC
+
+ The most recent version of the SASL RFC is RFC4422 and not RFC2222 as
+ previously documented.
+
+Daniel Stenberg (22 Jan 2013)
+- [Ulion brought this change]
+
+ 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
+
+- memanalyze.pl: handle fopen() of file names with quotes
+
+Yang Tse (21 Jan 2013)
+- 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.
+
+Daniel Stenberg (21 Jan 2013)
+- FAQ: 3.22 curl -X gives me HTTP problems
+
+Yang Tse (21 Jan 2013)
+- xc-cc-check.m4: avoid recursive package automake'ing breakage
+
+- xc-cc-check.m4: mark earlier variables that are to be exported
+
+- configure: autotools compatibility fixes - step I
+
+ Fix proper macro expansion order across autotools versions for
+ C compiler and preprocessor program checks.
+
+Steve Holme (20 Jan 2013)
+- 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.
+
+Yang Tse (20 Jan 2013)
+- Makefile.inc: fix $(top_srcdir) not allowed in _SOURCES variables
+
+Daniel Stenberg (19 Jan 2013)
+- 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
+
+- curl_easy_send.3: document return codes
+
+ Reported by: Craig Davison
+ Bug: http://curl.haxx.se/mail/lib-2013-01/0234.html
+
+- curl_easy_recv.3: document return codes
+
+ Reported by: Craig Davison
+ Bug: http://curl.haxx.se/mail/lib-2013-01/0234.html
+
+Steve Holme (19 Jan 2013)
+- 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.
+
+- 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.
+
+Daniel Stenberg (18 Jan 2013)
+- RELEASE-NOTES: add references to several bugfixes+changes
+
+Steve Holme (18 Jan 2013)
+- RELEASE-NOTES: Added missing imap fix
+
+ Added missing imap fix as per commit 709b3506cd9b.
+
+Yang Tse (18 Jan 2013)
+- runtests.pl: make VPATH builds find valgrind.supp
+
+Daniel Stenberg (18 Jan 2013)
+- RELEASE-NOTES: synced with c43127414d89
+
+- 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
+
+Yang Tse (17 Jan 2013)
+- 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
+
+Daniel Stenberg (16 Jan 2013)
+- [Yves Arrouye brought this change]
+
+ --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.
+
+- FTP: reject illegal port numbers in EPSV 229 responses
+
+Yang Tse (15 Jan 2013)
+- commit bc682cbd follow-up
+
+- 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.
+
+- tests/libtest/Makefile.inc: sort build targets
+
+- tests/Makefile.am: remove wildcard usage in EXTRA_DIST
+
+Kamil Dudka (15 Jan 2013)
+- nss: fix error messages for CURLE_SSL_{CACERT,CRL}_BADFILE
+
+ Do not use the error messages from NSS for errors not occurring in NSS.
+
+Steve Holme (14 Jan 2013)
+- TODO: Updated following IMAP SASL additions
+
+Yang Tse (14 Jan 2013)
+- 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
+
+Daniel Stenberg (13 Jan 2013)
+- BUGS: update bug tracker URL
+
+ ... and refresh number of lines of code
+
+- 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
+
+Kamil Dudka (11 Jan 2013)
+- 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
+
+Yang Tse (11 Jan 2013)
+- sockfilt.c: log file descriptor number on read/write error
+
+- [Gisle Vanem brought this change]
+
+ 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
+
+- curl: ignore SIGPIPE - compilation fix - follow-up
+
+- test servers: handle W32/W64 SIGBREAK with exit_signal_handler
+
+- test servers: fix errno, ERRNO and SOCKERRNO usage for W32/W64
+
+- sockfilt.c: fix some W64 compiler warnings
+
+Daniel Stenberg (9 Jan 2013)
+- [Nick Zitzmann brought this change]
+
+ docs: the --with-darwinssl option is available on Apple OSes
+
+Yang Tse (9 Jan 2013)
+- curl: ignore SIGPIPE - compilation fix
+
+- 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.
+
+Daniel Stenberg (8 Jan 2013)
+- 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
+
+Yang Tse (8 Jan 2013)
+- sockfilt.c: fix some compiler warnings
+
+Daniel Stenberg (8 Jan 2013)
+- Revert "configure: update req to 2.59"
+
+ This reverts commit 7a6d8b1b1a8fcc184c36d6b6e741e32250b4bacb.
+
+ URL: http://curl.haxx.se/mail/lib-2013-01/0103.html
+
+Steve Holme (8 Jan 2013)
+- pop3: Added support for non-blocking SSL upgrade
+
+ Added support for asynchronous SSL upgrade when using the
+ multi-interface.
+
+Daniel Stenberg (8 Jan 2013)
+- 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
+
+Steve Holme (7 Jan 2013)
+- imap.c: Small tidy up to add missing comment
+
+- imap: Added support for sasl digest-md5 authentication
+
+- imap: Added support for sasl cram-md5 authentication
+
+Marc Hoersken (7 Jan 2013)
+- tests/server/sockfilt.c: Fixed integer comparison warning
+
+- tests/server/sockfilt.c: Include required Win32 headers
+
+Steve Holme (7 Jan 2013)
+- imap: Added support for sasl ntlm authentication
+
+- imap: Added support for sasl login authentication
+
+- 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.
+
+- curl_sasl.c: Small code tidy up following imap changes
+
+- smtp.c: Small code tidy up following imap changes
+
+- pop3.c: Small code tidy up following imap changes
+
+- imap: Added support for sasl plain text authentication
+
+Marc Hoersken (6 Jan 2013)
+- 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.
+
+- tests/server/sockfilt.c: Set Windows Console to binary mode
+
+- tests/server/sockfilt.c: Improved log error messages
+
+ Include error code and parameters in error messages.
+
+Steve Holme (6 Jan 2013)
+- imap: Introduced the continue response in imap_endofresp()
+
+- imap: Added support for SASL based authentication mechanism detection
+
+ Added support for detecting the supported SASL authentication mechanisms
+ via the CAPABILITY command.
+
+Yang Tse (6 Jan 2013)
+- 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
+
+Daniel Stenberg (6 Jan 2013)
+- 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.
+
+- mk-ca-bundle.1: mention new -f, fix outputfile output
+
+ also edited a few sentences to become more verbose
+
+- 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
+
+Yang Tse (5 Jan 2013)
+- imap test server: fix typo in name of SELECT_imap() sub definition
+
+ IMAP test server breaking typo introduced with commit b708a522a1
+
+Steve Holme (4 Jan 2013)
+- imap test server: Added support for the CAPABILITY command
+
+ Added support for the CAPABILITY command in preparation of upcoming
+ changes.
+
+Daniel Stenberg (3 Jan 2013)
+- 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.
+
+Yang Tse (3 Jan 2013)
+- test 1222: 8 chars object name generation && test 1221: adjustments
+
+Daniel Stenberg (3 Jan 2013)
+- INTERNALS: remove "footnote" never used
+
+Yang Tse (3 Jan 2013)
+- build: commit 13606bbfde follow-up 1
+
+Daniel Stenberg (3 Jan 2013)
+- FAQ: Can I write a server with libcurl?
+
+Yang Tse (3 Jan 2013)
+- 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
+
+ ----------------------------------------
+
+- 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.
+
+Daniel Stenberg (3 Jan 2013)
+- INSTALL: unify the SSL library texts
+
+ Make them smaller and more similar for each separate SSL library
+ supported by the configure build
+
+Yang Tse (2 Jan 2013)
+- curl_setup.h: remove redundant include guard
+
+- 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
+
+- 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
+
+- 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.
+
+Steve Holme (30 Dec 2012)
+- imap.c: Minor follow up tidy up
+
+- 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.
+
+- 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.
+
+- imap_doing: don't call imap_dophase_done() if already failed
+
+ Applied the POP3 fix from commit 2897ce7dc2e1 so imap_dophase_done()
+ isn't called if imap_multi_statemach() fails.
+
+- smtp_doing: don't call smtp_dophase_done() if already failed
+
+ Applied the POP3 fix from commit 2897ce7dc2e1 so smtp_dophase_done()
+ isn't called if smtp_multi_statemach() fails.
+
+Yang Tse (29 Dec 2012)
+- examples/certinfo.c: fix compiler warning
+
+Steve Holme (29 Dec 2012)
+- pop3.c: Removed unnecessary POP3_STOP state changes
+
+ Removed unnecessary state changes in pop3_state_starttls_resp()
+ following previous fix in IMAP module.
+
+- smtp.c: Added extra comments around SMTP_STOP state change
+
+ Provided extra comments in the SMTP module following previous IMAP fix.
+
+- imap.c: Fixed bad state error when logging in with invalid credentials
+
+ Fixed a problem with the state machine when attempting to log in with
+ invalid credentials. The server would report login failure but libcurl
+ would not read the response due to inappropriate IMAP_STOP states being
+ set after the login was sent.
+
+Yang Tse (29 Dec 2012)
+- imap.c: remove trailing whitespace
+
+Steve Holme (28 Dec 2012)
+- imap.c: Code tidy up - Part 2
+
+- imap.c: Code tidy up - Part 1
+
+ Applied some of the comment and layout changes that had already been
+ applied to the pop3 and smtp code over the last 6 to 9 months.
+
+ This is in preparation of adding SASL based authentication.
+
+- pop3.c: Minor code tidy up
+
+ Minor tidy up of comments and layout prior to next part of imap work.
+
+- smtp: Minor code tidy up
+
+ Minor tidy up of comments and layout prior to next part of imap work.
+
+- curl_imap.h: Tidy up of comments to be more readable
+
+- imap.c: Code tidy up renaming imapsendf() to imap_sendf()
+
+ Renamed imapsendf() to imap_sendf() to be more in keeping with the
+ other imap functions as well as Curl_pp_sendf() that it replaces.
+
+Yang Tse (28 Dec 2012)
+- build: rename 76 lib/*.h files
+
+ 76 private header files renamed to use our standard naming scheme.
+
+ This commit only does the file renaming.
+
+ ----------------------------------------
+
+ renamed: amigaos.h -> curl_amigaos.h
+ renamed: arpa_telnet.h -> curl_arpa_telnet.h
+ renamed: asyn.h -> curl_asyn.h
+ renamed: axtls.h -> curl_axtls.h
+ renamed: bundles.h -> curl_bundles.h
+ renamed: conncache.h -> curl_conncache.h
+ renamed: connect.h -> curl_connect.h
+ renamed: content_encoding.h -> curl_content_encoding.h
+ renamed: cookie.h -> curl_cookie.h
+ renamed: cyassl.h -> curl_cyassl.h
+ renamed: dict.h -> curl_dict.h
+ renamed: easyif.h -> curl_easyif.h
+ renamed: escape.h -> curl_escape.h
+ renamed: file.h -> curl_file.h
+ renamed: fileinfo.h -> curl_fileinfo.h
+ renamed: formdata.h -> curl_formdata.h
+ renamed: ftp.h -> curl_ftp.h
+ renamed: ftplistparser.h -> curl_ftplistparser.h
+ renamed: getinfo.h -> curl_getinfo.h
+ renamed: gopher.h -> curl_gopher.h
+ renamed: gtls.h -> curl_gtls.h
+ renamed: hash.h -> curl_hash.h
+ renamed: hostcheck.h -> curl_hostcheck.h
+ renamed: hostip.h -> curl_hostip.h
+ renamed: http.h -> curl_http.h
+ renamed: http_chunks.h -> curl_http_chunks.h
+ renamed: http_digest.h -> curl_http_digest.h
+ renamed: http_negotiate.h -> curl_http_negotiate.h
+ renamed: http_proxy.h -> curl_http_proxy.h
+ renamed: if2ip.h -> curl_if2ip.h
+ renamed: imap.h -> curl_imap.h
+ renamed: inet_ntop.h -> curl_inet_ntop.h
+ renamed: inet_pton.h -> curl_inet_pton.h
+ renamed: krb4.h -> curl_krb4.h
+ renamed: llist.h -> curl_llist.h
+ renamed: memdebug.h -> curl_memdebug.h
+ renamed: multiif.h -> curl_multiif.h
+ renamed: netrc.h -> curl_netrc.h
+ renamed: non-ascii.h -> curl_non-ascii.h
+ renamed: nonblock.h -> curl_nonblock.h
+ renamed: nssg.h -> curl_nssg.h
+ renamed: parsedate.h -> curl_parsedate.h
+ renamed: pingpong.h -> curl_pingpong.h
+ renamed: polarssl.h -> curl_polarssl.h
+ renamed: pop3.h -> curl_pop3.h
+ renamed: progress.h -> curl_progress.h
+ renamed: qssl.h -> curl_qssl.h
+ renamed: rawstr.h -> curl_rawstr.h
+ renamed: rtsp.h -> curl_rtsp.h
+ renamed: select.h -> curl_select.h
+ renamed: sendf.h -> curl_sendf.h
+ renamed: setup.h -> curl_setup.h
+ renamed: setup_once.h -> curl_setup_once.h
+ renamed: share.h -> curl_share.h
+ renamed: slist.h -> curl_slist.h
+ renamed: smtp.h -> curl_smtp.h
+ renamed: sockaddr.h -> curl_sockaddr.h
+ renamed: socks.h -> curl_socks.h
+ renamed: speedcheck.h -> curl_speedcheck.h
+ renamed: splay.h -> curl_splay.h
+ renamed: ssh.h -> curl_ssh.h
+ renamed: sslgen.h -> curl_sslgen.h
+ renamed: ssluse.h -> curl_ssluse.h
+ renamed: strdup.h -> curl_strdup.h
+ renamed: strequal.h -> curl_strequal.h
+ renamed: strerror.h -> curl_strerror.h
+ renamed: strtok.h -> curl_strtok.h
+ renamed: strtoofft.h -> curl_strtoofft.h
+ renamed: telnet.h -> curl_telnet.h
+ renamed: tftp.h -> curl_tftp.h
+ renamed: timeval.h -> curl_timeval.h
+ renamed: transfer.h -> curl_transfer.h
+ renamed: url.h -> curl_url.h
+ renamed: urldata.h -> curl_urldata.h
+ renamed: warnless.h -> curl_warnless.h
+ renamed: wildcard.h -> curl_wildcard.h
+
+ ----------------------------------------
+
+- build: make use of 76 lib/*.h renamed files
+
+ 76 private header files renamed to use our standard naming scheme.
+
+ This change affects 322 files in libcurl's source tree.
+
+- lib/*.h: use our standard naming scheme for header inclusion guards
+
+Steve Holme (28 Dec 2012)
+- imsp.c: Fixed usernames and passwords that contain escape characters
+
+ Fixed a problem with sending usernames and passwords that contain
+ backslash, quotation mark and space characters.
+
+Daniel Stenberg (27 Dec 2012)
+- curl.1: extend the -X, --request description
+
+- RELEASE-NOTES: synced with e3ed2b82e6
+
+- [Nick Zitzmann brought this change]
+
+ darwinssl: Fixed inability to disable peer verification
+
+ ... on Snow Leopard and Lion
+
+ Snow Leopard introduced the SSLSetSessionOption() function, but it
+ doesn't disable peer verification as expected on Snow Leopard or
+ Lion (it works as expected in Mountain Lion). So we now use sysctl()
+ to detect whether or not the user is using Snow Leopard or Lion,
+ and if that's the case, then we now use the deprecated
+ SSLSetEnableCertVerify() function instead to disable peer verification.
+
+Yang Tse (26 Dec 2012)
+- curl tool: rename hugehelp files to tool_hugehelp
+
+- curl tool: renaming hugehelp files to tool_hugehelp
+
+- sockfilt.c: commit b44da5a82a follow-up 2
+
+- sockfilt.c: commit b44da5a82a follow-up
+
+- sockfilt.c: fix some compiler warnings
+
+- curl_multi_remove_handle: commit 0aabfd9963 follow-up
+
+Daniel Stenberg (25 Dec 2012)
+- lib556: enable VERBOSE to ease debugging on failures
+
+Marc Hoersken (25 Dec 2012)
+- socklift.c: Quick fix to re-add missing code
+
+- socklift.c: Added select_ws function to support Windows
+
+ WinSock select() does not support standard file descriptors,
+ it can only check SOCKETs. The following function is an attempt
+ to create a select() function with support for other handles.
+
+Yang Tse (25 Dec 2012)
+- Enable tests 1503, 1504 and 1505
+
+- curl_multi_remove_handle: fix memory leak triggered with CURLOPT_RESOLVE
+
+- Curl_hash_clean: OOM handling fix
+
+- test 1504 and 1505: same as 1502 but with different cleanup sequences
+
+Daniel Stenberg (24 Dec 2012)
+- Curl_conncache_foreach: allow callback to break loop
+
+ ... and have it take a proper 'struct connectdata *' as first argument
+
+- pop3_doing: don't call pop3_dophase_done() if already failed
+
+ ... it also clobbered the 'result' return value so that it wouldn't
+ return the error back to the parent function properly, which broke test
+ 809 when run with 'multi-always'.
+
+Yang Tse (23 Dec 2012)
+- test 1503: same as 1502 but with a different cleanup sequence
+
+- test 1502: OOM handling fixes
+
+- curl_multi_wait: OOM handling fix
+
+- [Daniel Stenberg brought this change]
+
+ curl_multi_wait: avoid an unnecessary memory allocation
+
+- runtests.pl: prepend $srcdir to HTTPTLS server config files path
+
+- multi.c: OOM handling fix
+
+- lib543.c: OOM handling fixes
+
+- configure: add internal sanity check (warn only) on vars for makefiles
+
+Daniel Stenberg (21 Dec 2012)
+- SCP: relative path didn't work
+
+ When prefixing a path with /~/ it is supposed to be used relative to the
+ user's home directory but it didn't work. Now we cut off the entire
+ three byte sequenct "/~/" which seems to be how OpenSSH does it.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1173
+ Reported by: Balaji Parasuram
+
+Yang Tse (21 Dec 2012)
+- configure: LIBMETALINK_CFLAGS actually is LIBMETALINK_CPPFLAGS
+
+- configure: add minimal sanity check on user provided CFLAGS and CPPFLAGS
+
+- bundles connection caching: some out of memory handling fixes
+
+- libntlmconnect.c: fix compiler warnings and OOM handling
+
+- configure.ac: clear local test intended variables before use
+
+- VC6 IDE: link with advapi32.lib when using WIN32 crypto API (md5.c)
+
+- curl-functions.m4: improve gethostname arg 2 data type check
+
+- setup_once.h: HP-UX specific 'bool', 'false' and 'true' definitions.
+
+ Also reverts commit f254c59dc7
+
+- configure: check if compiler halts on function prototype mismatch
+
+- warnless.c: fix compiler warnings
+
+- curl-functions.m4: add gethostname arg 2 data type check and definition
+
+Daniel Stenberg (14 Dec 2012)
+- [Nick Zitzmann brought this change]
+
+ darwinssl: Fix implicit conversion compiler warnings
+
+ The Clang compiler found a few implicit conversion problems that have
+ now been fixed.
+
+Yang Tse (14 Dec 2012)
+- setup_once.h: HP-UX <sys/socket.h> issue workaround
+
+ Issue: When building a 32bit target with large file support HP-UX
+ <sys/socket.h> header file may simultaneously provide two different
+ sets of declarations for sendfile and sendpath functions, one with
+ static and another with external linkage. Given that we do not use
+ mentioned functions we really don't care which linkage is the
+ appropriate one, but on the other hand, the double declaration emmits
+ warnings when using the HP-UX compiler and errors when using modern
+ gcc versions resulting in fatal compilation errors.
+
+ Mentioned issue is now fixed as long as we don't use sendfile nor
+ sendpath functions.
+
+- setup_once.h: refactor inclusion of <unistd.h> and <sys/socket.h>
+
+ Inclusion of top two most included header files now done in setup_once.h
+
+- setup_once.h: HP-UX specific TRUE and FALSE definitions
+
+ Some HP-UX system headers require TRUE defined to 1 and FALSE to 0.
+
+Daniel Stenberg (12 Dec 2012)
+- gopher: #include cleanup
+
+ Remove all system file includes from this file as they're not needed
+
+ Reported by: Dan Fandrich
+
+Yang Tse (11 Dec 2012)
+- examples/simplessl.c: fix compiler warning
+
+- examples/externalsocket.c: fix SunPro compilation issue
+
+- examples/simplessl.c: fix compiler warning
+
+- build: add bundles and conncache files to other build systems
+
+- conncache: fix enumerated type mixed with another type
+
+- examples/anyauthput.c: fix Tru64 compilation issue
+
+Daniel Stenberg (8 Dec 2012)
+- [Colin Watson brought this change]
+
+ configure: fix cross pkg-config detection
+
+ When cross-compiling, CURL_CHECK_PKGCONFIG was checking for the cross
+ pkg-config using ${host}-pkg-config.
+
+ The gold standard for doing this correctly is pkg-config's own macro,
+ PKG_PROG_PKG_CONFIG. However, on the assumption that you have a good
+ reason not to use that directly (reduced dependencies for maintainer
+ builds?), the behaviour of cURL's version should at least match.
+ PKG_PROG_PKG_CONFIG uses AC_PATH_TOOL, which ultimately ends up trying
+ ${host_alias}-pkg-config; this is not quite the same as what cURL does,
+ and may differ because ${host} has been run through config.sub. For
+ instance, when cross-building to the armhf architecture on Ubuntu,
+ ${host_alias} is arm-linux-gnueabihf while ${host} is
+ arm-unknown-linux-gnueabihf. This may also have been the cause of the
+ problem reported at http://curl.haxx.se/mail/lib-2012-04/0224.html.
+
+ AC_PATH_TOOL is significantly simpler than cURL's current code, and
+ dates back to well before the current minimum of Autoconf 2.57, so let's
+ use it instead.
+
+- [Linus Nielsen Feltzing brought this change]
+
+ Introducing a new persistent connection caching system using "bundles".
+
+ A bundle is a list of all persistent connections to the same host.
+ The connection cache consists of a hash of bundles, with the
+ hostname as the key.
+ The benefits may not be obvious, but they are two:
+
+ 1) Faster search for connections to reuse, since the hash
+ lookup only finds connections to the host in question.
+ 2) It lays out the groundworks for an upcoming patch,
+ which will introduce multiple HTTP pipelines.
+
+ This patch also removes the awkward list of "closure handles",
+ which were needed to send QUIT commands to the FTP server
+ when closing a connection.
+ Now we allocate a separate closure handle and use that
+ one to close all connections.
+
+ This has been tested in a live system for a few weeks, and of
+ course passes the test suite.
+
+- [Fabian Keil brought this change]
+
+ runtests and friends: Do not add undefined values to @INC
+
+ On FreeBSD this fixes the warning:
+ Use of uninitialized value $p in string eq at /usr/local/lib/perl5/5.14.2/BSDPAN/BSDPAN.pm line 36.
+
+Steve Holme (5 Dec 2012)
+- Merge pull request #52 from isn-/master
+
+ small compilation fix
+
+Stanislav Ivochkin (5 Dec 2012)
+- build: fix compilation with CURL_DISABLE_CRYPTO_AUTH flag
+
+Yang Tse (5 Dec 2012)
+- libtest: fix some compiler warnings
+
+- examples: fix compilation issues - commit 7332a7cafb follow-up
+
+- examples: fix compilation issues - commit 23f8dca6fb follow-up
+
+- examples: fix compilation issues
+
+- build: explain current role of LIBS in our Makefile.am files
+
+ BLANK_AT_MAKETIME may be used in our Makefile.am files to blank
+ LIBS variable used in generated makefile at makefile processing
+ time. Doing this functionally prevents LIBS from being used for
+ all link targets in given makefile.
+
+Daniel Stenberg (4 Dec 2012)
+- multi: fix re-sending request on early connection close
+
+ This handling already works with the easy-interface code. When a request
+ is sent on a re-used connection that gets closed by the server at the
+ same time as the request is sent, the situation may occur so that we can
+ send the request and we discover the broken connection as a RECV_ERROR
+ in the PERFORM state and then the request needs to be retried on a fresh
+ connection. Test 64 broke with 'multi-always-internally'.
+
+Yang Tse (4 Dec 2012)
+- configure: add minimal sanity check on user provided LIBS and LDFLAGS
+
+- build: prevent global LIBS from influencing src and lib build targets
+
+ Currently, LIBS is already used through other macros.
+
+Kamil Dudka (3 Dec 2012)
+- nss: prevent NSS from crashing on client auth hook failure
+
+ Although it is not explicitly stated in the documentation, NSS uses
+ *pRetCert and *pRetKey even if the client authentication hook returns
+ a failure. Namely, if we destroy *pRetCert without clearing *pRetCert
+ afterwards, NSS destroys the certificate once again, which causes a
+ double free.
+
+ Reported by: Bob Relyea
+
+Yang Tse (30 Nov 2012)
+- testcurl.pl: build example programs for several autobuilds
+
+ Affected autobuilds: IRIX, AIX, Tru64 and AIX.
+
+- build: prevent global LIBS from influencing examples build targets
+
+- build: prevent global LIBS from influencing libtest build targets
+
+- build: prevent global LIBS from influencing test server build targets
+
+- build: fix Windows build targets damaged since commit 550e403f00
+
+- build: avoid linkage of directly unused libraries
+
+- dd missing NTLM feature for tests 2025, and 2028 to 2032
+
+- avoid mixing of enumerated type with another type
+
+- multi.c: disambiguate precedence of bitwise and relational operation
+
+Daniel Stenberg (26 Nov 2012)
+- [Fabian Keil brought this change]
+
+ Remove stray CRLF in chunk-encoded content-free request bodies
+
+ .. that are sent when auth-negotiating before a chunked
+ upload or when setting the 'Transfer-Encoding: chunked'
+ header and intentionally sending no content.
+
+ Adjust test565 and test1333 accordingly.
+
+- FAQ: clarify the 3.4 section
+
+ You can do custom commands to FTP without sending anything by using the
+ CURLOPT_NOBODY, which -I sets.
+
+- [Lijo Antony brought this change]
+
+ examples: Updated asiohiper.cpp to remove connect from opensocket
+
+ Blocking connect on the socket has been removed from opensocket
+ callback. opensocket just opens a new socket and gives it back to
+ libcurl and libcurl will take care of the connect. sockopt_callback has
+ also been removed, as it is no longer required.
+
+Yang Tse (23 Nov 2012)
+- build: fix AIX compilation and usage
+
+ AIX sys/poll.h header file defines 'events' and 'revents' as C
+ preprocessor macros. Usage of these literals in libcurl's external
+ API was introduced in commit de24d7bd4c causing AIX build failures.
+ Appropriate inclusion of sys/poll.h by libcurl's external interface
+ fixes AIX build and usage issues while avoiding a SONAME bump.
+
+Steve Holme (23 Nov 2012)
+- DOCS: Updated CURLOPT_CONNECT_ONLY to reflect usage in other protocols
+
+Daniel Stenberg (23 Nov 2012)
+- test: offer "automake" output and check for perl better
+
+ runtests.pl -am now uses the "PASS/FAIL: [desc]" output for each
+ executed test. You can run 'make test-am' in the root build directory to
+ invoke that. The reason for this output style is to better allow generic
+ test suite parsers to also grok our test output.
+
+ The test Makefile now also tests that perl was indeed found and that the
+ PERL variable points to an executable before it tries to run the main
+ test perl script runtests.pl,
+
+- [Fabian Keil brought this change]
+
+ Test 206: Use a Content-Length header for the 407 response
+
+ Otherwise curl would have to guess where the body ends.
+
+- [Fabian Keil brought this change]
+
+ Test 206: Don't respond to a succesful CONNECT request with a body
+
+ It's against the spec and caused test failures when header
+ and response were read from the network separately in which
+ case bug #39 wasn't triggered.
+
+- htmltitle: use .cpp extension for C++ examples
+
+- [Lijo Antony brought this change]
+
+ examples: Added a c++ example of using multi with boost::asio
+
+ Added an example for demonstrating the usage of curl multi interface
+ with boost::asio in c++
+
+- VC Makefiles: add missing hostcheck
+
+ the newly introduced hostcheck.h/c is missing in the Visual Studio
+ Makefiles as obj file.
+
+ Bug: http://curl.haxx.se/mail/lib-2012-11/0176.html
+
+- compiler warning fixes
+
+ The conversions from ssize_t to int need to be typecasted.
+
+- bump: start working on 7.28.2
+
+- THANKS: added 14 contributors from the 7.28.1 release
+
+Version 7.28.1 (20 Nov 2012)
+
+Daniel Stenberg (20 Nov 2012)
+- RELEASE-NOTES: synced with 52af6e69f079 / 7.28.1
+
+Kamil Dudka (20 Nov 2012)
+- [Anthony Bryan brought this change]
+
+ RELEASE-NOTES: NSS can be used for metalink hashing
+
+- [Fabian Keil brought this change]
+
+ Get test 2032 working when using valgrind
+
+ If curl_multi_fdset() sets maxfd to -1, the socket detection
+ loop is skipped and thus !found_new_socket is no cause for alarm.
+
+- test2032: spurious failure caused by premature termination
+
+ Bug: http://curl.haxx.se/mail/lib-2012-11/0095.html
+
+Daniel Stenberg (19 Nov 2012)
+- [Fabian Keil brought this change]
+
+ Fix comment typos in test 517
+
+- [Fabian Keil brought this change]
+
+ Test 92 and 194: normalize spaces in the Server headers
+
+ It makes no difference from curl's point of view but
+ makes it more convenient to use the tests with a
+ lws-normalizing proxy between curl and the test server.
+
+- [Fabian Keil brought this change]
+
+ Add a HOSTIP precheck for tests 31 and 1105
+
+ They currently only work for 127.0.0.1 which
+ is hardcoded and can't be easily changed.
+
+- [Fabian Keil brought this change]
+
+ Let test 8 work as long as %HOSTIP ends with ".0.0.1"
+
+ .. and add a precheck to skip the test otherwise.
+
+- [Fabian Keil brought this change]
+
+ Add --resolve to the keywords and name of test 1318
+
+ This makes it easier to skip it automatically when
+ the test suite is used with external proxies.
+
+- [Fabian Keil brought this change]
+
+ Add FTP keywords for a couple of currently keyword-less FTP tests
+
+- [Fabian Keil brought this change]
+
+ Add keywords for a couple of currently keyword-less HTTP tests
+
+- [Fabian Keil brought this change]
+
+ Use carriage returns in all headers in test 31
+
+ Trailing spaces were left unmodifed, assuming they were intentional.
+
+- [Fabian Keil brought this change]
+
+ Do not mix CRLF and LF header endings in a couple of HTTP tests
+
+ Consistently use CRLF instead. The mixed endings weren't
+ documented so I assume they were unintentional.
+
+ This change doesn't matter for curl itself but makes using
+ the tests with a proxy between curl and the test server
+ more convenient.
+
+ Tests that consistently use no carriage returns were
+ left unmodified as one can easily work around this.
+
+- fixed memory leak: CURLOPT_RESOLVE with multi interface
+
+ DNS cache entries populated with CURLOPT_RESOLVE were not properly freed
+ again when done using the multi interface.
+
+ Test case 1502 added to verify.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3575448
+ Reported by: Alex Gruz
+
+- RELEASE-NOTES: synced with ee588fe08807778
+
+ 4 more bug fixes and 4 more contributors
+
+- mem-include-scan: verify memory #includes
+
+ If we use memory functions (malloc, free, strdup etc) in C sources in
+ libcurl and we fail to include curl_memory.h or memdebug.h we either
+ fail to properly support user-provided memory callbacks or the memory
+ leak system of the test suite fails.
+
+ After Ajit's report of a failure in the first category in http_proxy.c,
+ I spotted a few in the second category as well. These problems are now
+ tested for by test 1132 which runs a perl program that scans for and
+ attempts to check that we use the correct include files if a memory
+ related function is used in the source code.
+
+ Reported by: Ajit Dhumale
+ Bug: http://curl.haxx.se/mail/lib-2012-11/0125.html
+
+- tftp_rx: code style cleanup
+
+ Fixed checksrc warnings
+
+- [Fabian Keil brought this change]
+
+ Fix the libauthretry changes from 7c0cbcf2f61
+
+ They broke the NTLM tests from 2023 to 2031.
+
+- [Christian Vogt brought this change]
+
+ tftp_rx: handle resends
+
+ Re-send ACK for block X in case we receive block X data again while
+ waiting for block X+1.
+
+ Based on an earlier patch by Marcin Adamski.
+
+- autoconf: don't force-disable compiler debug option
+
+ When nothing is told to configure, we should not enforce switching off
+ debug options with -g0 (or similar). We instead don't use -g at all in
+ that situaion and therefore allow the user's CFLAGS settings possibly
+ dictate what to do.
+
+- [Mark Snelling brought this change]
+
+ winbuild: Fix PDB file output
+
+ And fix some newlines to be proper CRLF
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3586741
+
+- RELEASE-NOTES: synced with fa1ae0abcde
+
+- [Cristian Rodríguez brought this change]
+
+ OpenSSL: Disable SSL/TLS compression
+
+ It either causes increased memory usage or exposes users
+ to the "CRIME attack" (CVE-2012-4929)
+
+- [Sebastian Rasmussen brought this change]
+
+ FILE: Make upload-writes unbuffered by not using FILE streams
+
+Kamil Dudka (13 Nov 2012)
+- tool_metalink: fix error detection of hash alg initialization
+
+ The {MD5,SHA1,SHA256}_Init functions from OpenSSL are called directly
+ without any wrappers and they return 1 for success, 0 otherwise. Hence,
+ we have to use the same approach in all the wrapper functions that are
+ used for the other crypto libraries.
+
+ This commit fixes a regression introduced in commit dca8ae5f.
+
+Daniel Stenberg (13 Nov 2012)
+- RELEASE-NOTES: synced with 7c0cbcf2f617b
+
+- [Sergei Nikulov brought this change]
+
+ fixed Visual Studio 2010 compilation
+
+- [Anton Malov brought this change]
+
+ ftp: EPSV-disable fix over SOCKS
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3586338
+
+Patrick Monnerat (12 Nov 2012)
+- Merge branch 'master' of github.com:bagder/curl
+
+- OS400: upgrade wrappers for the 7.28.1 release.
+
+Daniel Stenberg (12 Nov 2012)
+- runtests: limit execessive logging/output
+
+- [Gabriel Sjoberg brought this change]
+
+ Digst: Add microseconds into nounce calculation
+
+ When using only 1 second precision, curl doesn't create new cnonce
+ values quickly enough for all uses.
+
+ For example, issuing the following command multiple times to a recent
+ Tomcat causes authentication failures:
+
+ curl --digest -utest:test http://tomcat.test.com:8080/manager/list
+
+ This is because curl uses the same cnonce for several seconds, but
+ doesn't increment the nonce counter.  Tomcat correctly interprets
+ this as a replay attack and rejects the request.
+
+ When microsecond-precision is available, this commit causes curl to
+ change cnonce values much more frequently.
+
+ With microsecond resolution, increasing the nounce length used in the
+ headers to 32 was made to further reduce the risk of duplication.
+
+- SCP/SFTP: improve error code used for send failures
+
+ Instead of relying on the generic CURLE error for SCP or SFTP send
+ failures, try passing back a more suitable error if possible.
+
+- Curl_write: remove unneeded typecast
+
+Kamil Dudka (9 Nov 2012)
+- tool_metalink: allow to use hash algorithms provided by NSS
+
+ Fixes bug #3578163:
+ http://sourceforge.net/tracker/?func=detail&atid=100976&aid=3578163&group_id=976
+
+- tool_metalink: allow to handle failure of hash alg initialization
+
+- tool_metalink: introduce metalink_cleanup() in the internal API
+
+ ... to release resources allocated at global scope
+
+Daniel Stenberg (8 Nov 2012)
+- hostcheck: only build for the actual users
+
+ and make local function static
+
+- [Oscar Koeroo brought this change]
+
+ SSL: Several SSL-backend related fixes
+
+ axTLS:
+
+ This will make the axTLS backend perform the RFC2818 checks, honoring
+ the VERIFYHOST setting similar to the OpenSSL backend.
+
+ Generic for OpenSSL and axTLS:
+
+ Move the hostcheck and cert_hostcheck functions from the lib/ssluse.c
+ files to make them genericly available for both the OpenSSL, axTLS and
+ other SSL backends. They are now in the new lib/hostcheck.c file.
+
+ CyaSSL:
+
+ CyaSSL now also has the RFC2818 checks enabled by default. There is a
+ limitation that the verifyhost can not be enabled exclusively on the
+ Subject CN field comparison. This SSL backend will thus behave like the
+ NSS and the GnuTLS (meaning: RFC2818 ok, or bust). In other words:
+ setting verifyhost to 0 or 1 will disable the Subject Alt Names checks
+ too.
+
+ Schannel:
+
+ Updated the schannel information messages: Split the IP address usage
+ message from the verifyhost setting and changed the message about
+ disabling SNI (Server Name Indication, used in HTTP virtual hosting)
+ into a message stating that the Subject Alternative Names checks are
+ being disabled when verifyhost is set to 0 or 1. As a side effect of
+ switching off the RFC2818 related servername checks with
+ SCH_CRED_NO_SERVERNAME_CHECK
+ (http://msdn.microsoft.com/en-us/library/aa923430.aspx) the SNI feature
+ is being disabled. This effect is not documented in MSDN, but Wireshark
+ output clearly shows the effect (details on the libcurl maillist).
+
+ PolarSSL:
+
+ Fix the prototype change in PolarSSL of ssl_set_session() and the move
+ of the peer_cert from the ssl_context to the ssl_session. Found this
+ change in the PolarSSL SVN between r1316 and r1317 where the
+ POLARSSL_VERSION_NUMBER was at 0x01010100. But to accommodate the Ubuntu
+ PolarSSL version 1.1.4 the check is to discriminate between lower then
+ PolarSSL version 1.2.0 and 1.2.0 and higher. Note: The PolarSSL SVN
+ trunk jumped from version 1.1.1 to 1.2.0.
+
+ Generic:
+
+ All the SSL backends are fixed and checked to work with the
+ ssl.verifyhost as a boolean, which is an internal API change.
+
+- libcurl: VERSIONINFO update
+
+ Since we added the curl_multi_wait function, the VERSIONINFO needed
+ updating.
+
+ Reported by: Patrick Monnerat
+
+Guenter Knauf (8 Nov 2012)
+- Added .def file to output.
+
+ Requested by Johnny Luong on the libcurl list.
+
+- Added deps for static metalink-aware MinGW builds.
+
+Daniel Stenberg (8 Nov 2012)
+- [Fabian Keil brought this change]
+
+ Fix compilation of lib1501
+
+- Curl_readwrite: remove debug output
+
+ The text "additional stuff not fine" text was added for debug purposes a
+ while ago, but it isn't really helping anyone and for some reason some
+ Linux distributions provide their libcurls built with debug info still
+ present and thus (far too many) users get to read this info.
+
+- RELEASE-NOTES: synced with 487538e87a3d5e
+
+ 6 new bugfixes and 3 more contributors...
+
+- http_perhapsrewind: consider NTLM over proxy too
+
+ The logic previously checked for a started NTLM negotiation only for
+ host and not also with proxy, leading to problems doing POSTs over a
+ proxy NTLM that are larger than 2000 bytes. Now it includes proxy in the
+ check.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3582321
+ Reported by: John Suprock
+
+- [Lars Buitinck brought this change]
+
+ Curl_connecthost: friendlier "couldn't connect" message
+
+- test1413: verify redirects to URLs with fragments
+
+ The bug report claimed it didn't work. This problem was probably fixed
+ in 473003fbdf.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3581898
+
+- URL parser: cut off '#' fragments from URLs (better)
+
+ The existing logic only cut off the fragment from the separate 'path'
+ buffer which is used when sending HTTP to hosts. The buffer that held
+ the full URL used for proxies were not dealt with. It is now.
+
+ Test case 5 was updated to use a fragment on a URL over a proxy.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3579813
+
+- OpenSSL/servercert: use correct buffer size, not size of pointer
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3579286
+
+- curl: set CURLOPT_SSL_VERIFYHOST to 0 to disable
+
+- test 2027/2030: take duplicate Digest requests into account
+
+ With the reversion of ce8311c7e49eca and the new clear logic, this flaw
+ is present and we allow it.
+
+- Curl_pretransfer: clear out unwanted auth methods
+
+ As a handle can be re-used after having done HTTP auth in a previous
+ request, it must make sure to clear out the HTTP types that aren't
+ wanted in this new request.
+
+- test1412: verify Digest with repeated URLs
+
+ This test case verifies that bug 3582718 is fixed.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3582718
+ Reported by: Nick Zitzmann (originally)
+
+- Revert "Zero out auth structs before transfer"
+
+ This reverts commit ce8311c7e49eca93c136b58efa6763853541ec97.
+
+ The commit made test 2024 work but caused a regression with repeated
+ Digest authentication. We need to fix this differently.
+
+- CURLOPT_SSL_VERIFYHOST: stop supporting the 1 value
+
+ After a research team wrote a document[1] that found several live source
+ codes out there in the wild that misused the CURLOPT_SSL_VERIFYHOST
+ option thinking it was a boolean, this change now bans 1 as a value and
+ will make libcurl return error for it.
+
+ 1 was never a sensible value to use in production but was introduced
+ back in the days to help debugging. It was always documented clearly
+ this way.
+
+ 1 was never supported by all SSL backends in libcurl, so this cleanup
+ makes the treatment of it unified.
+
+ The report's list of mistakes for this option were all PHP code and
+ while there's a binding layer between libcurl and PHP, the PHP team has
+ decided that they have an as thin layer as possible on top of libcurl so
+ they will not alter or specifically filter a 'TRUE' value for this
+ particular option. I sympathize with that position.
+
+ [1] = http://daniel.haxx.se/blog/2012/10/25/libcurl-claimed-to-be-dangerous/
+
+- gnutls: fix compiler warnings
+
+- [Alessandro Ghedini brought this change]
+
+ gnutls: print alerts during handshake
+
+- [Alessandro Ghedini brought this change]
+
+ gnutls: fix the error_is_fatal logic
+
+- RELEASE-NOTES: synced with fa6d78829fd30ad
+
+- httpcustomheader.c: free the headers after use
+
+- [Dave Reisner brought this change]
+
+ uniformly use AM_CPPFLAGS, avoid deprecated INCLUDES
+
+ Since automake 1.12.4, the warnings are issued on running automake:
+
+ warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
+
+ Avoid INCLUDES and roll these flags into AM_CPPFLAGS.
+
+ Compile tested on:
+ Ubuntu 10.04 (automake 1:1.11.1-1)
+ Ubuntu 12.04 (automake 1:1.11.3-1ubuntu2)
+ Arch Linux (automake 1.12.4)
+
+- libauthretry.c: shorten lines to fit within 80 cols
+
+- ftp_readresp: fix build without krb4 support
+
+ Oops, my previous commit broke builds with krb support.
+
+- test/README: mention the 1500 test number range
+
+- FTP: prevent the multi interface from blocking
+
+ As pointed out in Bug report #3579064, curl_multi_perform() would
+ wrongly use a blocking mechanism internally for some commands which
+ could lead to for example a very long block if the LIST response never
+ showed.
+
+ The solution was to make sure to properly continue to use the multi
+ interface non-blocking state machine.
+
+ The new test 1501 verifies the fix.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3579064
+ Reported by: Guido Berhoerster
+
+Marc Hoersken (1 Nov 2012)
+- winbuild: Use machine type of development environment
+
+ This patch restores the original behavior instead of always
+ falling back to x86 if no MACHINE-type was specified.
+
+- winbuild: Additional clean up
+
+- [Sapien2 brought this change]
+
+ Even more winbuild refactoring
+
+- [Sapien2 brought this change]
+
+ Minor winbuild refactoring
+
+- [Sapien2 brought this change]
+
+ Architecture selection for winbuild and minor makefiles refactoring
+
+Daniel Stenberg (1 Nov 2012)
+- BUGS: fix the bug tracker URL
+
+ The URL we used before is the one that goes directly to 'add' a bug
+ report, but since you can only do that after first having logged in to
+ sourceforge, the link often doesn't work for visitors.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3582408
+ Reported by: Oscar Norlander
+
+- evhiperfifo: fix the pointer passed to WRITEDATA
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3582407
+ Reported by: Oscar Norlander
+
+Guenter Knauf (1 Nov 2012)
+- Fixed MSVC libssh2 static build.
+
+ Since libssh2 supports now agent stuff it also depends on user32.lib.
+ Posted to the list by Jan Ehrhardt.
+
+Daniel Stenberg (23 Oct 2012)
+- tlsauthtype: deal with the string case insensitively
+
+ When given a string as 'srp' it didn't work, but required 'SRP'.
+ Starting now, the check disregards casing.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3578418
+ Reported by: Jeff Connelly
+
+- asyn-ares: restore working with c-ares < 1.6.1
+
+ Back in those days the public ares.h header didn't include the
+ ares_version.h header so it needs to be included here.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3577710
+
+- [Nick Zitzmann brought this change]
+
+ metalink/md5: Use CommonCrypto on Apple operating systems
+
+ Previously the Metalink code used Apple's CommonCrypto library only if
+ curl was built using the --with-darwinssl option. Now we use CommonCrypto
+ on all Apple operating systems including Tiger or later, or iOS 5 or
+ later, so you don't need to build --with-darwinssl anymore. Also rolled
+ out this change to libcurl's md5 code.
+
+- href_extractor.c: fix the URL
+
+- [Michał Kowalczyk brought this change]
+
+ href_extractor: example code extracting href elements
+
+ It does so in a streaming manner using the "Streaming HTML parser".
+
+- [Nick Zitzmann brought this change]
+
+ darwinssl: un-broke iOS build, fix error on server disconnect
+
+ The iOS build was broken by a reference to a function that only existed
+ under OS X; fixed. Also fixed a hard-to-reproduce problem where, if the
+ server disconnected before libcurl got the chance to hang up first and
+ SecureTransport was in use, then we'd raise an error instead of failing
+ gracefully.
+
+- [Alessandro Ghedini brought this change]
+
+ gnutls: put reset code into else block
+
+ Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=690551
+
+Guenter Knauf (13 Oct 2012)
+- Fix now broken libmetalink-aware OpenSSL build.
+
+- Revert c44e674; add OpenSSL includes/defines.
+
+ The makefile is designed to build against a libmetalink devel package;
+ therefore is does not matter what will change inside libmetalink.
+ Add OpenSSL includes and defines for libmetalink-aware OpenSSL builds.
+
+Daniel Stenberg (10 Oct 2012)
+- version-bump: towards 7.28.1!
+
+- THANKS: 14 new contributors from 7.28.0
+
+Version 7.28.0 (10 Oct 2012)
+
+Daniel Stenberg (10 Oct 2012)
+- RELEASE-NOTES: synced with 8373ca3641
+
+ One bug, one contributor. Getting ready for release.
+
+- curl_multi_wait: no wait if no descriptors to wait for
+
+ This is a minor change in behavior after having been pointed out by Mark
+ Tully and discussed on the list. Initially this case would internally
+ call poll() with no sockets and a timeout which would equal a sleep for
+ that specified time.
+
+ Bug: http://curl.haxx.se/mail/lib-2012-10/0076.html
+ Reported by: Mark Tully
+
+- TODO-RELEASE: cleanup for 7.28.0
+
+ one issue is now KNOWN_BUG #79
+
+ the other we just skip since nobody is working on it or is planning to
+ start working on it anytime soon
+
+- curl_multi_wait.3: style formatting mistake
+
+Marc Hoersken (8 Oct 2012)
+- ssluse.c: md5.h is required for Curl_ossl_md5sum
+
+Daniel Stenberg (8 Oct 2012)
+- curl_multi_wait.3: fix the name of the man page
+
+- curl_multi_wait.3: renamed the last argument variable for clarity
+
+Marc Hoersken (6 Oct 2012)
+- curl_schannel.c: Fixed caching more data than required
+
+ Do not fill the decrypted data buffer with more data unless
+ required in order to return the requested amount of data.
+
+- curl_schannel: Removed buffer limit and optimized buffer strategy
+
+ Since there are servers that seem to return very big encrypted
+ data packages, we need to be able to handle those without having
+ an internal size limit. To avoid the buffer growing to fast to
+ early the initial size was decreased and the minimum free space
+ in the buffer was decreased as well.
+
+- lib/socks.c: Merged two size variables into one
+
+- lib/socks.c: Avoid type conversions where possible
+
+ Streamlined variable names and types to avoid type conversions that
+ may result in data being lost on non 32-bit systems.
+
+- lib/curl_schannel.c: Hide size_t conversion warning
+
+- krb5/curl_rtmp.c: Hide size_t to int type conversion warning
+
+- security.c: Aligned internal type to return type
+
+ Use ssize_t instead of int to avoid conversion problems on 64-bit
+ systems. Also added curlx_sztosi where necessary.
+
+- lib/curl_schannel: Increased maximum buffer size to factor 128
+
+- winbuild/MakefileBuild.vc: Follow up on 0c8ccf7
+
+Daniel Stenberg (2 Oct 2012)
+- RELEASE-NOTES: synced with 971f5bcedd418
+
+ 9 new bug fixes, 5 changes, 6 more contributors
+
+- multi_runsingle: CURLOPT_LOW_SPEED_* fix for rate limitation
+
+ During the periods of rate limitation, the speedcheck function wasn't
+ called and thus the values weren't updated accordingly and it would then
+ easily trigger wrongly once data got transferred again.
+
+ Also, the progress callback's return code was not acknowledged in this
+ state so it could make an "abort" return code to get ignored and not
+ have the documented effect of aborting an ongoing transfer.
+
+ Bug: http://curl.haxx.se/mail/lib-2012-09/0081.html
+ Reported by: Jie He
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ tool_metalink.c: Filtered resource URLs by type
+
+ In Metalink v3, the type attribute of url element indicates the
+ type of the resource the URL points to. It can include URL to the
+ meta data, such as BitTorrent metainfo file. In Curl, we are not
+ interested in these meta data URLs. Instead, we are only
+ interested in the HTTP and FTP URLs. This change filters out
+ non-HTTP and FTP URLs. If we don't filter out them, it will be
+ downloaded by curl and hash check will fail if hash is provided
+ and next URL will be tried. This change will cut this useless
+ network transfer.
+
+Kamil Dudka (1 Oct 2012)
+- https.c example: remember to call curl_global_init()
+
+ ... in order not to leak memory on initializing an SSL library.
+
+ Reported by: Tomas Mlcoch
+
+Daniel Stenberg (28 Sep 2012)
+- FAQ: remove the date from the topmost line
+
+- FAQ: 5.16 I want a different time-out!
+
+- Curl_reconnect_request: clear pointer on failure
+
+ The Curl_reconnect_request() function could end up returning a pointer
+ to a free()d struct when Curl_done() failed inside. Clearing the pointer
+ unconditionally after Curl_done() avoids this risk.
+
+ Reported by: Ho-chi Chen
+ Bug: http://curl.haxx.se/mail/lib-2012-09/0188.html
+
+- CURLOPT_CONNECTTIMEOUT: works without signals or posix too!
+
+Marc Hoersken (24 Sep 2012)
+- Makefile.vc6: Follow up on 0c8ccf7
+
+- Makefile.vc6: Added missing default library advapi32.lib
+
+Daniel Stenberg (19 Sep 2012)
+- HTTP_ONLY: disable more protocols
+
+- test2006: Updated expected output to include hash name
+
+ Output changed in commit a34197ef77cb
+
+- [Sergei Nikulov brought this change]
+
+ cmake: use standard findxxx modules for cmake v2.8+
+
+- [Sergei Nikulov brought this change]
+
+ setup.h: fixed for MS VC10 build
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3568327
+
+- TODO-RELEASE: push new features to 7.29
+
+ Leave two bug fixes as possibly fixed for 7.28 but as nobody seems to be
+ working on them I have little hope...
+
+Marc Hoersken (17 Sep 2012)
+- metalink tests: Updated expected output to include hash name
+
+Daniel Stenberg (16 Sep 2012)
+- [Sara Golemon brought this change]
+
+ curl_multi_wait: Add parameter to return number of active sockets
+
+ Minor change to recently introduced function. BC breaking, but since
+ curl_multi_wait() doesn't exist in any releases that should be fine.
+
+Marc Hoersken (14 Sep 2012)
+- socks.c: Fixed warning: conversion to 'int' from 'long unsigned int'
+
+- http_negotiate.c: Fxied warning: unused variable 'rc'
+
+- ssh.c: Fixed warning: implicit conversion from enumeration type
+
+- socks.c: Check that IPv6 is enabled before using it's features
+
+- checksrc: Fixed line length and comment indentation
+
+- socks.c: Updated error messages to handle hostname and IPv6
+
+- socks.c: Added support for IPv6 connections through SOCKSv5 proxy
+
+Daniel Stenberg (13 Sep 2012)
+- parse_proxy: treat "socks://x" as a socks4 proxy
+
+ Selected socks proxy in Google's Chrome browser. Resulting in the
+ following environment variables:
+
+ NO_PROXY=localhost,127.0.0.0/8
+ ALL_PROXY=socks://localhost:1080/
+ all_proxy=socks://localhost:1080/
+ no_proxy=localhost,127.0.0.0/8
+
+ ... and libcurl didn't treat 'socks://' as socks but instead picked HTTP
+ proxy.
+
+ Reported by: Scott Bailey
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3566860
+
+Kamil Dudka (12 Sep 2012)
+- ssh: do not crash if MD5 fingerprint is not provided by libssh2
+
+ The MD5 fingerprint cannot be computed when running in FIPS mode.
+
+- ssh: move the fingerprint checking code to a separate fnc
+
+Marc Hoersken (12 Sep 2012)
+- tool_metalink.c: Added name of validation hash to messages
+
+ This makes it easier to debug broken hashes or hash functions.
+
+- wincrypt: Fixed cross-compilation issues caused by include name
+
+ For some reason WinCrypt.h is named wincrypt.h under MinGW.
+
+- md5.c: Added support for Microsoft Windows CryptoAPI
+
+- Makefile.m32: Updated to build against libmetalink 0.1.2
+
+ The include and library path were moved within libmetalink, this
+ patch adjusts the defaults provided within the curl MinGW makefile.
+
+- tool_metalink.c: Added support for Microsoft Windows CryptoAPI
+
+ Since Metalink support requires a crypto library for hash functions
+ and Windows comes with the builtin CryptoAPI, this patch adds that
+ API as a fallback to the supported crypto libraries.
+ It is automatically used on Windows if no other library is provided.
+
+- libntlmconnect.c: Fixed typo and conversion
+
+- libntlmconnect.c: Fixed warning: curl_easy_getinfo expects long pointer
+
+ Fixed tests/libtest/libntlmconnect.c:52: warning: call to
+ '_curl_easy_getinfo_err_long' declared with attribute warning:
+ curl_easy_getinfo expects a pointer to long for this info
+
+- sws.c: Fixed warning: 'err' may be used uninitialized in this function
+
+- libntlmconnect.c: Fixed warning: comparison of signed/unsigned integer
+
+ Windows does not use -1 to represent invalid sockets and the
+ SOCKET type is unsigned.
+
+- nss.c: Fixed warning: 'err' may be used uninitialized in this function
+
+- tool_metalink.c: Fixed error: 'O_BINARY' undeclared
+
+ Check for O_BINARY which is not available on every system.
+
+- tool_metalink.c: Fixed validation of binary files containing EOF
+
+ Since Windows/MinGW threat 0x1A as the EOF character, reading binary
+ files which contain that byte does not work using text mode.
+ The read function will only read until the first 0x1A byte. This
+ means that the hash is not computed from the whole file and the
+ final validation check using hash comparision fails.
+
+- winbuild: Added support for building with SPNEGO enabled
+
+ Since Simple and Protected GSSAPI Negotiation Mechanism
+ is already implemented in curl and supported by the MinGW
+ builds, this change adds build support to winbuild makefiles.
+
+- winbuild: Adjusted order of options to generated config name
+
+ Cleaned up order of handled build options by ordering them
+ nearly alphabetically by using the order of the generated
+ config name. Preparation for future/more build options.
+
+Daniel Stenberg (9 Sep 2012)
+- [Anthony Bryan brought this change]
+
+ MANUAL: clarified user+password in HTTP URLs
+
+- RELEASE-NOTES: synced with 6c6f1f64c2
+
+ 6 bug fixes to mention, 5 contributors
+
+- TODO-RELEASE: CURLSSH_AUTH_AGENT and curl_multi_wait() are done
+
+ -321 - CURLSSH_AUTH_AGENT patch by Armel Asselin
+
+ -324 - curl_multi_select() vs curl_multi_fdvec() etc
+
+Marc Hoersken (9 Sep 2012)
+- curl_schannel.c: Reference count the credential/session handle
+
+ Reference counting the credential handle should avoid that such a
+ handle is freed while it is still required for connection shutdown
+
+Daniel Stenberg (8 Sep 2012)
+- [Nick Zitzmann brought this change]
+
+ darwinssl: fixed for older Mac OS X versions
+
+ SSL didn't work on older cats if built on a newer cat with weak-linking
+ turned on to support the older cat
+
+- [David Blaikie brought this change]
+
+ tool_easysrc.c: Test pointers against NULL
+
+ While validating a new Clang diagnostic (-Wnon-literal-null-conversion -
+ yes, the name isn't quite correct in this case, but it suffices) I found
+ a few violations of it in Curl.
+
+- SOCKS: truly disable it if CURL_DISABLE_PROXY is defined
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3561305
+
+ Patch by: Marcel Raad
+
+- mk-ca-bundle: detect start of trust section better
+
+ Each certificate section of the input certdata.txt file has a trust
+ section following it with details.
+
+ This script failed to detect the start of the trust for at least one
+ cert[*], which made the script continue pass that section into the next
+ one where it found an 'untrusted' marker and as a result that certficate
+ was not included in the output.
+
+ [*] = "Hellenic Academic and Research Institutions RootCA 2011"
+
+ Bug: http://curl.haxx.se/mail/lib-2012-09/0019.html
+
+- [Alessandro Ghedini brought this change]
+
+ gnutls: do not fail on non-fatal handshake errors
+
+ Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=685402
+
+- FILEFORMAT: the FTP commands work for more protocols
+
+- test1411: verify SMTP without SIZE support
+
+- [František Kučera brought this change]
+
+ SMTP: only send SIZE if supported
+
+ SMTP client will send SIZE parameter in MAIL FROM command only if server
+ supports it. Without this patch server might say "504 Command parameter
+ not implemented" and reject the message.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3564114
+
+- ftpserver: respond with a 250 to SMTP EHLO
+
+ ... and specify that SIZE is supported. 250 is the "correct" response
+ code according to RFC 2821
+
+- RELEASE-NOTES: synced with abb0da919300e
+
+Dan Fandrich (3 Sep 2012)
+- Updated Symbian build files
+
+ This is untested, but at least Symbian still has a chance of
+ still working now.
+
+- Updated build docs w.r.t. Android and binary sizes
+
+Daniel Stenberg (1 Sep 2012)
+- symbols-in-versions: new CURL_WAIT_* symbols
+
+- [Sara Golemon brought this change]
+
+ Unit test for curl_multi_wait()
+
+- [Sara Golemon brought this change]
+
+ Manpage for curl_multi_wait().
+
+- [Sara Golemon brought this change]
+
+ multi: add curl_multi_wait()
+
+ /*
+ * Name: curl_multi_wait()
+ *
+ * Desc: Poll on all fds within a CURLM set as well as any
+ * additional fds passed to the function.
+ *
+ * Returns: CURLMcode type, general multi error code.
+ */
+ CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle,
+ struct curl_waitfd extra_fds[],
+ unsigned int extra_nfds,
+ int timeout_ms);
+
+- [Nick Zitzmann brought this change]
+
+ darwinssl: Bugfix for previous commit for older cats
+
+ I accidentally broke functionality for versions of OS X prior to Mountain
+ Lion in the previous commit. This commit fixes the problems.
+
+- [Joe Mason brought this change]
+
+ Use MAX_EASY_HANDLES instead of hardcoding the number of handles twice
+
+- test2032: bail out after last transfer
+
+ The test would hang and get aborted with a "ABORTING TEST, since it
+ seems that it would have run forever." until I prevented that from
+ happening.
+
+ I also fixed the data file which got broken CRLF line endings when I
+ sucked down the path from Joe's repo == my fault.
+
+ Removed #37 from KNOWN_BUGS as this fix and test case verifies exactly
+ this.
+
+- [Joe Mason brought this change]
+
+ NTLM: re-use existing connection better
+
+ If we need an NTLM connection and one already exists, always choose that
+ one.
+
+- [Joe Mason brought this change]
+
+ NTLM: verify multiple connections work
+
+ Add test2032 to test that NTLM does not switch connections in the middle
+ of the handshake
+
+- curl.1: list the -w variables sorted alphabetically
+
+- libcurl-share.3: remove wrong info of what can be shared
+
+ "Currently you can only share DNS and/or COOKIE data" is incorrect since
+ also SSL sessions can be shared.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3562261
+ Reported by: Joe Mason
+
+- [Dave Reisner brought this change]
+
+ examples: use do/while loop for multi examples
+
+ It's conceivable that after the first time curl_multi_perform returns,
+ the outvalue still_running will be 0, but work will have been done. This
+ is shown by a workload of small, purely file:// based URLs. Ensure that
+ we always read pending messages off the multi handle by forcing the
+ while loop to run at least once.
+
+- curl.h: fix comment to refer to current names
+
+ CURLOPT_USE_SSL should be set to CURLUSESSL_* and nothing else in modern
+ libcurl versions.
+
+- ftpsget: simple example showing a FTPS fetch
+
+- sftpget: SFTP is not "SSH FTP"
+
+- [Armel Asselin brought this change]
+
+ sftpget: example showing a simple SFTP download
+
+ ... using SSH-agent
+
+- curl_multi_perform.3: extended/clarified
+
+- INSTALL.cmake: clarify some flaws/limits in the cmake build
+
+- https.c example: spell check used define
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3559845
+ Reported by: Olivier Berger
+
+- configure: update the copyright years for the output
+
+- [Nick Zitzmann brought this change]
+
+ darwinssl: add TLS 1.1 and 1.2 support, replace deprecated functions
+
+ In Mountain Lion, Apple added TLS 1.1 and 1.2, and deprecated a number
+ of SecureTransport functions, some of which we were using. We now check
+ to see if the replacement functions are present, and if so, we use them
+ instead. The old functions are still present for users of older
+ cats. Also fixed a build warning that started to appear under Mountain
+ Lion
+
+- curl_easy_setopt: documented CURLSOCKTYPE_ACCEPT for SOCKOPTFUNCTION
+
+- [Gokhan Sengun brought this change]
+
+ ftp: active conn, place calling sockopt callback at the end of function
+
+ Commit b91d29a28e170c16d65d956db79f2cd3a82372d2 introduces a bug and breaks Curl_closesocket function. sock_accepted flag for the second socket should be tagged as TRUE before the sockopt callback is called because in case the callback returns an error, Curl_closesocket function is going to call the - fclosesocket - callback for the accept()ed socket
+
+- [Gokhan Sengun brought this change]
+
+ ftp: active conn, allow application to set sockopt after accept() call
+
+ For active FTP connections, applications may need setting the sockopt after accept() call returns successful. This fix gives a call to the callback registered with CURL_SOCKOPTFUNCTION option. Also a new sock type - CURLSOCKTYPE_ACCEPT - is added. This type is to be passed to application callbacks with - purpose - parameter. Applications may use this parameter to distinguish between socket types.
+
+- configure: remove the --enable/disable-nonblocking options
+
+ Removing this option as it currently only functions to lure people into
+ wrongly using it and falsely believing that libcurl will work fine
+ without using nonblocking sockets internally - which leads to hard to
+ track or understand errors.
+
+- [Ant Bryan brought this change]
+
+ MANUAL review
+
+- curl.1: shorten lines, avoid referring to libcurl instead of curl
+
+- [Ant Bryan brought this change]
+
+ curl.1: fix more consistent wording
+
+ "If this option is used several times, the last one will be used."
+ uniformity
+
+- ssh: use the libssh2 agent API conditionally
+
+ Commit e351972bc89aa4c brought in the ssh agent support but some uses of
+ the libssh2 agent API was done unconditionally which wasn't good enough
+ since that API hasn't always been present.
+
+- white space fix: shorten long line
+
+ ... to please checksrc.pl
+
+Kamil Dudka (9 Aug 2012)
+- docs: update the links to cipher-suites supported by NSS
+
+ ... and make the list of cipher-suites in nss.c readable by humans.
+
+ Bug: http://curl.haxx.se/mail/archive-2012-08/0016.html
+
+- nss: do not print misleading NSS error codes
+
+Daniel Stenberg (8 Aug 2012)
+- RELEASE-NOTES: synced with 0774386b23
+
+ 5 more bug fixes, one change, 6 contributors
+
+- [Armel Asselin brought this change]
+
+ docs: mention CURLSSH_AUTH_AGENT
+
+- [Armel Asselin brought this change]
+
+ SSH: added agent based authentication
+
+ CURLSSH_AUTH_AGENT is a new auth type for SSH
+
+- bump version to 7.28.0
+
+ I am about to merge the first patch that adds changes into the pending
+ release, and thus we bump the minor number.
+
+- RELEASE-NOTES: added missing link
+
+- curl_version: fixed Value stored to 'len' is never read
+
+ Fixed this (harmless) clang-analyzer warning. Also fixed the source
+ indentation level.
+
+- TODO-RELEASE: the (nil) bug is fixed
+
+- add_next_timeout: minor restructure of code
+
+ By reading the ->head pointer and using that instead of the ->size
+ number to figure out if there's a list remaining we avoid the (false
+ positive) clang-analyzer warning that we might dereference of a null
+ pointer.
+
+- verbose messages: fixed output of hostnames in re-used connections
+
+ I suspect this is a regression introduced in commit 207cf150, included
+ since 7.24.0.
+
+ Avoid showing '(nil)' as hostname in verbose output by making sure the
+ hostname fixup function is called early enough to set the pointers that
+ are used for this. The name data is set again for each request even for
+ re-used connections to handle multiple hostnames over the same
+ connection (like with proxy) or that the casing etc of the host name is
+ changed between requests (which has proven to be important at least once
+ in the past).
+
+ Test1011 was modified to use a redirect with a re-used a connection
+ since it then showed the bug and now lo longer does. There's currently
+ no easy way to have the test suite detect 'nil' texts in verbose ouputs
+ so no tests will detect if this problem gets reintroduced.
+
+ Bug: http://curl.haxx.se/mail/lib-2012-07/0111.html
+ Reported by: Gisle Vanem
+
+- [Nick Zitzmann brought this change]
+
+ metalink: Un-broke the build when building --with-darwinssl
+
+Guenter Knauf (8 Aug 2012)
+- Fix some compiler warnings.
+
+Daniel Stenberg (8 Aug 2012)
+- TODO-RELEASE: two bugs fixed
+
+ These are now addressed:
+
+ 323 - patch - select.c / Curl_socket_check() interrupted
+
+ 325 - Avoid leak of local device string when reusing connection
+
+- curl.1: minor format fix for --data-ascii
+
+ ... and removal of trailing whitespace on a single line
+
+- [Ant Bryan brought this change]
+
+ curl man page cleanup
+
+- [Mike Crowe brought this change]
+
+ Avoid leak of local device string when reusing connection
+
+ Ensure that the copy of the CURLOPT_INTERFACE string is freed if we
+ decide we can reuse an existing connection.
+
+- Curl_socket_check: fix timeout return value for select users
+
+ This is the same fix applied for the conditional code that uses select()
+ that was already done for the poll specific code in commit
+ b61e8b81f5038.
+
+- [Maxime Larocque brought this change]
+
+ Curl_socket_check: fix return code for timeout
+
+ We found a problem with ftp transfer using libcurl (7.23 and 7.25)
+ inside an application which is receiving unix signals (SIGUSR1,
+ SIGUSR2...) almost continuously. (Linux 2.4, PowerPC, HAVE_POLL_FINE
+ defined).
+
+ Curl_socket_check() uses poll() to wait for the socket, and retries it
+ when a signal is received (EINTR). However, if a signal is received and
+ it also happens that the timeout has been reached, Curl_socket_check()
+ returns -1 instead of 0 (indicating an error instead of a timeout).
+
+ In our case, the result is an aborted connection even before the ftp
+ banner is received from the server, and a return value of
+ CURLE_OUT_OF_MEMORY from curl_easy_perform() (Curl_pp_multi_statemach(),
+ in pingpong.c, actually returns OOM if Curl_socket_check() fails :-)
+ Funny to debug on a system on which OOM is a possible cause).
+
+ Bug: http://curl.haxx.se/mail/lib-2012-07/0122.html
+
+- RELEASE-NOTES: synced with b4a558041fdf65c0
+
+- TODO-RELEASE: fixed another bug
+
+ bug #3544688 "crash during retry with libcurl and SFTP"
+
+- WSAPoll: disabled on all windows builds
+
+ Due to WSAPoll bugs, libcurl does not work as intended. When the cURL
+ library is used to setup a connection to an incorrect port, normally the
+ result is CURLE_COULDNT_CONNECT, /* 7 */, but due to the bug in WSAPoll,
+ the result now is CURLE_OPERATION_TIMEDOUT, /* 28 - the timeout time was
+ reached */.
+
+ On August 1, Jan Koen Annot opened a case for this to Microsoft Premier
+ Online (https://premier.microsoft.com/). The support engineer handling
+ the case wrote that the case description is quite clear. He will try to
+ reproduce the issue and then proceed with troubleshooting it.
+
+ Reported by: Jan Koen Annot
+ Bug: http://curl.haxx.se/mail/lib-2012-07/0310.html
+
+- retry request: only access the HTTP data if in fact HTTP
+
+ When figuring out if the data stream needs to be rewound when the
+ request is to be resent, we must not access the HTTP struct unless the
+ protocol used is indeed HTTP...
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3544688
+
+- TODO: support DANE, we already support gnutls without gcrypt
+
+- curl-config: parentheses fix
+
+ Braces, not parentheses, should be used for shell variable names.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3551460
+ Reported by: Edward Sheldrake
+
+- VC build: add define for openssl
+
+ This fixes a build failure of lib/ssluse.c.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3552997
+
+- TODO-RELEASE: two bugs fixed!
+
+- globbing: fix segfault when >9 globs were used
+
+ Stupid lack of range checks caused the code to overwrite local variables
+ after glob number nine. Added checks now.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3546353
+
+- [Joe Mason brought this change]
+
+ sws: close sockets properly
+
+ Fix a bug where closed sockets (fd -1) were left in the all_sockets
+ list, because of missing parens in a pointer arithmetic expression
+
+ Reenable the tests that were locking up due to this bug.
+
+- [Joe Mason brought this change]
+
+ Remove debug logs that were accidentally checked in
+
+- [Joe Mason brought this change]
+
+ Use select in sws, which has better cross-platform support than poll
+
+- [Joe Mason brought this change]
+
+ Use cross-platform curlx_nonblock instead of fcntl in sws
+
+- operate: fix clang-analyzer warnings for never read variables
+
+ Two separate "Value stored to 'XXX' is never read" warnings
+
+- operate: fix clang-analyzer warning
+
+ Value stored to 'separator' is never read
+
+- metalink: change code order to build with gnutls-nettle
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3554668
+ Reported by: Anthony G. Basile
+
+- gtls: fix build failure by including nettle-specific headers
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3554668
+ Reported by: Anthony G. Basile
+
+Guenter Knauf (6 Aug 2012)
+- Fixed compiler warning - argument is type long.
+
+Daniel Stenberg (6 Aug 2012)
+- DISABLED: disable the new tests that do NTLM
+
+ The tests 2025, 2028 and 2031 don't work for me so I'll have them
+ disabled for now until we solve the problem.
+
+Joe Mason (3 Aug 2012)
+- Add tests of auth retries
+
+- Cleanup handshake after clean NTLM failure
+
+- Zero out auth structs before transfer
+
+- Add a polling loop in main to read from more than one socket at once. Add the O_NONBLOCK and
+ SO_KEEPALIVE flag to all sockets. Note that several loops which used to continue on a return value
+ of 0 (theoretical since 0 would never be returned without O_NONBLOCK) now break on 0 so that they
+ won't continue reading until after poll is called again.
+
+- Change return values of get_request, accept_connection and service_connection to add a return code
+ for non-blocking sockets: now -1 means error or connection finished, 1 means data was read, and 0
+ means there is no data available now so need to wait for poll (new return value)
+
+- Hoist the loop out of get_request, and make sure that it can be reentered when a request is
+ half-finished.
+
+ Note the the req struct used to be re-initialized AFTER reading pipeline data, so now that we
+ initialize it from the caller we must be careful not to overwrite the pipeline data.
+
+ Also we now need to handle the case where the buffer is already full when get_request is called -
+ previously this never happened as it was always called with an empty buffer and looped until done.
+
+ Now get_request is called in a loop, so the next step is to run the loop on a socket only when poll
+ signals it is readable.
+
+- Move blocks of code from the sws main loop into their own functions for easier refactoring later.
+ The next step will be to call the correct function after a poll, rather than looping unconditionally
+
+- Remove the --fork option of sws, since it makes refactoring to use poll more complicated and should
+ be redundant once we poll
+
+Kamil Dudka (30 Jul 2012)
+- file: use fdopen() for uploaded files if available
+
+ It eliminates noisy events when using inotify and fixes a TOCTOU issue.
+
+ Bug: https://bugzilla.redhat.com/844385
+
+Guenter Knauf (29 Jul 2012)
+- Added DWANT_IDN_PROTOTYPES define for MSVC too.
+
+ Discussion on the list: http://curl.haxx.se/mail/lib-2012-07/0271.html
+
+- Added Win32 problems.
+
+- Added hint to read docs/INSTALL too.
+
+- Added new file to distro.
+
+Steve Holme (28 Jul 2012)
+- TODO: Updated after 7.27.0 release
+
+ Removed APOP and SASL authentication from the POP3 section and metalink
+ support from the client section as these features were implemented in
+ this release.
+
+ Moved adding gssapi to SASL into it's own section rather than repeat it
+ for each protocol.
+
+Daniel Stenberg (28 Jul 2012)
+- TODO-RELEASE: updated after 7.27.0 release
+
+- THANKS: 12 new contributors from the 7.27.0 release
+
+- version bump: start towards next release
+
+ Let's call it 7.27.1 for now, but it it probably going to become 7.28.0
+ when released.
+
+Version 7.27.0 (27 Jul 2012)
+
+Guenter Knauf (27 Jul 2012)
+- Fixed compiler warning 'unused parameter'.
+
+- Added prototypes to kill compiler warning.
+
+- Added --with-winidn to configure.
+
+ This needs another look from the configure experts. I tested that
+ it works so far with MinGW64 cross-compiler; libcurl builds and
+ links fine, but curl not yet ...
+
+Daniel Stenberg (27 Jul 2012)
+- [Ant Bryan brought this change]
+
+ Update man page info on --metalink and typo.
+
+- RELEASE-NOTES: remove mentioned of bug never in a release
+
+ The --silent bug came with 7561a0fc834c435 which was never in a release.
+ Pointed out by Kamil Dudka
+
+- RELEASE-NOTES: synced with 33b815e894fb
+
+ 4 more bugfixes, 3 more contributors
+
+Guenter Knauf (26 Jul 2012)
+- Changed Windows IDN text to 'WinIDN'.
+
+ Synced the output to the same short form as we now use for
+ Windows SSL (WinSSL).
+
+Daniel Stenberg (25 Jul 2012)
+- [Nick Zitzmann brought this change]
+
+ darwinssl: fixed freeze involving the multi interface
+
+ Previously the curl_multi interface would freeze if darwinssl was
+ enabled and at least one of the handles tried to connect to a Web site
+ using HTTPS. Removed the "wouldblock" state darwinssl was using because
+ I figured out a solution for our "would block but in which direction?"
+ dilemma.
+
+Guenter Knauf (25 Jul 2012)
+- Added support for tls-srp to MinGW builds.
+
+Daniel Stenberg (24 Jul 2012)
+- curl_easy_setopt: fix typo
+
+ Reported by: Santhana Todatry
+
+- keepalive: multiply value for OS-specific units
+
+ DragonFly uses milliseconds, while our API and Linux use full seconds.
+
+ Reported by: John Marino
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3546257
+
+Kamil Dudka (22 Jul 2012)
+- http: print reason phrase from HTTP status line on error
+
+ Bug: https://bugzilla.redhat.com/676596
+
+- tool_operate: fix misplaced initialization of orig_noprogress
+
+ ... and orig_isatty which caused --silent to be entirely ignored in case
+ the standard output was redirected to a file!
+
+Daniel Stenberg (21 Jul 2012)
+- [Anton Yabchinskiy brought this change]
+
+ Client's "qop" value should not be quoted (RFC2617, section 3.2.2).
+
+Guenter Knauf (21 Jul 2012)
+- Fixed typo.
+
+Daniel Stenberg (20 Jul 2012)
+- make: make distclean work again
+
+ The clean-local hook needed some polish to make sure make distclean
+ works. Added comment describing why.
+
+- test Makefile: only feature 'unit' once in the list of dirs
+
+Dan Fandrich (20 Jul 2012)
+- Fixed some typos in documentation
+
+Guenter Knauf (20 Jul 2012)
+- Fixed CR issue with Win32 version on MSYS.
+
+ Previous fix didnt work on Linux ...
+
+- Fixed CR issue with Win32 version on MSYS.
+
+- Fixed MSYS <-> Windows path convertion.
+
+ Replaced the Windows real path from mount hack with a more
+ reliable and simpler hack: the MSYS shell has a builtin pwd
+ which understands a -W option which does convertion to Windows
+ paths. Tested and confirmed that this works on all MSYS versions
+ I have back to a 3 year old one.
+
+- Follow-up fix to detect SSL libs with MinGW.
+
+ 1) the check for winssl needs to come before nss check
+ 2) the SSL checks must begin with a new if or else we will
+ never find any SSL lib with MinGW.
+
+- Tell git to not convert configure-related files.
+
+- Trial to teach runtests.pl about WinSSL.
+
+- Fixed warning 'uninitialized value in numeric gt'.
+
+ This is a MSYS/MinGW-only warning; full warning text is:
+ Use of uninitialized value in numeric gt (>) at ../../curl/tests/runtests.pl line 2227.
+
+Daniel Stenberg (15 Jul 2012)
+- RELEASE-NOTES: synced with 9d11716933616
+
+ Fixed 6 bugs, added 3 contributors
+
+- multi_runsingle: added precaution against easy_conn NULL pointer
+
+ In many states the easy_conn pointer is referenced and just assumed to
+ be working. This is an added extra check since analyzing indicates
+ there's a risk we can end up in these states with a NULL pointer there.
+
+- getparam: fix the GetStr() macro
+
+ It should return PARAM_NO_MEM if the strdup fails. Spotted by
+ clang-analyzer
+
+Guenter Knauf (15 Jul 2012)
+- Tell git to not convert configure-related files.
+
+Daniel Stenberg (13 Jul 2012)
+- parse_proxy: remove dead assignment
+
+ Spotted by clang-analyzer
+
+- ftp_do_more: add missing check of return code
+
+ Spotted by clang-analyzer. The return code was never checked, just
+ stored.
+
+- getinfo: use va_end and cut off Curl_ from static funcs
+
+ va_end() needs to be used after va_start() and we don't normally use
+ Curl_ prefixes for purely static functions.
+
+- [Philip Craig brought this change]
+
+ Split up Curl_getinfo
+
+ This avoids false positives from clang's scan-build.
+
+Guenter Knauf (12 Jul 2012)
+- Added error checking for curl_global_init().
+
+- Added curl_global_* functions.
+
+- Minor fixes to MinGW makefiles.
+
+Daniel Stenberg (12 Jul 2012)
+- docs: mention CURL_GLOBAL_DEFAULT
+
+Guenter Knauf (12 Jul 2012)
+- Added curl_global_* functions.
+
+Daniel Stenberg (12 Jul 2012)
+- tests: verify the stricter numeric option parser
+
+ Test 1409 and 1410 verifies the stricter numeric option parser
+ introduced the other day in commit f2b6ebed7b.
+
+- SWS: use of uninitialized memory fix
+
+ I made "connmon" not get initialized properly before use, and I use the
+ big hammer and make sure we always clear the entire struct to avoid any
+ problem like this in the future.
+
+- test48: verify that HEAD doesn't close extra
+
+ Two commits ago, we fixed a bug where the connction would be closed
+ prematurely after a HEAD. Now I added connection-monitor to test 48 and
+ added a second HEAD and make sure that both are sent over the same
+ connection.
+
+ This triggered a failure before the bug fix and now works. Will help us
+ avoid a future regression of this kind.
+
+- connection-monitor: always log disconnect when enabled
+
+ This makes verifying easier and makes us more sure curl closes the
+ connection only at the correct point in time. Adjusted test 206 and 1008
+ accordingly and updated the docs for it.
+
+- HEAD: don't force-close after response-headers
+
+ A HEAD response has no body length and gets the headers like the
+ corresponding GET would so it should not get closed after the response
+ based on the same rules. This mistake caused connections that did HEAD
+ to get closed too often without a valid reason.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3542731
+ Reported by: Eelco Dolstra
+
+Guenter Knauf (12 Jul 2012)
+- Removed trailing empty strings from awk script.
+
+- Cleaned up version awk script.
+
+- Added project copyright header.
+
+- Removed libcurl.imp from Makefile.am.
+
+ Updated .gitignore for NetWare created files.
+
+- Added missing dependency to export list.
+
+- Fixed export list path.
+
+- Changed NetWare build to generate export list.
+
+- Added pointer to FAQ for linkage errors.
+
+- Small NetWare makefile tweak.
+
+- Changed MinGW makefiles to use WINSSL now.
+
+Daniel Stenberg (10 Jul 2012)
+- test231: fix wrong -C use!
+
+- cmdline: parse numerical options stricter
+
+ 1 - str2offset() no longer accepts negative numbers since offsets are by
+ nature positive.
+
+ 2 - introduced str2unum() for the command line parser that accepts
+ numericals which are not supposed to be negative, so that it will
+ properly complain on apparent bad uses and mistakes.
+
+ Bug: http://curl.haxx.se/mail/archive-2012-07/0013.html
+
+- docs: switch to proper UTF-8 for text file encoding
+
+Yang Tse (9 Jul 2012)
+- Make Curl_schannel_version() return "WinSSL"
+
+ Modification based on voting result:
+
+ http://curl.haxx.se/mail/lib-2012-07/0104.html
+
+Daniel Stenberg (9 Jul 2012)
+- test 46: use different path lengths to get reliable sort order
+
+ Since the order of the cookies is sorted by the length of the paths,
+ having them on the same path length will make the test depend on what
+ order the qsort() implementation will put them. As seen in the
+ windows/msys output posted by Guenter in this posting:
+ http://curl.haxx.se/mail/lib-2012-07/0105.html
+
+- cookie: fixed typo in comment
+
+- [Christian Hägele brought this change]
+
+ https_getsock: provided for schannel backend as well
+
+ The function https_getsock was only implemented properly when USE_SSLEAY
+ or USE_GNUTLS is defined, but it is also necessary for USE_SCHANNEL.
+
+ The problem occurs when Curl_read_plain or Curl_write_plain returns
+ CURLE_AGAIN. In that case CURL_OK is returned to the multi-interface an
+ the used socket is set to state CURL_POLL_REMOVE and the easy-state is
+ set to CURLM_STATE_PROTOCONNECT. This is fine, because later the socket
+ should be set to CURL_POLL_IN or CURL_POLL_OUT via multi_getsock. That's
+ where https_getsock is called and doesn't return any sockets.
+
+- RELEASE-NOTES: added a URL reference to cookie docs
+
+Guenter Knauf (8 Jul 2012)
+- Removed obsolete include path to project root.
+
+Daniel Stenberg (8 Jul 2012)
+- TODO-RELEASE: issue 316 NTLM over proxy is fixed
+
+- [Nick Zitzmann brought this change]
+
+ darwinssl: don't use arc4random_buf
+
+ Re-wrote Curl_darwinssl_random() to not use arc4random_buf() because the
+ function is not available prior to iOS 4.3 and OS X 10.7.
+
+- KNOWN_BUGS: #80 Curl doesn't recognize certs in DER format
+
+- KNOWN_BUGS: #79 - any RCPT TO failure makes and error
+
+Marc Hoersken (8 Jul 2012)
+- winbuild: Aligned BUILD.WINDOWS.txt and Makefile.vc usage help
+
+- winbuild: Make USE_WINSSL depend on USE_SSPI
+
+ Since WinSSL cannot be build without SSPI being enabled,
+ USE_WINSSL now defaults to the value of USE_SSPI.
+
+ The makefile does now raise an error if WinSSL is enabled
+ while SSPI is disabled.
+
+- winbuild: Aligned USE_SSPI with other USE_x defines
+
+ Renamed external parameter USE_SSPI = yes/no to ENABLE_SSPI = yes/no.
+ Backwards compatible change: USE_SSPI can still be passed as external
+ parameter with yes/no value as long as ENABLE_SSPI is not given.
+
+ USE_x defines are passed around with true/false values internally,
+ USE_SSPI is now aligned to this approach, but still accepts external
+ values yes/no being passed, just like the other defines.
+
+- winbuild: Clean up formatting and variable naming
+
+ - Changed space usage to line up with the whole file
+ - Renamed CFLAGS_SSPI/IPV6 to SSPI/IPV6_CFLAGS to be
+ consistent with the other CFLAGS_x variables
+ - Make use of existing CFLAGS_IPV6 (previously IPV6_CFLAGS)
+ instead of appending directly to CFLAGS
+
+Daniel Stenberg (7 Jul 2012)
+- [Nick Zitzmann brought this change]
+
+ darwinssl: output cipher with text, remove SNI warning
+
+ The code was printing a warning when SNI was set up successfully. Oops.
+
+ Printing the cipher number in verbose mode was something only TLS/SSL
+ programmers might understand, so I had it print the name of the cipher,
+ just like in the OpenSSL code. That'll be at least a little bit easier
+ to understand. The SecureTransport API doesn't have a method of getting
+ a string from a cipher like OpenSSL does, so I had to generate the
+ strings manually.
+
+- RELEASE-NOTES: synced with 5a99bce07d
+
+- KNOWN_BUGS: NTLM with unicode works with schannel/winssl!
+
+ Bug #75 updated with additional info, still remains for builds with
+ other backends.
+
+- code police: narrow source to < 80 columns
+
+Yang Tse (5 Jul 2012)
+- unicode NTLM SSPI: cleanup follow-up
+
+- unicode NTLM SSPI: cleanup
+
+ Reduce the number of #ifdef UNICODE directives used in source files.
+
+Daniel Stenberg (5 Jul 2012)
+- tests: use connection-monitor and verify results
+
+ Test 1008 and 206 don't show the disconnect since it happens when SWS
+ awaits a new request, but 503 does and so the verify section needs that
+ string added.
+
+- http-proxy: keep CONNECT connections alive (for NTLM)
+
+ When doing CONNECT requests, libcurl must make sure the connection is
+ alive as much as possible. NTLM requires it and it is generally good for
+ other cases as well.
+
+ NTLM over CONNECT requests has been broken since this regression I
+ introduced in my CONNECT cleanup commits that started with 41b02378342,
+ included since 7.25.0.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3538625
+ Reported by: Marcel Raad
+
+- sws: support <servercmd> for CONNECT requests
+
+ I moved out the servercmd parsing into a its own function called
+ parse_servercmd() and made sure it gets used also when the test number
+ is extracted from CONNECT requests. It turned out sws didn't do that
+ previously!
+
+- FILEFORMAT: provided a full description of connection-monitor
+
+- lib503: enable verbose to ease debugging this
+
+- sws: add 'connection-monitor' command support
+
+ Using this, the server will output in the protocol log when the
+ connection gets disconnected and thus we will verify correctly in the
+ test cases that the connection doesn't get closed prematurely. This is
+ important for example NTLM to work.
+
+ Documentation added to FILEFORMAT, test 503 updated to use this.
+
+Guenter Knauf (4 Jul 2012)
+- Removed non-used variable.
+
+- Added error checking for samples.
+
+- Renamed vars to avoid shadow global declaration.
+
+Daniel Stenberg (3 Jul 2012)
+- docs: clarify how to start with curl_multi_socket_action
+
+ Mention the CURL_SOCKET_TIMEOUT argument in step 6 of the typical
+ application.
+
+Guenter Knauf (3 Jul 2012)
+- Moved some patterns to subfolder's .gitignore.
+
+- Merge branch 'master' of ssh://github.com/bagder/curl
+
+- MinGW makefile tweaks for running from sh.
+
+ Added function macros to make path converting easier.
+ Added CROSSPREFIX to all compile tools.
+
+Yang Tse (3 Jul 2012)
+- [Marc Hoersken brought this change]
+
+ curl_ntlm_msgs.c: Removed unused variable passwd
+
+Guenter Knauf (3 Jul 2012)
+- Added files generated by mingw32, eclipse and VC.
+
+ Posted by Marc Hoersken.
+
+Daniel Stenberg (3 Jul 2012)
+- cookies: change the URL in the cookie jar file header
+
+- HTTP-COOKIES: clarified and modified layout
+
+- HTTP-COOKIES: use the FAQ document layout
+
+- HTTP-COOKIES: added cookie documentation
+
+Yang Tse (3 Jul 2012)
+- curl_ntlm_msgs.c: include <tchar.h> for prototypes
+
+- [Neil Bowers brought this change]
+
+ testcurl.pl: fix missing semicolon
+
+Daniel Stenberg (2 Jul 2012)
+- [Christian Hägele brought this change]
+
+ unicode NTLM SSPI: heap corruption fixed
+
+ When compiling libcurl with UNICODE defined and using unicode characters
+ in username.
+
+Yang Tse (2 Jul 2012)
+- testcurl.pl: allow non in-tree c-ares enabled autobuild
+
+- configure.ac: verify that libmetalink is new enough
+
+ Enabling test2017 to test2022.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ curl: Added runtime version check for libmetalink
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Include metalink/metalink.h for libmetalink functions
+
+Daniel Stenberg (2 Jul 2012)
+- errors: CURLM_CALL_MULTI_PERFORM is not returned anymore
+
+- release: cleaned up plans for this and coming release
+
+Yang Tse (29 Jun 2012)
+- curl-compilers.m4: remove -Wstrict-aliasing=3 from clang
+
+ Currently it is unknown if there is any version of clang that
+ actually supports -Wstrict-aliasing. What is known is that there
+ are several that don't support it.
+
+- test2017 to test2022: more metalink tests
+
+ With this commit, checks done in previous test2017 are now done in test2018.
+
+ Whole range test2017 to test2022 DISABLED until configure is capable of
+ requiring a new-enough metalink library.
+
+ Don't try these without mentioned check in place!
+
+- test2005 to test2016: improve failure detection
+
+- lib582.c: fix conversion warning
+
+- nss.c: #include warnless.h for curlx_uztosi and curlx_uztoui prototypes
+
+- [Marc Hoersken brought this change]
+
+ nss.c: Fixed size_t conversion warnings
+
+- sslgen.c: cleanup temporary compile-time SSL-backend check
+
+Daniel Stenberg (28 Jun 2012)
+- schannel: provide two additional (dummy) API defines
+
+Yang Tse (28 Jun 2012)
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Metalink: message updates
+
+ Print "parsing (...) OK" only when no warnings are generated. If
+ no file is found in Metalink, treat it FAILED.
+
+ If no digest is provided, print WARNING in parse_metalink().
+ Also print validating FAILED after download.
+
+ These changes make tests 2012 to 2016 pass.
+
+Daniel Stenberg (27 Jun 2012)
+- sslgen: avoid compiler error in SSPI builds
+
+Yang Tse (27 Jun 2012)
+- ssluse.c: fix compiler warning: conversion to 'int' from 'size_t'
+
+ Reported by Tatsuhiro Tsujikawa
+
+ http://curl.haxx.se/mail/lib-2012-06/0371.html
+
+- sslgen.c: add compile-time check for SSL-backend completeness
+
+- build: add our standard includes to curl_darwinssl.c and curl_multibyte.c
+
+- build: add curl_schannel and curl_darwinssl files to other build systems
+
+- tests: add five more Metalink test cases
+
+- tests: update Metalink message format
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Metalink: updated message format
+
+- [Nick Zitzmann brought this change]
+
+ DarwinSSL: allow using NTLM authentication
+
+ Allow NTLM authentication when building using SecureTransport (Darwin) for SSL.
+
+ This uses CommonCrypto, a cryptography library that ships with all versions of
+ iOS and Mac OS X. It's like OpenSSL's libcrypto, except that it's missing a few
+ less-common cyphers and doesn't have a big number data structure.
+
+- curl_darwinssl.h: add newline at end of file
+
+Daniel Stenberg (26 Jun 2012)
+- ossl_seed: remove leftover RAND_screen check
+
+ Before commit 2dded8fedba (dec 2010) there was logic that used
+ RAND_screen() at times and now I remove the leftover #ifdef check for
+ it.
+
+ The seeding code that uses Curl_FormBoundary() in ossl_seed() is dubious
+ to keep since it hardly increases randomness but I fear I'll break
+ something if I remove it now...
+
+Yang Tse (26 Jun 2012)
+- [Nick Zitzmann brought this change]
+
+ DarwinSSL: several adjustments
+
+ - Renamed st_ function prefix to darwinssl_
+ - Renamed Curl_st_ function prefix to Curl_darwinssl_
+ - Moved the duplicated ssl_connect_done out of the #ifdef in lib/urldata.h
+ - Fixed a teensy little bug that made non-blocking connection attempts block
+ - Made it so that it builds cleanly against the iOS 5.1 SDK
+
+- curl-compilers.m4: -Wstrict-aliasing=3 for warning enabled gcc and clang builds
+
+- [Marc Hoersken brought this change]
+
+ sockaddr.h: Fixed dereferencing pointer breakin strict-aliasing
+
+ Fixed warning: dereferencing pointer does break strict-aliasing rules
+ by using a union inside the struct Curl_sockaddr_storage declaration.
+
+Daniel Stenberg (26 Jun 2012)
+- SSL cleanup: use crypto functions through the sslgen layer
+
+ curl_ntlm_msgs.c would previously use an #ifdef maze and direct
+ SSL-library calls instead of using the SSL layer we have for this
+ purpose.
+
+- [Nick Zitzmann brought this change]
+
+ darwinssl: add support for native Mac OS X/iOS SSL
+
+- RELEASE-NOTES: link to more metalink info
+
+- RELEASE-NOTES: synced with d025af9bb576
+
+Yang Tse (25 Jun 2012)
+- curl_schannel.c: Remove redundant NULL assignments following Curl_safefree()
+
+- [Marc Hoersken brought this change]
+
+ curl_schannel.c: Replace free() with Curl_safefree()
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ curl.1: Updated Metalink description in man page
+
+ Documented that --include will be ignored if both --metalink
+ and --include are specified.
+ Also documented that a Metalink file in the local file system
+ cannot be used if FILE protocol is disabled.
+
+Steve Holme (24 Jun 2012)
+- DOCS: Added clarification to CURLOPT_CUSTOMREQUEST for the POP3 protocol
+
+ Bug: http://curl.haxx.se/mail/lib-2012-06/0302.html
+ Reported by: Nagai H
+
+- smtp: Corrected result code for MAIL, RCPT and DATA commands
+
+ Bug: http://curl.haxx.se/mail/lib-2012-06/0094.html
+ Reported by: Dan
+
+Daniel Stenberg (24 Jun 2012)
+- [Ghennadi Procopciuc brought this change]
+
+ test: Added test HTTP receive cookies over IPv6
+
+Yang Tse (22 Jun 2012)
+- tests: add another Metalink test case
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ tests: Enable test2010 and fixed hash value
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Metalink: ignore --include if --metalink is used.
+
+ Including headers in response body will break Metalink XML parser.
+ If it is included in the file described in Metalink XML, hash check
+ will fail. Therefore, --include should be ignored if --metalink is
+ used.
+
+- tests: add six Metalink test cases
+
+- test 2005: add verification of hash checking outcome
+
+- getpart.pm: remove misleading comment
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ curl: Prefixed all Metalink related messages with "Metalink: "
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ tests: Added Metalink test case # 2005
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ curl: Restore noprogress and isatty config values.
+
+ The noprogress and isatty in Configurable are global, in a sense
+ that they persist in one curl invocation. Currently once one
+ download writes its response data to tty, they are set to FALSE
+ and they are not restored on successive downloads. This change
+ first backups the current noprogress and isatty, and restores
+ them when download does not write its data to tty.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ curl: Made --metalink option toggle Metalink functionality
+
+ In this change, --metalink option no longer takes argument. If
+ it is specified, given URIs are processed as Metalink XML file.
+ If given URIs are remote (e.g., http URI), curl downloads it
+ first. Regardless URI is local file (e.g., file URI scheme) or
+ remote, Metalink XML file is not written to local file system and
+ the received data is fed into Metalink XML parser directly. This
+ means with --metalink option, filename related options like -O
+ and -o are ignored.
+
+ Usage examples:
+
+ $ curl --metalink http://example.org/foo.metalink
+
+ This will download foo.metalink and parse it and then download
+ the URI described there.
+
+ $ curl --metalink file://foo.metalink
+
+ This will parse local file foo.metalink and then download the URI
+ described there.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ curl: Refactored metalink_checksum
+
+ When creating metalink_checksum from metalink_checksum_t, first
+ check hex digest is valid for the given hash function. We do
+ this check in the order of digest_aliases so that first good
+ match will be chosen (strongest hash function available). As a
+ result, the metalinkfile now only contains at most one
+ metalink_checksum because other entries are just redundant.
+
+- [Gisle Vanem brought this change]
+
+ tool_doswin.c: fix djgpp function _use_lfn() used without a prototype
+
+ http://curl.haxx.se/mail/archive-2012-06/0028.html
+
+- build: fix RESOURCE bug in lib/Makefile.vc*
+
+ Removed two, not intended to exist, RESOURCE declarations.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3535977
+
+ And sorted configuration hunks to reflect same internal order
+ as the one shown in the usage message.
+
+Daniel Stenberg (20 Jun 2012)
+- [Marc Hoersken brought this change]
+
+ schannel: Implement new buffer size strategy
+
+ Increase decrypted and encrypted cache buffers using limitted
+ doubling strategy. More information on the mailinglist:
+ http://curl.haxx.se/mail/lib-2012-06/0255.html
+
+ It updates the two remaining reallocations that have already been there
+ and fixes the other one to use the same "do we need to increase the
+ buffer"-condition as the other two. CURL_SCHANNEL_BUFFER_STEP_SIZE was
+ renamed to CURL_SCHANNEL_BUFFER_FREE_SIZE since that is actually what it
+ is now. Since we don't know how much more data we are going to read
+ during the handshake, CURL_SCHANNEL_BUFFER_FREE_SIZE is used as the
+ minimum free space required in the buffer for the next operation.
+ CURL_SCHANNEL_BUFFER_STEP_SIZE was used for that before, too, but since
+ we don't have a step size now, the define was renamed.
+
+Yang Tse (20 Jun 2012)
+- schannel SSL: fix compiler warning
+
+- [Mark Salisbury brought this change]
+
+ schannel SSL: fix for renegotiate problem
+
+ In schannel_connect_step2() doread should be initialized based
+ on connssl->connecting_state.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ runtests.pl: make it support metalink feature
+
+- getpart.pm: make test definition section/part parser more robust
+
+ Test definition section parts which needed to include xml-lingo as contents
+ of that part required that the xml-blurb was written as a single line. Now the
+ xml-data inside the part can be written multiline making it more readable.
+
+ Tested with <client><file> part which is written to disk before <command> runs.
+
+Daniel Stenberg (20 Jun 2012)
+- schannel_connect_step2: checksrc whitespace fix
+
+Yang Tse (20 Jun 2012)
+- [Mark Salisbury brought this change]
+
+ schannel SSL: changes in schannel_connect_step2
+
+ Process extra data buffer before returning from schannel_connect_step2.
+ Without this change I've seen WinCE hang when schannel_connect_step2
+ returns and calls Curl_socket_ready.
+
+ If the encrypted handshake does not fit in the intial buffer (seen with
+ large certificate chain), increasing the encrypted data buffer is necessary.
+
+ Fixed warning in curl_schannel.c line 1215.
+
+- [Mark Salisbury brought this change]
+
+ config-win32ce.h: WinCE config adjustment
+
+ process.h is not present on WinCE
+
+- [Mark Salisbury brought this change]
+
+ schannel SSL: Made send method handle unexpected cases better
+
+ Implemented timeout loop in schannel_send while sending data. This
+ is as close as I think we can get to write buffering; I put a big
+ comment in to explain my thinking.
+
+ With some committer adjustments
+
+Daniel Stenberg (19 Jun 2012)
+- [Marc Hoersken brought this change]
+
+ curl_schannel.c: Avoid unnecessary realloc calls to reduce buffer size
+
+Yang Tse (19 Jun 2012)
+- [Mark Salisbury brought this change]
+
+ schannel SSL: Use standard Curl read/write methods
+
+ Replaced calls to swrite with Curl_write_plain and calls to sread
+ with Curl_read_plain.
+
+ With some committer adjustments
+
+- schannel SSL: make wording of some trace messages better reflect reality
+
+Daniel Stenberg (19 Jun 2012)
+- [Marc Hoersken brought this change]
+
+ curl_schannel.h: Use BUFSIZE as the initial buffer size if available
+
+ Make the Schannel implementation use libcurl's default buffer size
+ for the initial received encrypted and decrypted data cache buffers.
+ The implementation still needs to handle more data since more data
+ might have already been received or decrypted during the handshake
+ or a read operation which needs to be cached for the next read.
+
+Guenter Knauf (19 Jun 2012)
+- Fixed NetWare makefile broken from last commit.
+
+Yang Tse (19 Jun 2012)
+- [Mark Salisbury brought this change]
+
+ schannel SSL: Implemented SSL shutdown
+
+ curl_schannel.c - implemented graceful SSL shutdown. If we fail to
+ shutdown the connection gracefully, I've seen schannel try to use a
+ session ID for future connects and the server aborts the connection
+ during the handshake.
+
+- [Mark Salisbury brought this change]
+
+ schannel SSL: certificate validation on WinCE
+
+ curl_schannel.c - auto certificate validation doesn't seem to work
+ right on CE. I added a method to perform the certificate validation
+ which uses CertGetCertificateChain and manually handles the result.
+
+- [Mark Salisbury brought this change]
+
+ schannel SSL: Added helper methods to simplify code
+
+ Added helper methods InitSecBuffer() and InitSecBufferDesc() to make it
+ easier to set up SecBuffer & SecBufferDesc structs.
+
+Guenter Knauf (18 Jun 2012)
+- Some more NetWare makefile tweaks for metalink.
+
+Yang Tse (18 Jun 2012)
+- tool_cb_see.c: WinCE build adjustment
+
+- [Mark Salisbury brought this change]
+
+ setup.h: WinCE build adjustment
+
+- [Mark Salisbury brought this change]
+
+ ftplistparser.c: do not compile if FTP protocol is not enabled
+
+- Win32: downplay MS bazillion type synonyms game
+
+ Avoid usage of some MS type synonyms to allow compilation with
+ compiler headers that don't define these, using simpler synonyms.
+
+Daniel Stenberg (15 Jun 2012)
+- Curl_rtsp_parseheader: avoid useless malloc/free
+
+ Coverity actually pointed out flawed logic in the previous call to
+ Curl_strntoupper() where the code used sizeof() of a pointer to pass in
+ a size argument. That code still worked since it only needed to
+ uppercase 4 letters. Still, the entire malloc/uppercase/free sequence
+ was pointless since the code has already matched the string once in the
+ condition that starts the block of code.
+
+- curl_share_setopt: use va_end()
+
+ As spotted by Coverity, va_end() was not used previously. To make it
+ used I took away a bunch of return statements and made them into
+ assignments instead.
+
+Yang Tse (15 Jun 2012)
+- SSPI related code: Unicode support for WinCE - kill compiler warnings
+
+- [Mark Salisbury brought this change]
+
+ SSPI related code: Unicode support for WinCE - commit 46480bb9 follow-up
+
+- build: add curl_multibyte files to build systems
+
+- [Mark Salisbury brought this change]
+
+ SSPI related code: Unicode support for WinCE
+
+ SSPI related code now compiles with ANSI and WCHAR versions of security
+ methods (WinCE requires WCHAR versions of methods).
+
+ Pulled UTF8 to WCHAR conversion methods out of idn_win32.c into their own file.
+
+ curl_sasl.c - include curl_memory.h to use correct memory functions.
+
+ getenv.c and telnet.c - WinCE compatibility fix
+
+ With some committer adjustments
+
+Guenter Knauf (15 Jun 2012)
+- Fixed typo.
+
+Yang Tse (14 Jun 2012)
+- winbuild/MakefileBuild.vc: convert line endings to DOS style
+
+ As per request on mailing list: http://curl.haxx.se/mail/lib-2012-06/0222.html
+
+- [Marc Hoersken brought this change]
+
+ winbuild: Allow SSPI build with or without Schannel
+
+ The changes introduced in commit 2bfa57bc32 are not enough
+ to make it actually possible to use the USE_WINSSL option.
+ Makefile.vc was not updated and the configuration name which is
+ used in the build path did not match between both build files.
+
+ This patch fixes those issues and introduces the following changes:
+
+ - Replaced the -schannel name with -winssl in order to be consistent
+ with the other options
+ - Added ENABLE_WINSSL option to winbuild/Makefile.vc (default yes)
+ - Changed winbuild/MakefileBuild.vc to set USE_WINSSL to true if
+ USE_SSL is false and USE_WINSSL was not specified as a parameter
+ - Separated WINSSL handling from SSPI handling to be consistent with
+ the other options and their corresponding code path
+
+- curl.1: 7.27.0 seems next release
+
+- schannel: fix printf-style format strings
+
+- Fix bad failf() and info() usage
+
+ Calls to failf() are not supposed to provide trailing newline.
+ Calls to infof() must provide trailing newline.
+
+ Fixed 30 or so strings.
+
+- schannel: fix unused parameter warnings
+
+- schannel: fix comparisons between signed and unsigned
+
+- schannel: fix discarding qualifier from pointer type
+
+- schannel: fix shadowing of global declarations
+
+- schannel: fix Curl_schannel_init() and Curl_schannel_cleanup() declarations
+
+- [Gisle Vanem brought this change]
+
+ urldata.h: fix cyassl/openssl/ssl.h build clash with wincrypt.h
+
+ Building with CyaSSL failed compilation. Reason being that OCSP_REQUEST and
+ OCSP_RESPONSE are enum values in CyaSSL and defines in <wincrypt.h> included
+ via <winldap.h> in ldap.c.
+
+ http://curl.haxx.se/mail/lib-2012-06/0196.html
+
+- MakefileBuild.vc: Allow building without SSL
+
+ In order to use Windows native SSL support define 'USE_WINSSL'
+
+- configure: new option --with-winssl
+
+ This option may be used to build curl/libcurl using SSL/TLS support provided
+ by MS windows system libraries. Option is mutually exclusive with any other
+ SSL library. Default value is --without-winssl.
+
+ --with-winssl option implies --with-sspi option.
+
+ Option meaningful only for Windows builds.
+
+Guenter Knauf (13 Jun 2012)
+- Changed Schannel string to SSL-Windows-native.
+
+ This is more descriptive for the user who might
+ not even know what schannnel is at all.
+
+Yang Tse (13 Jun 2012)
+- schannel: remove version number and identify its use with 'schannel' literal
+
+ Version number is removed in order to make this info consistent with
+ how we do it with other MS and Linux system libraries for which we don't
+ provide this info.
+
+ Identifier changed from 'WinSSPI' to 'schannel' given that this is the
+ actual provider of the SSL/TLS support. libcurl can still be built with
+ SSPI and without SCHANNEL support.
+
+Daniel Stenberg (12 Jun 2012)
+- singlesocket: remove dead code
+
+ No need to check if 'entry' is non-NULL in a spot where it is already checked
+ and guaranteed to be non-NULL.
+
+ (Spotted by a Coverity scan)
+
+- netrc: remove dead code
+
+ Remove two states from the enum and the corresponding code for them as
+ these states were never reached or used.
+
+ (Spotted by a Coverity scan)
+
+Yang Tse (12 Jun 2012)
+- Revert "connect.c/ftp.c: Fixed dereferencing pointer breakin strict-aliasing"
+
+ This reverts commit 9c94236e6cc078a0dc5a78b6e2fefc1403e5375e.
+
+ It didn't server its purpose, so lets go back to long-time working code.
+
+- socks_sspi.c: further cleanup
+
+- [Marc Hoersken brought this change]
+
+ socks_sspi.c: Clean up and removal of obsolete minor status
+
+ Removed obsolete minor status variable and parameter of status function
+ which was never used or set at all. Also Curl_sspi_strerror does support
+ only one status and there is no need for a second sub status.
+
+Guenter Knauf (12 Jun 2012)
+- Removed trailing whitespaces.
+
+Yang Tse (12 Jun 2012)
+- strerror.c: make Curl_sspi_strerror() always return code for errors
+
+- curl_sspi.h: provide sspi status definitions missing in old headers
+
+- sspi: make Curl_sspi_strerror() libcurl's sspi status code string function
+
+- sspi: make Curl_sspi_strerror() libcurl's sspi status code string function
+
+Daniel Stenberg (11 Jun 2012)
+- Revert: 634f7cfee40d4658 partially
+
+ Make sure CURL_VERSION_SSPI is present and works as in previous releases
+ for ABI and API compatibility reasons.
+
+- checksrc: shorten a few lines to comply
+
+- cleanup: remove trailing whitespace
+
+- [Marc Hoersken brought this change]
+
+ winbuild: Removed WITH_SSL=schannel and tie schannel to SSPI
+
+ Removed specific WITH_SSL=schannel paramter that did not fit the general
+ schema and complicated the parameters. For now Schannel will be enabled
+ if SSPI is enabled and OpenSSL is disabled.
+
+- [Steve Holme brought this change]
+
+ Makefile.vc6: Added version.lib if built with SSPI
+
+- [Marc Hoersken brought this change]
+
+ winbuild: Updated winbuild scripts to add schannel
+
+- [Marc Hoersken brought this change]
+
+ mingw32: Fixed warning of USE_SSL being redefined
+
+- [Marc Hoersken brought this change]
+
+ sspi: Fixed incompatible parameter pointer type in Curl_sspi_version
+
+- [Marc Hoersken brought this change]
+
+ sspi: Updated RELEASE-NOTES, FEATURES and THANKS
+
+- [Marc Hoersken brought this change]
+
+ setup.h: Automatically define USE_SSL if USE_SCHANNEL is defined
+
+- [Marc Hoersken brought this change]
+
+ version: Replaced SSPI feature information with version string details
+
+ Added Windows SSPI version information to the curl version string when
+ SCHANNEL SSL is not enabled, as the version of the library should also
+ be included when SSPI is used to generate security contexts.
+
+ Removed SSPI from the feature list as the features are GSS-Negotiate,
+ NTLM and SSL depending on the usage of the SSPI library.
+
+- [Steve Holme brought this change]
+
+ sspi.c: Post Curl_sspi_version() rework code tidy up
+
+ Removed duplicate blank lines.
+ Removed spaces between the not and test in various if statements.
+ Removed explicit test of NULL in an if statement.
+ Placed function returns on same line as function declarations.
+ Replaced the use of curl_maprintf() with aprintf() as it is the
+ preprocessor job to do this substitution if ENABLE_CURLX_PRINTF
+ is set.
+
+- [Steve Holme brought this change]
+
+ sspi: Reworked Curl_sspi_version() to return version components
+
+ Reworked the version function to return four version components rather
+ than a string that has to be freed by the caller.
+
+- [Guenter Knauf brought this change]
+
+ configure.ac: Added -lversion if built with SSPI
+
+- [Marc Hoersken brought this change]
+
+ schannel: Code cleanup and bug fixes
+
+ curl_sspi.c: Fixed mingw32-gcc compiler warnings
+ curl_sspi.c: Fixed length of error code hex output
+
+ The hex value was printed as signed 64-bit value on 64-bit systems:
+ SEC_E_WRONG_PRINCIPAL (0xFFFFFFFF80090322)
+
+ It is now correctly printed as the following:
+ SEC_E_WRONG_PRINCIPAL (0x80090322)
+
+ curl_sspi.c: Fallback to security function table version number
+ Instead of reporting an unknown version, the interface version is used.
+
+ curl_sspi.c: Removed SSPI/ version prefix from Curl_sspi_version
+ curl_schannel: Replaced static buffer sizes with defined names
+ curl_schannel.c: First brace when declaring functions on column 0
+ curl_schannel.c: Put the pointer sign directly at variable name
+ curl_schannel.c: Use structs directly instead of typedef'ed structs
+ curl_schannel.c: Removed space before opening brace
+ curl_schannel.c: Fixed lines being longer than 80 chars
+
+- [Marc Hoersken brought this change]
+
+ curl_sspi: Added Curl_sspi_version function
+
+ Added new function to get SSPI version as string.
+ Added required library version.lib to makefiles.
+ Changed curl_schannel.c to use Curl_sspi_version.
+
+- [Guenter Knauf brought this change]
+
+ schannel: Updated mingw32 makefiles
+
+- [Marc Hoersken brought this change]
+
+ schannel: Replace ASCII specific code with general defines
+
+- [Marc Hoersken brought this change]
+
+ schannel: Added definitions which are missing in mingw32
+
+- [Marc Hoersken brought this change]
+
+ schannel: Moved interal struct types to urldata.h
+
+ Moved type definitions in order to avoid inclusion loop
+
+- [Marc Hoersken brought this change]
+
+ schannel: Fixed compiler warnings about pointer type assignments
+
+- [Marc Hoersken brought this change]
+
+ schannel: Fixed critical typo in conditions and added buffer length checks
+
+- [Marc Hoersken brought this change]
+
+ sspi: Refactored socks_sspi and schannel to use same error message functions
+
+ Moved the error constant switch to curl_sspi.c and added two new helper
+ functions to curl_sspi.[ch] which either return the constant or a fully
+ translated message representing the SSPI security status.
+ Updated socks_sspi.c and curl_schannel.c to use the new functions.
+
+- [Marc Hoersken brought this change]
+
+ schannel: Added special shutdown check for Windows 2000 Professional
+
+ Windows 2000 Professional: Schannel returns SEC_E_OK instead
+ of SEC_I_CONTEXT_EXPIRED. If the length of the output buffer
+ is zero and the first byte of the encrypted packet is 0x15,
+ the application can safely assume that the message was a
+ close_notify message and change the return value to
+ SEC_I_CONTEXT_EXPIRED.
+
+ Connection shutdown does not mean that there is no data to read
+ Correctly handle incomplete message and ask curl to re-read
+ Fixed buffer for decrypted being to small
+ Re-structured read condition to be more effective
+ Removed obsolete verbose messages
+ Changed memory reduction method to keep a minimum buffer of size 4096
+
+- [Marc Hoersken brought this change]
+
+ schannel: Implemented SSL/TLS renegotiation
+
+ Updated TODO information and added related MSDN articles
+
+- [Marc Hoersken brought this change]
+
+ schannel: Save session credential handles in session cache
+
+- [Marc Hoersken brought this change]
+
+ schannel: Code cleanup
+
+- [Marc Hoersken brought this change]
+
+ schannel: Check for required context attributes
+
+- [Marc Hoersken brought this change]
+
+ schannel: Allow certificate and revocation checks being deactivated
+
+- [Marc Hoersken brought this change]
+
+ schannel: Added SSL/TLS support with Microsoft Windows Schannel SSPI
+
+- [Marc Hoersken brought this change]
+
+ http: Replaced specific SSL libraries list in https_getsock fallback
+
+- [Marc Hoersken brought this change]
+
+ connect.c/ftp.c: Fixed dereferencing pointer breakin strict-aliasing
+
+ Fixed warning: dereferencing pointer does break strict-aliasing rules
+ by using a union instead of separate pointer variables.
+ Internal union sockaddr_u could probably be moved to generic header.
+ Thanks to Paul Howarth for the hint about using unions for this.
+
+ Important for winbuild: Separate declaration of sockaddr_u pointer.
+ The pointer variable *sock cannot be declared and initialized right
+ after the union declaration. Therefore it has to be a separate statement.
+
+- [Marc Hoersken brought this change]
+
+ curl_ntlm_msgs.c: Fixed passwdlen not being used and recalculated
+
+Yang Tse (11 Jun 2012)
+- tests: fix test definitions # 1355, 1363, 1385 and 1393
+
+ -i without HTTP protocol shall not include headers in the output
+
+Daniel Stenberg (10 Jun 2012)
+- Curl_pgrsDone: return int and acknowledge return code
+
+ Since Curl_pgrsDone() itself calls Curl_pgrsUpdate() which may return an
+ abort instruction or similar we need to return that info back and
+ subsequently properly handle return codes from Curl_pgrsDone() where
+ used.
+
+ (Spotted by a Coverity scan)
+
+Steve Holme (10 Jun 2012)
+- [Marc Hoersken brought this change]
+
+ winbuild: Fixed environment variables being lost
+
+ Fixed USE_IPV6 and USE_IDN not being passed
+ from Makefile.vc to MakefileBuild.vc
+ Fixed whitespace and formatting issues
+ Fixed typo and format in help message
+
+Guenter Knauf (9 Jun 2012)
+- Added metalink support to NetWare builds.
+
+Steve Holme (9 Jun 2012)
+- smtp.c: Removed unused variable
+
+- smtp: Post apop feature code tidy up
+
+- pop3: Post apop feature code tidy up
+
+- pop3: Added support for apop authentication
+
+- pop3: Enhanced the extended authentication mechanism detection
+
+ Enhanced the authentication type / mechanism detection in preparation
+ for the introduction of APOP support.
+
+- pop3.c: Fixed length of SASL check
+
+Yang Tse (9 Jun 2012)
+- Fixes allowing 26 more test cases in 1334 to 1393 range to succeed
+
+- tests: fix test definitions # 1370 and 1371
+
+ -J without -O shall not honor C-D filename
+
+Daniel Stenberg (9 Jun 2012)
+- OpenSSL: support longer certificate subject names
+
+ Previously it would use a 256 byte buffer and thus cut off very long
+ subject names. The limit is now upped to the receive buffer size, 16K.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3533045
+ Reported by: Anthony G. Basile
+
+Kamil Dudka (8 Jun 2012)
+- ssl: fix duplicated SSL handshake with multi interface and proxy
+
+ Bug: https://bugzilla.redhat.com/788526
+ Reported by: Enrico Scholz
+
+Daniel Stenberg (8 Jun 2012)
+- tool_getparam.h: fix compiler error
+
+ forward declare the Configurable struct
+
+- metalink: restore some includes
+
+ Commit eeeba1496cbca removed them and thus broke my Linux build
+
+- openldap: OOM fixes
+
+ when calloc fails, return error! (Detected by Fortify)
+
+ Reported by: Robert B. Harris
+
+Steve Holme (8 Jun 2012)
+- sasl: Re-factored mechanism constants in preparation for APOP work
+
+Yang Tse (8 Jun 2012)
+- metalink: build fixes and adjustments II
+
+ Additionally, make hash checking ability mandatory in order to allow metalink
+ support in curl.
+
+ A command line option could be introduced to skip hash checking at runtime,
+ but the ability to check hashes should always be built-in when providing
+ metalink support.
+
+Guenter Knauf (8 Jun 2012)
+- Added metalink support to MinGW builds.
+
+Daniel Stenberg (7 Jun 2012)
+- log2changes.pl: fix the Version output
+
+ Previously it could easily wrongly get repeated
+
+Yang Tse (7 Jun 2012)
+- metalink: build fixes and adjustments I
+
+Daniel Stenberg (7 Jun 2012)
+- lib554.c: use curl_formadd() properly
+
+ The length/size options take longs so make sure to pass on such types.
+
+ Reported by: Neil Bowers
+ Bug: http://curl.haxx.se/mail/lib-2012-06/0001.html
+
+Steve Holme (7 Jun 2012)
+- smtp.c: Re-factored the smtp_state_*_resp() functions
+
+ Re-factored the smtp_state_*_resp() functions to 1) Match the constants
+ that were refactored in commit 00fddba6727c, 2) To be more readable and
+ 3) To match their counterparties in pop3.c.
+
+Yang Tse (7 Jun 2012)
+- Fixes allowing HTTP test cases 1338, 1339, 1368 and 1369 to succeed
+
+- tests 1364 to 1393: several -o filename -J -i -D combinations for HTTP and FTP
+
+- tests 1348 to 1363: test definition polishing
+
+ Verify that the "Saved to filename 'blabla'" message is only displayed when
+ the 'blabla' filename being used _actually_ has been specified by the server
+ in the Content-Disposition header.
+
+ Use relative path for unintended file creation postcheck.
+
+Steve Holme (6 Jun 2012)
+- smtp: Re-factored the SMTP_AUTH* state machine constants
+
+ Re-factored the SMTP_AUTH* constants, that are used by the state
+ machine, to be clearer to read.
+
+Guenter Knauf (6 Jun 2012)
+- Added hint for pkg-config wrapper script.
+
+- Updated Android section with recent NDK.
+
+ The r7b had some bugs, and shouldnt be used.
+
+Yang Tse (6 Jun 2012)
+- Disable non-HTTP header related tests
+
+ These now detect incompleate header data and fail
+
+- tests 1348 to 1363: compleate header data part of test definition
+
+- tests 1334 to 1363 revisited.
+
+ Add a postcheck section to verify unintended file creation.
+
+ Remove needless <file> checks in verify section. Renumbering where appropriate.
+
+- tests: adjust file part behavior in test verify section.
+
+ When a <file> part is now specified with no contents at all, this
+ will actually verify that the specified file has no contents at all.
+ Previously file contents would be ignored.
+
+Steve Holme (5 Jun 2012)
+- smtp.c: Removed whitespace
+
+- pop3: Another small code tidy up
+
+ Missed some comments that we identified during the SMTP tidy up earlier.
+
+- smtp: Post authentication code tidy up
+
+ Corrected lines longer than 78 characters.
+
+ Removed unnecessary braces in smtp_state_helo_resp().
+
+ Introduced some comments in data sending functions.
+
+ Tidied up comments to match changes made in pop3.c.
+
+Yang Tse (5 Jun 2012)
+- tests 1348 to 1363: add a comma in test description
+
+Steve Holme (5 Jun 2012)
+- email: Removed duplicated header file
+
+- sasl: Renamed Curl_sasl_decode_ntlm_type2_message()
+
+ For consistency with other SASL based functions renamed this function
+ to Curl_sasl_create_ntlm_type3_message() which better describes its
+ usage.
+
+- pop3: Post authentication code tidy up
+
+ Corrected lines longer than 78 characters.
+
+ Changed POP3_AUTH_FINAL to POP3_AUTH to match SMTP code now that the
+ AUTH command is no longer sent on its own.
+
+ Introduced some comments in data sending functions.
+
+ Another attempt at trying to rational code and comment style.
+
+- pop3: Added support for sasl digest-md5 authentication
+
+Yang Tse (4 Jun 2012)
+- sasl: add reference for curl_sasl
+
+- Makefile.inc: tab adjustment
+
+Daniel Stenberg (4 Jun 2012)
+- pop3 tests: CAPA instead of AUTH
+
+ After Steve's commit e336bc7c42c7340 test 1319 and 1407 need to check
+ for CAPA instead of AUTH.
+
+Steve Holme (4 Jun 2012)
+- sasl: Added service parameter to Curl_sasl_create_digest_md5_message()
+
+ Added a service type parameter to Curl_sasl_create_digest_md5_message()
+ to allow the function to be used by different services rather than being
+ hard coded to "smtp".
+
+Yang Tse (4 Jun 2012)
+- tests 1356 to 1363: several -O -J -i -D combinations with FTP protocol
+
+ Currently 1356 to 1362 succeed but a write failure is logged in traceNNNN.
+
+ Currently 1363 fails, so disabled for now.
+
+Steve Holme (4 Jun 2012)
+- tests: Updated pop3 tests for change in auth mechanism detection
+
+- pop3: Changed the sasl mechanism detection from auth to capa
+
+ Not all SASL enabled POP3 servers support the AUTH command on its own
+ when trying to detect the supported mechanisms. As such changed the
+ mechanism detection to use the CAPA command instead.
+
+Daniel Stenberg (4 Jun 2012)
+- curl_easy_setopt.3: proto updates + cleanups
+
+ - For all *FUNCTION options, they now all show the complete prototype in
+ the description. Previously some of them would just refer to a
+ typedef'ed function pointer in the curl.h header.
+
+ - I made the phrasing of that "Pass a pointer to a function that matches
+ the following prototype" the same for all *FUNCTION option descriptions.
+
+ - I removed some uses of 'should'. I think I sometimes over-use this
+ word as in many places I actually mean MUST or otherwise more specific
+ and not-so-optional synonyms.
+
+Yang Tse (4 Jun 2012)
+- tests 1348 to 1355: several -O -J -i -D combinations with FTP protocol
+
+ Currently 1348 to 1354 succeed but a write failure is logged in traceNNNN.
+
+ Currently 1355 fails, so disabled for now.
+
+- tests 1346 to 1347: several -O -J -i -D combinations with HTTP protocol
+
+Steve Holme (4 Jun 2012)
+- sasl: Small code tidy up
+
+ Reworked variable names in Curl_sasl_create_cram_md5_message() to match
+ those in Curl_sasl_create_digest_md5_message() as they are more
+ appropriate.
+
+- sasl: Moved digest-md5 authentication message creation from smtp.c
+
+ Moved the digest-md5 message creation from smtp.c into the sasl module
+ to allow for use by other modules such as pop3.
+
+- sasl: Small code tidy up before moving digest-md5 over
+
+ Correction of comments and variable names.
+
+- RELEASE-NOTES: Added missing addition of sasl login support
+
+- pop3: Added support for sasl cram-md5 authentication
+
+Daniel Stenberg (3 Jun 2012)
+- Curl_sasl_create_plain_message: remove TAB
+
+Steve Holme (3 Jun 2012)
+- sasl: Small code tidy up
+
+ Added some comments and removed an unreferenced variable.
+
+- pop3.c: Added conditional compilation for NTLM function calls
+
+ Added USE_NTLM condition compilation around the NTLM functions called
+ from pop3_statemach_act() introduced in commit 69f7156ad96877.
+
+- sasl: Moved cram-md5 authentication message creation from smtp.c
+
+ Moved the cram-md5 message creation from smtp.c into the sasl module
+ to allow for use by other modules such as pop3.
+
+- pop3: Fixed an issue with changes introduced in commit c267c53017bc
+
+ Because pop3_endofresp() is called for each line of data yet is not
+ passed the line and line length, so we have to use the data pointed to
+ by pp->linestart_resp which contains the whole packet, the mechanisms
+ were being detected in one call yet the function would be called for
+ each line of data.
+
+ Using curl with verbose mode enabled would show that one line of data
+ would be received in response to the AUTH command, before the AUTH
+ <mechanism> command was sent to the server and then the next few lines
+ of the original AUTH command would be displayed before the response from
+ the AUTH <mechanism> command. This would then cause problems when
+ parsing the CRAM-MD5 challenge data as extra data was contained in the
+ buffer.
+
+ Changed the parsing so that each line is checked for the mechanisms
+ and the function returns FALSE until the whole of the AUTH response has
+ been processed.
+
+Daniel Stenberg (3 Jun 2012)
+- version: bump to 7.27.0 for next release
+
+ Due to new features
+
+- RELEASE-NOTES: synced with c4e3578e4bf
+
+ Also bumped the contributor number and next release is to become 7.27.0
+
+- THANKS: 16 new contributors from the 7.26.0 release
+
+Steve Holme (3 Jun 2012)
+- DOCS: Fixed list in Section 18.2 not displaying correctly on web site
+
+- DOCS: Corrected missed heading renumbering from commit 530675a1ad7
+
+- DOCS: Added IMAP and LDAP sections
+
+ Added new sections 11. IMAP and 12. LDAP to document adding SASL based
+ authentication.
+
+ Renumbered current sections 11 to 17 as 13 to 19.
+
+ Additionally added 19.10 Add CURLOPT_MAIL_CLIENT option.
+
+- sasl.c: Fix to avoid warnings introduced in commit d9ca9e9869e8
+
+ Applied a fix to avoid warnings on systems where Curl_ntlm_sspi_cleanup()
+ is just a nop.
+
+- pop3.c:Corrected typo in commit 69ba0da8272d
+
+- pop3: Fixed the issue of having to supply the user name for all requests
+
+ Previously it wasn't possible to connect to POP3 and not specify the
+ user name as a CURLE_ACCESS_DENIED error would be returned. This error
+ occurred because USER would be sent to the server with a blank user name
+ if no mailbox user was specified as the server would reply with -ERR.
+
+ This wasn't a problem prior to the 7.26.0 release but with the
+ introduction of custom commands the user and/or application developer
+ might want to issue a CAPA command without having to log in as a
+ specific mailbox user.
+
+ Additionally this fix won't send the newly introduced AUTH command if no
+ user name is specified.
+
+- pop3.c: Small code tidy up
+
+ Corrected lines exceeding 78 characters.
+
+ Repositioned some comments and added extra clarity.
+
+- sasl: Corrected variable names in comments and parameters
+
+- pop3: Added support for sasl ntlm authentication
+
+- sasl: Small comment style tidy up following ntlm commit
+
+- sasl: Moved ntlm authentication message handling from smtp.c
+
+ Moved the ntlm message creation and decoding from smtp.c into the sasl
+ module to allow for use by other modules such as pop3.
+
+- pop3: Added support for sasl login authentication
+
+Yang Tse (1 Jun 2012)
+- tests 1334 to 1345: several -O -J -i -D combinations with HTTP protocol
+
+- tests: support test definitions with up to 5 file checks in <verify> section
+
+ This is done introducing tags <file1> to <file4> besides existing <file> one,
+ as well as corresponding <stripfile1> to <stripfile4> ones, that can be used
+ in the <verify> section in the same way as the non-numbered ones.
+
+Steve Holme (31 May 2012)
+- sasl: Moved login authentication message creation from smtp.c
+
+ Moved the login message creation from smtp.c into the sasl module
+ to allow for use by other modules such as pop3.
+
+- smtp.c: Reworked message encoding in smtp_state_authpasswd_resp()
+
+ Rather than encoding the password message itself the
+ smtp_state_authpasswd_resp() function now delegates the work to the same
+ function that smtp_state_authlogin_resp() and smtp_authenticate() use
+ when constructing the encoded user name.
+
+- smtp.c: Re-factored smtp_auth_login_user() for use with passwords
+
+ In preparation for moving to the SASL module re-factored the
+ smtp_auth_login_user() function to smtp_auth_login() so that it can be
+ used for both user names and passwords as sending both of these under
+ the login authentication mechanism is the same.
+
+- pop3: Added support for sasl plain text authentication
+
+- curl_ntlm_msgs.c: Corrected small spelling mistake in comments
+
+- sasl: Moved plain text authentication message creation from smtp.c
+
+ Moved the plain text message creation from smtp.c into the sasl module
+ to allow for use by other modules such as pop3.
+
+Yang Tse (30 May 2012)
+- configure: fix LDAPS disabling related misplaced closing parenthesis
+
+- pop3 test server: allow pop3 test server verification to succeed again
+
+ Introduce SUPPORTCAPA and SUPPORTAUTH config commands to allow further
+ pop3 test server expansion for tests that require CAPA or AUTH support,
+ although this will need some extra work to make it fully functional.
+
+Steve Holme (28 May 2012)
+- pop3: Introduced the continue response in pop3_endofresp()
+
+- pop3: Changed response code from O and E to + and -
+
+ The POP3 protocol doesn't really have the concept of error codes and
+ uses +, +OK and -ERR in response to commands to indicate continue,
+ success and error.
+
+ The AUTH command is one of those commands that requires multiple pieces
+ of data to be sent to the server where the server will respond with + as
+ part of the handshaking. This meant changing the values before
+ continuing with the next stage of adding authentication support.
+
+- pop3: Small code tidy up following authentication work so far
+
+ Changed the order of the state machine to match the order of actual
+ events.
+
+ Reworked some comments and function parameter positioning that I missed
+ the other day.
+
+Kamil Dudka (28 May 2012)
+- nss: use human-readable error messages provided by NSS
+
+ Bug: http://lists.baseurl.org/pipermail/yum-devel/2012-January/009002.html
+
+Daniel Stenberg (27 May 2012)
+- test1013.pl: filter out Metalink
+
+ Since it isn't a feature supported by curl-config we can't compare that
+ with the --version output
+
+- pop3: remove variable-not-used warnings
+
+Steve Holme (27 May 2012)
+- DOCS: Corrected the "Added in" version number for CURLOPT_MAIL_AUTH
+
+ Additionally corrected another RFC link that I missed yesterday.
+
+- pop3: Added support for SASL based authentication mechanism detection
+
+ Added support for detecting the supported SASL authentication mechanisms
+ via the AUTH command. There are two ways of detecting them, either by
+ using the AUTH command, that will return -ERR if not supported or by
+ using the CAPA command which will return SASL and the list of mechanisms
+ if supported, not include SASL if SASL authentication is not supported
+ or -ERR if the CAPA command is not supported. As such it seems simpler
+ to use the AUTH command and fallback to normal clear text authentication
+ if the the command is not supported.
+
+ Additionally updated the test cases to return -ERR when the AUTH command
+ is encountered. Additional test cases will be added when support for the
+ individual authentication mechanisms is added.
+
+Daniel Stenberg (27 May 2012)
+- pop3: remove trailing whitespace
+
+Steve Holme (27 May 2012)
+- pop3: Code tidy up before the introduction of authentication code
+
+ Moved EOB definition into header file.
+
+ Switched the logic around in pop3_endofresp() to allow for the
+ introduction of auth-mechanism detection.
+
+ Repositioned second and third function variables where they will fit
+ within the 78 character line limit.
+
+ Tidied up some comments.
+
+Guenter Knauf (27 May 2012)
+- Enabled OpenSSL static linkage.
+
+- Enabled OpenSSL static linkage.
+
+- Try to detect OpenSSL build type automatically.
+
+Daniel Stenberg (26 May 2012)
+- metalink: fix build errors when disabled
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Reduced #ifdef HAVE_METALINK
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Disable hash check if neither OpenSSL nor GNUTLS is installed.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Format GETOUT_METALINK nicely
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Minimize usage of structs from libmetalink
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Check checksum of downloaded file if checksum is available
+
+ Metalink file contains several hash types of checksums, such as
+ md5, sha-1, sha-256, etc. To deal with these checksums, I created
+ abstraction layer based on lib/curl_md5.h and
+ lib/md5.c. Basically, they are almost the same but I changed the
+ code so that it is not hash type dependent. Currently,
+ GNUTLS(nettle or gcrypt) and OpenSSL functions are supported.
+
+ Checksum checking is done by reopening download file. If there
+ is an I/O error, the current implementation just prints error
+ message and does not try next resource.
+
+ In this patch, the supported hash types are: md5, sha-1 and sha-256.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Always create directory hierarchy for Metalink.
+
+ Filenames contained in Metalink file can include directory information.
+ Filenames are unique in Metalink file, taking into account the directory
+ information. So we need to create the directory hierarchy.
+
+ Curl has --create-dirs option, but we create directory hierarchy for
+ Metalink downloads regardless of the option value.
+
+ This patch also put metalink int variable outside of HAVE_LIBMETALINK
+ guard. This reduces the number of #ifdefs.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Fixed segmentation fault when Metalink has no valid file or no resource.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Support media-type parameter in Content-Type
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Print "Metalink" in Features if Metalink support is enabled.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Removed trailing space
+
+- [ant brought this change]
+
+ Add --metalink to --help
+
+- [ant brought this change]
+
+ Add Metalink information and --metalink option to man page
+
+- [ant brought this change]
+
+ Add Metalink information and --metalink option to man page
+
+- [ant brought this change]
+
+ Adds Metalink information to INSTALL
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ --metalink option is available regardless of Metalink support.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ metalink: parse downloaded Metalink file
+
+ Parse downloaded Metalink file and add downloads described there. Fixed
+ compile error without metalink support.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Fixed HAVE_LIBMETALINK conditional is always true
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ metalink: minor metalinkfile fix
+
+ Don't update config->metalinkfile_last in operate(). Use local variable
+ to point to the current metalinkfile.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ metalink: show help message even if disabled
+
+ Print message if --metalink is used while metalink support is not
+ enabled. Migrated Metalink support in tool_operate.c and removed
+ operatemetalink().
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Applied patches from Daniel
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Support Metalink.
+
+ This change adds experimental Metalink support to curl.
+ To enable Metalink support, run configure with --with-libmetalink.
+ To feed Metalink file to curl, use --metalink option like this:
+
+ $ curl -O --metalink foo.metalink
+
+ We use libmetalink to parse Metalink files.
+
+Steve Holme (26 May 2012)
+- DOCS: Fixed line spacing of authentication examples in CURLOPT_URL
+
+- DOCS: Changed domain names in various examples to example.com
+
+ Updated various references of real domain names to example.com as per
+ RFC-2606.
+
+- DOCS: Fixed meaning of bit 2 in CURLOPT_POSTREDIR
+
+ Setting bit 2 for this value was documented as having a constant value
+ defined as CURL_REDIR_POST_303 yet referenced a 302 request.
+
+ Additionally corrected the meaning of CURL_REDIR_POST_ALL for all three
+ bits and fixed problems with the bolding of keywords in this section.
+
+- DOCS: Standardised how RFCs are referenced.
+
+ Standardised how RFCs are referenced so that the website may autolink to
+ the correct documentation on ietf.org. Additionally removed the one link
+ to RFC3986 on curl.haxx.se.
+
+Yang Tse (26 May 2012)
+- Fix libcurl.pc and curl-config generation for static MingW* cross builds
+
+Daniel Stenberg (25 May 2012)
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Made -D option work with -O and -J.
+
+ To achieve this, first new structure HeaderData is defined to hold
+ necessary data to perform header-related work. Then tool_header_cb now
+ receives HeaderData pointer as userdata. All header-related work
+ (currently, dumping header and Content-Disposition inspection) are done
+ in this callback function. HeaderData.outs->config is used to determine
+ whether each work is done.
+
+ Unit tests were also updated because after this change, curl code always
+ sets CURLOPT_HEADERFUNCTION and CURLOPT_HEADERDATA.
+
+ Tested with -O -J -D, -O -J -i and -O -J -D -i and all worked fine.
+
+Steve Holme (25 May 2012)
+- sasl: Re-factored auth-mechanism constants to be more generic
+
+- smtp: Moved auth-mechanism constants into a separate header file
+
+ Move the SMTP_AUTH constants into a separate header file in
+ preparation for adding SASL based authentication to POP3 as the two
+ protocols will need to share them.
+
+Kamil Dudka (25 May 2012)
+- nss: avoid using explicit casts of code pointers
+
+Steve Holme (24 May 2012)
+- DOCS: Added LDAP to the CURLOPT_URL section
+
+- TODO: Removed DIGEST-MD5 authentication from SMTP to do list
+
+ Removed DIGEST-MD5 from Section 9.1 Other authentication mechanisms as
+ the feature was added to SMTP in 7.26.0.
+
+ Also corrected small spelling mistake.
+
+Daniel Stenberg (24 May 2012)
+- bump to 7.26.1: start working towards next release
+
+Version 7.26.0 (24 May 2012)
+
+Daniel Stenberg (24 May 2012)
+- RELEASE-NOTES: synced with ef60fdbd73
+
+ Just before 7.26.0 is about to ship
+
+Steve Holme (22 May 2012)
+- smtp: Fixed an issue with the multi-interface always sending postdata
+
+ Due to the result code being reset to CURLE_OK when smtp_dophase_done()
+ was called, postdata would incorrectly be sent to the server when the
+ MAIL FROM or RCPT command was rejected.
+
+ As such, libcurl would return the wrong result code from performing the
+ operation and additionally set CURLINFO_RESPONSE_CODE to be that
+ returned by the postdata command.
+
+ Bug: http://curl.haxx.se/mail/lib-2012-05/0108.html
+ Reported by: Gokhan Sengun
+
+- DOCS: Updated version number for features added in the pending release
+
+Daniel Stenberg (22 May 2012)
+- [Tatsuhiro Tsujikawa brought this change]
+
+ Fixed compile error with GNUTLS+NETTLE
+
+ In nettle/md5.h, md5_init and md5_update are defined as macros to
+ nettle_md5_init and nettle_md5_update respectively. This causes
+ error when using MD5_params.md5_init and md5_update. This patch
+ renames these members as md5_init_func and md5_update_func to
+ avoid name conflict. For completeness, MD5_params.md5_final was
+ also renamed as md5_final_func.
+
+ The changes in curl_ntlm_core.c is conversion error and fixed by
+ casting to proper type.
+
+- TODO-RELEASE: mention the pending biggies for 7.27.0
+
+- [Jan Ehrhardt brought this change]
+
+ winbuild: fix IPv6 enabled build
+
+ The existing check was wrong so IPv6 support would never be enabled
+
+- 7.26.0: will be the next release version
+
+- RELEASE-NOTES: synced with 8ae1e657e82a
+
+ And mention that this will become 7.26.0
+
+Guenter Knauf (22 May 2012)
+- Updated dependency libary versions.
+
+Daniel Stenberg (20 May 2012)
+- curl-config.1: fix curl-config usage in example
+
+ The curl-config command must be used twice in the single command line to
+ work properly in some environments.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3528241
+ Reported by: Julian Taylor
+
+Steve Holme (17 May 2012)
+- smtp: Fixed non-escaping of dot character at beginning of line
+
+ A dot character at the beginning of a line would not be escaped to a
+ double dot as required by RFC-2821, instead it would be deleted by the
+ mail server. Please see section 4.5.2 of the RFC for more information.
+
+ Note: This fix also simplifies the detection of repeated CRLF.CRLF
+ combinations, such as CRLF.CRLF.CRLF, a little rather than having to
+ advance the eob counter to 2.
+
+Daniel Stenberg (16 May 2012)
+- FAQ: updated 1.10 How many are using curl?
+
+ Now linking to http://daniel.haxx.se/blog/2012/05/16/300m-users/
+
+- disable-versioned-symbols: removed superfluous 'fi'
+
+ The commit e315927a1a left this in
+
+- MakefileBuild.vc: use the correct IDN variable
+
+ The variable that control IDN enablement is called USE_IDN within these
+ Makefiles
+
+- [Pierre Chapuis brought this change]
+
+ autoconf: improve handling of versioned symbols
+
+ It checks whether versioned symbols should be enabled before checking
+ whether it is possible (i.e. the linker supports --version-script) or
+ not. This avoids a useless warning when building cURL on a platform that
+ does not use GNU ld.
+
+ Moreover, it fixes broken indentation of this chunk of code.
+
+- curl.1: clarify -x usage
+
+ 1 - fix the syntax in the .IP line
+
+ 2 - Provided user names and passwords are URL decoded by libcurl
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3525935
+
+- NTLM: is supported in GnuTLS builds too
+
+ ... since commit 9a4c887c4a7 introduced in libcurl 7.19.4
+
+- TODO: happy eyeballs is now RFC6555
+
+- my_useragent: shorten user-agent
+
+ The built-in user-agent will now only say curl/[version] and nothing
+ else in an attempt to decrease overhead in HTTP requests.
+
+- CURLOPT_HEADERFUNCTION: works for non-HTTP protocols too
+
+Claes Jakobsson (3 May 2012)
+- Add note about default timeout in CURLOPT_TIMEOUT
+
+Daniel Stenberg (2 May 2012)
+- [Gokhan Sengun brought this change]
+
+ MD5: OOM fix
+
+ check whether md5 initialization succeeded before updating digest of
+ buffers onto it
+
+- REALEASE-NOTES: synced with 64f48e884e3c1
+
+- [Jan Schaumann brought this change]
+
+ add newly created manual page
+
+- [Jan Schaumann brought this change]
+
+ add a manual page for mk-ca-bundle
+
+Guenter Knauf (26 Apr 2012)
+- Updated dependency lib versions.
+
+Daniel Stenberg (23 Apr 2012)
+- URL parse: reject numerical IPv6 addresses outside brackets
+
+ Roman Mamedov spotted (in
+ http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=670126) that curl would
+ not complain when given a URL with an IPv6 numerical address without
+ brackets. It would simply cut off the last ":[hex]" part and thus not
+ work correctly.
+
+ That's a URL using an illegal syntax and now libcurl will instead return
+ a clear error code and error message detailing the error.
+
+ The above mentioned bug report claims this to be a regression but
+ libcurl does not guarantee functionality when given URLs that aren't
+ following the URL spec (RFC3986 mostly). I consider the fact that it
+ used to handle this differently a mere coincidence.
+
+- Curl_MD5_init: fix OOM memory leak
+
+ Bug: http://curl.haxx.se/mail/lib-2012-04/0246.html
+ Reported by: Michael Mueller
+
+- [Gokhan Sengun brought this change]
+
+ OpenSSL cert: provide more details when cert check fails
+
+ curl needs to be more chatty regarding certificate verification failure
+ during SSL handshake
+
+Yang Tse (23 Apr 2012)
+- Revert "sspi: Added version information"
+
+ This reverts commit 2976de480808119dae08fc6f52c8d75ba1aedb1a.
+
+- Revert "sspi - Small code tidy up"
+
+ This reverts commit 46cd5f1daddad3b3e542e6d93eee52e8bb9a8687.
+
+- Revert "Fixed 'extra tokens at end of #endif directive'."
+
+ This reverts commit 77172a242fc0c820f97eae39d0e3e0f265222fe6.
+
+- Revert "Fixed 'Trailing whitespace' found by checksrc."
+
+ This reverts commit 683bfa60ad0b52505947e59b03515e5f44378523.
+
+- Revert "sspi: Code tidy up to remove unused variable."
+
+ This reverts commit 412510f97407d617426d93b80e6b6bf0a8ff11ac.
+
+- Revert "Add -lversion if build with SSPI."
+
+ This reverts commit 9ec0b7e0c44d29eca6f45916fe5af3501168fe85.
+
+Guenter Knauf (23 Apr 2012)
+- Add -lversion if build with SSPI.
+
+Steve Holme (22 Apr 2012)
+- sspi: Code tidy up to remove unused variable.
+
+Guenter Knauf (22 Apr 2012)
+- Fixed 'Trailing whitespace' found by checksrc.
+
+- Fixed 'extra tokens at end of #endif directive'.
+
+Steve Holme (22 Apr 2012)
+- sspi - Small code tidy up
+
+- sspi: Added version information
+
+ Added version information for Windows SSPI to curl's main version
+ string and removed SSPI from the features string.
+
+Daniel Stenberg (20 Apr 2012)
+- HTTP: empty chunked POST ended up in two zero size chunks
+
+ When doing a chunked-encoded POST with -d (CURLOPT_POSTFIELDS) and the
+ size of the POST was zero length, it made libcurl first send a zero
+ chunk and then the terminating one. This could confuse a receiver and it
+ should rather just send the terminating chunk as it does with this fix.
+
+ Test case 1333 is added to verify.
+
+ Bug: http://curl.haxx.se/mail/archive-2012-04/0060.html
+ Reported by: Arnaud Compan
+
+Guenter Knauf (20 Apr 2012)
+- Updated dependency lib versions.
+
+Daniel Stenberg (19 Apr 2012)
+- singleipconnect: return OK even when Curl_socket() fails
+
+ Commit 9109cdec11ee5a brought this regression (shipped since 7.24.0).
+
+ The singleipconnect() function must not return an error if Curl_socket()
+ returns an error. It should then simply return OK and pass a SOCKET_BAD
+ back simply because that is how the user of this function expects it to
+ work and something else is not fine.
+
+ Reported by: Blaise Potard
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3516508
+
+Yang Tse (19 Apr 2012)
+- Take in account that CURLAUTH_* bitmasks are now 'unsigned long' - follow-up
+
+ MIPSPro compiler detected curl_easy_getinfo() related missing adjustments.
+ SunPro compiler detected curl tool --libcurl option related missing adjustments.
+
+- url.c: CURLOPT_HTTPAUTH and CURLOPT_PROXYAUTH fixes
+
+ Fail with CURLE_NOT_BUILT_IN when none of requested auth methods is supported.
+
+ Reject CURLAUTH_ONLY bit when given alone or with CURLAUTH_NONE.
+
+- Take in account that CURLAUTH_* bitmasks are now 'unsigned long'
+
+ Data type of internal vars holding CURLAUTH_* bitmasks changed from 'long' to
+ 'unsigned long' for proper handling and operating.
+
+- curl.h: CURLAUTH_* bitmasks adjusted to become 'unsigned long' typed
+
+ Info: http://curl.haxx.se/mail/lib-2012-04/0170.html
+
+- Some explicit conversion to 'long' of curl_easy_setopt() third argument
+
+ Explicit conversion to 'long' of curl_easy_setopt() third argument for options
+ CURLOPT_HTTPAUTH and CURLOPT_PROXYAUTH given that this is how its bitmasks are
+ docummented to be used.
+
+- build adjustments: commit 9e24b9c7 follow-up
+
+Daniel Stenberg (17 Apr 2012)
+- -# progress meter: avoid superfluous updates and duplicate lines
+
+ By comparing if a different "progress point" is reached or not since the
+ previous update, the progress function callback for this now avoids many
+ superfluous screen updates. This has the nice side-effect that it fixes
+ a problem that causes a second progress meter line.
+
+ The second line output happened because when we use the -# progress
+ meter, we force a newline output after the transfer in the main loop in
+ curl, but when libcurl calls the progress callback from
+ curl_easy_cleanup() it would then output the progress display
+ again. Possibly the naive newline output is wrong but this optimization
+ was suitable anyway...
+
+ Reported by: Daniel Theron
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3517418
+
+Yang Tse (16 Apr 2012)
+- nss.c: fix compiler warning
+
+- curl-compilers.m4: -Wno-pedantic-ms-format for Windows gcc 4.5 builds
+
+ When building a Windows target with gcc 4.5 or newer and strict compiler
+ warnings enabled use -Wno-pedantic-ms-format in addition to other flags.
+
+Kamil Dudka (16 Apr 2012)
+- tests/valgrind.pm: suppress memleaks of NSS_InitContext()
+
+ Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=745224
+
+Yang Tse (14 Apr 2012)
+- setup_once.h: tighten requirements for stdbool.h header inclusion
+
+ Include stdbool.h only when it is available and configure is capable of
+ detecting a proper 'bool' data type when the header is included.
+
+ Compilation fix for old or unpatched versions of XL C compiler.
+
+ Report: http://curl.haxx.se/mail/archive-2012-04/0022.html
+
+- headers: require GCC 2.7 or newer in order to allow attribute GCC'isms usage
+
+ Usage in other code paths already protected and requiring even newer versions.
+
+- [Jonathan Nieder brought this change]
+
+ headers: surround GCC attribute names with double underscores
+
+ This protects from attribute names being defined by third party's code.
+
+ Improvement: http://curl.haxx.se/mail/lib-2012-04/0127.html
+
+Guenter Knauf (13 Apr 2012)
+- Updated copyright year.
+
+Yang Tse (13 Apr 2012)
+- testcurl.pl: build example programs for Android cross-compiles
+
+- nss.c: fix compiler warning
+
+- examples: fix compiler warnings
+
+Kamil Dudka (13 Apr 2012)
+- nss: provide human-readable names for NSS errors
+
+- nss: use NSS_InitContext() to initialize NSS if available
+
+ NSS_InitContext() was introduced in NSS 3.12.5 and helps to prevent
+ collisions on NSS initialization/shutdown with other libraries.
+
+ Bug: https://bugzilla.redhat.com/738456
+
+- nss: unconditionally require PK11_CreateGenericObject()
+
+ This bumps the minimal supported version of NSS to 3.12.x.
+
+Guenter Knauf (13 Apr 2012)
+- Set batch mode to 755 to make Cygwin git pulls work.
+
+- Added section for Android configure cross-compile.
+
+- Added NetWare export.
+
+Yang Tse (12 Apr 2012)
+- testcurl.pl: build example programs for MinGW cross-compiles
+
+- tool_operate.c: fix compiler warning
+
+- url.c: fix compiler warning
+
+Guenter Knauf (12 Apr 2012)
+- Updated dependency lib versions (2nd try).
+
+- Updated dependency lib versions.
+
+Yang Tse (12 Apr 2012)
+- tool_formparse.c: rename a couple of vars to avoid declaration shadowing
+
+- OS400/initscript.sh: fix db2_name() module name generation
+
+ Allow repeatable file name length reduction on file names with underscore or
+ dash characters. This is done in order to better support libcurl's existing
+ source file names and allow OS/400 package to build out of the box again.
+
+- testcurl.pl: log more environment vars that modify configure and build behavior
+
+- configure: NATIVE_WINDOWS no longer defined in config files
+
+- build adjustments: CURL_HIDDEN_SYMBOLS no longer defined in config files
+
+ configure script now provides conditional definitions for Makefile.am
+ that result in CURL_HIDDEN_SYMBOLS being defined by resulting makefiles
+ when appropriate.
+
+ Additionally, configure script option for symbol hiding control is now
+ named --enable-symbol-hiding --disable-symbol-hiding. While still valid,
+ old option name --enable-hidden-symbols --disable-hidden-symbols will
+ be deprecated in some future release.
+
+- build adjustments: functionally revert commits 4d3fb91f and bbfe1182
+
+ Undefining CURL_HIDDEN_SYMBOLS in source files isn't the proper fix.
+
+- test servers: build adjustment
+
+ Undefine CURL_HIDDEN_SYMBOLS libcurl private preprocessor macro that might
+ leak from lib/setup.h into source files where this should not be defined.
+
+- libtests: build adjustment
+
+ Undefine CURL_HIDDEN_SYMBOLS libcurl private preprocessor macro that might
+ leak from lib/setup.h into source files where this should not be defined.
+
+- curl tool: make setup.h first header included in tool_setup.h again
+
+- curl tool: use configuration files from lib directory - follow-up II
+
+ lib/config-win32.h no longer copied to src/config-win32.h
+
+- configure: Windows cross-compilation fixes
+
+ BUILDING_LIBCURL and CURL_STATICLIB are no longer defined in curl_config.h,
+ configure will generate appropriate conditionals so that mentioned symbols
+ get defined and used in Makefiles at compilation time
+
+- curl tool: make curl.h first header included in tool_setup.h
+
+- curl tool: use configuration files from lib directory - follow-up I
+
+ amigaos.[ch] now integrates nicely with any libcurl build
+
+- curl tool: use configuration files from lib directory
+
+ Configuration files such as curl_config.h and all config-*.h no longer exist
+ nor are generated/copied into 'src' directory, now these only exist in 'lib'
+ directory from where curl tool sources uses them.
+
+ Additionally old src/setup.h has been refactored into src/tool_setup.h which
+ now pulls lib/setup.h
+
+ The possibility of a makefile needing an include path adjustment exists.
+
+Daniel Stenberg (6 Apr 2012)
+- PolarSSL: correct return code for CRL matches
+
+ When a server certificate matches one in the given CRL file, the code
+ now returns CURLE_SSL_CACERT as test case 313 expects and verifies.
+
+- PolarSSL: include version number in version string
+
+ Previously it would say PolarSSL only, now it says PolarSSL/1.1.0 in the
+ same style other libs and components do.
+
+- test: added test 1332 that tests --post303
+
+- curl: add --post303 to set the CURL_REDIR_POST_303 option
+
+- [Andrei Cipu brought this change]
+
+ CURLOPT_POSTREDIR: also allow 303 to do POST on the redirected URL
+
+ As it turns out, some people do want that after all.
+
+- test1331: cookies on a 407 response
+
+ Verify that cookies are sent back even after a 407 response has been
+ received
+
+- [Dag Ekengren brought this change]
+
+ PolarSSL: add support for asynchronous connect
+
+- [Tim Heckman brought this change]
+
+ Revert "access the CA source file using HTTPS"
+
+ This reverts commit f7e2ab6.
+
+ This change caused fetching of the certificates to become unreliable.
+
+ Bug: http://curl.haxx.se/mail/lib-2012-03/0238.html
+ Reported by: Tim Heckman
+
+- [Andrei Cipu brought this change]
+
+ IPv6 cookie domain: get rid of the first bracket before the second.
+
+ Commit 97b66ebe was copying a smaller buffer, thus duplicating the last
+ character.
+
+- MAIL-ETIQUETTE: Added "How to unsubscribe"
+
+ ... as it seems to hard for some people
+
+Yang Tse (4 Apr 2012)
+- ftp.c: ftplistparser related OOM handling fix
+
+- smtp.c: fix compiler warnings
+
+- lib599.c: fix compiler warning
+
+Daniel Stenberg (4 Apr 2012)
+- runtests: yassl and polarssl are not openssl
+
+ Don't set the "has_openssl" variable if yassl or polarssl is found as
+ they will simply not work as 100% drop-in replacements for some of the
+ stuff the "OpenSSL" feature is used for.
+
+ I spotted this problem when doing test runs with PolarSSL builds.
+
+- [Lijo Antony brought this change]
+
+ connect.c: return changed to CURLE_COULDNT_CONNECT when opensocket fails
+
+ Curl_socket returns CURLE_COULDNT_CONNECT when the opensocket callback
+ returns CURL_SOCKET_BAD. Previous return value CURLE_FAILED_INIT
+ conveys incorrect information to the user.
+
+Steve Holme (2 Apr 2012)
+- pop3: Reworked the command sending and handling
+
+ Reworked the command sending from two specific LIST and RETR command
+ functions into a single command based function as well as the two
+ associated response handlers into a generic command handler.
+
+Daniel Stenberg (1 Apr 2012)
+- [Dave Reisner brought this change]
+
+ curl tool: add filename_effective token for --write-out
+
+ By modifying the parameter list for ourWriteOut() and passing the
+ OutStruct that collects data in tool_operate, we get access to the
+ remote name that we're writing to. Shell scripters should find this
+ useful when used in conjuntion with the --remote-header-name option.
+
+Steve Holme (1 Apr 2012)
+- smtp.c: Code policing and tidy up
+
+Daniel Stenberg (1 Apr 2012)
+- [Armel Asselin brought this change]
+
+ SSH: public key can now be an empty string
+
+ If an empty string is passed to CURLOPT_SSH_PUBLIC_KEYFILE, libcurl will
+ pass no public key to libssh2 which then tries to compute it from the
+ private key. This is known to work when libssh2 1.4.0+ is linked against
+ OpenSSL.
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ OpenSSL: Made cert hostname check conform to RFC 6125
+
+ This change replaces RFC 2818 based hostname check in OpenSSL build with
+ RFC 6125 [1] based one.
+
+ The hostname check in RFC 2818 is ambiguous and each project implements
+ it in the their own way and they are slightly different. I check curl,
+ gnutls, Firefox and Chrome and they are all different.
+
+ I don't think there is a bug in current implementation of hostname
+ check. But it is not as strict as the modern browsers do. Currently,
+ curl allows multiple wildcard character '*' and it matches '.'. (as
+ described in the comment in ssluse.c).
+
+ Firefox implementation is also based on RFC 2818 but it only allows at
+ most one wildcard character and it must be in the left-most label in the
+ pattern and the wildcard must not be followed by any character in the
+ label.[2] Chromium implementation is based on RFC 6125 as my patch does.
+ Firefox and Chromium both require wildcard in the left-most label in the
+ presented identifier.
+
+ This patch is more strict than the current implementation, so there may
+ be some cases where old curl works but new one does not. But at the same
+ time I think it is good practice to follow the modern browsers do and
+ follow the newer RFC.
+
+ [1] http://tools.ietf.org/html/rfc6125#section-6.4.3
+ [2] https://bugzilla.mozilla.org/show_bug.cgi?id=159483
+
+- HTTP: reset expected DL/UL sizes on redirects
+
+ With FOLLOWLOCATION enabled. When a 3xx page is downloaded and the
+ download size was known (like with a Content-Length header), but the
+ subsequent URL (transfered after the 3xx page) was chunked encoded, then
+ the previous "known download size" would linger and cause the progress
+ meter to get incorrect information, ie the former value would remain
+ being sent in. This could easily result in downloads that were WAY
+ larger than "expected" and would cause >100% outputs with the curl
+ command line tool.
+
+ Test case 599 was created and it was used to repeat the bug and then
+ verify the fix.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=3510057
+ Reported by: Michael Wallner
+
+Steve Holme (31 Mar 2012)
+- [Gökhan Şengün brought this change]
+
+ smtp: Add support for DIGEST-MD5 authentication
+
+- [Gökhan Şengün brought this change]
+
+ smtp: Cody tidy up of md5 digest length
+
+ Replaced the hard coded md5 digest length (16) with a preprocessor
+ constant
+
+- [Gökhan Şengün brought this change]
+
+ md5: Add support for calculating the md5 sum of buffers incrementally
+
+ It is now possible to calculate the md5 sum as the stream of buffers
+ becomes known where as previously it was only possible to calculate the
+ md5 sum of a pre-prepared buffer.
+
+Daniel Stenberg (31 Mar 2012)
+- Revert "mk-ca-bundle.pl: use LWP::UserAgent for https"
+
+ This reverts commit 9f0e1689f169b83b8fbdae23e0024cc57dcbc770.
+
+ It turned out that "improvement" instead made the fetching of the
+ certificates unreliable
+
+ Bug: http://curl.haxx.se/mail/lib-2012-03/0238.html
+ Reported by: Tim Heckman
+
+Steve Holme (31 Mar 2012)
+- DOCS: Added information regarding POP3 commands to CURLOPT_CUSTOMREQUEST
+
+- pop3: Added support for additional pop3 commands
+
+ This feature allows the user to specify and use additional POP3
+ commands such as UIDL and DELE via libcurl's CURLOPT_CUSTOMREQUEST or
+ curl's -X command line option.
+
+Yang Tse (30 Mar 2012)
+- [tetetest tetetest brought this change]
+
+ CMakeLists.txt: fix Windows LDAP/LDAPS option handling
+
+ bug: http://curl.haxx.se/mail/lib-2012-03/0278.html
+
+- [tetetest tetetest brought this change]
+
+ CMakeLists.txt: fix MS Visual Studio x64 unsigned long long literal suffix
+
+ bug: http://curl.haxx.se/mail/lib-2012-03/0255.html
+
+Steve Holme (28 Mar 2012)
+- TODO: Corrected POP3 section heading
+
+Yang Tse (28 Mar 2012)
+- curl-functions.m4: update detection logic of getaddrinfo() thread-safeness
+
+ Take in account that h_errno might be a modifiable lvalue not defined as
+ a C preprocessor macro
+
+Steve Holme (27 Mar 2012)
+- TODO: Added SMTP and POP3 specific features
+
+Yang Tse (27 Mar 2012)
+- [Olaf Flebbe brought this change]
+
+ tool_cb_dbg.c: fix tool_cb_dbg() to behave properly even for size 0
+
+ curl segfault in debug callback triggered with CURLINFO_HEADER_OUT and size 0
+
+ bug: http://curl.haxx.se/bug/view.cgi?id=3511794
+
+- test #1405: support HTTP disabled builds
+
+Steve Holme (26 Mar 2012)
+- test #809: Updated error code to match recent pop3 changes
+
+Yang Tse (25 Mar 2012)
+- ssh.c: code cleanup, Curl_safefree() already nullifies pointer
+
+- fix some compiler warnings
+
+Steve Holme (25 Mar 2012)
+- pop3.c: Corrected problem with state() introduced in 01690ed2bce5
+
+- pop.c: Small code tidy up
+
+- pop3: Removed the need for the single message LIST command handler
+
+ Simplified the code to remove the need for a separate "LIST <msg id>"
+ command handler and state machine and instead use the LIST command
+ handler for both operations.