• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1curl and libcurl 7.64.1
2
3 Public curl releases:         180
4 Command line options:         221
5 curl_easy_setopt() options:   267
6 Public functions in libcurl:  80
7 Contributors:                 1929
8
9This release includes the following changes:
10
11 o alt-svc: experiemental support added [74]
12 o configure: add --with-amissl [84]
13
14This release includes the following bugfixes:
15
16 o AppVeyor: add MinGW-w64 and classic Mingw builds [55]
17 o AppVeyor: switch VS 2015 builds to VS 2017 image [49]
18 o CURLU: fix NULL dereference when used over proxy [73]
19 o Curl_easy: remove req.maxfd - never used! [58]
20 o Curl_now: figure out windows version in win32_init: [11]
21 o Curl_resolv: fix a gcc -Werror=maybe-uninitialized warning [20]
22 o DoH: inherit some SSL options from user's easy handle [80]
23 o Secure Transport: no more "darwinssl" [56]
24 o Secure Transport: tvOS 11 is required for ALPN support [94]
25 o cirrus: Added FreeBSD builds using Cirrus CI
26 o cleanup: make local functions static [5]
27 o cli tool: do not use mime.h private structures [27]
28 o cmdline-opts/proxytunnel.d: the option tunnnels all protocols [83]
29 o configure: add additional libraries to check for LDAP support [45]
30 o configure: remove the unused fdopen macro [40]
31 o configure: show features as well in the final summary [15]
32 o conncache: use conn->data to know if a transfer owns it [95]
33 o connection: never reuse CONNECT_ONLY connections [35]
34 o connection_check: restore original conn->data after the check [14]
35 o connection_check: set ->data to the transfer doing the check [3]
36 o cookie: Add support for cookie prefixes [29]
37 o cookies: dotless names can set cookies again [81]
38 o cookies: fix NULL dereference if flushing cookies with no CookieInfo set [47]
39 o curl.1: --user and --proxy-user are hidden from ps output [86]
40 o curl.1: mark the argument to --cookie as <data|filename> [87]
41 o curl.h: use __has_declspec_attribute for shared builds [52]
42 o curl: display --version features sorted alphabetically [51]
43 o curl: fix FreeBSD compiler warning in the --xattr code [2]
44 o curl: remove MANUAL from -M output [38]
45 o curl_easy_duphandle.3: clarify that a duped handle has no shares [64]
46 o curl_multi_remove_handle.3: use at any time, just not from within callbacks
47 o curl_url.3: this API is not experimental anymore
48 o dns: release sharelock as soon as possible [1]
49 o docs: update max-redirs.d phrasing [59]
50 o easy: fix win32 init to work without CURL_GLOBAL_WIN32 [30]
51 o examples/10-at-a-time.c: improve readability and simplify
52 o examples/cacertinmem.c: use multiple certificates for loading CA-chain [54]
53 o examples/crawler: Fix the Accept-Encoding setting
54 o examples/ephiperfifo.c: various fixes [63]
55 o examples/externalsocket: add missing close socket calls [78]
56 o examples/http2-download: cleaned up
57 o examples/http2-serverpush: add some sensible error checks [31]
58 o examples/http2-upload: cleaned up
59 o examples/httpcustomheader: Value stored to 'res' is never read
60 o examples/postinmemory: Potential leak of memory pointed to by 'chunk.memory'
61 o examples/sftpuploadresume: Value stored to 'result' is never read
62 o examples: only include <curl/curl.h> [70]
63 o examples: remove recursive calls to curl_multi_socket_action [42]
64 o examples: remove superfluous null-pointer checks
65 o file: fix "Checking if unsigned variable 'readcount' is less than zero." [90]
66 o fnmatch: disable if FTP is disabled [25]
67 o gnutls: remove call to deprecated gnutls_compression_get_name [66]
68 o gopher: remove check for path == NULL [69]
69 o gssapi: fix deprecated header warnings [16]
70 o hostip: make create_hostcache_id avoid alloc + free [4]
71 o http2: multi_connchanged() moved from multi.c, only used for h2 [21]
72 o http2: verify :athority in push promise requests [37]
73 o http: make adding a blank header thread-safe [33]
74 o http: send payload when (proxy) authentication is done [89]
75 o http: set state.infilesize when sending multipart formposts [57]
76 o makefile: make checksrc and hugefile commands "silent" [85]
77 o mbedtls: make it build even if MBEDTLS_VERSION_C isn't set [24]
78 o mbedtls: release sessionid resources on error [28]
79 o memdebug: log pointer before freeing its data [91]
80 o memdebug: make debug-specific functions use curl_dbg_ prefix [82]
81 o mime: put the boundary buffer into the curl_mime struct [18]
82 o multi: call multi_done on connect timeouts, fixes CURLINFO_TOTAL_TIME [43]
83 o multi: remove verbose "Expire in" ... messages [23]
84 o multi: removed unused code for request retries [79]
85 o multi: support verbose conncache closure handle [72]
86 o negotiate: fix for HTTP POST with Negotiate [88]
87 o openssl: add support for TLS ASYNC state [46]
88 o openssl: if cert type is ENG and no key specified, key is ENG too [93]
89 o pretransfer: don't strlen() POSTFIELDS set for GET requests [22]
90 o rand: Fix a mismatch between comments in source and header [32]
91 o runtests: detect "schannel" as an alias for "winssl" [50]
92 o schannel: be quiet - remove verbose output [19]
93 o schannel: close TLS before removing conn from cache [10]
94 o schannel: support CALG_ECDH_EPHEM algorithm [44]
95 o scripts/completion.pl: also generate fish completion file [67]
96 o singlesocket: fix the 'sincebefore' placement [36]
97 o source: fix two 'nread' may be used uninitialized warnings [68]
98 o ssh: fix Condition '!status' is always true [60]
99 o ssh: loop the state machine if not done and not blocking [71]
100 o strerror: make the strerror function use local buffers [48]
101 o system_win32: move win32_init here from easy.c [65]
102 o test578: make it read data from the correct test
103 o tests: Fixed XML validation errors in some test files
104 o tests: add stderr comparison to the test suite [26]
105 o tests: fix multiple may be used uninitialized warnings
106 o threaded-resolver: shutdown the resolver thread without error message [61]
107 o tool_cb_wrt: fix writing to Windows null device NUL [96]
108 o tool_getpass: termios.h is present on AmigaOS 3, but no tcgetattr/tcsetattr [84]
109 o tool_operate: build on AmigaOS [84]
110 o tool_operate: fix typecheck warning [9]
111 o transfer.c: do not compute length of undefined hex buffer
112 o travis: add build using gnutls [75]
113 o travis: add scan-build [13]
114 o travis: bump the used wolfSSL version to 4.0.0 [92]
115 o travis: enable valgrind for the iconv tests [12]
116 o travis: use updated compiler versions: clang 7 and gcc 8 [77]
117 o unit1307: require FTP support [17]
118 o unit1651: survive curl_easy_init() fails
119 o url/idnconvert: remove scan for <= 32 ascii values [6]
120 o url: change conn shutdown order to ensure SOCKETFUNCTION callbacks [39]
121 o urlapi: reduce variable scope, remove unreachable 'break' [7]
122 o urldata: convert bools to bitfields and move to end [53]
123 o urldata: simplify bytecounters [62]
124 o urlglob: Argument with 'nonnull' attribute passed null
125 o version.c: silent scan-build even when librtmp is not enabled
126 o vtls: rename some of the SSL functions [84]
127 o wolfssl: stop custom-adding curves [41]
128 o x509asn1: "Dereference of null pointer"
129 o x509asn1: cleanup and unify code layout [34]
130 o zsh.pl: escape ':' character [8]
131 o zsh.pl: update regex to better match curl -h output [8]
132
133This release includes the following known bugs:
134
135 o see docs/KNOWN_BUGS (https://curl.haxx.se/docs/knownbugs.html)
136
137This release would not have looked like this without help, code, reports and
138advice from friends like these:
139
140  accountantM on github, Alessandro Ghedini, Andre Guibert de Bruet,
141  Arnaud Rebillout, Bernd Mueller, Björn Stenberg, buzo-ffm on github,
142  Chris Araman, Christian Schmitz, Chris Young, d912e3 on github, Dan Fandrich,
143  Daniel Gustafsson, Daniel Lublin, Daniel Stenberg, David Garske,
144  David Woodhouse, Dominik Hölzl, Don J Olmstead, Eric Curtin, Frank Gevaerts,
145  Gisle Vanem, James Brown, Jan Alexander Steffens, jnbr on github,
146  MAntoniak on github, Marcel Raad, Marc Schlatter, Matt McClure, Michael Felt,
147  Michael Schmid, Michael Wallner, Michał Antoniak, nedres on github,
148  nianxuejie on github, Nick Zitzmann, Nicolas Grekas, Patrick Monnerat,
149  Paul Groke, Pavel Löbl, Ray Satiro, Renaud Allard, Romain Geissler,
150  Sara Golemon, Simon Legner, tholin on github, Tim Rühsen, Volker Schmid,
151  wesinator on github,
152  (49 contributors)
153
154        Thanks! (and sorry if I forgot to mention someone)
155
156References to bug reports and discussions on issues:
157
158 [1] = https://curl.haxx.se/bug/?i=3516
159 [2] = https://curl.haxx.se/bug/?i=3550
160 [3] = https://curl.haxx.se/bug/?i=3541
161 [4] = https://curl.haxx.se/bug/?i=3544
162 [5] = https://curl.haxx.se/bug/?i=3538
163 [6] = https://curl.haxx.se/bug/?i=3539
164 [7] = https://curl.haxx.se/bug/?i=3540
165 [8] = https://bugs.debian.org/921452
166 [9] = https://curl.haxx.se/bug/?i=3534
167 [10] = https://curl.haxx.se/bug/?i=3412
168 [11] = https://curl.haxx.se/bug/?i=3572
169 [12] = https://curl.haxx.se/bug/?i=3571
170 [13] = https://curl.haxx.se/bug/?i=3564
171 [14] = https://curl.haxx.se/bug/?i=3542
172 [15] = https://curl.haxx.se/bug/?i=3569
173 [16] = https://curl.haxx.se/bug/?i=3566
174 [17] = https://curl.haxx.se/bug/?i=3565
175 [18] = https://curl.haxx.se/bug/?i=3561
176 [19] = https://curl.haxx.se/bug/?i=3552
177 [20] = https://curl.haxx.se/bug/?i=3562
178 [21] = https://curl.haxx.se/bug/?i=3557
179 [22] = https://curl.haxx.se/bug/?i=3548
180 [23] = https://curl.haxx.se/mail/archive-2019-02/0013.html
181 [24] = https://curl.haxx.se/bug/?i=3553
182 [25] = https://curl.haxx.se/bug/?i=3551
183 [26] = https://curl.haxx.se/bug/?i=3536
184 [27] = https://curl.haxx.se/bug/?i=3532
185 [28] = https://curl.haxx.se/bug/?i=3574
186 [29] = https://curl.haxx.se/bug/?i=3554
187 [30] = https://curl.haxx.se/bug/?i=3313
188 [31] = https://curl.haxx.se/bug/?i=3580
189 [32] = https://curl.haxx.se/bug/?i=3584
190 [33] = https://curl.haxx.se/bug/?i=3578
191 [34] = https://curl.haxx.se/bug/?i=3582
192 [35] = https://curl.haxx.se/mail/lib-2019-02/0064.html
193 [36] = https://curl.haxx.se/bug/?i=3585
194 [37] = https://curl.haxx.se/bug/?i=3577
195 [38] = https://curl.haxx.se/bug/?i=3587
196 [39] = https://curl.haxx.se/mail/lib-2019-02/0101.html
197 [40] = https://curl.haxx.se/bug/?i=3600
198 [41] = https://curl.haxx.se/bug/?i=3599
199 [42] = https://curl.haxx.se/bug/?i=3537
200 [43] = https://curl.haxx.se/bug/?i=3602
201 [44] = https://curl.haxx.se/bug/?i=3608
202 [45] = https://curl.haxx.se/bug/?i=3595
203 [46] = https://curl.haxx.se/bug/?i=3591
204 [47] = https://curl.haxx.se/bug/?i=3613
205 [48] = https://curl.haxx.se/bug/?i=3612
206 [49] = https://curl.haxx.se/bug/?i=3606
207 [50] = https://curl.haxx.se/bug/?i=3609
208 [51] = https://curl.haxx.se/bug/?i=3611
209 [52] = https://curl.haxx.se/bug/?i=3616
210 [53] = https://curl.haxx.se/bug/?i=3610
211 [54] = https://curl.haxx.se/bug/?i=3421
212 [55] = https://curl.haxx.se/bug/?i=3623
213 [56] = https://curl.haxx.se/bug/?i=3619
214 [57] = https://curl.haxx.se/mail/archive-2019-02/0023.html
215 [58] = https://curl.haxx.se/bug/?i=3626
216 [59] = https://curl.haxx.se/bug/?i=3631
217 [60] = https://curl.haxx.se/bug/?i=3628
218 [61] = https://curl.haxx.se/bug/?i=3629
219 [62] = https://curl.haxx.se/bug/?i=3627
220 [63] = https://curl.haxx.se/bug/?i=3632
221 [64] = https://curl.haxx.se/bug/?i=3592
222 [65] = https://curl.haxx.se/bug/?i=3625
223 [66] = https://curl.haxx.se/bug/?i=3636
224 [67] = https://curl.haxx.se/bug/?i=3545
225 [68] = https://curl.haxx.se/bug/?i=3546
226 [69] = https://curl.haxx.se/bug/?i=3617
227 [70] = https://curl.haxx.se/bug/?i=3645
228 [71] = https://curl.haxx.se/bug/?i=3506
229 [72] = https://curl.haxx.se/bug/?i=3618
230 [73] = https://curl.haxx.se/bug/?i=3641
231 [74] = https://curl.haxx.se/bug/?i=3498
232 [76] = https://curl.haxx.se/bug/?i=3637
233 [77] = https://curl.haxx.se/bug/?i=3670
234 [78] = https://curl.haxx.se/bug/?i=3663
235 [79] = https://curl.haxx.se/bug/?i=3666
236 [80] = https://curl.haxx.se/bug/?i=3660
237 [81] = https://curl.haxx.se/bug/?i=3649
238 [82] = https://curl.haxx.se/bug/?i=3656
239 [83] = https://curl.haxx.se/bug/?i=3658
240 [84] = https://curl.haxx.se/bug/?i=3677
241 [85] = https://curl.haxx.se/bug/?i=3681
242 [86] = https://curl.haxx.se/bug/?i=3680
243 [87] = https://curl.haxx.se/bug/?i=3682
244 [88] = https://curl.haxx.se/bug/?i=1261
245 [89] = https://curl.haxx.se/bug/?i=2431
246 [90] = https://curl.haxx.se/bug/?i=3672
247 [91] = https://curl.haxx.se/bug/?i=3671
248 [92] = https://curl.haxx.se/bug/?i=3697
249 [93] = https://curl.haxx.se/bug/?i=3692
250 [94] = https://curl.haxx.se/bug/?i=3689
251 [95] = https://curl.haxx.se/bug/?i=3686
252 [96] = https://github.com/curl/curl/issues/3175#issuecomment-439068724
253
254