smtp: use the upload buffer size for scratch buffer malloc
[platform/upstream/curl.git] / RELEASE-NOTES
1 Curl and libcurl 7.59.0
2
3  Public curl releases:         173
4  Command line options:         213
5  curl_easy_setopt() options:   253
6  Public functions in libcurl:  74
7  Contributors:                 1705
8
9 This release includes the following changes:
10
11  o curl: add --proxy-pinnedpubkey [10]
12  o added: CURLOPT_TIMEVALUE_LARGE and CURLINFO_FILETIME_T [13]
13  o CURLOPT_RESOLVE: Add support for multiple IP addresses per entry [37]
14  o Add option CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS [37]
15  o Add new tool option --happy-eyeballs-timeout-ms [37]
16  o Add CURLOPT_RESOLVER_START_FUNCTION and CURLOPT_RESOLVER_START_DATA [39]
17
18 This release includes the following bugfixes:
19
20  o openldap: check ldap_get_attribute_ber() results for NULL before using [50]
21  o FTP: reject path components with control codes [51]
22  o readwrite: make sure excess reads don't go beyond buffer end [52]
23  o lib555: drop text conversion and encode data as ascii codes [1]
24  o lib517: make variable static to avoid compiler warning
25  o lib544: sync ascii code data with textual data [1]
26  o GSKit: restore pinnedpubkey functionality [2]
27  o darwinssl: Don't import client certificates into Keychain on macOS [3]
28  o parsedate: fix date parsing for systems with 32 bit long [4]
29  o openssl: fix pinned public key build error in FIPS mode [5]
30  o SChannel/WinSSL: Implement public key pinning [6]
31  o cookies: remove verbose "cookie size:" output
32  o progress-bar: don't use stderr explicitly, use bar->out [7]
33  o Fixes for MSDOS
34  o build: open VC15 projects with VS 2017
35  o curl_ctype: private is*() type macros and functions [8]
36  o configure: set PATH_SEPARATOR to colon for PATH w/o separator [9]
37  o winbuild: make linker generate proper PDB [11]
38  o curl_easy_reset: clear digest auth state [12]
39  o curl/curl.h: fix comment typo for CURLOPT_DNS_LOCAL_IP6 [14]
40  o range: commonize FTP and FILE range handling [15]
41  o progress-bar docs: update to match implementation [16]
42  o fnmatch: do not match the empty string with a character set
43  o fnmatch: accept an alphanum to be followed by a non-alphanum in char set [17]
44  o build: fix termios issue on android cross-compile [18]
45  o getdate: return -1 for out of range [19]
46  o formdata: use the mime-content type function [20]
47  o time-cond: fix reading the file modification time on Windows [21]
48  o build-openssl.bat: Extend VC15 support to include Enterprise and Professional
49  o build-wolfssl.bat: Extend VC15 support to include Enterprise and Professional
50  o openssl: Don't add verify locations when verifypeer==0
51  o fnmatch: optimize processing of consecutive *s and ?s pattern characters [22]
52  o schannel: fix compiler warnings [23]
53  o content_encoding: Add "none" alias to "identity" [24]
54  o get_posix_time: only check for overflows if they can happen
55  o http_chunks: don't write chunks twice with CURLOPT_HTTP_TRANSFER_DECODING [25]
56  o README: language fix [26]
57  o sha256: build with OpenSSL < 0.9.8 [27]
58  o smtp: fix processing of initial dot in data [28]
59  o --tlsauthtype: works only if libcurl is built with TLS-SRP support [29]
60  o tests: new tests for http raw mode [30]
61  o libcurl-security.3: man page discussion security concerns when using libcurl
62  o curl_gssapi: make sure this file too uses our *printf()
63  o BINDINGS: fix curb link (and remove ruby-curl-multi)
64  o nss: use PK11_CreateManagedGenericObject() if available [31]
65  o travis: add build with iconv enabled [32]
66  o ssh: add two missing state names [33]
67  o CURLOPT_HEADERFUNCTION.3: mention folded headers
68  o http: fix the max header length detection logic [34]
69  o header callback: don't chop headers into smaller pieces [35]
70  o CURLOPT_HEADER.3: clarify problems with different data sizes
71  o curl --version: show PSL if the run-time lib has it enabled
72  o examples/sftpuploadresume: resume upload via CURLOPT_APPEND [36]
73  o Return error if called recursively from within callbacks [38]
74  o sasl: prefer PLAIN mechanism over LOGIN
75  o winbuild: Use CALL to run batch scripts [40]
76  o curl_share_setopt.3: connection cache is shared within multi handles
77  o winbuild: Use macros for the names of some build utilities [41]
78  o projects/README: remove reference to dead IDN link/package [42]
79  o lib655: silence compiler warning [43]
80  o configure: Fix version check for OpenSSL 1.1.1
81  o docs/MANUAL: formfind.pl is not accessible on the site anymore [44]
82  o unit1309: fix warning on Windows x64 [45]
83  o unit1307: proper cleanup on OOM to fix torture tests
84  o curl_ctype: fix macro redefinition warnings
85  o build: get CFLAGS (including -werror) used for examples and tests [46]
86  o NO_PROXY: fix for IPv6 numericals in the URL [47]
87  o krb5: use nondeprecated functions [48]
88  o winbuild: prefer documented zlib library names [49]
89  o http2: mark the connection for close on GOAWAY [53]
90  o limit-rate: kick in even before "limit" data has been received [54]
91  o HTTP: allow "header;" to replace an internal header with a blank one [55]
92  o http2: verbose output new MAX_CONCURRENT_STREAMS values
93  o SECURITY: distros' max embargo time is 14 days
94  o curl tool: accept --compressed also if Brotli is enabled and zlib is not
95  o WolfSSL: adding TLSv1.3 [56]
96  o checksrc.pl: add -i and -m options
97  o CURLOPT_COOKIEFILE.3: "-" as file name means stdin
98
99 This release includes the following known bugs:
100
101  o see docs/KNOWN_BUGS (https://curl.haxx.se/docs/knownbugs.html)
102
103 This release would not have looked like this without help, code, reports and
104 advice from friends like these:
105
106   Adam Marcionek, Alessandro Ghedini, Anders Bakken, Aron Bergman, Ben Greear,
107   Björn Stenberg, Bruno Grasselli, Dair Grant, Dan Fandrich, Daniel Stenberg,
108   Dario Weisser, Douglas Mencken, Duy Phan Thanh, Earnestly on github,
109   Erik Johansson, Francisco Sedano, Gisle Vanem, Guido Berhoerster,
110   Henry Roeland, Kamil Dudka, Klaus Stein, Łukasz Domeradzki, Marcel Raad,
111   Martin Dreher, Max Dymond, Michael Kaufmann, Michał Janiszewski,
112   Mohammad AlSaleh, Patrick Monnerat, Patrick Schlangen, Ray Satiro,
113   Richard Alcock, Richard Moore, Rod Widdowson, Ruurd Beerstra,
114   Sergii Kavunenko, Sergio Borghese, Somnath Kundu, steelman on github,
115   Stefan Kanthak, Steve Holme, Tim Mcdonough, Travis Burtrum, Viktor Szakats,
116   刘佩东,
117   (45 contributors)
118
119         Thanks! (and sorry if I forgot to mention someone)
120
121 References to bug reports and discussions on issues:
122
123  [1] = https://curl.haxx.se/bug/?i=1872
124  [2] = https://curl.haxx.se/bug/?i=2263
125  [3] = https://curl.haxx.se/bug/?i=2085
126  [4] = https://curl.haxx.se/bug/?i=2250
127  [5] = https://curl.haxx.se/bug/?i=2258
128  [6] = https://curl.haxx.se/bug/?i=1429
129  [7] = https://github.com/curl/curl/commit/993dd5651a6c853bfe3870f6a69c7b329fa4e8ce#commitcomment-27070080
130  [8] = https://curl.haxx.se/bug/?i=2269
131  [9] = https://curl.haxx.se/bug/?i=2202
132  [10] = https://curl.haxx.se/bug/?i=2268
133  [11] = https://curl.haxx.se/bug/?i=2274
134  [12] = https://curl.haxx.se/mail/lib-2018-01/0074.html
135  [13] = https://curl.haxx.se/bug/?i=2238
136  [14] = https://curl.haxx.se/bug/?i=2275
137  [15] = https://curl.haxx.se/bug/?i=2205
138  [16] = https://curl.haxx.se/bug/?i=2271
139  [17] = https://curl.haxx.se/mail/lib-2018-01/0114.html
140  [18] = https://curl.haxx.se/mail/lib-2018-01/0122.html
141  [19] = https://curl.haxx.se/bug/?i=2278
142  [20] = https://curl.haxx.se/bug/?i=2282
143  [21] = https://curl.haxx.se/bug/?i=2164
144  [22] = https://curl.haxx.se/bug/?i=2291
145  [23] = https://curl.haxx.se/bug/?i=2296
146  [24] = https://curl.haxx.se/bug/?i=2298
147  [25] = https://curl.haxx.se/bug/?i=2303
148  [26] = https://curl.haxx.se/bug/?i=2300
149  [27] = https://curl.haxx.se/bug/?i=2305
150  [28] = https://curl.haxx.se/bug/?i=2304
151  [29] = https://bugzilla.redhat.com/1542256
152  [30] = https://curl.haxx.se/bug/?i=2303
153  [31] = https://bugzilla.redhat.com/1510247
154  [32] = https://curl.haxx.se/bug/?i=1872
155  [33] = https://curl.haxx.se/bug/?i=2312
156  [34] = https://curl.haxx.se/mail/lib-2018-02/0056.html
157  [35] = https://curl.haxx.se/bug/?i=2314
158  [36] = https://curl.haxx.se/mail/lib-2018-02/0072.html
159  [37] = https://curl.haxx.se/bug/?i=2260
160  [38] = https://curl.haxx.se/bug/?i=2302
161  [39] = https://curl.haxx.se/bug/?i=2311
162  [40] = https://curl.haxx.se/bug/?i=2330
163  [41] = https://curl.haxx.se/bug/?i=2329
164  [42] = https://curl.haxx.se/bug/?i=2325
165  [43] = https://curl.haxx.se/bug/?i=2335
166  [44] = https://curl.haxx.se/bug/?i=2342
167  [45] = https://curl.haxx.se/bug/?i=2341
168  [46] = https://curl.haxx.se/bug/?i=2337
169  [47] = https://curl.haxx.se/bug/?i=2353
170  [48] = https://curl.haxx.se/bug/?i=2356
171  [49] = https://curl.haxx.se/bug/?i=2354
172  [50] = https://curl.haxx.se/docs/adv_2018-97a2.html
173  [51] = https://curl.haxx.se/docs/adv_2018-9cd6.html
174  [52] = https://curl.haxx.se/docs/adv_2018-b047.html
175  [53] = https://curl.haxx.se/bug/?i=2365
176  [54] = https://curl.haxx.se/bug/?i=2371
177  [55] = https://curl.haxx.se/bug/?i=2357
178  [56] = https://curl.haxx.se/bug/?i=2349