summaryrefslogtreecommitdiff
path: root/plugins/FTPFileYM/curl/CHANGES
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/FTPFileYM/curl/CHANGES')
-rw-r--r--plugins/FTPFileYM/curl/CHANGES5575
1 files changed, 0 insertions, 5575 deletions
diff --git a/plugins/FTPFileYM/curl/CHANGES b/plugins/FTPFileYM/curl/CHANGES
deleted file mode 100644
index a384fadba8..0000000000
--- a/plugins/FTPFileYM/curl/CHANGES
+++ /dev/null
@@ -1,5575 +0,0 @@
- _ _ ____ _
- ___| | | | _ \| |
- / __| | | | |_) | |
- | (__| |_| | _ <| |___
- \___|\___/|_| \_\_____|
-
- Changelog
-
-Version 7.33.0 (13 Oct 2013)
-
-Daniel Stenberg (13 Oct 2013)
-- RELEASE-NOTES: synced with 92cf6141ed0de
-
-- curl: fix --oauth2-bearer in the --help output
-
- After the option rename in 5df04bfafd1
-
-- OpenSSL: improve the grammar of the language in 39beaa5ffbcc
-
- Reported-by: Petr Pisar
-
-- [Andrej E Baranov brought this change]
-
- OpenSSL: use failf() when subjectAltName mismatches
-
- Write to CURLOPT_ERRORBUFFER information about mismatch alternative
- certificate subject names.
-
- Signed-off-by: Andrej E Baranov <admin@andrej-andb.ru>
-
-- curl: rename --bearer to --oauth2-bearer
-
- The option '--bearer' might be slightly ambiguous in name. It doesn't
- create any conflict that I am aware of at the moment, however, OAUTH v2
- is not the only authentication mechanism which uses "bearer" tokens.
-
- Reported-by: Kyle L. Huff
- URL: http://curl.haxx.se/mail/lib-2013-10/0064.html
-
-- [Kamil Dudka brought this change]
-
- ssh: improve the logic for detecting blocking direction
-
- This fixes a regression introduced by commit 0feeab78 limiting the speed
- of SCP upload to 16384 B/s on a fast connection (such as localhost).
-
-Dan Fandrich (12 Oct 2013)
-- Fixed typo in Makefile.inc that left http2.h out of the tar ball
-
-Daniel Stenberg (11 Oct 2013)
-- [Heinrich Schaefer brought this change]
-
- minor fix in doc
-
-- [Gisle Vanem brought this change]
-
- curl_setup_once: fix errno access for lwip on Windows
-
- lib/curl_setup_once.h assumed lwIP on Windows uses 'SetLastError()' to
- set network errors. It doesn't; it uses 'errno'.
-
-- test1239: verify 4cd444e01ad and the simulated 304 response
-
-- [Derek Higgins brought this change]
-
- HTTP: Output http response 304 when modified time is too old
-
- When using the -w '%{http_code}' flag and simulating a Not Modified then
- 304 should be output.
-
-- contributors: helper script to dig out contributors from git
-
-- RELEASE-NOTES: add twos refs to bug reports
-
-- RELEASE-NOTES: synced with 173160c0d068
-
-Nick Zitzmann (2 Oct 2013)
-- darwinssl: block TLS_RSA_WITH_NULL_SHA256 cipher
-
- Credit (for catching a cipher I forgot to add to the blocked ciphers list):
- https://www.ssllabs.com/ssltest/viewMyClient.html
-
-Daniel Stenberg (2 Oct 2013)
-- OpenSSL: acknowledge CURLOPT_SSL_VERIFYHOST without VERIFYPEER
-
- Setting only CURLOPT_SSL_VERIFYHOST without CURLOPT_SSL_VERIFYPEER set
- should still verify that the host name fields in the server certificate
- is fine or return failure.
-
- Bug: http://curl.haxx.se/mail/lib-2013-10/0002.html
- Reported-by: Ishan SinghLevett
-
-- KNOWN_BUGS: #84: CURLINFO_SSL_VERIFYRESULT
-
- CURLINFO_SSL_VERIFYRESULT is only implemented for the OpenSSL and NSS
- backends and not for any other!
-
-- [François Charlier brought this change]
-
- xattr: add support for FreeBSD xattr API
-
-- curl_easy_setopt.3: slight clarification of SEEKFUNCTION
-
-Steve Holme (29 Sep 2013)
-- tests: Fixed typos from commit 25a0c96a494297
-
-- tests: Updated email addresses in SMTP tests following recent changes
-
-- test909: Removed custom EHLO response after recent changes
-
- ...as it is no longer required following capability and authentication
- changes and is now causing problems following commit 49341628b50007 as
- the test number is obtained from the client address in the EHLO.
-
-- ftpserver.pl: Fixed compilation error from commit 49341628b50007
-
-- ftpserver.pl: Moved specifying the test number from the RCPT address
-
- ...to the client address as this frees the RCPT strings to contain
- just an email address and by passing the test number into curl as the
- client address remains consistent with POP3 and IMAP tests as they are
- specified in the URL.
-
-- ftpserver.pl: Added unwanted argument check to SMTP DATA command handler
-
-Daniel Stenberg (29 Sep 2013)
-- getinmemory: remove a comment
-
- The comment mentioned the need to free the data, but the example already
- does that free
-
-- postinmemory: new example
-
- This is similar to getinmemory.c but with an initial POST.
-
- Combined-by: Ulf Samuelsson
-
-- win32: fix Visual Studio 2010 build with WINVER >= 0x600
-
- If no WINVER and/or _WIN32_IWNNT define was set, the Windows platform
- SDK often defaults to high value, e.g. 0x601 (whoch may probably depend
- on the Windows version being used, in my case Windows 7).
-
- If WINVER >= 0x600 then winsock2.h includes some defines for WSAPoll(),
- e.g. POLLIN, POLLPRI, POLLOUT etc. These defines clash with cURL's
- lib/select.h.
-
- Make sure HAVE_STRUCT_POLLFD is defined then.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1282
- Reported-by: "kdekker"
- Patch-by: Marcel Raad
-
-Steve Holme (28 Sep 2013)
-- ssluse.c: Fixed compilation warnings when ENGINE not supported
-
- The function "ssl_ui_reader" was declared but never referenced
- The function "ssl_ui_writer" was declared but never referenced
-
-Daniel Stenberg (27 Sep 2013)
-- configure: use icc options without space
-
- The latest version(s) of the icc compiler no longer accept the extra
- space in the -we (warning enable), -wd (warning disable), etc.
-
- Reported-by: Elmira A Semenova
- Bug: http://curl.haxx.se/mail/lib-2013-09/0182.html
-
-Steve Holme (25 Sep 2013)
-- imap: Added clarification to the code about odd continuation responses
-
-- ftp.c: Fixed compilation warning
-
- There is an implicit conversion from "unsigned long" to "long"
-
-- sasl: Centralised the authentication mechanism strings
-
- Moved the standard SASL mechanism strings into curl_sasl.h rather than
- hard coding the same values over and over again in the protocols that
- use SASL authentication.
-
- For more information about the mechanism strings see:
-
- http://www.iana.org/assignments/sasl-mechanisms
-
-Daniel Stenberg (23 Sep 2013)
-- RELEASE-NOTES: added recent contributors missing
-
-Steve Holme (23 Sep 2013)
-- test906: Fixed type-2 response
-
-- test915: Corrected test number from commit 22bccb0edaf041
-
-- test906: Fixed type-1 message not handled error
-
- ...from commit f81d1e16664976 due to copy paste error.
-
-- tests: Added SMTP AUTH NTLM test
-
-- tests: Added SMTP multiple and invalid --mail-rcpt test
-
-- tests: Added SMTP multiple --mail-rcpt test
-
-- tests: Added SMTP invalid --mail-rcpt test
-
-- tests: Regrouping of SMTP tests
-
-Daniel Stenberg (22 Sep 2013)
-- [Benoit Sigoure brought this change]
-
- test1112: Increase the timeout from 7s to 16s
-
- As someone reported on the mailing list a while back, the hard-coded
- arbitrary timeout of 7s in test 1112 is not sufficient in some build
- environments. At Arista Networks we build and test curl as part of our
- automated build system, and we've run into this timeout 170 times so
- far. Our build servers are typically quite busy building and testing a
- lot of code in parallel, so despite being beefy machines with 32 cores
- and 128GB of RAM we still hit this 7s timeout regularly.
-
- URL: http://curl.haxx.se/mail/lib-2010-02/0200.html
-
-Steve Holme (22 Sep 2013)
-- tests: Fixed smtp rcpt to addresses
-
-- ftpserver.pl: Expanded the SMTP RCPT handler to validate TO addresses
-
- RCPT_smtp() will now check for a correctly formatted TO address which
- allows for invalid recipient addresses to be added.
-
-- ftpserver.pl: Added cURL SMTP server detection to HELO command handler
-
- As curl will send a HELO command after an negative EHLO response, added
- the same detection from commit b07709f7417c3e to the HELO handler to
- ensure the test server is identified correctly and an upload isn't
- performed.
-
-- ftpserver.pl: Corrected response code for successful RCPT command
-
-- ftpserver.pl: Moved invalid RCPT TO: address detection to RCPT handler
-
- Rather than detecting the TO address as missing in the DATA handler,
- moved the detection to the RCPT command handler where an error response
- can be generated.
-
-- RELEASE-NOTES: Corrected missed addition
-
- Somehow commit 60a20461629fda missed the last item in the sync list
- even though I'm sure I added it during editing.
-
-- RELEASE-NOTES: Synced with 6dd8bd8d2f9729
-
-- curl.1: Added information about optional login options to --user in manpage
-
- Added missing information, from curl 7.31.0, regarding the use of the
- optional login options that may be specified as part of --user.
-
- For example:
-
- --user 'user:password;auth=NTLM' in IMAP, POP3 and SMTP protocols.
-
-- ftpserver.pl: Moved cURL SMTP server detection into EHLO command handler
-
- Moved the special SMTP server detection code from the DATA command
- handler, which happens further down the operation chain after EHLO,
- MAIL and RCPT commands, to the EHLO command as it is the first command
- to be generated by a SMTP operation as well as containing the special
- "verifiedserver" string from the URL.
-
- This not only makes it easier and quicker to detect but also means that
- cURL doesn't need to specify "verifiedserver" as --mail-from and
- --mail-rcpt arguments.
-
- More importantly, this also makes the upcoming verification changes to
- the RCPT handler easier to implement.
-
-Daniel Stenberg (21 Sep 2013)
-- openssl: use correct port number in error message
-
- In ossl_connect_step2() when the "Unknown SSL protocol error" occurs, it
- would output the local port number instead of the remote one which
- showed when doing SSL over a proxy (but with the correct remote host
- name). As libcurl only speaks SSL to the remote we know it is the remote
- port.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1281
- Reported-by: Gordon Marler
-
-- test1415: adjusted to work for 32bit time_t
-
- The libcurl date parser returns INT_MAX for all dates > 2037 so this
- test is now made to use 2037 instead of 2038 to work the same for both
- 32bit and 64bit time_t systems.
-
-Steve Holme (21 Sep 2013)
-- tests: Reworked existing SMTP tests to be single recipient based
-
- ...in preparation of upcoming multiple recipient tests.
-
-- ftpserver.pl: Corrected SMTP QUIT response to be more realistic
-
-Daniel Stenberg (20 Sep 2013)
-- curl_easy_setopt.3: clarify that TIMEOUT and TIMEOUT_MS set the same value
-
-- [Kim Vandry brought this change]
-
- Documented --dns-* options in curl manpage
-
-Steve Holme (20 Sep 2013)
-- pop3: Added basic SASL XOAUTH2 support
-
- Added the ability to use an XOAUTH2 bearer token [RFC6750] with POP3 for
- authentication using RFC6749 "OAuth 2.0 Authorization Framework".
-
- The bearer token is expected to be valid for the user specified in
- conn->user. If CURLOPT_XOAUTH2_BEARER is defined and the connection has
- an advertised auth mechanism of "XOAUTH2", the user and access token are
- formatted as a base64 encoded string and sent to the server as
- "AUTH XOAUTH2 <bearer token>".
-
-- curl: Added clarification to the --mail options in the --help output
-
- ... that these options apply to SMTP only.
-
-- ftpserver.pl: Moved SMTP RCPT response text into command handler
-
-- tests: Added SMTP invalid --mail-from test
-
-Nick Zitzmann (19 Sep 2013)
-- darwinssl: enable BEAST workaround on iOS 7 & later
-
- iOS 7 finally added the option to enable 1/n-1 when using TLS 1.0
- and a CBC cipher, so we now always turn that on unless the user
- manually turns it off using CURLSSLOPT_ALLOW_BEAST.
-
- It appears Apple also added some new PSK ciphers, but no interface to
- use them yet, so we at least support printing them if we find them.
-
-Steve Holme (19 Sep 2013)
-- tests: Updated SMTP AUTH tests to use the new AUTH directive
-
- ...rather than specify a customised EHLO response.
-
-- tests: Corrected test913 as the QUIT response is received
-
-- tests: Added SMTP large message SIZE test
-
-- ftpserver.pl: Updated email regex from commit 98f7ca7e971006
-
- ...to not be as strict as it was rejecting valid numeric email
- addresses.
-
-- tests: Fixed smtp mail from addresses
-
-- ftpserver.pl: Standardised CAPA and AUTH responses
-
-- ftpserver.pl: Corrected POP3 QUIT reply to be more realistic
-
-- runtests.pl: Fixed syntax error in commit c873375123343e
-
- Possible unintended interpolation in string at line 796
-
-- runtests.pl: Fixed smtp mail from address
-
- Following changes to ftpserver.pl fixed the mail from address to be a
- correctly formatted address otherwise the server response will be 501
- Invalid address.
-
-- ftpserver.pl: Fixed syntax error in commit 98f7ca7e971006
-
- Can't modify constant item in scalar assignment line 779, near "0;"
-
-- ftpserver.pl: Expanded the SMTP MAIL handler to validate messages
-
- MAIl_smtp() will now check for a correctly formatted FROM address as
- well as the optional SIZE parameter comparing it against the server
- capability when specified.
-
-Daniel Stenberg (17 Sep 2013)
-- [YAMADA Yasuharu brought this change]
-
- cookies: add expiration
-
- Implement: Expired Cookies These following situation, curl removes
- cookie(s) from struct CookieInfo if the cookie expired.
- - Curl_cookie_add()
- - Curl_cookie_getlist()
- - cookie_output()
-
-Steve Holme (17 Sep 2013)
-- ftpserver.pl: Corrected response code for successful MAIL command
-
-- ftpserver.pl: Moved SMTP MAIL handler into own function
-
-- dns: fix compilation with MinGW from commit df69440d05f113
-
- Avoid 'interface' literal that some MinGW versions define as a macro
-
- Additionally, corrected some very, very minor coding style errors.
-
-- tests: Fixed test 1406 following recent changes in ftpserver.pl
-
- By default the mail server doesn't send the SIZE capability but instead
- it has to be specified as a supported capability.
-
-- tests: Added test for SMTP SIZE capability
-
-- ftpserver.pl: Added the ability to include spaces in capabilities
-
- For example:
-
- CAPA "SIZE 1048576" 8BITMIME BINARYMIME
-
- will populate the capabilities list with the following in:
-
- SIZE 1048576
- 8BITMIME
- BINARYMIME
-
-- ftpserver.pl: Corrected response code for successful SMTP QUIT command
-
-- ftpserver.pl: Fixed syntax error in commit 33c1f2876b9029
-
- Can't modify constant item in postincrement line 727, near "i++"
-
-- ftpserver.pl: Added CAPA & AUTH directive support to the SMTP EHLO handler
-
-- ftpserver.pl: Fixed SMTP QUIT handler from dadc495540946e
-
-- ftpserver.pl: Moved SMTP EHLO and QUIT handlers in own functions
-
-- ftpserver.pl: Added support for SMTP HELO command
-
- ...and updated test902 as explicit HELO response is no longer required.
-
-- ftpserver.pl: Added mailbox check to IMAP SELECT handler
-
-- ftpserver.pl: Corrected invalid user details check
-
- ...in both the IMAP LOGIN and POP3 PASS handlers introduced in commit
- 187ac693744949 and 84ad1569e5fc93 respectively.
-
-- ftpserver.pl: Moved IMAP LOGIN handler into own function
-
-- ftpserver.pl: Moved POP3 USER and PASS handlers into own functions
-
-- ftpserver.pl: Corrected invalid argument check in POP3 TOP handler
-
- ...which was accidentally introduced in commit 4d6ef6297ae9b6.
-
-- ftpserver.pl: Added capability prerequisite for extended POP3 commands
-
-- tests: Updated descriptions to be more meaningful
-
-- ftpserver.pl: Added support for IMAP NOOP command
-
-- imap: Fixed response check for NOOP command
-
-- tests: Updated descriptions to be more meaningful
-
-Daniel Stenberg (13 Sep 2013)
-- curl.1: detail how short/long options work
-
- URL: http://curl.haxx.se/bug/view.cgi?id=1279
- Suggested-by: Jerry Krinock
-
-Steve Holme (13 Sep 2013)
-- curl: Fixed usage of DNS options when not using c-ares resolver
-
- Commit 32352ed6adddcb introduced various DNS options, however, these
- would cause curl to exit with CURLE_NOT_BUILT_IN when c-ares wasn't
- being used as the backend resolver even if the options weren't set
- by the user.
-
- Additionally corrected some minor coding style errors from the same
- commit.
-
-Daniel Stenberg (13 Sep 2013)
-- curl_easy_setopt.3: mention RTMP URL quirks
-
- URL: http://curl.haxx.se/bug/view.cgi?id=1278
- Reported-by: Gorilla Maguila
-
-- [Ben Greear brought this change]
-
- curl: Add support for various DNS binding options.
-
- (Passed on to c-ares.)
-
- Allows something like this:
-
- curl --dns-interface sta8 --dns-ipv4-addr 8.8.1.111 --interface sta8 \
- --localaddr 8.8.1.111 --dns-servers 8.8.8.1 www.google.com
-
- Signed-off-by: Ben Greear <greearb@candelatech.com>
-
-- [Kim Vandry brought this change]
-
- libcurl: New options to bind DNS to local interfaces or IP addresses
-
-- libcurl.3: for multi interface connections are held in the multi handle
-
- ... and a few more cleanups/clarifications
-
-Steve Holme (12 Sep 2013)
-- ftpserver.pl: Fixed missing comma from 7fd84b14d219b1
-
-- ftpserver.pl: Fixed variable error introduced in 7fd84b14d219b1
-
- Global symbol "$mailbox" requires explicit package name
-
-- ftpserver.pl: Added support for UID command
-
-- ftpserver.pl: Added support for LSUB command
-
-- imap: Fixed response check for LSUB and UID commands
-
-- ftpserver.pl: Added support for IMAP COPY command
-
-- ftpserver.pl: Added support for IMAP CLOSE and EXPUNGE commands
-
-- ftpserver.pl: Added support for POP3 RSET command
-
-- ftpserver.pl: Added the ability to remember what messages are deleted
-
- ...as this will be required for IMAP CLOSE and EXPUNGE commands as well
- as the POP3 RSET command.
-
-Daniel Stenberg (10 Sep 2013)
-- NI_MAXSERV: remove all use of it
-
- Solaris with the SunStudio Compiler is reportedly missing this define,
- but as we're using it without any good reason on all the places it was
- used I've now instead switched to just use sensible buffer sizes that
- fit a 32 bit decimal number. Which also happens to be smaller than the
- common NI_MAXSERV value which is 32 on most machines.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1277
- Reported-by: D.Flinkmann
-
-- http2: use the support HTTP2 draft version in the upgrade header
-
- ... instead of HTTP/2.0 to work fine with the nghttpx proxy/server.
-
-Steve Holme (10 Sep 2013)
-- ldap.c: Fix compilation warning
-
- warning: comparison between signed and unsigned integer expressions
-
-- [Jiri Hruska brought this change]
-
- imap/pop3/smtp: Speed up SSL connection initialization
-
- Don't wait for the next callback call (usually 1 second) before
- continuing with protocol specific connection initialization.
-
-- ldap.c: Corrected build error from commit 857f999353f333
-
-- RELEASE-NOTES: Corrected duplicate in bfefe2400a16b8
-
-- RELEASE-NOTES: Corrected typo from bfefe2400a16b8
-
-- RELEASE-NOTES: synced with 25c68903756d6b
-
-Daniel Stenberg (10 Sep 2013)
-- README.http2: explain nghttp2 a little
-
-Steve Holme (9 Sep 2013)
-- tests: Added test for POP3 TOP command
-
-- ftpserver.pl: Added support for POP3 TOP command
-
-- tests: Added test for POP3 UIDL command
-
-- ftpserver.pl: Added support for POP3 UIDL command
-
-Daniel Stenberg (9 Sep 2013)
-- http2: adjust to new nghttp2_pack_settings_payload proto
-
- This function was modified in nghttp2 git commit a1c3f89c72e51
-
-Kamil Dudka (9 Sep 2013)
-- url: handle abortion by read/write callbacks, too
-
- Otherwise, the FTP protocol would unnecessarily hang 60 seconds if
- aborted in the CURLOPT_HEADERFUNCTION callback.
-
- Reported by: Tomas Mlcoch
- Bug: https://bugzilla.redhat.com/1005686
-
-Daniel Stenberg (9 Sep 2013)
-- ldap: fix the build for systems with ldap_url_parse()
-
- Make sure that the custom struct fields are only used by code that
- doesn't use a struct defintion from the outside.
-
- Attempts to fix the problem introduced in 3dc6fc42bfc61b
-
-Steve Holme (9 Sep 2013)
-- [Jiri Hruska brought this change]
-
- pingpong: Check SSL library buffers for already read data
-
- Otherwise the connection can get stuck during various phases, waiting
- for new data on the socket using select() etc., but it will never be
- received as the data has already been read into SSL library.
-
-- imap: Fixed calculation of transfer when partial FETCH received
-
- The transfer size would be calculated incorrectly if the email contained
- within the FETCH response, had been partially received by the pingpong
- layer. As such the following, example output, would be seen if the
- amount remaining was smaller than the amount received:
-
- * Excess found in a non pipelined read: excess = 1394, size = 262,
- maxdownload = 262, bytecount = 1374
- * transfer closed with -1112 bytes remaining to read
-
- Bug: http://curl.haxx.se/mail/lib-2013-08/0170.html
- Reported-by: John Dunn
-
-- ftpserver.pl: Fixed empty array checks
-
- ...from commits 28427b408326a1 and e8313697b6554b.
-
-- ftpserver: Reworked AUTH support to allow for specifying the mechanisms
-
- Renamed SUPPORTAUTH to AUTH and added support for specifying a list of
- supported SASL mechanisms to return to the client.
-
- Additionally added the directive to the FILEFORMAT document.
-
-- ftpserver: Reworked CAPA support to allow for specifying the capabilities
-
- Renamed SUPPORTCAPA to CAPA and added support for specifying a list of
- supported capabilities to return to the client.
-
- Additionally added the directive to the FILEFORMAT document.
-
-- ftpserver.pl: Corrected POP3 LIST as message numbers should be contiguous
-
- The message numbers given in the LIST response are an index into the
- list, which are only valid for the current session, rather than being a
- unique message identifier. An index would only be missing from the LIST
- response if a DELE command had been issued within the same session and
- had not been committed by the end of session QUIT command. Once
- committed the POP3 server will regenerate the message numbers in the
- next session to be contiguous again. As such our LIST response should
- list message numbers contiguously until we support a DELE command in the
- same session.
-
- Should a POP3 user require the unique message ID for any or all
- messages then they should use the extended UIDL command. This command
- will be supported by the test ftpserver in an upcoming commit.
-
-Daniel Stenberg (8 Sep 2013)
-- [Clemens Gruber brought this change]
-
- curl_easy_pause: suggest one way to unpause
-
-Steve Holme (8 Sep 2013)
-- tests: Updated descriptions to be more meaningful
-
-- tests: Added test for POP3 NOOP command
-
-- ftpserver.pl: Added support for POP3 NOOP command
-
-- ftpserver.pl: Fixed 'Use of uninitialized value $args in string ne'
-
-- tests: Added test for POP3 STAT command
-
-- ftpserver.pl: Added support for POP STAT command
-
-- ftpserver.pl: Moved POP3 QUIT handler into own function
-
-- ftpserver.pl: Reordered the POP3 handlers to be alphabetical
-
- In preparation for additional POP3 tests, re-ordered the command
- function defintions to be sorted alphabetically.
-
-- ftpserver.pl: Corrected misaligned indentation in POP3 handlers
-
- Fixed incorrect indentation used in both the RETR_pop3 and LIST_pop3
- functions which was 5 and 9 characters rather than 4 and 8.
-
-- tests: Added test for POP3 DELE command
-
-unknown (7 Sep 2013)
-- [Steve Holme brought this change]
-
- ftpserver.pl: Added support for POP3 DELE command
-
-Daniel Stenberg (7 Sep 2013)
-- http2: include curl_memory.h
-
- Detected by test 1132
-
-Nick Zitzmann (7 Sep 2013)
-- http: fix build warning under LLVM
-
- When building the code using LLVM Clang without NGHTTP2, I was getting
- this warning:
- ../lib/http.h:155:1: warning: empty struct is a GNU extension [-Wgnu]
- Placing a dummy variable into the data structure silenced the warning.
-
-Daniel Stenberg (7 Sep 2013)
-- http2: actually init nghttp2 and send HTTP2-Settings properly
-
-- README.http2: how to use it best with the multi API?
-
-- http2: first embryo toward Upgrade:
-
-- http: rename use_http_1_1 to use_http_1_1plus
-
- Since it now actually says if 1.1 or a later version should be used.
-
-- configure: improve CURL_CHECK_COMPILER_PROTOTYPE_MISMATCH
-
- The compiler test used a variable before it was assigned when it tried
- to see how it acts on a mismatching prototype, which could cause a false
- positive.
-
-- [Petr Písař brought this change]
-
- Pass password to OpenSSL engine by user interface
-
- Recent OpenSSL uses user interface abstraction to negotiate access to
- private keys in the cryprographical engines. An OpenSSL application is
- expected to implement the user interface. Otherwise a default one
- provided by OpenSSL (interactive standard I/O) will be used and the
- aplication will have no way how to pass a password to the engine.
-
- Longer-desc: http://curl.haxx.se/mail/lib-2013-08/0265.html
-
-- urlglob: improved error messages and column number on bad use
-
- Introduce a convenience macro and keep of the column better so that it
- can point out the offending column better.
-
- Updated test 75 accordingly.
-
-- urlglob: avoid error code translation
-
- By using the correct values from the start we don't have to translate
- them!
-
-- urlglob: avoid NULL pointer dereference
-
- Thanks to clang-analyzer
-
-- [Gisle Vanem brought this change]
-
- http2: use correct include for snprintf
-
- Using the first little merge of nghttp2 into libcurl, I stumbeled on the
- missing 'snprintf' in MSVCRT. Isn't this how we do it for other libcurl
- files? I.e. use 'curl_msnprintf' and not 'snprintf' directly:
-
-- --data: mention CRLF treatment when reading from file
-
-- [Geoff Beier brought this change]
-
- LDAP: fix bad free() when URL parsing failed
-
- When an error occurs parsing an LDAP URL, The ludp->lud_attrs[i] entries
- could be freed even though they sometimes point to data within an
- allocated area.
-
- This change introduces a lud_attrs_dup[] array for the duplicated string
- pointers, and it removes the unused lud_exts array.
-
- Bug: http://curl.haxx.se/mail/lib-2013-08/0209.html
-
-Nick Zitzmann (5 Sep 2013)
-- darwinssl: add support for PKCS#12 files for client authentication
-
- I also documented the fact that the OpenSSL engine also supports them.
-
-Daniel Stenberg (5 Sep 2013)
-- symbols: added HTTP2 symbols and sorted list
-
- CURL_HTTP_VERSION_2_0 and CURL_VERSION_HTTP2 are new
-
-- configure: add HTTP2 as a curl-config --feature output
-
- Fixes the test 1014 failure
-
-- curl: unbreak --http1.0 again
-
- I broke it in 2eabb7d590
-
-- SASL: fix compiler warnings
-
- comparison between signed and unsigned integer expressions
-
- suggest parentheses around '&&' within '||' (twice)
-
-- curl: add --http1.1 and --http2.0 options
-
-- Curl_setopt: refuse CURL_HTTP_VERSION_2_0 if built without support
-
-- http2: add http2.[ch] and add nghttp2 version output
-
-- curl -V: output HTTP2 as a feature if present
-
-- curl.h: add CURL_VERSION_HTTP2 as a feature
-
- It isn't added as a separate protocol as HTTP2 will be done over HTTP://
- URLs that can be upgraded to HTTP2 if the server supports it as well.
-
-Steve Holme (4 Sep 2013)
-- imap/smtp: Fixed incorrect SASL mechanism selection with XOAUTH2 servers
-
- XOAUTH2 would be selected in preference to LOGIN and PLAIN if the IMAP
- or SMTP server advertised support for it even though a user's password
- was supplied but bearer token wasn't.
-
- Modified the selection logic so that XOAUTH2 will only be selected if
- the server supports it and A) The curl user/libcurl programmer has
- specifically asked for XOAUTH via the ;AUTH=XOAUTH login option or 2)
- The bearer token is specified. Obviously if XOAUTH is asked for via
- the login option but no token is specified the user will receive a
- authentication failure which makes more sense than no known
- authentication mechanisms supported!
-
-Daniel Stenberg (4 Sep 2013)
-- curl.h: added CURL_HTTP_VERSION_2_0
-
- Initial library considerations documented in lib/README.http2
-
-- configure: added --with-nghttp2
-
-- acinclude: fix --without-ca-path when cross-compiling
-
- The commit 7b074a460b64811 to CURL_CHECK_CA_BUNDLE in 7.31 (don't check
- for paths when cross-compiling) causes --without-ca-path to no longer
- works when cross-compiling, since ca and capath only ever get set to
- "no" when not cross-compiling, I attach a patch that works for me. Also
- in the cross-compilation case, no ca-path seems to be a better default
- (IMVHO) than empty ca-path.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1273
- Patch-by: Stefan Neis
-
-Steve Holme (2 Sep 2013)
-- lib1512.c: Fixed compilation warning
-
- An enumerated type is mixed with another type.
-
- ...as well as a small coding style error.
-
-Guenter Knauf (1 Sep 2013)
-- Killed warning 'res' might be used uninitialized.
-
-Steve Holme (1 Sep 2013)
-- url.c: Fixed compilation warning
-
- An enumerated type is mixed with another type
-
-- easy.c: Fixed compilation warning
-
- warning: `code' might be used uninitialized in this function
-
-Daniel Stenberg (31 Aug 2013)
-- -x: rephrased the --proxy section somewhat
-
-Steve Holme (31 Aug 2013)
-- tests: Added test for IMAP CHECK command
-
-- ftpserver.pl: Added support for the IMAP CHECK command
-
-Guenter Knauf (31 Aug 2013)
-- Removed reference to krb4.c.
-
-Steve Holme (31 Aug 2013)
-- ftpserver.pl: Corrected flawed logic in commit 1ca6ed7b75cad0
-
-- imap: Fixed response check for EXPUNGE command
-
-- ftpserver.pl: Added argument check to IMAP command handlers
-
- Added BAD argument check to the following IMAP command handlers:
-
- APPEND, STORE, LIST, EXAMINE, STATUS and SEARCH
-
-- ftpserver.pl: More whitespace corrections
-
- LIST_imap() had a second level of indentation at 9 characters and not 8.
-
-- ftpserver.pl: Small correction tidy up
-
- Corrected some IMAP variable names and whitespace issues.
-
-- [Kyle L. Huff brought this change]
-
- docs: Added documentation for CURLOPT_BEARER
-
-- [Kyle L. Huff brought this change]
-
- curl.1: Add usage of '--bearer' option
-
-- tests: Added tests for IMAP CREATE, DELETE and RENAME commands
-
-Daniel Stenberg (30 Aug 2013)
-- ftpserver: Bareword "to_mailbox" not allowed
-
- Added missing $
-
-Steve Holme (30 Aug 2013)
-- ftpserver.pl: Added support for IMAP CREATE, DELETE and RENAME commands
-
-Daniel Stenberg (29 Aug 2013)
-- FTP: fix getsock during DO_MORE state
-
- ... when doing upload it would return the wrong values at times. This
- commit attempts to cleanup the mess.
-
- Bug: http://curl.haxx.se/mail/lib-2013-08/0109.html
- Reported-by: Mike Mio
-
-- curl_multi_remove_handle: allow multiple removes
-
- When removing an already removed handle, avoid that to ruin the
- internals and just return OK instead.
-
-Steve Holme (29 Aug 2013)
-- ftpserver.pl: Updated IMAP EXAMINE handler to use dynamic test data
-
-Daniel Stenberg (29 Aug 2013)
-- unit1304: include memdebug and free everything correctly
-
-- Curl_parsenetrc: document that the arguments must be allocated
-
-- easy: rename struct monitor to socketmonitor
-
- 'struct monitor', introduced in 6cf8413e, already exists in an IRIX
- header file (sys/mon.h) which gets included via various standard headers
- by lib/easy.c
-
- cc-1101 cc: ERROR File = ../../curl/lib/easy.c, Line = 458
- "monitor" has already been declared in the current scope.
-
- Reported-by: Tor Arntsen
-
-Steve Holme (29 Aug 2013)
-- ftpserver.pl: Added SELECT check to IMAP FETCH and STORE handlers
-
-- ftpserver.pl: Corrected accidental move of logmsg() call
-
- Corrected the call to logmsg() in the IMAP SEARCH handler from commit
- 4ae7b7ea691497 as it should have been outputting the what argument and
- not the test number.
-
-Daniel Stenberg (28 Aug 2013)
-- ftpserver: add missing '}' from 4ae7b7ea69149
-
-Steve Holme (28 Aug 2013)
-- ftpserver.pl: Added SELECT check to IMAP SEARCH command
-
-- ftpserver.pl: Fixed IMAP SEARCH command
-
-Daniel Stenberg (28 Aug 2013)
-- bump: next release is 7.33.0 due to added features
-
-- symbols-in-versions: add CURLOPT_XOAUTH2_BEARER
-
-Steve Holme (28 Aug 2013)
-- tests: Added test for IMAP SEARCH command
-
-Daniel Stenberg (28 Aug 2013)
-- valgrind.supp: fix for regular curl_easy_perform too
-
- When we introduced curl_easy_perform_ev, this got a slightly modified
- call trace. Without this, test 165 causes a false positive valgrind
- error.
-
-- valgrind.supp: add the event-based call stack-trace too
-
- Without this, test 165 triggers a valgrind error when ran with
- curl_easy_perform_ev
-
-- multi_socket: improved 100-continue timeout handling
-
- When waiting for a 100-continue response from the server, the
- Curl_readwrite() will refuse to run if called until the timeout has been
- reached.
-
- We timeout code in multi_socket() allows code to run slightly before the
- actual timeout time, so for test 154 it could lead to the function being
- executed but refused in Curl_readwrite() and then the application would
- just sit idling forever.
-
- This was detected with runtests.pl -e on test 154.
-
-Steve Holme (27 Aug 2013)
-- ftpserver.pl: Added support for IMAP SEARCH command
-
-- tool_operate.c: Fixed compilation warning
-
- warning: implicit declaration of function 'checkpasswd'
-
-- curl: Moved check for password out of get parameter loop
-
- Moved the calls to checkpasswd() out of the getparameter() function
- which allows for any related arguments to be specified on the command
- line before or after --user (and --proxy-user).
-
- For example: --bearer doesn't need to be specified before --user to
- prevent curl from asking for an unnecessary password as is the case
- with commit e7dcc454c67a2f.
-
-- RELEASE-NOTES: synced with acf59be7f09a7
-
-- [Kyle L. Huff brought this change]
-
- curl: added --bearer option to help
-
- Added the --bearer option to the help output
-
-- [Kyle L. Huff brought this change]
-
- curl: added basic SASL XOAUTH2 support
-
- Added the ability to specify an XOAUTH2 bearer token [RFC6750] via the
- --bearer option.
-
- Example usage:
- curl --url "imaps://imap.gmail.com:993/INBOX/;UID=1" --ssl-reqd
- --bearer ya29.AHES6Z...OMfsHYI --user username@example.com
-
-- tool_urlglob.c: Fixed compiler warnings
-
- warning: 'variable' may be used uninitialized in this function
-
-Daniel Stenberg (26 Aug 2013)
-- security.h: rename to curl_sec.h to avoid name collision
-
- I brought back security.h in commit bb5529331334e. As we actually
- already found out back in 2005 in commit 62970da675249, the file name
- security.h causes problems so I renamed it curl_sec.h instead.
-
-- runtests.pl: allow -vc point to a separate curl binary to verify with
-
- The specified curl binary will then be used to verify the running
- server(s) instead of the development version. This is very useful in
- some cases when the development version fails to verify correctly as
- then the test case may not run at all.
-
- The actual test will still be run with the "normal" curl executable
- (unless the test case specifies something differently).
-
-Steve Holme (26 Aug 2013)
-- [Kyle L. Huff brought this change]
-
- smtp: added basic SASL XOAUTH2 support
-
- Added the ability to use an XOAUTH2 bearer token [RFC6750] with SMTP for
- authentication using RFC6749 "OAuth 2.0 Authorization Framework".
-
- The bearer token is expected to be valid for the user specified in
- conn->user. If CURLOPT_XOAUTH2_BEARER is defined and the connection has
- an advertised auth mechanism of "XOAUTH2", the user and access token are
- formatted as a base64 encoded string and sent to the server as
- "AUTH XOAUTH2 <bearer token>".
-
-- [Kyle L. Huff brought this change]
-
- imap: added basic SASL XOAUTH2 support
-
- Added the ability to use an XOAUTH2 bearer token [RFC6750] with IMAP for
- authentication using RFC6749 "OAuth 2.0 Authorization Framework".
-
- The bearer token is expected to be valid for the user specified in
- conn->user. If CURLOPT_XOAUTH2_BEARER is defined and the connection has
- an advertised auth mechanism of "XOAUTH2", the user and access token are
- formatted as a base64 encoded string and sent to the server as
- "A001 AUTHENTICATE XOAUTH2 <bearer token>".
-
-- security.h: Fixed compilation warning
-
- ISO C forbids forward references to 'enum' types
-
-Daniel Stenberg (26 Aug 2013)
-- KNOWN_BUGS: refer to bug numbers with the existing number series
-
- The old numbers would still redirect but who knows for how long...
-
-Steve Holme (25 Aug 2013)
-- [Kyle L. Huff brought this change]
-
- options: added basic SASL XOAUTH2 support
-
- Added the ability to specify an XOAUTH2 bearer token [RFC6750] via the
- option CURLOPT_XOAUTH2_BEARER for authentication using RFC6749 "OAuth
- 2.0 Authorization Framework".
-
-- [Kyle L. Huff brought this change]
-
- sasl: added basic SASL XOAUTH2 support
-
- Added the ability to generated a base64 encoded XOAUTH2 token
- containing: "user=<username>^Aauth=Bearer <bearer token>^A^A"
- as per RFC6749 "OAuth 2.0 Authorization Framework".
-
-Daniel Stenberg (25 Aug 2013)
-- FTP: remove krb4 support
-
- We've announced this pending removal for a long time and we've
- repeatedly asked if anyone would care or if anyone objects. Nobody has
- objected. It has probably not even been working for a good while since
- nobody has tested/used this code recently.
-
- The stuff in krb4.h that was generic enough to be used by other sources
- is now present in security.h
-
-- easy: define away easy_events() for non-debug builds
-
-- FAQ: editorial updates
-
- Several language fixes. Several reformats that should make the HTML
- generation of this document look better.
-
- Reported-by: Dave Thompson
-
-- RELEASE-NOTES: synced with 22adb46a32bee
-
-- multi: move on from STATE_DONE faster
-
- Make sure we always return CURLM_CALL_MULTI_PERFORM when we reach
- CURLM_STATE_DONE since the state is transient and it can very well
- continue executing as there is nothing to wait for.
-
- Bug: http://curl.haxx.se/mail/lib-2013-08/0211.html
- Reported-by: Yi Huang
-
-- curl.h: name space pollution by "enum type"
-
- Renamed to "enum curl_khtype" now. Will break compilation for programs
- that rely on the enum name.
-
- Bug: https://github.com/bagder/curl/pull/76
- Reported-by: Shawn Landden
-
-- TFTP: make the CURLOPT_LOW_SPEED* options work
-
- ... this also makes sure that the progess callback gets called more
- often during TFTP transfers.
-
- Added test 1238 to verify.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1269
- Reported-by: Jo3
-
-- tftpd: support "writedelay" within <servercmd>
-
-- tftpd: convert 6 global variables into local ones
-
-- [Gisle Vanem brought this change]
-
- curl_easy_perform_ev: make it CURL_EXTERN
-
- I build curl.exe (using MingW) with '-DCURLDEBUG' and by importing from
- libcurl.dll. Which means the new curl_easy_perform_ev() must be
- exported from libcurl.dll.
-
-- CURLM_ADDED_ALREADY: new error code
-
- Doing curl_multi_add_handle() on an easy handle that is already added to
- a multi handle now returns this error code. It previously returned
- CURLM_BAD_EASY_HANDLE for this condition.
-
-- multi_init: moved init code here from add_handle
-
- The closure_handle is "owned" by the multi handle and it is
- unconditional so the setting up of it should be in the Curl_multi_handle
- function rather than curl_multi_add_handle.
-
-- multi: remove dns cache creation code from *add_handle
-
- As it is done unconditionally in multi_init() this code will never run!
-
-- curl_easy_perform_ev: debug/test function
-
- This function is meant to work *exactly* as curl_easy_perform() but will
- use the event-based libcurl API internally instead of
- curl_multi_perform(). To avoid relying on an actual event-based library
- and to not use non-portable functions (like epoll or similar), there's a
- rather inefficient emulation layer implemented on top of Curl_poll()
- instead.
-
- There's currently some convenience logging done in curl_easy_perform_ev
- which helps when tracking down problems. They may be suitable to remove
- or change once things seem to be fine enough.
-
- curl has a new --test-event option when built with debug enabled that
- then uses curl_easy_perform_ev() instead of curl_easy_perform(). If
- built without debug, using --test-event will only output a warning
- message.
-
- NOTE: curl_easy_perform_ev() is not part if the public API on purpose.
- It is only present in debug builds of libcurl and MUST NOT be considered
- stable even then. Use it for libcurl-testing purposes only.
-
- runtests.pl now features an -e command line option that makes it use
- --test-event for all curl command line tests. The man page is updated.
-
-- [Gisle Vanem brought this change]
-
- transfer: the recent sessionhandle change broke CURL_DOES_CONVERSIONS
-
-- test1237: verify 1000+ letter user name + passwords
-
-- [Jonathan Nieder brought this change]
-
- url: handle arbitrary-length username and password before '@'
-
- libcurl quietly truncates usernames, passwords, and options from
- before an '@' sign in a URL to 255 (= MAX_CURL_PASSWORD_LENGTH - 1)
- characters to fit in fixed-size buffers on the stack. Allocate a
- buffer large enough to fit the parsed fields on the fly instead to
- support longer passwords.
-
- After this change, there are no more uses of MAX_CURL_OPTIONS_LENGTH
- left, so stop defining that constant while at it. The hardcoded max
- username and password length constants, on the other hand, are still
- used in HTTP proxy credential handling (which this patch doesn't
- touch).
-
- Reported-by: Colby Ranger
-
-- [Jonathan Nieder brought this change]
-
- url: handle exceptional cases first in parse_url_login()
-
- Instead of nesting "if(success)" blocks and leaving the reader in
- suspense about what happens in the !success case, deal with failure
- cases early, usually with a simple goto to clean up and return from
- the function.
-
- No functional change intended. The main effect is to decrease the
- indentation of this function slightly.
-
-- [Jonathan Nieder brought this change]
-
- Curl_setopt: handle arbitrary-length username and password
-
- libcurl truncates usernames, passwords, and options set with
- curl_easy_setopt to 255 (= MAX_CURL_PASSWORD_LENGTH - 1) characters.
- This doesn't affect the return value from curl_easy_setopt(), so from
- the caller's point of view, there is no sign anything strange has
- happened, except that authentication fails.
-
- For example:
-
- # Prepare a long (300-char) password.
- s=0123456789; s=$s$s$s$s$s$s$s$s$s$s; s=$s$s$s;
- # Start a server.
- nc -l -p 8888 | tee out & pid=$!
- # Tell curl to pass the password to the server.
- curl --user me:$s http://localhost:8888 & sleep 1; kill $pid
- # Extract the password.
- userpass=$(
- awk '/Authorization: Basic/ {print $3}' <out |
- tr -d '\r' |
- base64 -d
- )
- password=${userpass#me:}
- echo ${#password}
-
- Expected result: 300
- Actual result: 255
-
- The fix is simple: allocate appropriately sized buffers on the heap
- instead of trying to squeeze the provided values into fixed-size
- on-stack buffers.
-
- Bug: http://bugs.debian.org/719856
- Reported-by: Colby Ranger
-
-- [Jonathan Nieder brought this change]
-
- netrc: handle longer username and password
-
- libcurl truncates usernames and passwords it reads from .netrc to
- LOGINSIZE and PASSWORDSIZE (64) characters without any indication to
- the user, to ensure the values returned from Curl_parsenetrc fit in a
- caller-provided buffer.
-
- Fix the interface by passing back dynamically allocated buffers
- allocated to fit the user's input. The parser still relies on a
- 256-character buffer to read each line, though.
-
- So now you can include an ~246-character password in your .netrc,
- instead of the previous limit of 63 characters.
-
- Reported-by: Colby Ranger
-
-- [Jonathan Nieder brought this change]
-
- url: allocate username, password, and options on the heap
-
- This makes it possible to increase the size of the buffers when needed
- in later patches. No functional change yet.
-
-- [Jonathan Nieder brought this change]
-
- url: use goto in create_conn() for exception handling
-
- Instead of remembering before each "return" statement which temporary
- allocations, if any, need to be freed, take care to set pointers to
- NULL when no longer needed and use a goto to a common block to exit
- the function and free all temporaries.
-
- No functional change intended. Currently the only temporary buffer in
- this function is "proxy" which is already correctly freed when
- appropriate, but there will be more soon.
-
-- [Jonathan Nieder brought this change]
-
- sasl: allow arbitrarily long username and password
-
- Use appropriately sized buffers on the heap instead of fixed-size
- buffers on the stack, to allow for longer usernames and passwords.
-
- Callers never pass anything longer than MAX_CURL_USER_LENGTH (resp.
- MAX_CURL_PASSWORD_LENGTH), so no functional change inteded yet.
-
-Steve Holme (19 Aug 2013)
-- [Alex McLellan brought this change]
-
- imap: Fixed response check for SEARCH command
-
- Adding this line allows libcurl to return the server response when
- performing a search command via a custom request.
-
-Daniel Stenberg (16 Aug 2013)
-- glob: error out on range overflow
-
- The new multiply() function detects range value overflows. 32bit
- machines will overflow on a 32bit boundary while 64bit hosts support
- ranges up to the full 64 bit range.
-
- Added test 1236 to verify.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1267
- Reported-by: Will Dietz
-
-- urlglob: better detect unclosed braces, empty lists and overflows
-
- A rather big overhaul and cleanup.
-
- 1 - curl wouldn't properly detect and reject globbing that ended with an
- open brace if there were brackets or braces before it. Like "{}{" or
- "[0-1]{"
-
- 2 - curl wouldn't properly reject empty lists so that "{}{}" would
- result in curl getting (nil) strings in the output.
-
- 3 - By using strtoul() instead of sscanf() the code will now detected
- over and underflows. It now also better parses the step argument to only
- accept positive numbers and only step counters that is smaller than the
- delta between the maximum and minimum numbers.
-
- 4 - By switching to unsigned longs instead of signed ints for the
- counters, the max values for []-ranges are now very large (on 64bit
- machines).
-
- 5 - Bumped the maximum number of globs in a single URL to 100 (from 10)
-
- 6 - Simplified the code somewhat and now it stores fixed strings as
- single- entry lists. That's also one of the reasons why I did (5) as now
- all strings between "globs" will take a slot in the array.
-
- Added test 1234 and 1235 to verify. Updated test 87.
-
- This commit fixes three separate bug reports.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1264
- Bug: http://curl.haxx.se/bug/view.cgi?id=1265
- Bug: http://curl.haxx.se/bug/view.cgi?id=1266
- Reported-by: Will Dietz
-
-- [John Malmberg brought this change]
-
- VMS: Add RELEASE-NOTES to vms document
-
- Add the curl release notes to the release note document generated for
- VMS packages.
-
- Add the different filenames generated by a daily build to the
- cleanup procedures.
-
-- [Tor Arntsen brought this change]
-
- tests 2032, 2033: Don't hardcode port in expected output
-
-- ftp: convert state names to a global array
-
- ... just to make them easier to print in debug ouputs while debugging.
- They are still within #ifdef [debugbuild].
-
-- --help: fix the --sasl-ir in the help output
-
-- ftp_domore_getsock: when passive mode, the second conn is already there
-
- This makes the socket callback get called with the proper bitmask as
- otherwise the application could be left hanging waiting for reading on
- an upload connection!
-
- Bug: http://curl.haxx.se/mail/lib-2013-08/0043.html
- Reported-by: Bill Doyle
-
-- curl: make --no-[option] work properly for several options
-
- --create-dirs, --crlf, --socks5-gssapi-nec and --sasl-ir
-
-Kamil Dudka (12 Aug 2013)
-- nss: make sure that NSS is initialized
-
- ... prior to calling PK11_GenerateRandom()
-
-Daniel Stenberg (12 Aug 2013)
-- multi: s/easy/data
-
- With everything being struct SessionHandle pointers now, this rename
- makes multi.c use the library-wide practise of calling that pointer
- 'data' instead of the previously used 'easy'.
-
-- cleanup: removed one function, made one static
-
- Moved Curl_easy_addmulti() from easy.c to multi.c, renamed it to
- easy_addmulti and made it static.
-
- Removed Curl_easy_initHandleData() and uses of it since it was emptied
- in commit cdda92ab67b47d74a.
-
-- SessionHandle: the protocol specific pointer is now a void *
-
- All protocol handler structs are now opaque (void *) in the
- SessionHandle struct and moved in the request-specific sub-struct
- 'SingleRequest'. The intension is to keep the protocol specific
- knowledge in their own dedicated source files [protocol].c etc.
-
- There's some "leakage" where this policy is violated, to be addressed at
- a later point in time.
-
-- urldata: clean up the use of the protocol specific structs
-
- 1 - always allocate the struct in protocol->setup_connection. Some
- protocol handlers had to get this function added.
-
- 2 - always free at the end of a request. This is also an attempt to keep
- less memory in the handle after it is completed.
-
-- version number: bump to 7.32.1 for now
-
- Start working on the next version and up some counters.
-
-Version 7.32.0 (11 Aug 2013)
-
-Daniel Stenberg (11 Aug 2013)
-- THANKS: added contributors from the 7.32.0 release notes
-
-- [Fabian Keil brought this change]
-
- test1228: add 'HTTP proxy' to the keywords
-
-- [Fabian Keil brought this change]
-
- tests: add keywords for a couple of FILE tests
-
-- [Fabian Keil brought this change]
-
- tests: add 'FAILURE' keywords to tests 1409 and 1410
-
-- [Fabian Keil brought this change]
-
- tests: add keywords for a couple of HTTP tests
-
-- [Fabian Keil brought this change]
-
- tests: add keywords for a couple of FTP tests
-
-- [Fabian Keil brought this change]
-
- test1511: consistently terminate headers with CRLF
-
-- DISABLED: shut of test 1512 for now
-
- It shows intermittent failures and I haven't been able to track them
- down yet. Disable this test for now.
-
-- curl_multi_add_handle.3: ... that timer callback is for event-based
-
-- comments: remove old and wrong multi/easy interface statements
-
-- curl_multi_add_handle.3: mention the CURLMOPT_TIMERFUNCTION use
-
-- [John E. Malmberg brought this change]
-
- KNOWN_BUGS: 22 and 57 have been fixed and committed
-
-- RELEASE-NOTES: synced with d20def20462e7
-
-- global dns cache: fix memory leak
-
- The take down of the global dns cache didn't take CURLOPT_RESOLVE names
- into account.
-
-- global dns cache: didn't work [regression]
-
- CURLOPT_DNS_USE_GLOBAL_CACHE broke in commit c43127414d89ccb (been
- broken since the libcurl 7.29.0 release). While this option has been
- documented as deprecated for almost a decade and nobody even reported
- this bug, it should remain functional.
-
- Added test case 1512 to verify
-
-Yang Tse (8 Aug 2013)
-- [John Malmberg brought this change]
-
- packages/vms: update VMS build files
-
- VMS modified files either missing from a previous commit and changes
- to remove references to CVS repositories.
-
-Daniel Stenberg (8 Aug 2013)
-- FTP: renamed several local functions
-
- The previous naming scheme ftp_state_post_XXXX() wasn't really helpful
- as it wasn't always immediately after 'xxxx' and it wasn't easy to
- understand what it does based on such a name.
-
- This new one is instead ftp_state_yyyy() where yyyy describes what it
- does or sends.
-
-- mk-ca-bundle.1: don't install on make install
-
- Since the mk-ca-bundle tool itself isn't installed with make install,
- there's no point in installing its documentation.
-
- Bug: http://curl.haxx.se/mail/lib-2013-08/0057.html
- Reported-by: Guenter Knauf
-
-Yang Tse (7 Aug 2013)
-- packages/vms/Makefile.am: add latest file additions to EXTRA_DIST
-
-- [John Malmberg brought this change]
-
- Building_vms_pcsi_kit
-
- These are the files needed to build VMS distribution packages known as
- PCSI kits.
-
- Also minor update to the existing files, mainly to the documentation and
- file clean up code.
-
-Daniel Stenberg (6 Aug 2013)
-- LIBCURL-STRUCTS: new document
-
- This is the first version of this new document, detailing the seven
- perhaps most important internal structs in libcurl source code:
-
- 1.1 SessionHandle
- 1.2 connectdata
- 1.3 Curl_multi
- 1.4 Curl_handler
- 1.5 conncache
- 1.6 Curl_share
- 1.7 CookieInfo
-
-- CONTRIBUTE: minor language polish
-
-- FTP: when EPSV gets a 229 but fails to connect, retry with PASV
-
- This is a regression as this logic used to work. It isn't clear when it
- broke, but I'm assuming in 7.28.0 when we went all-multi internally.
-
- This likely never worked with the multi interface. As the failed
- connection is detected once the multi state has reached DO_MORE, the
- Curl_do_more() function was now expanded somewhat so that the
- ftp_do_more() function can request to go "back" to the previous state
- when it makes another attempt - using PASV.
-
- Added test case 1233 to verify this fix. It has the little issue that it
- assumes no service is listening/accepting connections on port 1...
-
- Reported-by: byte_bucket in the #curl IRC channel
-
-Nick Zitzmann (5 Aug 2013)
-- md5: remove use of CommonCrypto-to-OpenSSL macros for the benefit of Leopard
-
- For some reason, OS X 10.5's GCC suddenly stopped working correctly with
- macros that change MD5_Init etc. in the code to CC_MD5_Init etc., so I
- worked around this by removing use of the macros and inserting static
- functions that just call CommonCrypto's implementations of the functions
- instead.
-
-Guenter Knauf (5 Aug 2013)
-- Simplify check for trusted certificates.
-
- This changes the previous check for untrusted certs to a check for
- certs explicitely marked as trusted.
- The change is backward-compatible (tested with certdata.txt v1.80).
-
-Daniel Stenberg (5 Aug 2013)
-- configure: warn on bad env variable use, don't error
-
- Use XC_CHECK_BUILD_FLAGS instead XC_CHECK_USER_FLAGS.
-
-- Revert "configure: don't error out on variable confusions, just warn"
-
- This reverts commit 6b27703b5f525eccdc0a8409f51de8595c75132a.
-
-- formadd: wrong pointer for file name when CURLFORM_BUFFERPTR used
-
- The internal function that's used to detect known file extensions for
- the default Content-Type got the the wrong pointer passed in when
- CURLFORM_BUFFER + CURLFORM_BUFFERPTR were used. This had the effect that
- strlen() would be used which could lead to an out-of-bounds read (and
- thus segfault). In most cases it would only lead to it not finding or
- using the correct default content-type.
-
- It also showed that test 554 and test 587 were testing for the
- previous/wrong behavior and now they're updated as well.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1262
- Reported-by: Konstantin Isakov
-
-Guenter Knauf (4 Aug 2013)
-- Skip more untrusted certificates.
-
- Christian Heimes brought to our attention that the certdata.txt
- format has recently changed [1], causing ca-bundle.crt created
- with mk-ca-bundle.[pl|vbs] to include untrusted certs.
-
- [1] http://lists.debian.org/debian-release/2012/11/msg00411.html
-
-Daniel Stenberg (4 Aug 2013)
-- configure: don't error out on variable confusions, just warn
-
-- configure: rephrase the notice in _XC_CHECK_VAR_*
-
- Instead of claiming it is an error, we call it a "note" to reduce the
- severity level. But the following text now says the [variable] "*should*
- only be used to specify"... instead of previously having said "may".
-
-- multi: remove data->state.current_conn struct field
-
- Not needed
-
-- multi: remove the one_easy struct field
-
- Since the merge of SessionHandle with Curl_one_easy, this indirection
- isn't used anymore.
-
-- multi: rename all Curl_one_easy to SessionHandle
-
-- multi: remove the multi_pos struct field
-
- Since Curl_one_easy is really a SessionHandle now, this indirection
- doesn't exist anymore.
-
-- multi: remove easy_handle struct field
-
- It isn't needed anymore
-
-- multi: remove 'Curl_one_easy' struct, phase 1
-
- The motivation for having a separate struct that keep track of an easy
- handle when using the multi handle was removed when we switched to
- always using the multi interface internally. Now they were just two
- separate struct that was always allocated for each easy handle.
-
- This first step just moves the Curl_one_easy struct members into the
- SessionHandle struct and hides this somehow (== keeps the source code
- changes to a minimum) by defining Curl_one_easy to SessionHandle
-
- The biggest changes in this commit are:
-
- 1 - the linked list of easy handles had to be changed somewhat due
- to the new struct layout. This made the main linked list pointer
- get renamed to 'easyp' and there's also a new pointer to the last
- node, called easylp. It is no longer circular but ends with ->next
- pointing to NULL. New nodes are still added last.
-
- 2 - easy->state is now called easy->mstate to avoid name collision
-
-Steve Holme (2 Aug 2013)
-- Revert "DOCS: Added IMAP URL example for listing new messages"
-
- This reverts commit 82ab5f1b0c7c3f as this was the wrong place to
- document the complexity of IMAP URLs and Custom Requests.
-
-- DOCS: Added IMAP URL example for listing new messages
-
- In addition to listing the folder contents, in the URL examples, added
- an example to list the new messages waiting in the user's inbox.
-
-Yang Tse (1 Aug 2013)
-- packages/vms/Makefile.am: add latest file additions to EXTRA_DIST
-
-- [John Malmberg brought this change]
-
- Add in the files needed to build libcurl shared images on VMS.
-
- Update the packages/vms/readme file to be current.
-
- Also some files for the GNV based build were either missing or needed an
- update.
-
- curl_crtl_init.c is a special file that is run before main() to
- set up the proper C runtime behavior.
-
- generate_vax_transfer.com generates the VAX transfer vector modules from
- the gnv_libcurl_symbols.opt file.
-
- gnv_conftest.c_first is a helper file needed for configure scripts to
- come up with the expected answers on VMS.
-
- gnv_libcurl_symbols.opt is the public symbols for the libcurl shared
- image.
-
- gnv_link_curl.com builds the shared libcurl image and rebuilds other
- programs to use it.
-
- macro32_exactcase.patch is a hack to make a local copy of the VMS Macro32
- assembler case sensitive, which is needed to build the VAX transfer modules.
-
- report_openssl_version.c is a tool for help verify that the libcurl
- shared image is being built for a minium version of openssl.
-
-- curl: second follow-up for commit 5af2bfb9
-
- Display progress-bar unconditionally on first call
-
-- curl: follow-up for commit 5af2bfb9
-
- Use tvnow() and tvdiff() to avoid introducing new linkage issues
-
-Daniel Stenberg (31 Jul 2013)
-- curl: --progress-bar max update frequency now at 5Hz
-
-- curl: make --progress-bar update the line less frequently
-
- Also, use memset() instead of a lame loop.
-
- The previous logic that tried to avoid too many updates were very
- ineffective for really fast transfers, as then it could easily end up
- doing hundreds of updates per second that would make a significant
- impact in transfer performance!
-
- Bug: http://curl.haxx.se/mail/archive-2013-07/0031.html
- Reported-by: Marc Doughty
-
-Nick Zitzmann (30 Jul 2013)
-- darwinssl: added LFs to some strings passed into infof()
-
- (This doesn't need to appear in the release notes.) I noticed a few places
- where infof() was called, and there should've been an LF at the end of the
- string, but there wasn't.
-
-- darwinssl: fix build error in crypto authentication under Snow Leopard
-
- It turns out Snow Leopard not only has SecItemCopyMatching() defined in
- a header not included by the omnibus header, but it won't work for our
- purposes, because searching for SecIdentityRef objects wasn't added
- to that API until Lion. So we now use the old SecKeychainSearch API
- instead if the user is building under, or running under, Snow Leopard.
-
- Bug: http://sourceforge.net/p/curl/bugs/1255/
- Reported by: Edward Rudd
-
-- md5 & metalink: use better build macros on Apple operating systems
-
- Previously we used __MAC_10_X and __IPHONE_X to mark digest-generating
- code that was specific to OS X and iOS. Now we use
- __MAC_OS_X_VERSION_MAX_ALLOWED and __IPHONE_OS_VERSION_MAX_ALLOWED
- instead of those macros.
-
- Bug: http://sourceforge.net/p/curl/bugs/1255/
- Reported by: Edward Rudd
-
-Yang Tse (29 Jul 2013)
-- tool_operhlp.c: fix add_file_name_to_url() OOM handling
-
-- tool_operate.c: fix brace placement for vi/emacs delimiter matching
-
-- tool_operate.c: move <fabdef.h> header inclusion location
-
-Daniel Stenberg (29 Jul 2013)
-- RELEASE-NOTES: synced with b5478a0e033e7
-
-- curl_easy_pause: on unpause, trigger mulit-socket handling
-
- When the multi-socket API is used, we need the handle to be checked
- again when it gets unpaused.
-
- Bug: http://curl.haxx.se/mail/lib-2013-07/0239.html
- Reported-by: Justin Karneges
-
-- [John E. Malmberg brought this change]
-
- curl_formadd: fix file upload on VMS
-
- For the standard VMS text file formats, VMS needs to read the file to
- get the actual file size.
-
- For the standard VMS binary file formats, VMS needs a special format of
- fopen() call so that it stops reading at the logical end of file instead
- of at the end of the blocks allocated to the file.
-
- I structured the patch this way as I was not sure about changing the
- structures or parameters to the routines, but would prefer to only call
- the stat() function once and pass the information to where the fopen()
- call is made.
-
- Bug: https://sourceforge.net/p/curl/bugs/758/
-
-- formadd: CURLFORM_FILECONTENT wrongly rejected some option combos
-
- The code for CURLFORM_FILECONTENT had its check for duplicate options
- wrong so that it would reject CURLFORM_PTRNAME if used in combination
- with it (but not CURLFORM_COPYNAME)! The flags field used for this
- purpose cannot be interpreted that broadly.
-
- Bug: http://curl.haxx.se/mail/lib-2013-07/0258.html
- Reported-by: Byrial Jensen
-
-Yang Tse (25 Jul 2013)
-- packages/vms/Makefile.am: add latest file additions to EXTRA_DIST
-
-- [John E. Malmberg brought this change]
-
- VMS: intial set of files to allow building using GNV toolkit.
-
-- string formatting: fix too many arguments for format
-
-- string formatting: fix zero-length printf format string
-
-- easy.c: curl_easy_getinfo() fix va_start/va_end matching
-
-- imap.c: imap_sendf() fix va_start/va_end matching
-
-- string formatting: fix 15+ printf-style format strings
-
-Patrick Monnerat (24 Jul 2013)
-- OS400: sync ILE/RPG binding with current curl.h
-
-Yang Tse (24 Jul 2013)
-- string formatting: fix 25+ printf-style format strings
-
-Daniel Stenberg (23 Jul 2013)
-- Makefile.am: use LDFLAGS as well when linking libcurl
-
- Linking on Solaris 10 x86 with Sun Studio 12 failed when we upgraded
- automake for the release builds.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1217
- Reported-by: Dagobert Michelsen
-
-- [Fabian Keil brought this change]
-
- url.c: Fix dot file path cleanup when using an HTTP proxy
-
- Previously the path was cleaned, but the URL wasn't properly updated.
-
-- [Fabian Keil brought this change]
-
- tests: test1232 verifies dotdot removal from path with proxy
-
-- [Fabian Keil brought this change]
-
- dotdot.c: Fix a RFC section number in a comment for Curl_dedotdotify()
-
-- [John E. Malmberg brought this change]
-
- build_vms.com: fix debug and float options
-
- In the reorganization of the build_vms.com the debug and float options
- were not fixed up correctly.
-
-- [John E. Malmberg brought this change]
-
- curl: fix upload of a zip file in OpenVMS
-
- Two fixes:
-
- 1. Force output file format to be stream-lf so that partial downloads
- can be continued.
-
- This should have minor impact as if the file does not exist, it was
- created with stream-lf format. The only time this was an issue is if
- there was already an existing file with a different format.
-
- 2. Fix file uploads are now fixed.
-
- a. VMS binary files such as ZIP archives are now uploaded
- correctly.
-
- b. VMS text files are read once to get the correct size
- and then converted to line-feed terminated records as
- they are read into curl.
-
- The default VMS text formats do not contain either line-feed or
- carriage-return terminated records. Those delimiters are added by the
- operating system file read calls if the application requests them.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=496
-
-Yang Tse (22 Jul 2013)
-- libtest: fix data type of some *_setopt() 'long' arguments
-
-- curl: fix symbolic names for CURL_NETRC_* enum in --libcurl output
-
-- curl: fix symbolic names for CURLUSESSL_* enum in --libcurl output
-
-- tool_operate.c: fix passing curl_easy_setopt long arg on some x64 ABIs
-
- We no longer pass our 'bool' data type variables nor constants as
- an argument to my_setopt(), instead we use proper 1L or 0L values.
-
- This also fixes macro used to pass string argument for CURLOPT_SSLCERT,
- CURLOPT_SSLKEY and CURLOPT_EGDSOCKET using my_setopt_str() instead of
- my_setopt().
-
- This also casts enum or int argument data types to long when passed to
- my_setopt_enum().
-
-Daniel Stenberg (21 Jul 2013)
-- curl_multi_wait: fix revents
-
- Commit 6d30f8ebed34e7276 didn't work properly. First, it used the wrong
- array index, but this fix also:
-
- 1 - only does the copying if indeed there was any activity
-
- 2 - makes sure to properly translate between internal and external
- bitfields, which are not guaranteed to match
-
- Reported-by: Evgeny Turnaev
-
-- RELEASE-NOTES: synced with d529f3882b9bca
-
-- curl_easy_perform: gradually increase the delay time
-
- Instead of going 50,100,150 etc millisecond delay time when nothing has
- been found to do or wait for, we now start lower and double each loop as
- in 4,8,16,32 etc.
-
- This lowers the minimum wait without sacrifizing the longer wait too
- much with unnecessary CPU cycles burnt.
-
- Bug: http://curl.haxx.se/mail/lib-2013-07/0103.html
- Reported-by: Andreas Malzahn
-
-- ftp_do_more: consider DO_MORE complete when server connects back
-
- In the case of an active connection when ftp_do_more() detects that the
- server has connected back, it must make sure to mark it as complete so
- that the multi_runsingle() function will detect this and move on to the
- next state.
-
- Bug: http://curl.haxx.se/mail/lib-2013-07/0115.html
- Reported-by: Clemens Gruber
-
-Yang Tse (19 Jul 2013)
-- Makefile.b32: Borland makefile adjustments. Tested with BCC 5.5.1
-
-- WIN32 MemoryTracking: require UNICODE for wide strdup code support
-
-Daniel Stenberg (18 Jul 2013)
-- CURLOPT_XFERINFOFUNCTION: introducing a new progress callback
-
- CURLOPT_XFERINFOFUNCTION is now the preferred progress callback function
- and CURLOPT_PROGRESSFUNCTION is considered deprecated.
-
- This new callback uses pure 'curl_off_t' arguments to pass on full
- resolution sizes. It otherwise retains the same characteristics: the
- same call rate, the same meanings for the arguments and the return code
- is used the same way.
-
- The progressfunc.c example is updated to show how to use the new
- callback for newer libcurls while supporting the older one if built with
- an older libcurl or even built with a newer libcurl while running with
- an older.
-
-Yang Tse (18 Jul 2013)
-- Reinstate "WIN32 MemoryTracking: track wcsdup() _wcsdup() and _tcsdup() usage".
-
- This reverts commit 7ed25cc, reinstating commit 8ec2cb5.
-
- As of 18-jul-2013 we still do have code in libcurl that makes use of these
- memory functions. Commit 8ec2cb5 comment still applies and is yet valid.
-
- These memory functions are solely used in Windows builds, so all related
- code is protected with '#ifdef WIN32' preprocessor conditional compilation
- directives.
-
- Specifically, wcsdup() _wcsdup() are used when building a Windows target with
- UNICODE and USE_WINDOWS_SSPI preprocessor symbols defined. This is the case
- when building a Windows UNICODE target with Windows native SSL/TLS support
- enabled.
-
- Realizing that wcsdup() _wcsdup() are used is a bit tricky given that usage
- of these is hidden behind _tcsdup() which is MS way of dealing with code
- that must tolerate UNICODE and non-UNICODE compilation. Additionally, MS
- header files and those compatible from other compilers use this preprocessor
- conditional compilation directive in order to select at compilation time
- whether 'wide' or 'ansi' MS API functions are used.
-
- Without this code, Windows build targets with Windows native SSL/TLS support
- enabled and MemoryTracking support enabled misbehave in tracking memory usage,
- regardless of being a UNICODE enabled build or not.
-
-- xc-am-iface.m4: comments refinement
-
-- configure: fix 'subdir-objects' distclean related issue
-
- See XC_AMEND_DISTCLEAN comments for details.
-
-Daniel Stenberg (18 Jul 2013)
-- [Evgeny Turnaev brought this change]
-
- curl_multi_wait: set revents for extra fds
-
- Pass back the revents that happened for the user-provided file
- descriptors.
-
-- [Ben Greear brought this change]
-
- asyn-ares: Don't blank ares servers if none configured.
-
- Best to just let c-ares use it's defaults if none are configured
- in (lib)curl.
-
- Signed-off-by: Ben Greear <greearb@candelatech.com>
-
-- [Sergei Nikulov brought this change]
-
- cmake: Fix for MSVC2010 project generation
-
- Fixed issue with static build for MSVC2010.
-
- After some investigation I've discovered known issue
- http://public.kitware.com/Bug/view.php?id=11240 When .rc file is linked
- to static lib it fails with following linker error
-
- LINK : warning LNK4068: /MACHINE not specified; defaulting to X86
- file.obj : fatal error LNK1112: module machine type 'x64' conflicts with
- target machine type 'X86'
-
- Fix add target property /MACHINE: for MSVC generation.
-
- Also removed old workarounds - it caused errors during msvc build.
-
- Bug: http://curl.haxx.se/mail/lib-2013-07/0046.html
-
-- mk-ca-bundle.1: point out certdata.txt format docs
-
-Yang Tse (16 Jul 2013)
-- slist.c: Curl_slist_append_nodup() OOM handling fix
-
-Daniel Stenberg (16 Jul 2013)
-- test1414: FTP PORT download without SIZE support
-
-Yang Tse (16 Jul 2013)
-- tests/Makefile.am: add configurehelp.pm to DISTCLEANFILES
-
-Patrick Monnerat (15 Jul 2013)
-- curl_slist_append(): fix error detection
-
-- slist.c: fix indentation
-
-- OS400: new SSL backend GSKit
-
-- OS400: add slist and certinfo EBCDIC support
-
-- config-os400.h: enable system strdup(), strcmpi(), etc.
-
-- x509asn1.c,x509asn1.h: new module to support ASN.1/X509 parsing & info extract
- Use from qssl backend
-
-- ssluse.c,sslgen.c,sslgen.h: move certinfo support to generic SSL
-
-- Merge branch 'master' of github.com:bagder/curl
-
- Merge for resync
-
-- slist.c, slist.h, cookie.c: new internal procedure Curl_slist_append_nodup()
-
-Yang Tse (15 Jul 2013)
-- sslgen.c: fix Curl_rand() compiler warning
-
- Use simple seeding method upon RANDOM_FILE seeding method failure.
-
-- sslgen.c: fix unreleased Curl_rand() infinite recursion
-
-Daniel Stenberg (14 Jul 2013)
-- [Dave Reisner brought this change]
-
- src/tool: allow timeouts to accept decimal values
-
- Implement wrappers around strtod to convert the user argument to a
- double with sane error checking. Use this to allow --max-time and
- --connect-timeout to accept decimal values instead of strictly integers.
-
- The manpage is updated to make mention of this feature and,
- additionally, forewarn that the actual timeout of the operation can
- vary in its precision (particularly as the value increases in its
- decimal precision).
-
-- [Dave Reisner brought this change]
-
- curl.1: fix long line, found by checksrc.pl
-
-- [Dave Reisner brought this change]
-
- src/tool_paramhlp: try harder to catch negatives
-
- strto* functions happily chomp off leading whitespace, so simply
- checking for str[0] can lead to false negatives. Do the full parse and
- check the out value instead.
-
-- [John E. Malmberg brought this change]
-
- build_vms.com: detect and use zlib shared image
-
- Update the build_vms.com to detect and use zlib shared image installed
- by the ZLIB kit produced by Jean-Francois Pieronne, and the also the
- future ZLIB 1.2.8 kit in addition to the older ZLIB kits.
-
- Also fix the indentation to match one of the common standards used for
- VMS DCL command files and removed the hard tab characters.
-
- Tested on OpenVMS 8.4 Alpha and IA64, and OpenVMS 7.3 VAX.
-
-Yang Tse (14 Jul 2013)
-- url.c: fix parse_url_login() OOM handling
-
-- http_digest.c: SIGSEGV and OOM handling fixes
-
-- url.c: fix parse_login_details() OOM handling
-
-- [John E. Malmberg brought this change]
-
- setup-vms.h: sk_pop symbol tweak
-
- Newer versions of curl are referencing a sk_pop symbol while the HP
- OpenSSL library has the symbol in uppercase only.
-
-- getinfo.c: fix enumerated type mixed with another type
-
-- test 1511: fix enumerated type mixed with another type
-
-- url.c: fix SIGSEGV
-
-- dotdot.c: fix global declaration shadowing
-
-- easy.c: fix global declaration shadowing
-
-Kamil Dudka (9 Jul 2013)
-- Revert "curl.1: document the --time-cond option in the man page"
-
- This reverts commit 3a0e931fc715a80004958794a96b12cf90503f99 because
- the documentation of --time-cond was duplicated by mistake.
-
- Reported by: Dave Reisner
-
-- curl.1: document the --sasl-ir option in the man page
-
-- curl.1: document the --post303 option in the man page
-
-- curl.1: document the --time-cond option in the man page
-
-Yang Tse (9 Jul 2013)
-- configure: automake 1.14 compatibility tweak (use XC_AUTOMAKE)
-
-- xc-am-iface.m4: provide XC_AUTOMAKE macro
-
-Guenter Knauf (8 Jul 2013)
-- Added winssl-zlib target to VC builds.
-
-- Synced Makefile.vc6 with recent changes.
-
- Issue posted to the list by malinowsky AT FTW DOT at.
-
-- Added libmetalink URL; added Android versions.
-
-Dan Fandrich (3 Jul 2013)
-- examples: Moved usercertinmem.c to COMPLICATED_EXAMPLES
-
- This prevents it from being built during a "make check" since it
- depends on OpenSSL.
-
-Nick Zitzmann (2 Jul 2013)
-- Merge branch 'master' of https://github.com/bagder/curl
-
-- darwinssl: SSLv2 connections are aborted if unsupported by the OS
-
- I just noticed that OS X no longer supports SSLv2. Other TLS engines return
- an error if the requested protocol isn't supported by the underlying
- engine, so we do that now for SSLv2 if the framework returns an error
- when trying to turn on SSLv2 support. (Note: As always, SSLv2 support is
- only enabled in curl when starting the app with the -2 argument; it's off
- by default. SSLv2 is really old and insecure.)
-
-Marc Hoersken (1 Jul 2013)
-- lib506.c: Fixed possible use of uninitialized variables
-
-Kamil Dudka (30 Jun 2013)
-- url: restore the functionality of 'curl -u :'
-
- This commit fixes a regression introduced in
- fddb7b44a79d78e05043e1c97e069308b6b85f79.
-
- Reported by: Markus Moeller
- Bug: http://curl.haxx.se/mail/archive-2013-06/0052.html
-
-Daniel Stenberg (25 Jun 2013)
-- digest: append the timer to the random for the nonce
-
-- digest: improve nonce generation
-
- Use the new improved Curl_rand() to generate better random nonce for
- Digest auth.
-
-- curl.1: fix typo in --xattr description
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1252
- Reported-by: Jean-Noël Rouvignac
-
-- RELEASE-NOTES: synced with 365c5ba39591
-
- The 10 first bug fixes for the pending release...
-
-- formpost: better random boundaries
-
- When doing multi-part formposts, libcurl used a pseudo-random value that
- was seeded with time(). This turns out to be bad for users who formpost
- data that is provided with users who then can guess how the boundary
- string will look like and then they can forge a different formpost part
- and trick the receiver.
-
- My advice to such implementors is (still even after this change) to not
- rely on the boundary strings being cryptographically strong. Fix your
- code and logic to not depend on them that much!
-
- I moved the Curl_rand() function into the sslgen.c source file now to be
- able to take advantage of the SSL library's random function if it
- provides one. If not, try to use the RANDOM_FILE for seeding and as a
- last resort keep the old logic, just modified to also add microseconds
- which makes it harder to properly guess the exact seed.
-
- The formboundary() function in formdata.c is now using 64 bit entropy
- for the boundary and therefore the string of dashes was reduced by 4
- letters and there are 16 hex digits following it. The total length is
- thus still the same.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1251
- Reported-by: "Floris"
-
-- printf: make sure %x are treated unsigned
-
- When using %x, the number must be treated as unsigned as otherwise it
- would get sign-extended on for example 64bit machines and do wrong
- output. This problem showed when doing printf("%08x", 0xffeeddcc) on a
- 64bit host.
-
-- tests: add test1395 to the tarball
-
-- SIGPIPE: don't use 'data' in sigpipe restore
-
- Follow-up fix from 7d80ed64e43515.
-
- The SessionHandle may not be around to use when we restore the sigpipe
- sighandler so we store the no_signal boolean in the local struct to know
- if/how to restore.
-
-- TODO: 1.8 Modified buffer size approach
-
- Thoughts around buffer sizes and what might be possible to do...
-
-- c-ares: improve error message on failed resolve
-
- When the c-ares based resolver backend failed to resolve a name, it
- tried to show the name that failed from existing structs. This caused
- the wrong output and shown hostname when for example --interface
- [hostname] was used and that name resolving failed.
-
- Now we use the hostname used in the actual resolve attempt in the error
- message as well.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1191
- Reported-by: Kim Vandry
-
-- ossl_recv: check for an OpenSSL error, don't assume
-
- When we recently started to treat a zero return code from SSL_read() as
- an error we also got false positives - which primarily looks to be
- because the OpenSSL documentation is wrong and a zero return code is not
- at all an error case in many situations.
-
- Now ossl_recv() will check with ERR_get_error() to see if there is a
- stored error and only then consider it to be a true error if SSL_read()
- returned zero.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1249
- Reported-by: Nach M. S.
- Patch-by: Nach M. S.
-
-Nick Zitzmann (22 Jun 2013)
-- Merge branch 'master' of https://github.com/bagder/curl
-
-- darwinssl: fix crash that started happening in Lion
-
- Something (a recent security update maybe?) changed in Lion, and now it
- has changed SSLCopyPeerTrust such that it may return noErr but also give
- us a null trust, which caught us off guard and caused an eventual crash.
-
-Daniel Stenberg (22 Jun 2013)
-- SIGPIPE: ignored while inside the library
-
- ... and restore the ordinary handling again when it returns. This is
- done for curl_easy_perform() and curl_easy_cleanup() only for now - and
- only when built to use OpenSSL as backend as this is the known culprit
- for the spurious SIGPIPEs people have received.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1180
- Reported by: Lluís Batlle i Rossell
-
-- KNOWN_BUGS: #83 unable to load non-default openssl engines
-
-- test1396: invoke the correct test tool!
-
- This erroneously run unit test 1310 instead of 1396!
-
-Kamil Dudka (22 Jun 2013)
-- test1230: avoid using hard-wired port number
-
- ... to prevent failure when a non-default -b option is given
-
-- curl-config.in: replace tabs by spaces
-
-Nick Zitzmann (22 Jun 2013)
-- darwinssl: reform OS-specific #defines
-
- This doesn't need to be in the release notes. I cleaned up a lot of the #if
- lines in the code to use MAC_OS_X_VERSION_MIN_REQUIRED and
- MAC_OS_X_VERSION_MAX_ALLOWED instead of checking for whether things like
- __MAC_10_6 or whatever were defined, because for some SDKs Apple has released
- they were defined out of place.
-
-Daniel Stenberg (22 Jun 2013)
-- [Alessandro Ghedini brought this change]
-
- docs: fix typo in curl_easy_getinfo manpage
-
-- dotdot: introducing dot file path cleanup
-
- RFC3986 details how a path part passed in as part of a URI should be
- "cleaned" from dot sequences before getting used. The described
- algorithm is now implemented in lib/dotdot.c with the accompanied test
- case in test 1395.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1200
- Reported-by: Alex Vinnik
-
-- bump: start working towards what most likely will become 7.32.0
-
-- THANKS: added 24 new contributors from the 7.31.0 release
-
-Version 7.31.0 (22 Jun 2013)
-
-Daniel Stenberg (22 Jun 2013)
-- RELEASE-NOTES: synced with 0de7249bb39a2 - 7.31.0
-
-- unit1396: unit tests to verify curl_easy_(un)escape
-
-- Curl_urldecode: no peeking beyond end of input buffer
-
- Security problem: CVE-2013-2174
-
- If a program would give a string like "%FF" to curl_easy_unescape() but
- ask for it to decode only the first byte, it would still parse and
- decode the full hex sequence. The function then not only read beyond the
- allowed buffer but it would also deduct the *unsigned* counter variable
- for how many more bytes there's left to read in the buffer by two,
- making the counter wrap. Continuing this, the function would go on
- reading beyond the buffer and soon writing beyond the allocated target
- buffer...
-
- Bug: http://curl.haxx.se/docs/adv_20130622.html
- Reported-by: Timo Sirainen
-
-Guenter Knauf (20 Jun 2013)
-- Use opened body.out file and write content to it.
-
-Daniel Stenberg (20 Jun 2013)
-- multi_socket: react on socket close immediately
-
- As a remedy to the problem when a socket gets closed and a new one is
- opened with the same file descriptor number and as a result
- multi.c:singlesocket() doesn't detect the difference, the new function
- Curl_multi_closed() gets told when a socket is closed so that it can be
- removed from the socket hash. When the old one has been removed, a new
- socket should be detected fine by the singlesocket() on next invoke.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1248
- Reported-by: Erik Johansson
-
-- RELEASE-NOTES: synced with e305f5ec715f
-
-- TODO: mention the DANE patch from March
-
-- CURLOPT_COOKIELIST: take cookie share lock
-
- When performing COOKIELIST operations the cookie lock needs to be taken
- for the cases where the cookies are shared among multiple handles!
-
- Verified by Benjamin Gilbert's updated test 506
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1215
- Reported-by: Benjamin Gilbert
-
-- [Benjamin Gilbert brought this change]
-
- test506: verify that CURLOPT_COOKIELIST takes share lock
-
- It doesn't right now: http://curl.haxx.se/bug/view.cgi?id=1215
-
-- TODO: HTTP2/SPDY support
-
-- curl_easy_setopt.3: clarify CURLOPT_PROGRESSFUNCTION frequency
-
- Make it clearer that the CURLOPT_PROGRESSFUNCTION callback will be
- called more frequently than once per second when things are happening.
-
-- RELEASE-NOTES: synced with 9c3e098259b82
-
- Mention 7 recent bug fixes and their associated contributors
-
-- curl_multi_wait.3: clarify the numfds counter
-
-- curl_easy_perform: avoid busy-looping
-
- When curl_multi_wait() finds no file descriptor to wait for, it returns
- instantly and this must be handled gracefully within curl_easy_perform()
- or cause a busy-loop. Starting now, repeated fast returns without any
- file descriptors is detected and a gradually increasing sleep will be
- used (up to a max of 1000 milliseconds) before continuing the loop.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1238
- Reported-by: Miguel Angel
-
-- [YAMADA Yasuharu brought this change]
-
- cookies: follow-up fix for path checking
-
- The initial fix to only compare full path names were done in commit
- 04f52e9b4db0 but found out to be incomplete. This takes should make the
- change more complete and there's now two additional tests to verify
- (test 31 and 62).
-
-- [Sergei Nikulov brought this change]
-
- lib1900: use tutil_tvnow instead of gettimeofday
-
- Makes it build on windows
-
-- [Eric Hu brought this change]
-
- axtls: now done non-blocking
-
-- [Eric Hu brought this change]
-
- test2033: requires NTLM support
-
-- KNOWN_BUGS: #82 failed build with Borland compiler
-
-- Curl_output_digest: support auth-int for empty entity body
-
- By always returning the md5 for an empty body when auth-int is asked
- for, libcurl now at least sometimes does the right thing.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1235
- Patched-by: Nach M. S.
-
-- multi_socket: reduce timeout inaccuracy margin
-
- Allow less room for "triggered too early" mistakes by applications /
- timers on non-windows platforms. Starting now, we assume that a timeout
- call is never made earlier than 3 milliseconds before the actual
- timeout. This greatly improves timeout accuracy on Linux.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1228
- Reported-by: Hang Su
-
-- cert_stuff: avoid double free in the PKCS12 code
-
- In the pkcs12 code, we get a list of x509 records returned from
- PKCS12_parse but when iterating over the list and passing each to
- SSL_CTX_add_extra_chain_cert() we didn't also properly remove them from
- the "stack", which made them get freed twice (both in sk_X509_pop_free()
- and then later in SSL_CTX_free).
-
- This isn't really documented anywhere...
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1236
- Reported-by: Nikaiw
-
-- cert_stuff: remove code duplication in the pkcs12 logic
-
-- [Aleksey Tulinov brought this change]
-
- axtls: honor disabled VERIFYHOST
-
- When VERIFYHOST == 0, libcurl should let invalid certificates to pass.
-
-- [Peter Gal brought this change]
-
- curl_easy_setopt.3: HTTP header with no content
-
- Update the documentation on how to specify a HTTP header with no
- content.
-
-- RELEASE-NOTES: synced with 87cf677eca55
-
- Added 11 bugs and 7 contributors
-
-- lib1500: remove bad check
-
- After curl_multi_wait() returns, this test checked that we got exactly
- one file descriptor told to read from, but we cannot be sure that is
- true. curl_multi_wait() will sometimes return earlier without any file
- descriptor to handle, just just because it is a suitable time to call
- *perform().
-
- This problem showed up with commit 29bf0598.
-
- Bug: http://curl.haxx.se/mail/lib-2013-06/0029.html
- Reported-by: Fabian Keil
-
-- tests/Makefile: typo in the perlcheck target
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1239
- Reported-by: Christian Weisgerber
-
-- test1230: verify CONNECT to a numerical ipv6-address
-
-- sws: support extracting test number from CONNECT ipv6-address!
-
- If an ipv6-address is provided to CONNECT, the last hexadecimal group in
- the address will be used as the test number! For example the address
- "[1234::ff]" would be treated as test case 255.
-
-- curl_multi_wait: only use internal timer if not -1
-
- commit 29bf0598aad5 introduced a problem when the "internal" timeout is
- prefered to the given if shorter, as it didn't consider the case where
- -1 was returned. Now the internal timeout is only considered if not -1.
-
- Reported-by: Tor Arntsen
- Bug: http://curl.haxx.se/mail/lib-2013-06/0015.html
-
-Dan Fandrich (3 Jun 2013)
-- libcurl-tutorial.3: added a section on IPv6
-
- Also added a (correctly-escaped) backslash to the autoexec.bat
- example file and a new Windows character device name with
- a colon as examples of other characters that are special
- and potentially dangerous (this reverts and reworks commit
- 7d8d2a54).
-
-Daniel Stenberg (3 Jun 2013)
-- curl_multi_wait: reduce timeout if the multi handle wants to
-
- If the multi handle's pending timeout is less than what is passed into
- this function, it will now opt to use the shorter time anyway since it
- is a very good hint that the handle wants to process something in a
- shorter time than what otherwise would happen.
-
- curl_multi_wait.3 was updated accordingly to clarify
-
- This is the reason for bug #1224
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1224
- Reported-by: Andrii Moiseiev
-
-- multi_runsingle: switch an if() condition for readability
-
- ... because there's an identical check right next to it so using the
- operators in the check in the same order increases readability.
-
-Marc Hoersken (2 Jun 2013)
-- curl_schannel.c: Removed variable unused since 35874298e4
-
-- curl_setup.h: Fixed redefinition warning using mingw-w64
-
-Daniel Stenberg (30 May 2013)
-- multi_runsingle: add braces to clarify the code
-
-- libcurl-tutorial.3: remove incorrect backslash
-
- A single backslash in the content is not legal nroff syntax.
-
- Reported and fixed by: Eric S. Raymond
- Bug: http://curl.haxx.se/bug/view.cgi?id=1234
-
-- curl_formadd.3: fixed wrong "end-marker" syntax
-
- Reported and fixed by: Eric S. Raymond
- Bug: http://curl.haxx.se/bug/view.cgi?id=1233
-
-- curl.1: clarify that --silent still outputs data
-
-- Digest auth: escape user names with \ or " in them
-
- When sending the HTTP Authorization: header for digest, the user name
- needs to be escaped if it contains a double-quote or backslash.
-
- Test 1229 was added to verify
-
- Reported and fixed by: Nach M. S
- Bug: http://curl.haxx.se/bug/view.cgi?id=1230
-
-- [Mike Giancola brought this change]
-
- ossl_recv: SSL_read() returning 0 is an error too
-
- SSL_read can return 0 for "not successful", according to the open SSL
- documentation: http://www.openssl.org/docs/ssl/SSL_read.html
-
-- [Mike Giancola brought this change]
-
- ossl_send: SSL_write() returning 0 is an error too
-
- We found that in specific cases if the connection is abruptly closed,
- the underlying socket is listed in a close_wait state. We continue to
- call the curl_multi_perform, curl_mutli_fdset etc. None of these APIs
- report the socket closed / connection finished. Since we have cases
- where the multi connection is only used once, this can pose a problem
- for us. I've read that if another connection was to come in, curl would
- see the socket as bad and attempt to close it at that time -
- unfortunately, this does not work for us.
-
- I found that in specific situations, if SSL_write returns 0, curl did
- not recognize the socket as closed (or errored out) and did not report
- it to the application. I believe we need to change the code slightly, to
- check if ssl_write returns 0. If so, treat it as an error - the same as
- a negative return code.
-
- For OpenSSL - the ssl_write documentation is here:
- http://www.openssl.org/docs/ssl/SSL_write.html
-
-- KNOWN_BUGS: curl -OJC- fails to resume
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1169
-
-- Curl_cookie_add: handle IPv6 hosts
-
- 1 - don't skip host names with a colon in them in an attempt to bail out
- on HTTP headers in the cookie file parser. It was only a shortcut anyway
- and trying to parse a file with HTTP headers will still be handled, only
- slightly slower.
-
- 2 - don't skip domain names based on number of dots. The original
- netscape cookie spec had this oddity mentioned and while our code
- decreased the check to only check for two, the existing cookie spec has
- no such dot counting required.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1221
- Reported-by: Stefan Neis
-
-- curl_easy_setopt.3: expand the PROGRESSFUNCTION section
-
- Explain the callback and its arguments better and with more descriptive
- text.
-
-- tests: add test1394 file to the tarball
-
-- tarball: include the xmlstream example
-
-- [David Strauss brought this change]
-
- xmlstream: XML stream parsing example source code
-
- Add an XML stream parsing example using Expat. Add missing ignore for
- the binary from an unrelated example.
-
-- [YAMADA Yasuharu brought this change]
-
- cookies: only consider full path matches
-
- I found a bug which cURL sends cookies to the path not to aim at.
- For example:
- - cURL sends a request to http://example.fake/hoge/
- - server returns cookie which with path=/hoge;
- the point is there is NOT the '/' end of path string.
- - cURL sends a request to http://example.fake/hogege/ with the cookie.
-
- The reason for this old "feature" is because that behavior is what is
- described in the original netscape cookie spec:
- http://curl.haxx.se/rfc/cookie_spec.html
-
- The current cookie spec (RFC6265) clarifies the situation:
- http://tools.ietf.org/html/rfc6265#section-5.2.4
-
-- [Eric Hu brought this change]
-
- axtls: prevent memleaks on SSL handshake failures
-
-- Revert "WIN32 MemoryTracking: track wcsdup() _wcsdup() and _tcsdup() usage"
-
- This reverts commit 8ec2cb5544b86306b702484ea785b6b9596562ab.
-
- We don't have any code anywhere in libcurl (or the curl tool) that use
- wcsdup so there's no such memory use to track. It seems to cause mild
- problems with the Borland compiler though that we may avoid by reverting
- this change again.
-
- Bug: http://curl.haxx.se/mail/lib-2013-05/0070.html
-
-- RELEASE-NOTES: synced with ae26ee3489588f0
-
-Guenter Knauf (11 May 2013)
-- Updated zlib version in build files.
-
-Daniel Stenberg (9 May 2013)
-- [Renaud Guillard brought this change]
-
- OS X framework: fix invalid symbolic link
-
-Kamil Dudka (9 May 2013)
-- [Daniel Stenberg brought this change]
-
- nss: give PR_INTERVAL_NO_WAIT instead of -1 to PR_Recv/PR_Send
-
- Reported by: David Strauss
- Bug: http://curl.haxx.se/mail/lib-2013-05/0088.html
-
-Daniel Stenberg (8 May 2013)
-- libtest: gitignore more binary files
-
-- servercert: allow empty subject
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1220
- Patch by: John Gardiner Myers
-
-- [Steve Holme brought this change]
-
- tests: Added new SMTP tests to verify commit 99b40451836d
-
-- runtests.pl: support nonewline="yes" in client/stdin sections
-
-- build: fixed unit1394 for debug and metlink builds
-
-Kamil Dudka (6 May 2013)
-- unit1394.c: plug the curl tool unit test in
-
-- [Jared Jennings brought this change]
-
- unit1394.c: basis of a unit test for parse_cert_parameter()
-
-- src/Makefile.am: build static lib for unit tests if enabled
-
-- tool_getparam: ensure string termination in parse_cert_parameter()
-
-- tool_getparam: fix memleak in handling the -E option
-
-- tool_getparam: describe what parse_cert_parameter() does
-
- ... and de-duplicate the code initializing *passphrase
-
-- curl.1: document escape sequences recognized by -E
-
-- [Jared Jennings brought this change]
-
- curl -E: allow to escape ':' in cert nickname
-
-Marc Hoersken (5 May 2013)
-- curl_schannel.c: Fixed invalid memory access during SSL shutdown
-
-Steve Holme (4 May 2013)
-- smtp: Fix trailing whitespace warning
-
-- smtp: Fix compilation warning
-
- comparison between signed and unsigned integer expressions
-
-- RELEASE-NOTES: synced with 92ef5f19c801
-
-- smtp: Updated RFC-2821 references to RFC-5321
-
-- smtp: Fixed sending of double CRLF caused by first in EOB
-
- If the mail sent during the transfer contains a terminating <CRLF> then
- we should not send the first <CRLF> of the EOB as specified in RFC-5321.
-
- Additionally don't send the <CRLF> if there is "no mail data" as the
- DATA command already includes it.
-
-- tests: Corrected MAIL SIZE for CRLF line endings
-
- ... which was missed in commit: f5c3d9538452
-
-- tests: Corrected infilesize for CRLF line endings
-
- ... which was missed in commit: f5c3d9538452
-
-- tests: Corrected test1406 to be RFC2821 compliant
-
-- tests: Corrected test1320 to be RFC2821 compliant
-
-- tests: Corrected typo in test909
-
- Introduced in commit: 514817669e9e
-
-- tests: Corrected test909 to be RFC2821 compliant
-
-- tests: Updated test references to 909 from 1411
-
- ...and removed references to libcurl and test1406.
-
-- tests: Renamed test1411 to test909 as this is a main SMTP test
-
-Daniel Stenberg (1 May 2013)
-- [Lars Johannesen brought this change]
-
- bindlocal: move brace out of #ifdef
-
- The code within #ifdef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID wrongly had two
- closing braces when it should only have one, so builds without that
- define would fail.
-
- Bug: http://curl.haxx.se/mail/lib-2013-05/0000.html
-
-Steve Holme (30 Apr 2013)
-- smtp: Tidy up to move the eob counter to the per-request structure
-
- Move the eob counter from the smtp_conn structure to the SMTP structure
- as it is associated with a SMTP payload on a per-request basis.
-
-- TODO: Updated following the addition of CURLOPT_SASL_IR
-
-- smtp: Fixed unknown percentage complete in progress bar
-
- The curl command line utility would display the the completed progress
- bar with a percentage of zero as the progress routines didn't know the
- size of the transfer.
-
-Daniel Stenberg (29 Apr 2013)
-- ftpserver: silence warnings
-
- Fix regressions in commit b56e3d43e5d. Make @data local and filter off
- non-numerical digits from $testno in STATUS_imap.
-
-Steve Holme (29 Apr 2013)
-- ftpserver.pl: Corrected the imap LOGIN response
-
- ...to be more realistic and consistent with the other imap responses.
-
-- tests: Added imap STATUS command test
-
-- tests: Corrected the SMTP tests to be RFC2821 compliant
-
- The emails that are sent to the server during these tests were
- incorrectly formatted as they contained one or more LF terminated lines
- rather than being CRLF terminated as per Section 2.3.7 of RFC-2821.
-
- This wasn't a problem for the test suite as the <stdin> data matched the
- <upload> data but anyone using these tests as reference would be sending
- incorrect data to a server.
-
-- email: Tidy up of *_perform_authenticate()
-
- Removed the hard returns from imap and pop3 by using the same style for
- sending the authentication string as smtp. Moved the "Other mechanisms
- not supported" check in smtp to match that of imap and pop3 to provide
- consistency between the three email protocols.
-
-- smtp: Updated limit check to be more readable like the check in pop3
-
-- pop3: Added 255 octet limit check when sending initial response
-
- Added 255 octet limit check as per Section 4. Paragraph 8 of RFC-5034.
-
-- DOCS: Corrected line length of recent Secure Transport changes
-
-Nick Zitzmann (27 Apr 2013)
-- darwinssl: add TLS crypto authentication
-
- Users using the Secure Transport (darwinssl) back-end can now use a
- certificate and private key to authenticate with a site using TLS. Because
- Apple's security system is based around the keychain and does not have any
- non-public function to create a SecIdentityRef data structure from data
- loaded outside of the Keychain, the certificate and private key have to be
- loaded into the Keychain first (using the certtool command line tool or
- the Security framework's C API) before we can find it and use it.
-
-Steve Holme (27 Apr 2013)
-- Corrected version numbers after bump
-
-Daniel Stenberg (27 Apr 2013)
-- bump version
-
- Since we're adding new stuff, the next release will bump the minor
- version and we're looking forward to 7.31.0
-
-Steve Holme (27 Apr 2013)
-- RELEASE-NOTES: synced with f4e6e201b146
-
-- DOCS: Updated following the addition of CURLOPT_SASL_IR
-
- Documented the the option in curl_easy_setopt() and added it to
- symbols-in-versions.
-
-- tests: Corrected command line arguments in test907 and test908
-
-- tests: Added SMTP AUTH with initial response tests
-
-- tests: Updated SMTP tests to decouple client initial response
-
- Updated test903 and test904 following the addition of CURLOPT_SASL_IR
- as the default behaviour of SMTP AUTH responses is now to not include
- the initial response. New tests with --sasl-ir support to follow.
-
-- imap: Added support for overriding the SASL initial response
-
- In addition to checking for the SASL-IR capability the user can override
- the sending of the client's initial response in the AUTHENTICATION
- command with the use of CURLOPT_SASL_IR should the server erroneously
- not report SASL-IR when it does support it.
-
-- smtp: Added support for disabling the SASL initial response
-
- Updated the default behaviour of sending the client's initial response in the AUTH
- command to not send it and added support for CURLOPT_SASL_IR to allow the user to
- specify including the response.
-
- Related Bug: http://curl.haxx.se/mail/lib-2012-03/0114.html
- Reported-by: Gokhan Sengun
-
-- pop3: Added support for enabling the SASL initial response
-
- Allowed the user to specify whether to send the client's intial response
- in the AUTH command via CURLOPT_SASL_IR.
-
-- sasl-ir: Added --sasl-ir option to curl command line tool
-
-- sasl-ir: Added CURLOPT_SASL_IR to enable/disable the SASL initial response
-
-Daniel Stenberg (26 Apr 2013)
-- curl_easy_init: use less mallocs
-
- By introducing an internal alternative to curl_multi_init() that accepts
- parameters to set the hash sizes, easy handles will now use tiny socket
- and connection hash tables since it will only ever add a single easy
- handle to that multi handle.
-
- This decreased the number mallocs in test 40 (which is a rather simple
- and typical easy interface use case) from 1142 to 138. The maximum
- amount of memory allocated used went down from 118969 to 78805.
-
-Steve Holme (26 Apr 2013)
-- ftpserver.pl: Fixed imap logout confirmation data
-
- An IMAP server should response with the BYE continuation response before
- confirming the LOGOUT command was successful.
-
-Daniel Stenberg (26 Apr 2013)
-- ftp_state_pasv_resp: connect through proxy also when set by env
-
- When connecting back to an FTP server after having sent PASV/EPSV,
- libcurl sometimes didn't use the proxy properly even though the proxy
- was used for the initial connect.
-
- The function wrongly checked for the CURLOPT_PROXY variable to be set,
- which made it act wrongly if the proxy information was set with an
- environment variable.
-
- Added test case 711 to verify (based on 707 which uses --socks5). Also
- added test712 to verify another variation of setting the proxy: with
- --proxy socks5://
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1218
- Reported-by: Zekun Ni
-
-Kamil Dudka (26 Apr 2013)
-- [Zdenek Pavlas brought this change]
-
- url: initialize speed-check data for file:// protocol
-
- ... in order to prevent an artificial timeout event based on stale
- speed-check data from a previous network transfer. This commit fixes
- a regression caused by 9dd85bced56f6951107f69e581c872c1e7e3e58e.
-
- Bug: https://bugzilla.redhat.com/906031
-
-Daniel Stenberg (25 Apr 2013)
-- test709: clarify the test in the name
-
-- sshserver: disable StrictHostKeyChecking
-
- I couldn't figure out why the host key logic isn't working, but having
- it set to yes prevents my SSH-based test cases to run. I also don't see
- a strong need to use strict host key checking on this test server.
-
- So I disabled it.
-
-- runtests: log more commands in verbose mode
-
- ... to aid tracking down failures
-
-Steve Holme (25 Apr 2013)
-- TODO: Corrected copy/paste typo
-
-- TODO: Added new ideas for future SMTP, POP3 and IMAP features
-
-- TODO: Updated following the addition of ;auth=<MECH> support
-
-- DOCS: Minor rewording / clarification of host name protocol detection
-
-- RELEASE-NOTES: synced with a8c92cb60890
-
-- DOCS: Added reference to IETF draft for SMTP URL Interface
-
- ...when mentioning login options. Additional minor clarification of
- "Windows builds" to be "Windows builds with SSPI"as a way of enabling
- NTLM as Windows builds may be built with OpenSSL to enable NTLM or
- without NTLM support altogether.
-
-Linus Nielsen Feltzing (23 Apr 2013)
-- HISTORY: Fix spelling error.
-
-Steve Holme (23 Apr 2013)
-- DOCS: Reworked the scheme calculation explanation under CURLOPT_URL
-
-- url: Added smtp and pop3 hostnames to the protocol detection list
-
-Daniel Stenberg (23 Apr 2013)
-- HISTORY: correct some years/dates
-
- Thanks to archive.org's wayback machine I updated this document with
- some facts from the early httpget/urlget web page:
-
- http://web.archive.org/web/19980216125115/http://www.inf.ufrgs.br/~sagula/urlget.html
-
-- [Alessandro Ghedini brought this change]
-
- tests: add test1511 to check timecond clean-up
-
- Verifies the timecond fix in commit c49ed0b6c0f
-
-- [Alessandro Ghedini brought this change]
-
- getinfo.c: reset timecond when clearing session-info variables
-
- Bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=705783
- Reported-by: Ludovico Cavedon <cavedon@debian.org>
-
-Steve Holme (22 Apr 2013)
-- DOCS: Added information about login options to CURLOPT_USERPWD
-
-- DOCS: Added information about login options in the URL
-
-- url: Fixed missing length check in parse_proxy()
-
- Commit 11332577b3cb removed the length check that was performed by the
- old scanf() code.
-
-- url: Fixed crash when no username or password supplied for proxy
-
- Fixed an issue in parse_proxy(), introduced in commit 11332577b3cb,
- where an empty username or password (For example: http://:@example.com)
- would cause a crash.
-
-- url: Removed unused text length constants
-
-- url: Updated proxy URL parsing to use parse_login_details()
-
-- url: Tidy up of setstropt_userpwd() parameters
-
- Updated the naming convention of the login parameters to match those of
- other functions.
-
-- url: Tidy up of code and comments following recent changes
-
- Tidy up of variable names and comments in setstropt_userpwd() and
- parse_login_details().
-
-- url: Simplified setstropt_userpwd() following recent changes
-
- There is no need to perform separate clearing of data if a NULL option
- pointer is passed in. Instead this operation can be performed by simply
- not calling parse_login_details() and letting the rest of the code do
- the work.
-
-- url: Correction to scope of if statements when setting data
-
-- url: Fixed memory leak in setstropt_userpwd()
-
- setstropt_userpwd() was calling setstropt() in commit fddb7b44a79d to
- set each of the login details which would duplicate the strings and
- subsequently cause a memory leak.
-
-- RELEASE-NOTES: synced with d535c4a2e1f7
-
-- url: Added overriding of URL login options from CURLOPT_USERPWD
-
-- tool_paramhlp: Fixed options being included in username
-
- Fix to prevent the options from being displayed when curl requests the
- user's password if the following command line is specified:
-
- --user username;options
-
-- url: Added support for parsing login options from the CURLOPT_USERPWD
-
- In addition to parsing the optional login options from the URL, added
- support for parsing them from CURLOPT_USERPWD, to allow the following
- supported command line:
-
- --user username:password;options
-
-- url: Added bounds checking to parse_login_details()
-
- Added bounds checking when searching for the separator characters within
- the login string as this string may not be NULL terminated (For example
- it is the login part of a URL). We do this in preference to allocating a
- new string to copy the login details into which could then be passed to
- parse_login_details() for performance reasons.
-
-- url: Added size_t cast to pointer based length calculations
-
-- url: Corrected minor typo in comment
-
-Daniel Stenberg (18 Apr 2013)
-- CURL_CHECK_CA_BUNDLE: don't check for paths when cross-compiling
-
- When cross-compiling we can't scan and detect existing files or paths.
-
- Bug: http://curl.haxx.se/mail/lib-2013-04/0294.html
-
-- [Ishan SinghLevett brought this change]
-
- usercertinmem.c: add example showing user cert in memory
-
- Relies on CURLOPT_SSL_CTX_FUNCTION, which is OpenSSL specific
-
-Steve Holme (18 Apr 2013)
-- url: Fix chksrc longer than 79 columns warning
-
-- url: Fix incorrect variable type for result code
-
-- url: Fix compiler warning
-
- signed and unsigned type in conditional expression
-
-- url: Moved parsing of login details out of parse_url_login()
-
- Separated the parsing of login details from the processing of them in
- parse_url_login() ready for use by setstropt_userpwd().
-
-- url: Re-factored set_userpass() and parse_url_userpass()
-
- Re-factored these functions to reflect their new behaviour following the
- addition of login options.
-
-- url: Reworked URL parsing to allow overriding by CURLOPT_USERPWD
-
-Daniel Stenberg (18 Apr 2013)
-- maketgz: make bzip2 creation work with Parallel BZIP2 too
-
- Apparently the previous usage didn't work with that implementation,
- while this updated version works with at least both Parallel BZIP2
- v1.1.8 and regular bzip "Version 1.0.6, 6-Sept-2010".
-
-Linus Nielsen Feltzing (18 Apr 2013)
-- Add tests/http_pipe.py to the tarball build
-
-Steve Holme (16 Apr 2013)
-- smtp: Re-factored all perform based functions
-
- Standardised the naming of all perform based functions to be in the form
- smtp_perform_something().
-
-- smtp: Added description comments to all perform based functions
-
-- smtp: Moved smtp_quit() to be with the other perform functions
-
-- smtp: Moved smtp_rcpt_to() to be with the other perform functions
-
-- smtp: Moved smtp_mail() to be with the other perform functions
-
-Daniel Stenberg (16 Apr 2013)
-- [Wouter Van Rooy brought this change]
-
- curl-config: don't output static libs when they are disabled
-
- Curl-config outputs static libraries even when they are disabled in
- configure.
-
- This causes problems with the build of pycurl.
-
-- [Dave Reisner brought this change]
-
- docs/libcurl: fix formatting in manpage
-
- Commit c3ea3eb6 introduced some minor cosmetic errors in
- curl_mutli_socket_action(3).
-
-- [Paul Howarth brought this change]
-
- Add extra libs for lib1900 and lib2033 test programs
-
- These are needed in cases where clock_gettime is used, from librt.
-
-Dan Fandrich (15 Apr 2013)
-- FAQ: mention that the network connection can be monitored
-
- Also note the prohibition on sharing handles across threads.
-
-Steve Holme (15 Apr 2013)
-- pop3: Added missing comment for pop3_state_apop_resp()
-
-- smtp: Updated the coding style of smtp_state_servergreet_resp()
-
- Updated the coding style, in this function, to be consistant with other
- response functions rather then performing a hard return on failure.
-
-- pop3: Updated the coding style of pop3_state_servergreet_resp()
-
- Updated the coding style, in this function, to be consistent with other
- response functions rather then performing a hard return on failure.
-
-- pop3: Re-factored all perform based functions
-
- Standardised the naming of all perform based functions to be in the form
- pop3_perform_something() following the changes made to IMAP.
-
-- pop3: Added description comments to all perform based functions
-
-- pop3: Moved pop3_quit() to be with the other perform functions
-
-- pop3: Moved pop3_command() to be with the other perform functions
-
- Started to apply the same tidy up to the POP3 code as applied to the
- IMAP code in the 7.30.0 release.
-
-- RELEASE-NOTES: Removed erroneous spaces
-
-- RELEASE-NOTES: synced with 8723cade21fb
-
-- smtp: Added support for ;auth=<mech> in the URL
-
- Added support for specifying the preferred authentication mechanism in
- the URL as per Internet-Draft 'draft-earhart-url-smtp-00'.
-
-- pop3: Reworked authentication type constants
-
- ... to use left-shifted values, like those defined in curl.h, rather
- than 16-bit hexadecimal values.
-
-- pop3: Small consistency tidy up
-
-- pop3: Added support for ;auth=<mech> in the URL
-
- Added support for specifying the preferred authentication type and SASL
- mechanism in the URL as per RFC-2384.
-
-- imap: Added support for ;auth=<mech> in the URL
-
- Added support for specifying the preferred authentication mechanism in
- the URL as per RFC-5092.
-
-- sasl: Reworked SASL mechanism constants
-
- ... to use left-shifted values, like those defined in curl.h, rather
- than 16-bit hexadecimal values.
-
-- sasl: Added predefined preferred mechanism values
-
- In preparation for the upcoming changes to IMAP, POP3 and SMTP added
- preferred mechanism values.
-
-- url: Added support for parsing login options from the URL
-
- As well as parsing the username and password from the URL, added support
- for parsing the optional options part from the login details, to allow
- the following supported URL format:
-
- schema://username:password;options@example.com/path?q=foobar
-
- This will only be used by IMAP, POP3 and SMTP at present but any
- protocol that may be given login options in the URL will be able to
- add support for them.
-
-- smtp: Fix compiler warning
-
- warning: unused variable 'smtp' introduced in commit 73cbd21b5ee6.
-
-- smtp: Moved parsing of url path into separate function
-
-Daniel Stenberg (12 Apr 2013)
-- FTP: handle a 230 welcome response
-
- ...instead of the 220 we otherwise expect.
-
- Made the ftpserver.pl support sending a custom "welcome" and then
- created test 1219 to verify this fix with such a 230 welcome.
-
- Bug: http://curl.haxx.se/mail/lib-2013-02/0102.html
- Reported by: Anders Havn
-
-- configure: try pthread_create without -lpthread
-
- For libc variants without a spearate pthread lib (like bionic), try
- using pthreads without the pthreads lib first and only if that fails try
- the -lpthread linker flag.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1216
- Reported by: Duncan
-
-- FTP: access files in root dir correctly
-
- Accessing a file with an absolute path in the root dir but with no
- directory specified was not handled correctly. This fix comes with four
- new test cases that verify it.
-
- Bug: http://curl.haxx.se/mail/lib-2013-04/0142.html
- Reported by: Sam Deane
-
-Steve Holme (12 Apr 2013)
-- pop3: Reworked the function description for Curl_pop3_write()
-
-- pop3: Added function description to pop3_parse_custom_request()
-
-- pop3: Moved utility functions to end of pop3.c
-
-Nick Zitzmann (12 Apr 2013)
-- darwinssl: add TLS session resumption
-
- This ought to speed up additional TLS handshakes, at least in theory.
-
-Steve Holme (12 Apr 2013)
-- imap: Added function description to imap_parse_custom_request()
-
-- imap: Moved utility functions to end of imap.c (Part 3/3)
-
- Moved imap_is_bchar() be with the other utility based functions.
-
-- imap: Moved utility functions to end of imap.c (Part 2/3)
-
- Moved imap_parse_url_path() and imap_parse_custom_request() to the end of the
- file allowing all utility functions to be grouped together.
-
-- imap: Moved utility functions to end of imap.c (Part 1/3)
-
- Moved imap_atom() and imap_sendf() to the end of the file allowing all
- utility functions to be grouped together.
-
-- imap: Corrected function description for imap_connect()
-
-Kamil Dudka (12 Apr 2013)
-- tests: prevent test206, test1060, and test1061 from failing
-
- ... in case runtests.pl is invoked with non-default -b option
-
- Fixes a regression caused by 1e29d275c643ef6aab7948f0f55a7a9397e56b42.
-
-Daniel Stenberg (12 Apr 2013)
-- [David Strauss brought this change]
-
- libcurl-share.3: update what it does and does not share.
-
- Update sharing interface documentation to provide exhaustive list of
- what it does and does not share.
-
-- THANKS: remove duplicated names
-
-- bump: start working towards next release
-
-- THANKS: added people from the 7.30.0 RELEASE-NOTES
-
-Version 7.30.0 (12 Apr 2013)
-
-Daniel Stenberg (12 Apr 2013)
-- RELEASE-NOTES: cleaned up for 7.30 (synced with 5c5e1a1cd20)
-
- Most notable the security advisory:
- http://curl.haxx.se/docs/adv_20130412.html
-
-- test1218: another cookie tailmatch test
-
- ... and make 1216 also verify it with a file input
-
- These tests verify commit 3604fde3d3c9b0d, the fix for the "cookie
- domain tailmatch" vulnerability. See
- http://curl.haxx.se/docs/adv_20130412.html
-
-- [YAMADA Yasuharu brought this change]
-
- cookie: fix tailmatching to prevent cross-domain leakage
-
- Cookies set for 'example.com' could accidentaly also be sent by libcurl
- to the 'bexample.com' (ie with a prefix to the first domain name).
-
- This is a security vulnerabilty, CVE-2013-1944.
-
- Bug: http://curl.haxx.se/docs/adv_20130412.html
-
-Guenter Knauf (11 Apr 2013)
-- Enabled MinGW sync resolver builds.
-
-Yang Tse (10 Apr 2013)
-- if2ip.c: fix compiler warning
-
-Guenter Knauf (10 Apr 2013)
-- Fixed lost OpenSSL output with "-t" - followup.
-
- The previously applied patch didnt work on Windows; we cant rely
- on shell commands like 'echo' since they act diffently on each
- platform and each shell.
- In order to keep this script platform-independent the code must
- only use pure Perl.
-
-Daniel Stenberg (9 Apr 2013)
-- test1217: verify parsing 257 responses with "rubbish" before path
-
- Test 1217 verifies commit e0fb2d86c9f78, and without that change this
- test fails.
-
-- [Bill Middlecamp brought this change]
-
- FTP: handle "rubbish" in front of directory name in 257 responses
-
- When doing PWD, there's a 257 response which apparently some servers
- prefix with a comment before the path instead of after it as is
- otherwise the norm.
-
- Failing to parse this, several otherwise legitimate use cases break.
-
- Bug: http://curl.haxx.se/mail/lib-2013-04/0113.html
-
-Guenter Knauf (9 Apr 2013)
-- Fixed ares-enabled builds with static makefiles.
-
-- Fixed lost OpenSSL output with "-t".
-
- The OpenSSL pipe wrote to the final CA bundle file, but the encoded PEM
- output wrote to a temporary file. Consequently, the OpenSSL output was
- lost when the temp file was renamed to the final file at script finish
- (overwriting the final file written earlier by openssl).
- Patch posted to the list by Richard Michael (rmichael edgeofthenet org).
-
-Daniel Stenberg (9 Apr 2013)
-- test1216: test tailmatching cookie domains
-
- This test is an attempt to repeat the problem YAMADA Yasuharu reported
- at http://curl.haxx.se/mail/lib-2013-04/0108.html
-
-- RELEASe-NOTES: synced with 29fdb2700f797
-
- added "tcpkeepalive on Mac OS X"
-
-Nick Zitzmann (8 Apr 2013)
-- darwinssl: disable insecure ciphers by default
-
- I noticed that aria2's SecureTransport code disables insecure ciphers such
- as NULL, anonymous, IDEA, and weak-key ciphers used by SSLv3 and later.
- That's a good idea, and now we do the same thing in order to prevent curl
- from accessing a "secure" site that only negotiates insecure ciphersuites.
-
-Daniel Stenberg (8 Apr 2013)
-- [Robert Wruck brought this change]
-
- tcpkeepalive: Support CURLOPT_TCP_KEEPIDLE on OSX
-
- MacOS X doesn't have TCP_KEEPIDLE/TCP_KEEPINTVL but only a single
- TCP_KEEPALIVE (see
- http://developer.apple.com/library/mac/#DOCUMENTATION/Darwin/Reference/ManPages/man4/tcp.4.html).
- Here is a patch for CURLOPT_TCP_KEEPIDLE on OSX platforms.
-
-- configure: remove CURL_CHECK_FUNC_RECVFROM
-
- 1 - We don't use the results from the test and we never did. recvfrom()
- is only used by the TFTP code and it has not caused any problems.
-
- 2 - the CURL_CHECK_FUNC_RECVFROM function is extremely slow
-
-Steve Holme (8 Apr 2013)
-- RELEASE-NOTES: Corrected duplicate NTLM memory leaks
-
-- RELEASE-NOTES: Removed trailing full stop
-
-Daniel Stenberg (8 Apr 2013)
-- [Fabian Keil brought this change]
-
- proxy: make ConnectionExists() check credential of proxyconnections too
-
- Previously it only compared credentials if the requested needle
- connection wasn't using a proxy. This caused NTLM authentication
- failures when using proxies as the authentication code wasn't send on
- the connection where the challenge arrived.
-
- Added test 1215 to verify: NTLM server authentication through a proxy
- (This is a modified copy of test 67)
-
-- RELEASE-NOTES: sync with 704a5dfca9
-
-- TODO-RELEASE: cleaned up, not really maintained lately
-
-Marc Hoersken (7 Apr 2013)
-- if2ip.c: Fixed another warning: unused parameter 'remote_scope'
-
-Daniel Stenberg (7 Apr 2013)
-- [Marc Hoersken brought this change]
-
- cookie.c: Made cookie sort function more deterministic
-
- Since qsort implementations vary with regards to handling the order
- of similiar elements, this change makes the internal sort function
- more deterministic by comparing path length first, then domain length
- and finally the cookie name. Spotted with testcase 62 on Windows.
-
-Marc Hoersken (7 Apr 2013)
-- curl_schannel.c: Follow up on memory leak fix ae4558d
-
-- Revert "getpart.pm: Strip carriage returns to fix Windows support"
-
- This reverts commit e51b23c925a2721cf7c29b2b376d3d8903cfb067.
- As discussed on the mailinglist, this was not the correct approach.
-
-- http_negotiate.c: Fixed passing argument from incompatible pointer type
-
-- ftp.c: Added missing brackets around ABOR command logic
-
-- sockfilt.c: Fixed detection of client-side connection close
-
- WINSOCK only:
- Since FD_CLOSE is only signaled once, it may trigger at the same
- time as FD_READ. Data actually being available makes it impossible
- to detect that the connection was closed by checking that recv returns
- zero. Another recv attempt could block the connection if it was
- not closed. This workaround abuses exceptfds in conjunction with
- readfds to signal that the connection has actually closed.
-
-- curl_schannel.c: Fixed memory leak if connection was not successful
-
-- if2ip.c: Fixed warning: unused parameter 'remote_scope'
-
-- runtests.pl: Fixed --verbose parameter passed to http_pipe.py
-
-- sockfilt.c: Reduce CPU load while running under a Windows PIPE
-
-- tftpd.c: Apply sread timeout to the whole data transfer session
-
-- getpart.pm: Strip carriage returns to fix Windows support
-
-Daniel Stenberg (6 Apr 2013)
-- ftp tests: libcurl returns CURLE_FTP_ACCEPT_FAILED better now
-
- Since commit 57aeabcc1a20f, it handles errors on the control connection
- while waiting for the data connection better.
-
- Test 591 and 592 are updated accordingly.
-
-- FTP: wait on both connections during active STOR state
-
- When doing PORT and upload (STOR), this function needs to extract the
- file descriptor for both connections so that it will respond immediately
- when the server eventually connects back.
-
- This flaw caused active connections to become unnecessary slow but they
- would still often work due to the normal polling on a timeout. The bug
- also would not occur if the server connected back very fast, like when
- testing on local networks.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1183
- Reported by: Daniel Theron
-
-Marc Hoersken (6 Apr 2013)
-- tftpd.c: Follow up cleanup and restore of previous sockopt
-
-Daniel Stenberg (6 Apr 2013)
-- [Kim Vandry brought this change]
-
- connect: treat an interface bindlocal() problem as a non-fatal error
-
- I am using curl_easy_setopt(CURLOPT_INTERFACE, "if!something") to force
- transfers to use a particular interface but the transfer fails with
- CURLE_INTERFACE_FAILED, "Failed binding local connection end" if the
- interface I specify has no IPv6 address. The cause is as follows:
-
- The remote hostname resolves successfully and has an IPv6 address and an
- IPv4 address.
-
- cURL attempts to connect to the IPv6 address first.
-
- bindlocal (in lib/connect.c) fails because Curl_if2ip cannot find an
- IPv6 address on the interface.
-
- This is a fatal error in singleipconnect()
-
- This change will make cURL try the next IP address in the list.
-
- Also included are two changes related to IPv6 address scope:
-
- - Filter the choice of address in Curl_if2ip to only consider addresses
- with the same scope ID as the connection address (mismatched scope for
- local and remote address does not result in a working connection).
-
- - bindlocal was ignoring the scope ID of addresses returned by
- Curl_if2ip . Now it uses them.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1189
-
-Marc Hoersken (6 Apr 2013)
-- tftpd.c: Fixed sread timeout on Windows by setting it manually
-
-- ftp.pm: Added tskill to support Windows XP Home
-
-- runtests.pl: Modularization of MinGW/Msys compatibility functions
-
-- ftp.pm: Made Perl testsuite able to handle Windows processes
-
-- util.c: Revert workaround eeefcdf, 6eb56e7 and e3787e8
-
-- ftp.pm: Made Perl testsuite able to kill Windows processes
-
-- util.c: Follow up cleanup on eeefcdf
-
-Daniel Stenberg (6 Apr 2013)
-- cpp: use #ifdef __MINGW32__ to avoid compiler complaints
-
- ... instead of just #if
-
-Marc Hoersken (6 Apr 2013)
-- util.c: Made write_pidfile write the correct PID on MinGW/Msys
-
- This workaround fixes an issue on MinGW/Msys regarding the Perl
- testsuite scripts not being able to signal or control the server
- processes. The MinGW Perl runtime only sees the Msys processes and
- their corresponding PIDs, but sockfilt (and other servers) wrote the
- Windows PID into their PID-files. Since this PID is useless to the
- testsuite, the write_pidfile function was changed to search for the
- Msys PID and write that into the PID-file.
-
-Daniel Stenberg (5 Apr 2013)
-- RELEASE-NOTES: synced with 5e722b2d09087
-
- 3 more bug fixes, 6 more contributors
-
-Marc Hoersken (5 Apr 2013)
-- sockfilt.c: Fixed handling of multiple fds being signaled
-
-Kamil Dudka (5 Apr 2013)
-- curl_global_init.3: improve description of CURL_GLOBAL_ALL
-
- Reported by: Tomas Mlcoch
-
-- examples/multi-single.c: fix the order of destructions
-
- ... so that it adheres to the API documentation.
-
- Reported by: Tomas Mlcoch
-
-Daniel Stenberg (5 Apr 2013)
-- Curl_open: restore default MAXCONNECTS to 5
-
- At some point recently we lost the default value for the easy handle's
- connection cache, and this change puts it back to 5 - which is the
- former default value and it is documented in the curl_easy_setopt.3 man
- page.
-
-Marc Hoersken (4 Apr 2013)
-- sockfilt.c: Added wrapper functions to fix Windows console issues
-
- The new read and write wrapper functions support reading from stdin
- and writing to stdout/stderr on Windows by using the appropriate
- Windows API functions and data types.
-
-Yang Tse (4 Apr 2013)
-- lib1509.c: fix compiler warnings
-
-- easy.c: fix compiler warning
-
-Daniel Stenberg (4 Apr 2013)
-- --engine: spellfix the help message
-
- Reported by: Fredrik Thulin
-
-Yang Tse (4 Apr 2013)
-- http_negotiate.c: follow-up for commit 3dcc1a9c
-
-Linus Nielsen Feltzing (4 Apr 2013)
-- easy: Fix the broken CURLOPT_MAXCONNECTS option
-
- Copy the CURLOPT_MAXCONNECTS option to CURLMOPT_MAXCONNECTS in
- curl_easy_perform().
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1212
- Reported-by: Steven Gu
-
-Guenter Knauf (4 Apr 2013)
-- Updated copyright date.
-
-- Another small output fix for --help and --version.
-
-Yang Tse (4 Apr 2013)
-- http_negotiate.c: fix several SPNEGO memory handling issues
-
-Guenter Knauf (4 Apr 2013)
-- Added a cont to specify base64 line wrap.
-
-- Fixed version output.
-
-- Added support for --help and --version options.
-
-- Added option to specify length of base64 output.
-
- Based on a patch posted to the list by Richard Michael.
-
-Daniel Stenberg (3 Apr 2013)
-- curl_easy_setopt.3: CURLOPT_HTTPGET disables CURLOPT_UPLOAD
-
-- [Yasuharu Yamada brought this change]
-
- Curl_cookie_add: only increase numcookies for new cookies
-
- Count up numcookies in Curl_cookie_add() only when cookie is new one
-
-- SO_SNDBUF: don't set SNDBUF for win32 versions vista or later
-
- The Microsoft knowledge-base article
- http://support.microsoft.com/kb/823764 describes how to use SNDBUF to
- overcome a performance shortcoming in winsock, but it doesn't apply to
- Windows Vista and later versions. If the described SNDBUF magic is
- applied when running on those more recent Windows versions, it seems to
- instead have the reversed effect in many cases and thus make libcurl
- perform less good on those systems.
-
- This fix thus adds a run-time version-check that does the SNDBUF magic
- conditionally depending if it is deemed necessary or not.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1188
- Reported by: Andrew Kurushin
- Tested by: Christian Hägele
-
-Nick Zitzmann (1 Apr 2013)
-- darwinssl: additional descriptive messages of SSL handshake errors
-
- (This doesn't need to appear in the release notes.)
-
-Guenter Knauf (1 Apr 2013)
-- Added dns and connect time to output.
-
-Daniel Stenberg (1 Apr 2013)
-- RELEASE-NOTES: synced with 0614b902136
-
-- code-policed
-
-- tcpkeepalive: support TCP_KEEPIDLE/TCP_KEEPINTVL on win32
-
- Patch by: Robert Wruck
- Bug: http://curl.haxx.se/bug/view.cgi?id=1209
-
-- BINDINGS: BBHTTP is a cocoa binding, Julia has a binding
-
-- ftp_sendquote: use PPSENDF, not FTPSENDF
-
- The last remaining code piece that still used FTPSENDF now uses PPSENDF.
- In the problematic case, a PREQUOTE series was done on a re-used
- connection when Curl_pp_init() hadn't been called so it had messed up
- pointers. The init call is done properly from Curl_pp_sendf() so this
- change fixes this particular crash.
-
- Bug: http://curl.haxx.se/mail/lib-2013-03/0319.html
- Reported by: Sam Deane
-
-Steve Holme (27 Mar 2013)
-- RELEASE-NOTES: Corrected typo
-
-Daniel Stenberg (27 Mar 2013)
-- [Clemens Gruber brought this change]
-
- multi-uv.c: remove unused variable
-
-- RELEASE-NOTES: add two references
-
-- test1509: verify proxy header response headers count
-
- Modified sws to support and use custom CONNECT responses instead of the
- previously naive hard-coded version. Made the HTTP test server able to
- extract test case number from the host name in a CONNECT request by
- finding the number after the last dot. It makes 'machine.moo.123' use
- test case 123.
-
- Adapted a larger amount of tests to the new <connect> style.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1204
- Reported by: Martin Jansen
-
-- [Clemens Gruber brought this change]
-
- Added libuv example multi-uv.c
-
-Yang Tse (25 Mar 2013)
-- NTLM: fix several NTLM code paths memory leaks
-
-- WIN32 MemoryTracking: track wcsdup() _wcsdup() and _tcsdup() usage
-
- As of 25-mar-2013 wcsdup() _wcsdup() and _tcsdup() are only used in
- WIN32 specific code, so tracking of these has not been extended for
- other build targets. Without this fix, memory tracking system on
- WIN32 builds, when using these functions, would provide misleading
- results.
-
- In order to properly extend this support for all targets curl.h
- would have to define curl_wcsdup_callback prototype and consequently
- wchar_t should be visible before that in curl.h. IOW curl_wchar_t
- defined in curlbuild.h and this pulling whatever system header is
- required to get wchar_t definition.
-
- Additionally a new curl_global_init_mem() function that also receives
- user defined wcsdup() callback would be required.
-
-- curl_ntlm_msgs.c: revert commit 463082bea4
-
- reverts unreleased invalid memory leak fix
-
-Daniel Stenberg (23 Mar 2013)
-- RELEASE-NOTES: synced with bc6037ed3ec02
-
- More changes, bugfixes and contributors!
-
-- [Martin Jansen brought this change]
-
- Curl_proxyCONNECT: count received headers
-
- Proxy servers tend to add their own headers at the beginning of
- responses. The size of these headers was not taken into account by
- CURLINFO_HEADER_SIZE before this change.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1204
-
-Steve Holme (21 Mar 2013)
-- sasl: Corrected a few violations of the curl coding standards
-
- Corrected some incorrectly positioned pointer variable declarations to
- be "char *" rather than "char* ".
-
-- multi.c: Corrected a couple of violations of the curl coding standards
-
- Corrected some incorrectly positioned pointer variable declarations to
- be "type *" rather than "type* ".
-
-- imap-tests: Added CRLF to reply data to be compliant with RFC-822
-
- Updated the reply data in tests: 800, 801, 802, 804 and 1321 to possess
- the CRLF as per RFC-822.
-
-- multi.c: Fix compilation warning
-
- warning: an enumerated type is mixed with another type
-
-- multi.c: fix compilation error
-
- warning: conversion from enumeration type to different enumeration type
-
-- lib1900.c: fix compilation warning
-
- warning: declaration of 'time' shadows a global declaration
-
-Yang Tse (20 Mar 2013)
-- [John E. Malmberg brought this change]
-
- build_vms.com: use existing curlbuild.h and parsing fix
-
- This patch removes building curlbuild.h from the build_vms.com procedure
- and uses the one in the daily or release tarball instead.
-
- packages/vms/build_curlbuild_h.com is obsolete with this change.
-
- Accessing the library module name "tool_main" needs different handling
- when the optional extended parsing is enabled.
-
- Tested on IA64/VMS 8.4 and VAX/VMS 7.3
-
-Nick Zitzmann (19 Mar 2013)
-- darwinssl: disable ECC ciphers under Mountain Lion by default
-
- I found out that ECC doesn't work as of OS X 10.8.3, so those ciphers are
- turned off until the next point release of OS X.
-
-Steve Holme (18 Mar 2013)
-- FEATURES: Small tidy up for constancy and grammar
-
-Daniel Stenberg (18 Mar 2013)
-- [Oliver Schindler brought this change]
-
- Curl_proxyCONNECT: clear 'rewindaftersend' on success
-
- After having done a POST over a CONNECT request, the 'rewindaftersend'
- boolean could be holding the previous value which could lead to badness.
-
- This should be tested for in a new test case!
-
- Bug: https://groups.google.com/d/msg/msysgit/B31LNftR4BI/KhRTz0iuGmUJ
-
-Steve Holme (18 Mar 2013)
-- TODO: Reordered the protocol and security sections
-
- Moved SMTP, POP3, IMAP and New Protocol sections to be listed after the
- other protocols (FTP, HTTP and TELNET) and SASL to be after SSL and
- GnuTLS as these are all security related.
-
- Additionally fixed numbering of the SSL and GnuTLS sections as they
- weren't consecutive.
-
-Yang Tse (18 Mar 2013)
-- tests: specify 'text' mode for some output files in verify section
-
-Steve Holme (17 Mar 2013)
-- imap: Fixed incorrect initial response generation for SASL AUTHENTICATE
-
- Fixed incorrect initial response generation for the NTLM and LOGIN SASL
- authentication mechanisms when the SASL-IR was detected.
-
- Introduced in commit: 6da7dc026c14.
-
-- FEATURES: Expanded the supported enhanced IMAP command list
-
-- TODO: Corrected typo in TOC
-
-- TODO: Added IMAP section and removed unused Other protocols section
-
-- TODO: Added graceful base64 decoding failure to SMTP and POP3
-
-- TODO: Corrected typo on section 10.2 heading
-
-Yang Tse (16 Mar 2013)
-- tests: 96, 558, 1330: strip build subdirectory dependent leading path
-
-Steve Holme (15 Mar 2013)
-- TODO: Added section 10.2 Initial response to POP3 to do list
-
-- imap-tests: Corrected copy/paste error in test808 reply data
-
-Yang Tse (15 Mar 2013)
-- unit1330.c: fix date
-
-- tests: add #96 #558 and #1330
-
- These verfy that the 'memory tracking' subsystem is actually doing its
- job when using curl tool (#96), a test in libtest (#558) and also a unit
- test (#1330), in order to prevent regressions in this functionallity.
-
-Steve Holme (15 Mar 2013)
-- imap-tests: Added test808 for custom EXAMINE command
-
-Daniel Stenberg (15 Mar 2013)
-- HTTP proxy: insert slash in URL if missing
-
- curl has been accepting URLs using slightly wrong syntax for a long
- time, such as when completely missing as slash "http://example.org" or
- missing a slash when a query part is given
- "http://example.org?q=foobar".
-
- curl would translate these into a legitimate HTTP request to servers,
- although as was shown in bug #1206 it was not adjusted properly in the
- cases where a HTTP proxy was used.
-
- Test 1213 and 1214 were added to the test suite to verify this fix.
-
- The test HTTP server was adjusted to allow us to specify test number in
- the host name only without using any slashes in a given URL.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1206
- Reported by: ScottJi
-
-Steve Holme (14 Mar 2013)
-- ftpserver.pl: Added EXAMINE_imap() for IMAP EXAMINE commands
-
- Used hard coded data from RFC-3501 section 6.3.2.
-
-Yang Tse (14 Mar 2013)
-- curl_memory.h: introduce CURLX_NO_MEMORY_CALLBACKS usage possibility
-
- This commit alone does not fix anything nor modifies existing
- interfaces or behaviors, although it is a prerequisite for other
- fixes.
-
-- Makefile.vc6: add missing files
-
-Linus Nielsen Feltzing (14 Mar 2013)
-- pipelining: Remove dead code.
-
-- Multiple pipelines and limiting the number of connections.
-
- Introducing a number of options to the multi interface that
- allows for multiple pipelines to the same host, in order to
- optimize the balance between the penalty for opening new
- connections and the potential pipelining latency.
-
- Two new options for limiting the number of connections:
-
- CURLMOPT_MAX_HOST_CONNECTIONS - Limits the number of running connections
- to the same host. When adding a handle that exceeds this limit,
- that handle will be put in a pending state until another handle is
- finished, so we can reuse the connection.
-
- CURLMOPT_MAX_TOTAL_CONNECTIONS - Limits the number of connections in total.
- When adding a handle that exceeds this limit,
- that handle will be put in a pending state until another handle is
- finished. The free connection will then be reused, if possible, or
- closed if the pending handle can't reuse it.
-
- Several new options for pipelining:
-
- CURLMOPT_MAX_PIPELINE_LENGTH - Limits the pipeling length. If a
- pipeline is "full" when a connection is to be reused, a new connection
- will be opened if the CURLMOPT_MAX_xxx_CONNECTIONS limits allow it.
- If not, the handle will be put in a pending state until a connection is
- ready (either free or a pipe got shorter).
-
- CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE - A pipelined connection will not
- be reused if it is currently processing a transfer with a content
- length that is larger than this.
-
- CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE - A pipelined connection will not
- be reused if it is currently processing a chunk larger than this.
-
- CURLMOPT_PIPELINING_SITE_BL - A blacklist of hosts that don't allow
- pipelining.
-
- CURLMOPT_PIPELINING_SERVER_BL - A blacklist of server types that don't allow
- pipelining.
-
- See the curl_multi_setopt() man page for details.
-
-Yang Tse (13 Mar 2013)
-- tool_main.c: remove redundant vms_show storage-class specifier
-
- vms_show 'extern' storage-class specifier removed from tool_main.c due to...
-
- - Advice from Tor Arntsen: http://curl.haxx.se/mail/lib-2013-03/0164.html
-
- - HP OpenVMS docs stating that 'Extern is the default storage class for
- variables declared outside a function.'
- http://h71000.www7.hp.com/commercial/c/docs/dec_c_help_5.html
- (Storage_Classes section)
-
-- test509: libcurl initialization with memory callbacks and actual usage
-
-Steve Holme (13 Mar 2013)
-- pop3: Removed unnecessary transfer cancellation
-
- Following commit e450f66a02d8 and the changes in the multi interface
- being used internally, from 7.29.0, the transfer cancellation in
- pop3_dophase_done() is no longer required.
-
-Yang Tse (13 Mar 2013)
-- Makefile.am: add VMS files not being included in tarball
-
-- [Tom Grace brought this change]
-
- build_vms.com: VMS build fixes
-
- Added missing slash in cc_full_list.
- Removed unwanted extra quotes inside symbol tool_main
- for non-VAX architectures that triggered link failure.
- Replaced curl_sys_inc with sys_inc.
-
-- [Tom Grace brought this change]
-
- tool_main.c: fix VMS global variable storage-class specifier
-
- An extern submits a psect and a global reference to the linker to point
- to it. Using "extern int vms_show = 0" also creates a globaldef.
-
- The use of the extern by itself does declare a psect but does not declare
- a globalsymbol. It does declare a globalref. But the linker needs one and
- only one globaldef or there is an error.
-
-Patrick Monnerat (12 Mar 2013)
-- OS400: synchronize RPG binding
-
-Steve Holme (12 Mar 2013)
-- pop3: Fixed continuous wait when using --ftp-list
-
- Don't initiate a transfer when using --ftp-list.
-
-Kamil Dudka (12 Mar 2013)
-- [Zdenek Pavlas brought this change]
-
- curl_global_init: accept the CURL_GLOBAL_ACK_EINTR flag
-
- The flag can be used in pycurl-based applications where using the multi
- interface would not be acceptable because of the performance lost caused
- by implementing the select() loop in python.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1168
- Downstream Bug: https://bugzilla.redhat.com/919127
-
-- easy: do not ignore poll() failures other than EINTR
-
-Yang Tse (12 Mar 2013)
-- curl.h: stricter CURL_EXTERN linkage decorations logic
-
- No API change involved.
-
- Info: http://curl.haxx.se/mail/lib-2013-02/0234.html
-
-Daniel Stenberg (11 Mar 2013)
-- THANKS: Latin-1'ified Jiri's name
-
-Steve Holme (11 Mar 2013)
-- test806: Added CRLF to reply data to be compliant with RFC-822
-
-Daniel Stenberg (11 Mar 2013)
-- test805: added crlf newlines to make data size match
-
- since mails sent are supposed to have CRLF line endings I added them and
- now the data size after (\Seen) matches again properly
-
-- test: fix newline for the data check of 807
-
-Yang Tse (11 Mar 2013)
-- test801 to test807: fix protocol section line endings
-
-Steve Holme (10 Mar 2013)
-- Makefile.am: Corrected a couple of spurious tab characters
-
- Corrected a couple of tab characters between test702 and test703, and
- between test900 and test901 which should be spaces.
-
-- [Jiri Hruska brought this change]
-
- imap: Added test807 for custom request functionality (STORE)
-
-- [Jiri Hruska brought this change]
-
- imap: Added test806 for IMAP (folder) LIST command
-
-- [Jiri Hruska brought this change]
-
- imap: Added test805 for APPEND functionality
-
-- [Jiri Hruska brought this change]
-
- imap: Added test804 for skipping SELECT if in the same mailbox
-
-- [Jiri Hruska brought this change]
-
- imap: Added test802 and test803 for UIDVALIDITY verification
-
- Added one test for a request with matching UIDVALIDITY and one which is
- a mismatched request that will fail.
-
-- [Jiri Hruska brought this change]
-
- imap: Added test801 for UID and SECTION URL parameters
-
-- [Jiri Hruska brought this change]
-
- imap-tests: Accept quoted parameters in ftpserver.pl
-
- Any IMAP parameter can come in escaped and in double quotes. Added a
- simple function to unquote the command parameters and applied it to
- the IMAP command handlers.
-
-- [Jiri Hruska brought this change]
-
- tests: Fix ftpserver.pl indentation
-
- The whole of FETCH_imap() had one extra space of indentation, whilst
- APPEND_imap() used indentation of 2 instead of 4 in places.
-
-- Makefile.am: Corrected end of line filler character
-
- The majority of lines, that specify a test file for inclusion, end with
- a tab character before the slash whilst some end with a space. Corrected
- those that end with a space to end with a tab character as well.
-
-- email-tests: Updated the test data that corresponds to the test number
-
- Finished segregating the email protocol tests, into their own protocol
- based ranges, in preparation of adding more e-mail related tests to the
- test suite.
-
-- email-tests: Renamed the IMAP test to be 800
-
- Continued segregating the email protocol tests, into their own protocol
- based ranges, in preparation of adding more e-mail related tests to the
- test suite.
-
-- email-tests: Renamed the SMTP tests to be in the range 900-906
-
- Continued segregating the email protocol tests, into their own protocol
- based ranges, in preparation of adding more e-mail related tests to the
- test suite.
-
-- email-tests: Renamed the POP3 tests to be in the range 850-857
-
- Started segregating the email protocol tests, into their own protocol
- based ranges, in preparation of adding more e-mail related tests to the
- test suite.
-
-Daniel Stenberg (10 Mar 2013)
-- hiperfifo: updated to use current libevent API
-
- Patch by: Myk Taylor
-
-Steve Holme (10 Mar 2013)
-- imap: Reworked some function descriptions
-
-- imap: Added some missing comments to imap_sendf()
-
-- email: Removed hard returns from init functions
-
-Daniel Stenberg (9 Mar 2013)
-- curl_multi_wait: avoid second loop if nothing to do
-
- ... hopefully this will also make clang-analyzer stop warning on
- potentional NULL dereferences (which were false positives anyway).
-
-- multi_runsingle: avoid NULL dereference
-
- When Curl_do() returns failure, the connection pointer could be NULL so
- the code path following needs to that that into account.
-
- Bug: http://curl.haxx.se/mail/lib-2013-03/0062.html
- Reported by: Eric Hu
-
-Steve Holme (9 Mar 2013)
-- imap: Re-factored all perform based functions
-
- Standardised the naming of all perform based functions to be in the form
- imap_perform_something().
-
-Daniel Stenberg (9 Mar 2013)
-- [Cédric Deltheil brought this change]
-
- examples/getinmemory.c: abort the transfer if not enough memory
-
- No more use exit(3) but instead tell libcurl that no byte has been
- written to let it return a `CURLE_WRITE_ERROR`. In addition, check
- curl easy handle return code.
-
-- RELEASE-NOTES: synced with ca3c0ed3a9c
-
- 8 more bugfixes, one change and a bunch of contributors
-
-Yang Tse (9 Mar 2013)
-- Makefile.am: empty AM_LDFLAGS definition for automake 1.7 compatibility
-
-Steve Holme (9 Mar 2013)
-- imap: Added description comments to all perform based functions
-
-- imap: Removed the need for separate custom request functions
-
- Moved the custom request processing into the LIST command as the logic
- is the same.
-
-- imap: Corrected typo in comment
-
-Yang Tse (9 Mar 2013)
-- Makefile.am: empty AM_LDFLAGS definition for automake 1.7 compatibility
-
-Steve Holme (9 Mar 2013)
-- imap: Moved imap_logout() to be grouped with the other perform functions
-
-- email: Updated the function descriptions for the logout / quit functions
-
- Updated the function description comments following commit 4838d196fdbf.
-
-- email: Simplified the logout / quit functions
-
- Moved the blocking state machine to the disconnect functions so that the
- logout / quit functions are only responsible for sending the actual
- command needed to logout or quit.
-
- Additionally removed the hard return on failure.
-
-- email: Tidied up the *_regular_transfer() functions
-
- Added comments and simplified convoluted dophase_done comparison.
-
-- email: Simplified nesting of if statements in *_doing() functions
-
-Daniel Stenberg (8 Mar 2013)
-- RELEASE-NOTES: mention that krb4 is up for consideration
-
-Steve Holme (8 Mar 2013)
-- imap: Fixed handling of untagged responses for the STORE custom command
-
- Added an exception, for the STORE command, to the untagged response
- processor in imap_endofresp() as servers will back respones containing
- the FETCH keyword instead.
-
-Yang Tse (8 Mar 2013)
-- curlbuild.h.dist: enhance non-configure GCC ABI detection logic
-
- GCC specific adjustments:
-
- - check __ILP32__ before 32 and 64bit processor architectures in
- order to detect ILP32 programming model on 64 bit processors
- which, of course, also support LP64 programming model, when using
- gcc 4.7 or newer.
-
- - keep 32bit processor architecture checks in order to support gcc
- versions older than 4.7 which don't define __ILP32__
-
- - check __LP64__ for gcc 3.3 and newer, while keeping 64bit processor
- architecture checks for older versions which don't define __LP64__
-
-- curlbuild.h.dist: fix GCC build on ARM systems without configure script
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1205
- Reported by: technion
-
-- [Gisle Vanem brought this change]
-
- polarssl.c: fix header filename typo
-
-- configure: use XC_LIBTOOL for portability across libtool versions
-
-- xc-lt-iface.m4: provide XC_LIBTOOL macro
-
-Steve Holme (7 Mar 2013)
-- imap: Fixed SELECT not being performed for custom requests
-
-- email: Minor code tidy up following recent changes
-
- Removed unwanted braces and added variable initialisation.
-
-- DOCS: Corrected the IMAP URL grammar of the UIDVALIDITY parameter
-
-- FEATURES: Provided a little clarity in some IMAP features
-
-- email: Optimised block_statemach() functions
-
- Optimised the result test in each of the block_statemach() functions.
-
-- DOCS: Added the list command to the IMAP URL section
-
- Added examples of the list command and clarified existing example URLs
- following recent changes.
-
-- FEATURES: Updated for recent imap additions
-
- Updated the imap features list, corrected a typo in the smtp features
- and clarified a pop3 feature.
-
-Daniel Stenberg (7 Mar 2013)
-- version bump: the next release will be 7.30.0
-
-- checksrc: ban unsafe functions
-
- The list of unsafe functions currently consists of sprintf, vsprintf,
- strcat, strncat and gets.
-
- Subsequently, some existing code needed updating to avoid warnings on
- this.
-
-Steve Holme (7 Mar 2013)
-- RELEASE-NOTES: Added missing imap fixes and additions
-
- With all the recent imap changes it wasn't clear what new features and
- fixes should be included in the release notes.
-
-Nick Zitzmann (6 Mar 2013)
-- RELEASE-NOTES: brought this up-to-date with the latest changes
-
-Steve Holme (6 Mar 2013)
-- [Jiri Hruska brought this change]
-
- imap: Fixed test801 and test1321 to specify a message UID
-
- Just a folder list would be retrieved if UID was not specified now.
-
-- [Jiri Hruska brought this change]
-
- imap: Fixed ftpserver.pl to allow verification even through LIST command
-
- Commit 198012ee inadvertently broke LIST_imap().
-
-- imap: Tidied up the APPEND and final APPEND response functions
-
- Removed unnecessary state changes on failure and setting of result codes
- on success.
-
-- imap: Tidied up the final FETCH response function
-
- Removed unnecessary state change on failure and setting of result code on
- success.
-
-- imap: Tidied up the LIST response function
-
- Reworked comments as they referenced custom commands, removed
- unnecessary state change on failure and setting of result code on
- success.
-
-- imap: Removed the custom request response function
-
- Removed imap_state_custom_resp() as imap_state_list_resp() provides the
- same functionality.
-
-- [Jiri Hruska brought this change]
-
- imap: Updated ftpserver.pl to be more compliant, added new commands
-
- Enriched IMAP capabilities of ftpserver.pl in order to be able to
- add tests for the new IMAP features.
-
- * Added support for APPEND - Saves uploaded data to log/upload.$testno
- * Added support for LIST - Returns the contents of <reply/> section in
- the current test, like e.g FETCH.
- * Added support for STORE - Returns hardcoded updated flags
- * Changed handling of SELECT - Returns much more information in the
- usual set of untagged responses; uses hardcoded data from an example
- in the IMAP RFC
- * Changed handling of FETCH - Fixed response format
-
-- imap: Added check for empty UID in FETCH command
-
- As the UID has to be specified by the user for the FETCH command to work
- correctly, added a check to imap_fetch(), although strictly speaking it
- is protected by the call from imap_perform().
-
-Kamil Dudka (6 Mar 2013)
-- nss: fix misplaced code enabling non-blocking socket mode
-
- The option needs to be set on the SSL socket. Setting it on the model
- takes no effect. Note that the non-blocking mode is still not enabled
- for the handshake because the code is not yet ready for that.
-
-Daniel Stenberg (6 Mar 2013)
-- imap: fix compiler warning
-
- imap.c:694:21: error: unused variable 'imapc' [-Werror=unused-variable]
-
-Steve Holme (5 Mar 2013)
-- imap: Added support for list command
-
-- imap: Added list perform and response handler functions
-
-- imap: Introduced IMAP_LIST state
-
-- imap: Small tidy up of imap_select() to match imap_append()
-
- Updated the style of imap_select() before adding the LIST command.
-
-- imap: Moved mailbox check from the imap_do() function
-
- In preparation for the addition of the LIST command, moved the mailbox
- check from imap_do() to imap_select() and imap_append().
-
-- curl_setup.h: Added S_IRDIR() macro for compilers that don't support it
-
- Commit 26eaa8383001 introduces the use of S_ISDIR() yet some compilers,
- such as MSVC don't support it, so we must define a substitute using
- file flags and mask.
-
-Daniel Stenberg (4 Mar 2013)
-- AddFormData: prevent only directories from being posted
-
- Commit f4cc54cb4746ae5a6d (shipped as part of the 7.29.0 release) was a
- bug fix that introduced a regression in that while trying to avoid
- allowing directory names, it also forbade "special" files like character
- devices and more. like "/dev/null" as was used by Oliver who reported
- this regression.
-
- Reported by: Oliver Gondža
- Bug: http://curl.haxx.se/mail/archive-2013-02/0040.html
-
-Nick Zitzmann (3 Mar 2013)
-- darwinssl: fix infinite loop if server disconnected abruptly
-
- If the server hung up the connection without sending a closure alert,
- then we'd keep probing the socket for data even though it's dead. Now
- we're ready for this situation.
-
- Bug: http://curl.haxx.se/mail/lib-2013-03/0014.html
- Reported by: Aki Koskinen
-
-Steve Holme (3 Mar 2013)
-- imap: Added comments to imap_append()
-
-- [Jiri Hruska brought this change]
-
- imap: Added required mailbox check for FETCH and APPEND commands
-
-- pingpong.c: Fix enumerated type mixed with another type
-
-- smtp: Updated the coding style for state changes after a send operation
-
- Some state changes would be performed after a failure test that
- performed a hard return, whilst others would be performed within a test
- for success. Updated the code, for consistency, so all instances are
- performed within a success test.
-
-- pop3: Updated the coding style for state changes after a send operation
-
- Some state changes would be performed after a failure test that
- performed a hard return, whilst others would be performed within a test
- for success. Updated the code, for consistency, so all instances are
- performed within a success test.
-
-- imap: Fixed typo in variable assignment
-
-- [Jiri Hruska brought this change]
-
- imap: Fixed custom request handling in imap_done()
-
- Fixed imap_done() so that neither the FINAL states are not entered when
- a custom command has been performed.
-
-- [Jiri Hruska brought this change]
-
- imap: Enabled custom requests in imap_select_resp()
-
- Changed imap_select_resp() to invoke imap_custom() instead of
- imap_fetch() after the mailbox has been selected if a custom
- command has been set.
-
-- [Jiri Hruska brought this change]
-
- imap: Enabled custom requests in imap_perform()
-
- Modified imap_perform() to start with the custom command instead of
- SELECT when a custom command is to be performed and no mailbox has
- been given.
-
-- [Jiri Hruska brought this change]
-
- imap: Added custom request perform and response handler functions
-
- Added imap_custom(), which initiates the custom command processing,
- and an associated response handler imap_state_custom_resp(), which
- handles any responses by sending them to the client as body data.
-
- All untagged responses with the same name as the first word of the
- custom request string are accepted, with the exception of SELECT and
- EXAMINE which have responses that cannot be easily identified. An
- extra check has been provided for them so that any untagged responses
- are accepted for them.
-
-- pop3: Fixed unnecessary parent structure reference
-
- Updated pop3 code following recent imap changes.
-
-- [Jiri Hruska brought this change]
-
- imap: Added custom request parsing
-
- Added imap_parse_custom_request() for parsing the CURLOPT_CUSTOMREQUEST
- parameter which URL decodes the value and separates the request from
- any parameters - This makes it easier to filter untagged responses
- by the request command.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced custom request parameters
-
- Added custom request parameters to the per-request structure.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced IMAP_CUSTOM state
-
-- imap: Minor code tidy up
-
- Minor tidy up of code layout and comments following recent changes.
-
-- imap: Simplified the imap_state_append_resp() function
-
- Introduced the result code variable to simplify the state changes and
- remove the hard returns.
-
-- imap: Changed successful response logic in imap_state_append_resp()
-
- For consistency changed the logic of the imap_state_append_resp()
- function to test for an unsucessful continuation response rather than a
- succesful one.
-
-- imap: Standardised imapcode condition tests
-
- For consistency changed two if(constant != imapcode) tests to be
- if(imapcode != constant).
-
-- imap: Moved imap_append() to be with the other perform functions
-
-- [Jiri Hruska brought this change]
-
- imap: Enabled APPEND support in imap_perform()
-
- Added logic in imap_perform() to perform an APPEND rather than SELECT
- and FETCH if an upload has been specified.
-
-- [Jiri Hruska brought this change]
-
- imap: Implemented APPEND final processing
-
- The APPEND operation needs to be performed in several steps:
- 1) We send "<tag> APPEND <mailbox> <flags> {<size>}\r\n"
- 2) Server responds with continuation respose "+ ...\r\n"
- 3) We start the transfer and send <size> bytes of data
- 4) Only now we end the request command line by sending "\r\n"
- 5) Server responds with "<tag> OK ...\r\n"
-
- This commit performs steps 4 and 5, in the DONE phase, as more
- processing is required after the transfer.
-
-- [Jiri Hruska brought this change]
-
- imap: Added APPEND perform and response handler functions
-
- Added imap_append() function to initiate upload and imap_append_resp()
- to handle the continuation response and start the transfer.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced IMAP_APPEND and IMAP_APPEND_FINAL states
-
-- [Jiri Hruska brought this change]
-
- imap: Updated setting of transfer variables in imap_state_fetch_resp()
-
- Add number of bytes retrieved from the PP cache to req.bytecount and set
- req.maxdownload only when starting a proper download.
-
-- [Jiri Hruska brought this change]
-
- imap: Improved FETCH response parsing
-
- Added safer parsing of the untagged FETCH response line and the size of
- continuation data.
-
-- imap: Fixed accidentally lossing the result code
-
- Accidentally lost the result code in imap_state_capability() and
- imap_state_login() with commit b06a78622609.
-
-- imap: Another minor comment addition / tidy up
-
-- imap: Updated the coding style for state changes after a send operation
-
- Some state changes would be performed after a failure test that
- performed a hard return, whilst others would be performed within a test
- for success. Updated the code, for consistency, so all instances are
- performed within a success test.
-
-- pop3 / smtp: Small comment tidy up
-
- Small tidy up to keep some comments consistant across each of the email
- protocols.
-
-- [Jiri Hruska brought this change]
-
- imap: FETCH response handler cleanup before further changes
-
- Removed superfluous NULL assignment after Curl_safefree() and rewrote
- some comments and logging messages.
-
-- pop3: Small tidy up of function arguments
-
-- imap: Small tidy up of function arguments
-
-- smtp: Corrected debug message for POP3_AUTH_FINAL constant
-
- Following commit ad3177da24b8 corrected the debug message in state()
- from AUTH to AUTH_FINAL.
-
-- pop3: Corrected debug message for POP3_AUTH_FINAL constant
-
- Following commit afad1ce753a1 corrected the debug message in state()
- from AUTH to AUTH_FINAL.
-
-- imap: Corrected debug message for IMAP_AUTHENTICATE_FINAL constant
-
- Following commit 13006f3de9ec corrected the debug message in state()
- from AUTHENTICATE to AUTHENTICATE_FINAL.
-
-- [Jiri Hruska brought this change]
-
- imap: Fixed error code returned for invalid FETCH response
-
- If the FETCH command does not result in an untagged response the the
- UID is probably invalid. As such do not return CURLE_OK.
-
-- [Jiri Hruska brought this change]
-
- imap: Added processing of the final FETCH responses
-
- Not processing the final FETCH responses was not optimal, not only
- because the response code would be ignored but it would also leave data
- unread on the socket which would prohibit connection reuse.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced FETCH_FINAL state for processing final fetch responses
-
- A typical FETCH response can be broken down into four parts:
-
- 1) "* <uid> FETCH (<what> {<size>}\r\n", using continuation syntax
- 2) <size> bytes of the actual message
- 3) ")\r\n", finishing the untagged response
- 4) "<tag> OK ...", finishing the command
-
- Part 1 is read in imap_fetch_resp(), part 2 is consumed in the PERFORM
- phase by the transfer subsystem, parts 3 and 4 are currently ignored.
-
-- imap: fix autobuild warning
-
- Removed whitespace from imap_perform()
-
-- imap: fix compiler warning
-
- error: declaration of 'imap' shadows a previous local
-
-- smtp: Re-factored the final SMTP_AUTH constant
-
- Changed the final SMTP_AUTH constant to SMTP_AUTH_FINAL for consistency
- with the response function.
-
-- pop3: Re-factored the final POP3_AUTH constant
-
- Changed the final POP3_AUTH constant to POP3_AUTH_FINAL for consistency
- with the response function.
-
-- imap: Re-factored final IMAP_AUTHENTICATE constant
-
- Changed the final IMAP_AUTHENTICATE constant to IMAP_AUTHENTICATE_FINAL
- for consistency with the response function.
-
-- imap: Updated the coding style of imap_state_servergreet_resp()
-
- Updated the coding style, in this function, to be consistant with other
- response functions rather then performing a hard return on failure.
-
-- imap: Reversed the logic of the (un)successful tagged SELECT response
-
- Reversed the logic of the unsuccessful vs successful tagged SELECT
- response in imap_state_select_resp() to be more logical to read.
-
-- imap: Reversed the logic of the (un)successful tagged CAPABILITY response
-
- Reversed the logic of the unsuccessful vs successful tagged CAPABILITY
- response in imap_state_capability_resp() to be more logical to read.
-
-- imap: Corrected char* references with char *
-
- Corrected char* references made in commit: 709b3506cd9b.
-
-- [Jiri Hruska brought this change]
-
- imap: Added processing of more than one response when sent in same packet
-
- Added a loop to imap_statemach_act() in which Curl_pp_readresp() is
- called until the cache is drained. Without this multiple responses
- received in a single packet could result in a hang or delay.
-
-- [Jiri Hruska brought this change]
-
- imap: Added skipping of SELECT command if already in the same mailbox
-
- Added storage and checking of the last mailbox userd to prevent
- unnecessary switching.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced the mailbox variable
-
- Added the mailbox variable to the per-connection structure in
- preparation for checking for an already selected mailbox.
-
-- email: Slight reordering of connection based variables
-
- Reordered the state and ssl_done variables in order to provide more
- consistency between the email protocols as well as for for an upcoming
- change.
-
-- imap: Tidied up comments for connection based variables
-
-- DOCS: Added the IMAP UIDVALIDITY property to the CURLOPT_URL section
-
-- [Jiri Hruska brought this change]
-
- imap: Added verification of UIDVALIDITY mailbox attribute
-
- Added support for checking the UIDVALIDITY, and aborting the request, if
- it has been specified in the URL and the server response is different.
-
-- [Jiri Hruska brought this change]
-
- imap: Added support for parsing the UIDVALIDITY property
-
- Added support for parsing the UIDVALIDITY property from the SELECT
- response and storing it in the per-connection structure.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced the mailbox_uidvalidity variable
-
- Added the mailbox_uidvalidity variable to the per-connection structure
- in preparation for checking the UIDVALIDITY mailbox attribute.
-
-- imap: Corrected comment in imap_endofresp()
-
-- imap: Corrected whitespace
-
-- [Jiri Hruska brought this change]
-
- imap: Added filtering of CAPABILITY and FETCH untagged responses
-
- Only responses that contain "CAPABILITY" and "FETCH", respectively,
- will be sent to their response handler.
-
-- [Jiri Hruska brought this change]
-
- imap: Added a helper function for upcoming untagged response filtering
-
- RFC 3501 states that "the client MUST be prepared to accept any response
- at all times" yet we assume anything received with "* " at the beginning
- is the untagged response we want.
-
- Introduced a helper function that checks whether the input looks like a
- response to specified command, so that we may filter the ones we are
- interested in according to the current state.
-
-- [Jiri Hruska brought this change]
-
- imap: Moved CAPABILITY response handling to imap_state_capability_resp()
-
- Introduced similar handling to the FETCH responses, where even the
- untagged data responses are handled by the response handler of the
- individual state.
-
-Linus Nielsen Feltzing (26 Feb 2013)
-- Remove unused variable in smtp_state_data_resp()
-
-Steve Holme (25 Feb 2013)
-- email: Small tidy up following recent changes
-
-- smtp: Removed bytecountp from the per-request structure
-
- Removed this pointer to a downloaded bytes counter because it was set in
- smtp_init() to point to the same variable the transfer functions keep
- the count in (k->bytecount), effectively making the code in transfer.c
- "*k->bytecountp = k->bytecount" a no-op.
-
-- pop3: Removed bytecountp from the per-request structure
-
- Removed this pointer to a downloaded bytes counter because it was set in
- pop3_init() to point to the same variable the transfer functions keep
- the count in (k->bytecount), effectively making the code in transfer.c
- "*k->bytecountp = k->bytecount" a no-op.
-
-- [Jiri Hruska brought this change]
-
- imap: Removed bytecountp from the per-request structure
-
- Removed this pointer to a downloaded bytes counter because it was set in
- imap_init() to point to the same variable the transfer functions keep
- the count in (k->bytecount), effectively making the code in transfer.c
- "*k->bytecountp = k->bytecount" a no-op.
-
-- [Jiri Hruska brought this change]
-
- imap: Adjusted SELECT and FETCH function order
-
- Moved imap_select() and imap_fetch() to be grouped with the other
- perform functions.
-
-- [Jiri Hruska brought this change]
-
- imap: Adjusted SELECT and FETCH state order in imap_statemach_act()
-
- Exchanged the position of these states in the switch statements to
- match the state enum, execution and function order.
-
-- imap: Minor tidy up of comments in imap_parse_url_path()
-
- Tidy up of comments before next round of imap changes.
-
-- imap: Fixed incorrect comparison for STARTTLS in imap_endofresp()
-
- Corrected the comparison type in addition to commit 1dac29fa83a9.
-
-- DOCS: Corrected IMAP URL examples according to RFC5092
-
- URL examples that included the UID weren't technically correct although
- would pass the curl parser.
-
-Nick Zitzmann (24 Feb 2013)
-- darwinssl: fix undefined $ssllib warning in runtests.pl
-
- I also added --with-darwinssl to the list of SSL options in configure.
-
-Steve Holme (24 Feb 2013)
-- imap: Added check for new internal imap response code
-
-- imap: Changed the order of the response types in imap_endofresp()
-
- From a maintenance point of view the code reads better to view tagged
- responses, then untagged followed by continuation responses.
-
- Additionally, this matches the order of responses in POP3.
-
-- [Jiri Hruska brought this change]
-
- imap: Added stricter parsing of continuation responses
-
- Enhanced the parsing to only allow continuation responses in some
- states.
-
-- imap: Simplified memcmp() in tagged response parsing
-
-- [Jiri Hruska brought this change]
-
- imap: Reworked the logic of untagged command responses
-
-- imap: Corrected spacing of trailing brace
-
-- [Jiri Hruska brought this change]
-
- imap: Added stricter parsing of tagged command responses
-
- Enhanced the parsing of tagged responses which must start with "OK",
- "NO" or "BAD"
-
-- [Jiri Hruska brought this change]
-
- imap: Simplified command response test in imap_endofresp()
-
-- [Jiri Hruska brought this change]
-
- imap: Corrected comment in imap_endofresp()
-
-- DOCS: Corrected layout of POP3 and IMAP URL examples
-
- Corrected layout issues with the POP3 and IMAP URL examples introduced
- in commit cb3ae6894fb2.
-
-- DOCS: Updated CURLOPT_URL section following recent POP3 and IMAP changes
-
- Updated the POP3 sub-section to refer to message ID rather than mailbox.
-
- Added an IMAP sub-section with example URLs depicting the specification
- of mailbox, uid and section.
-
-- pop3: Refactored the mailbox variable as it didn't reflect it's purpose
-
- Updated the mailbox variable to correctly reflect it's purpose. The
- name mailbox was a leftover from when IMAP and POP3 support was
- initially added to curl.
-
-- FEATURES: Updated following recent IMAP changes
-
-- [Jiri Hruska brought this change]
-
- imap: Added the ability to FETCH a specific UID and SECTION
-
- Updated the FETCH command to send the UID and SECTION parsed from the
- URL. By default the BODY specifier doesn't include a section, BODY[] is
- now sent whereas BODY[TEXT] was previously sent. In my opinion
- retrieving just the message text is rarely useful when dealing with
- emails, as the headers are required for example, so that functionality
- is not retained. In can however be simulated by adding SECTION=TEXT to
- the URL.
-
- Also updated test801 and test1321 due to the BODY change.
-
-- email: Additional tidy up of comments following recent changes
-
-- smtp: Removed some FTP heritage leftovers
-
- Removed user and passwd from the SMTP struct as these cannot be set on
- a per-request basis and are leftover from legacy FTP code.
-
- Changed some comments still using FTP terminology.
-
-- smtp: Moved the per-request variables to the per-request data structure
-
- Moved the rcpt variable from the per-connection struct smtp_conn to the
- new per-request struct and fixed references accordingly.
-
-- pop3: Introduced a custom SMTP structure for per-request data
-
- Created a new SMTP structure and changed the type of the smtp proto
- variable in connectdata from FTP* to SMTP*.
-
-unknown (23 Feb 2013)
-- [Steve Holme brought this change]
-
- imap: Minor correction of comments for max line length
-
-Daniel Stenberg (23 Feb 2013)
-- strcasestr: remove check for this unused function
-
-- pop3: fix compiler warning
-
- error: declaration of 'pop3' shadows a previous local
-
-Steve Holme (23 Feb 2013)
-- [Jiri Hruska brought this change]
-
- imap: Added URL parsing of new variables
-
- Updated the imap_parse_url_path() function to parse uidvalidity, uid and
- section parameters based on RFC-5092.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced imap_is_bchar() function
-
- Added imap_is_bchar() for testing if a given character is a valid bchar
- or not.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced new per-request veriables
-
- Added uidvalidity, uid and section variables to the per-request IMAP
- structure in preparation for upcoming URL parsing.
-
-- pingpong: Renamed curl_ftptransfer to curl_pp_transfer
-
-- pop3: Removed some FTP heritage leftovers
-
- Removed user and passwd from the POP3 struct as these cannot be set on
- a per-request basis and are leftover from legacy FTP code.
-
- Changed some comments still using FTP terminology.
-
-- pop3: Moved the per-request variables to the per-request data structure
-
- Moved the mailbox and custom request variables from the per-connection
- struct pop3_conn to the new per-request struct and fixed references
- accordingly.
-
-- pop3: Introduced a custom POP3 structure for per-request data
-
- Created a new POP3 structure and changed the type of the pop3 proto
- variable in connectdata from FTP* to POP*.
-
-- [Jiri Hruska brought this change]
-
- imap: Fixed escaping of mailbox names
-
- Used imap_atom() to escape mailbox names in imap_select().
-
-- pingpong: Moved curl_ftptransfer definition to pingpong.h
-
- Moved the ftp transfer structure into pingpong.h so other protocols that
- require it don't have to include ftp.h.
-
-- urldata.h: Fixed comment for opt_no_body variable
-
- Corrected comment for opt_no_body variable to CURLOPT_NOBODY.
-
-- email: Minor tidy up following IMAP changes
-
-- [Jiri Hruska brought this change]
-
- imap: Removed more FTP leftovers
-
- Changed some variables and comments still using FTP terminology.
-
-- [Jiri Hruska brought this change]
-
- imap: Removed some FTP heritage leftovers
-
- Removed user and passwd from the IMAP struct as these cannot be set on
- a per-request basis and are leftover from legacy FTP code.
-
-- [Jiri Hruska brought this change]
-
- imap: Introduced a custom IMAP structure for per-request data
-
- Created a new IMAP structure and changed the type of the imap proto
- variable in connectdata from FTP* to the new IMAP*.
-
- Moved the mailbox variable from the per-connection struct imap_conn to
- the new per-request struct and fixed references accordingly.
-
-- pop3: Updated do phrase clean-up comment
-
- Following commit 65644b833532 for the IMAP module updated the clean-up
- comment in POP3.
-
-- imap: Fixed memory leak when performing multiple selects
-
- Moved the clean-up of the mailbox variable from imap_disconnect() to
- imap_done() as this variable is allocated in the do phase, yet would
- have only been freed only once if multiple selects where preformed
- on a single connection.
-
-Daniel Stenberg (22 Feb 2013)
-- [Alexander Klauer brought this change]
-
- Documentation: Typo in docs/CONTRIBUTE
-
- Fixes a typo get → git in docs/CONTRIBUTE.
-
-- [Alexander Klauer brought this change]
-
- repository: ignore patch files generated by git
-
- Ignores the patch files generated by the 'git format-patch' command.
-
-- [Alexander Klauer brought this change]
-
- libcurl documentation: clarifications and typos
-
- * Elaborates on default values of some curl_easy_setopt() options.
- * Reminds the user to cast variadic arguments to curl_easy_setopt() to
- 'void *' where curl internally interprets them as such.
- * Clarifies the working of the CURLOPT_SEEKFUNCTION option for
- curl_easy_setopt().
- * Fixes typo 'forth' → 'fourth'.
- * Elaborates on CURL_SOCKET_TIMEOUT.
- * Adds some missing periods.
- * Notes that the return value of curl_version() must not be passed to
- free().
-
-- [Alexander Klauer brought this change]
-
- lib/url.c: Generic read/write data pointers
-
- Always interprets the pointer passed with the CURLOPT_WRITEDATA or
- CURLOPT_READDATA options of curl_easy_setopt() as a void pointer in
- order to avoid problems in environments where FILE and void pointers
- have non-trivial conversion.
-
-- [Alexander Klauer brought this change]
-
- libcurl documentation: updates HTML index
-
- * Adds several links to documentation of library functions which were
- missing.
- * Marks documentation of deprecated library functions "(deprecated)".
- * Removes spurious .html suffixes.
-
-- ossl_seed: avoid recursive seeding!
-
-Steve Holme (22 Feb 2013)
-- [Jiri Hruska brought this change]
-
- Fixed checking the socket if there is data waiting in the cache
-
- Use Curl_pp_moredata() in Curl_pp_multi_statemach() to check if there is
- more data to be received, rather than the socket state, as a task could
- hang waiting for more data from the socket itself.
-
-- imap.c: Fixed an incorrect variable reference
-
- Fixed an incorrect variable reference which was introduced in commit
- a1701eea289f as a result of a copy and paste from SMTP/POP3.
-
-- [Jiri Hruska brought this change]
-
- pingpong: Introduce Curl_pp_moredata()
-
- A simple function to test whether the PP is not sending and there are
- still more data in its receiver cache. This will be later utilized to:
-
- 1) Change Curl_pp_multi_statemach() and Curl_pp_easy_statemach() to
- not test socket state and just call user's statemach_act() function
- when there are more data to process, because otherwise the task would
- just hang, waiting for more data from the socket.
-
- 2) Allow PP users to read multiple responses by looping as long as there
- are more data available and current phase is not finished.
- (Currently needed for correct processing of IMAP SELECT responses.)
-
-Nick Zitzmann (19 Feb 2013)
-- FEATURES: why yes, we do support metalink
-
- I just noticed Metalink support wasn't listed as a feature of the tool.
-
-- metalink: fix improbable crash parsing metalink filename
-
- The this_url pointer wasn't being initialized, so if strdup() would return
- null when copying the filename in a metalink file, then hilarity would
- ensue during the cleanup phase. This change was brought to you by clang,
- which noticed this and raised a warning.
-
-Yang Tse (19 Feb 2013)
-- smtp.c: fix enumerated type mixed with another type
-
-- polarssl threadlock cleanup
-
-Nick Zitzmann (18 Feb 2013)
-- docs: schannel and darwinssl documentation improvements
-
- Schannel and darwinssl use the certificates built into the
- OS to do vert verification instead of bundles. darwinssl
- is thread-safe. Corrected typos in the NSS docs.
-
-Daniel Stenberg (18 Feb 2013)
-- resolver_error: remove wrong error message output
-
- The attempt to use gai_strerror() or alternative function didn't work as
- the 'sock_error' field didn't contain the proper error code. But since
- this hasn't been reported and thus isn't really a big deal I decided to
- just scrap the whole attempt to output the detailed resolver error and
- instead remain with just stating that the resolving of the name failed.
-
-- [Kim Vandry brought this change]
-
- Curl_resolver_is_resolved: show proper host name on failed resolve
-
-- Curl_resolver_is_resolved: fix compiler warning
-
- conversion to 'int' from 'long int' may alter its value
-
-- compiler warning fix
-
- follow-up to commit ed7174c6f66, rename 'wait' to 'block'
-
-- compiler warning fix: declaration of 'wait' shadows a global declaration
-
- It seems older gcc installations (at least) will cause warnings if we
- name a variable 'wait'. Now changed to 'block' instead.
-
- Reported by: Jiří Hruška
- Bug: http://curl.haxx.se/mail/lib-2013-02/0247.html
-
-Nick Zitzmann (17 Feb 2013)
-- MacOSX-Framework: Make script work in Xcode 4.0 and later
-
- Apple made a number of changes to Xcode 4. The SDKs were moved, the entire
- Developer folder was moved, and PowerPC support was removed. The script
- will now adapt to those changes and should be future-proofed against
- additional changes in case Apple moves the Developer folder ever again.
- Also, the minimum OS X version compiler option was removed, so that the
- framework can be built against the latest SDK but still run in older cats.
-
-Daniel Stenberg (17 Feb 2013)
-- docs: refer to CURLOPT_ACCEPT_ENCODING instead of the old name
-
-Steve Holme (16 Feb 2013)
-- email: Tidied up result code variables
-
- Tidied up result variables to be consistent in name, declaration order
- and default values.
-
-Nick Zitzmann (16 Feb 2013)
-- ntlm_core: fix compiler warning when building with clang
-
- Fixed a 64-to-32 compiler warning raised when building with
- clang and the --with-darwinssl option.
-
-Daniel Stenberg (16 Feb 2013)
-- Guile-curl: a new libcurl binding
-
-- polarsslthreadlock: #include the proper memory and debug includes
-
- Pointed out by Steve Holme
-
-Steve Holme (16 Feb 2013)
-- email: Removed unnecessary forward declaration
-
- Due to the reordering of functions in commit 586f5d361474 the forward
- declaration to state_upgrade_tls() are no longer required.
-
-- pop3.c: Added reference to RFC-5034
-
-Daniel Stenberg (15 Feb 2013)
-- [Willem Sparreboom brought this change]
-
- PolarSSL: Change to cURL coding style
-
- Repaired all curl/lib/checksrc.pl warnings in the previous four patches
-
-- [Willem Sparreboom brought this change]
-
- PolarSSL: WIN32 threading support for entropy
-
- Added WIN32 threading support for PolarSSL entropy if
- --enable-threaded-resolver config flag is set and process.h can be found.
-
-- [Willem Sparreboom brought this change]
-
- PolarSSL: pthread support for entropy
-
- Added pthread support for polarssl entropy if --enable-threaded-resolver
- config flag is set and pthread.h can be found.
-
-- [Willem Sparreboom brought this change]
-
- PolarSSL: changes to entropy/ctr_drbg/HAVEGE_RANDOM
-
- Add non-threaded entropy and ctr_drbg and removed HAVEGE_RANDOM define
-
-- [Willem Sparreboom brought this change]
-
- PolarSSL: added human readable error strings
-
- Print out human readable error strings for PolarSSL related errors
-
-Steve Holme (15 Feb 2013)
-- pop3: Removed unnecessary state changes on failure
-
-- imap: Removed unnecessary state change on failure
-
-Daniel Stenberg (15 Feb 2013)
-- metalink_cleanup: yet another follow-up fix
-
-- metalink_cleanup: define it without argument
-
- Since the function takes no argument, the macro shouldn't take one as
- some compilers will error out on that.
-
-- rename "easy" statemachines: call them block instead
-
- ... since they're not used by the easy interface really, I wanted to
- remove the association. Also, I unified the pingpong statemachine driver
- into a single function with a 'wait' argument: Curl_pp_statemach.
-
-Yang Tse (15 Feb 2013)
-- [Gisle Vanem brought this change]
-
- curl_setup_once.h: definition of HAVE_CLOSE_S defines sclose() to close_s()
-
-- [Gisle Vanem brought this change]
-
- config-dos.h: define HAVE_CLOSE_S for MSDOS/Watt-32
-
-- [Gisle Vanem brought this change]
-
- config-dos.h: define strerror() to strerror_s_() for High-C
-
-- [Gisle Vanem brought this change]
-
- config-dos.h: define HAVE_TERMIOS_H only for djgpp
-
-Steve Holme (14 Feb 2013)
-- smtp.c: Fixed a trailing whitespace
-
- Remove tailing whitespace introduced in commit 7ed689d24a4e.
-
-- pop3: Fixed blocking SSL connect when connecting via POP3S
-
- A call to Curl_ssl_connect() was accidentally left in when the SSL/TLS
- connection layer was reworked in 7.29. Not only would this cause the
- connection to block but had the additional overhead of calling the
- non-blocking connect a little bit later.
-
-- smtp: Refactored the smtp_state_auth_resp() function
-
- Renamed smtp_state_auth_resp() function to match the implementations in
- IMAP and POP3.
-
-Daniel Stenberg (14 Feb 2013)
-- remove ifdefs
-
- Clarify the code by reducing ifdefs
-
-- strlcat: remove function
-
- This function was only used twice, both in places where performance
- isn't crucial (socks + if2ip). Removing the use of this function removes
- the need to have our private version for systems without it == reduced
- amount of code.
-
- Also, in the SOCKS case it is clearly better to fail gracefully rather
- than to truncate the results.
-
- This work was triggered by a bug report on the strcal prototype in
- strequal.h.
-
- strlcat was added in commit db70cd28 in February 2001!
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1192
- Reported by: Jeremy Huddleston
-
-- Curl_FormBoundary: made static
-
- As Curl_FormBoundary() is no longer used outside of this file (since
- commit ad7291c1a9d), it is now renamed to formboundary() and is made
- static.
-
-- ossl_seed: fix the last resort PRNG seeding
-
- Instead of just abusing the pseudo-randomizer from Curl_FormBoundary(),
- this now uses Curl_ossl_random() to get entropy.
-
-Steve Holme (13 Feb 2013)
-- email: Tidy up before additional IMAP work
-
- Replaced two explicit comparisons of CURLE_OK with boolean alternatives.
-
- General tidy up of comments.
-
-- smtp: Removed duplicate pingpong structure initialisation
-
- The smtp_connect() function was setting the member variables of the
- pingpong structure twice, once before calling Curl_pp_init() and once
- after!
-
-Yang Tse (13 Feb 2013)
-- move msvc IDE related files to 'vs' directory tree
-
- Use 'vs' directory tree given that 'vc' intended one clashes
- with an already existing build target in file Makefile.dist.
-
-Daniel Stenberg (13 Feb 2013)
-- install-sh: updated to support multiple source files as arguments
-
- Version 7.29.0 uses Makefiles generated with a newer version of the
- autotools than the previous 7.28.1. These Makefiles try to install
- e.g. header files by calling install-sh with multiple source files as
- arguments. The bundled install-sh is to old and does not support this.
-
- The problem only occurs, if install-sh is actually being used, ie. the
- platform install executable is to old or not usable. Example: Solaris
- 10.
-
- The files install-sh and mkinstalldirs are now updated with the automake
- 1.11.3 versions. A better fix might be to completely remove them from
- git and force the files to be added/created during buildconf.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1195
- Reported by: Rainer Jung
-
-Yang Tse (13 Feb 2013)
-- move msvc IDE related files to 'vc' directory tree
-
-- msvc IDE 'vc' directory tree preparation
-
-Steve Holme (12 Feb 2013)
-- imap: Corrected a whitespace issue from previous commit
-
- Fixed a small whitespace issue that crept in there in commit
- 508cdf4da4d7.
-
-- email: Another post optimisation of endofresp() tidy up
-
-- sasl: Fixed null pointer reference when decoding empty digest challenge
-
- Fixed a null pointer reference when an empty challenge is passed to the
- Curl_sasl_create_digest_md5_message() function.
-
- Bug: http://sourceforge.net/p/curl/bugs/1193/
- Reported by: Saran Neti
-
-- email: Post optimisation of endofresp() tidy up
-
- Removed unnecessary end of line check and return.
-
-Nick Zitzmann (12 Feb 2013)
-- darwinssl: Fix send glitchiness with data > 32 or so KB
-
- An ambiguity in the SSLWrite() documentation lead to a bad inference in the
- code where we assumed SSLWrite() returned the amount of bytes written to
- the socket, when that is not actually true; it returns the amount of data
- that is buffered for writing to the socket if it returns errSSLWouldBlock.
- Now darwinssl_send() returns CURLE_AGAIN if data is buffered but not written.
-
- Reference URL: http://curl.haxx.se/mail/lib-2013-02/0145.html
-
-Steve Holme (12 Feb 2013)
-- pingpong.h: Fixed line length over 78 characters from b56c9eb48e3c
-
-- pingpong: Optimised the endofresp() function
-
- Reworked the pp->endofresp() function so that the conndata, line and
- line length are passed down to it just as with Curl_client_write()
- rather than each implementation of the function having to query
- these values.
-
- Additionally changed the int return type to bool as this is more
- representative of the function's usage.
-
-- email: Post STARTLS capability code tidy up (Part Three)
-
- Corrected the order of the upgrade_tls() functions and moved the handler
- upgrade and getsock() functions out from the middle of the state related
- functions.
-
-- email: Post STARTLS capability code tidy up (Part Two)
-
- Corrected the order of the pop3_state_capa() / imap_state_capability()
- and the pop3_state_capa_resp() / imap_state_capability_resp() functions
- to match the execution order.
-
-Daniel Stenberg (11 Feb 2013)
-- [ulion brought this change]
-
- SOCKS: fix socks proxy when noproxy matched
-
- Test 1212 added to verify
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1190
-
-Steve Holme (11 Feb 2013)
-- ntlm: Updated comments for the addition of SASL support to IMAP in v7.29
-
-- RELEASE-NOTES: Updated following the recent imap/pop3/smtp changes
-
-Linus Nielsen Feltzing (10 Feb 2013)
-- Fix NULL pointer reference when closing an unused multi handle.
-
-Steve Holme (10 Feb 2013)
-- email: Post STARTLS capability code tidy up (Part One)
-
- Corrected the order of the CAPA / CAPABILITY state machine constants to
- match the execution order.
-
-- imap: Fixed memory leak following commit f6010d9a0359
-
-- smtp: Added support for the STARTTLS capability (Part Two)
-
- Added honoring of the tls_supported flag when starting a TLS upgrade
- rather than unconditionally attempting it. If the use_ssl flag is set
- to CURLUSESSL_TRY and the server doesn't support TLS upgrades then the
- connection will continue to authenticate. If this flag is set to
- CURLUSESSL_ALL then the connection will complete with a failure as it
- did previously.
-
-- pop3: Added support for the STLS capability (Part Three)
-
- Added honoring of the tls_supported flag when starting a TLS upgrade
- rather than unconditionally attempting it. If the use_ssl flag is set
- to CURLUSESSL_TRY and the server doesn't support TLS upgrades then the
- connection will continue to authenticate. If this flag is set to
- CURLUSESSL_ALL then the connection will complete with a failure as it
- did previously.
-
-- imap: Added support for the STARTTLS capability (Part Three)
-
- Added honoring of the tls_supported flag when starting a TLS upgrade
- rather than unconditionally attempting it. If the use_ssl flag is set
- to CURLUSESSL_TRY and the server doesn't support TLS upgrades then the
- connection will continue to authenticate. If this flag is set to
- CURLUSESSL_ALL then the connection will complete with a failure as it
- did previously.
-
-Daniel Stenberg (10 Feb 2013)
-- [Alessandro Ghedini brought this change]
-
- htmltitle: fix suggested build command
-
-Steve Holme (10 Feb 2013)
-- pop3: Added support for the STLS capability (Part Two)
-
- Added sending of initial CAPA command before STLS is sent. This allows
- for the detection of the capability before trying to upgrade the
- connection.
-
-- imap: Added support for the STARTTLS capability (Part Two)
-
- Added sending of initial CAPABILITY command before STARTTLS is sent.
- This allows for the detection of the capability before trying to
- upgrade the connection.
-
-- smtp: Added support for the STLS capability (Part One)
-
- Introduced detection of the STARTTLS capability, in order to add support
- for TLS upgrades without unconditionally sending the STARTTLS command.
-
-- pop3: Added support for the STLS capability (Part One)
-
- Introduced detection of the STLS capability, in order to add support
- for TLS upgrades without unconditionally sending the STLS command.
-
-- imap: Added support for the STARTTLS capability (Part One)
-
- Introduced detection of the STARTTLS capability, in order to add support
- for TLS upgrades without unconditionally sending the STARTTLS command.