]> granicus.if.org Git - curl/log
curl
5 years agoHTTP3: initial (experimental) support
Daniel Stenberg [Sun, 21 Jul 2019 21:48:58 +0000 (23:48 +0200)]
HTTP3: initial (experimental) support

USe configure --with-ngtcp2 or --with-quiche

Using either option will enable a HTTP3 build.
Co-authored-by: Alessandro Ghedini <alessandro@ghedini.me>
Closes #3500

5 years agocurl: remove dead code
Daniel Stenberg [Sun, 21 Jul 2019 11:11:23 +0000 (13:11 +0200)]
curl: remove dead code

The loop never loops (since b889408500), pointed out by Coverity (CID
1451702)

Closes #4133

5 years agodocs/PARALLEL-TRANSFERS: correct the version number
Daniel Stenberg [Sat, 20 Jul 2019 17:19:56 +0000 (19:19 +0200)]
docs/PARALLEL-TRANSFERS: correct the version number

5 years agodocs/PARALLEL-TRANSFERS: added
Daniel Stenberg [Sat, 20 Jul 2019 17:14:00 +0000 (19:14 +0200)]
docs/PARALLEL-TRANSFERS: added

5 years agocurl: support parallel transfers
Daniel Stenberg [Sat, 20 Jul 2019 17:14:00 +0000 (19:14 +0200)]
curl: support parallel transfers

This is done by making sure each individual transfer is first added to a
linked list as then they can be performed serially, or at will, in
parallel.

Closes #3804

5 years agodocs/MANUAL.md: converted to markdown from plain text
Daniel Stenberg [Sat, 20 Jul 2019 11:13:37 +0000 (13:13 +0200)]
docs/MANUAL.md: converted to markdown from plain text

... will make it render as a nicer web page.

Closes #4131

5 years agocurl_version_info: provide nghttp2 details
Daniel Stenberg [Thu, 18 Jul 2019 08:43:16 +0000 (10:43 +0200)]
curl_version_info: provide nghttp2 details

Introducing CURLVERSION_SIXTH with nghttp2 info.

Closes #4121

5 years agobump: start working on 7.66.0
Daniel Stenberg [Fri, 19 Jul 2019 21:52:34 +0000 (23:52 +0200)]
bump: start working on 7.66.0

5 years agosource: remove names from source comments
Daniel Stenberg [Fri, 19 Jul 2019 10:05:05 +0000 (12:05 +0200)]
source: remove names from source comments

Several reasons:

- we can't add everyone who's helping out so its unfair to just a few
selected ones.
- we already list all helpers in THANKS and in RELEASE-NOTES for each
release
- we don't want to give the impression that some parts of the code is
"owned" or "controlled" by specific persons

Assisted-by: Daniel Gustafsson
Closes #4129

5 years agoRELEASE-NOTES: 7.65.3 curl-7_65_3
Daniel Stenberg [Fri, 19 Jul 2019 09:32:23 +0000 (11:32 +0200)]
RELEASE-NOTES: 7.65.3

5 years agoTHANKS: 7.65.3 status
Daniel Stenberg [Fri, 19 Jul 2019 09:32:15 +0000 (11:32 +0200)]
THANKS: 7.65.3 status

5 years agoprogress: make the progress meter appear again
Daniel Stenberg [Thu, 18 Jul 2019 21:23:35 +0000 (23:23 +0200)]
progress: make the progress meter appear again

Fix regression caused by 21080e1

Reported-by: Chih-Hsuan Yen
Fixes #4122
Closes #4124

5 years agoversion: bump to 7.65.3
Daniel Stenberg [Thu, 18 Jul 2019 22:40:51 +0000 (00:40 +0200)]
version: bump to 7.65.3

5 years agoRELEASE-NOTES: Contributors or now 1990
Daniel Stenberg [Wed, 17 Jul 2019 07:34:49 +0000 (09:34 +0200)]
RELEASE-NOTES: Contributors or now 1990

5 years agoRELEASE-NOTES: 7.65.2 curl-7_65_2
Daniel Stenberg [Sun, 14 Jul 2019 22:59:09 +0000 (00:59 +0200)]
RELEASE-NOTES: 7.65.2

5 years agoTHANKS: add contributors from 7.65.2
Daniel Stenberg [Tue, 16 Jul 2019 09:48:41 +0000 (11:48 +0200)]
THANKS: add contributors from 7.65.2

5 years agocmake: Fix finding Brotli on case-sensitive file systems
aasivov [Wed, 17 Jul 2019 06:01:45 +0000 (02:01 -0400)]
cmake: Fix finding Brotli on case-sensitive file systems

- Find package "Brotli" instead of "BROTLI" since the former is the
  casing used for CMake/FindBrotli.cmake, and otherwise find_package
  may fail on a case-sensitive file system.

Fixes https://github.com/curl/curl/issues/4117

5 years agoCURLOPT_RANGE.3: Caution against using it for HTTP PUT
Jay Satiro [Wed, 17 Jul 2019 05:45:26 +0000 (01:45 -0400)]
CURLOPT_RANGE.3: Caution against using it for HTTP PUT

AFAICT CURLOPT_RANGE does not support ranged HTTP PUT uploads so I've
cautioned against using it for that purpose and included a workaround.

Bug: https://curl.haxx.se/mail/lib-2019-04/0075.html
Reported-by: Christopher Head
Closes https://github.com/curl/curl/issues/3814

5 years agoCURLOPT_SEEKDATA.3: fix variable name
Stefano Simonelli [Tue, 16 Jul 2019 14:34:09 +0000 (16:34 +0200)]
CURLOPT_SEEKDATA.3: fix variable name

Closes https://github.com/curl/curl/pull/4118

5 years agoCIPHERS.md: Explain Schannel error SEC_E_ALGORITHM_MISMATCH
georgeok [Wed, 10 Jul 2019 11:34:17 +0000 (14:34 +0300)]
CIPHERS.md: Explain Schannel error SEC_E_ALGORITHM_MISMATCH

If the SSL backend is Schannel and the user specifies an Schannel CALG_
that is not supported by the protocol or the server then curl returns
CURLE_SSL_CONNECT_ERROR (35) SEC_E_ALGORITHM_MISMATCH.

Fixes https://github.com/curl/curl/issues/3389
Closes https://github.com/curl/curl/pull/4106

5 years agonss: inspect returnvalue of token check
Daniel Gustafsson [Fri, 12 Jul 2019 14:13:31 +0000 (16:13 +0200)]
nss: inspect returnvalue of token check

PK11_IsPresent() checks for the token for the given slot is available,
and sets needlogin flags for the PK11_Authenticate() call.  Should it
return false, we should however treat it as an error and bail out.

Closes https://github.com/curl/curl/pull/4110

5 years agodocs: Explain behavior change in --tlsv1. options since 7.54
Jay Satiro [Tue, 16 Jul 2019 16:27:35 +0000 (12:27 -0400)]
docs: Explain behavior change in --tlsv1. options since 7.54

Since 7.54 --tlsv1. options use the specified version or later, however
older versions of curl documented it as using just the specified version
which may or may not have happened depending on the TLS library.
Document this discrepancy to allay confusion for users familiar with the
old documentation that expect just the specified version.

Fixes https://github.com/curl/curl/issues/4097
Closes https://github.com/curl/curl/pull/4119

5 years agolibcurl: Restrict redirect schemes (follow-up)
Jay Satiro [Tue, 16 Jul 2019 07:35:54 +0000 (03:35 -0400)]
libcurl: Restrict redirect schemes (follow-up)

- Allow FTPS on redirect.

- Update default allowed redirect protocols in documentation.

Follow-up to 6080ea0.

Ref: https://github.com/curl/curl/pull/4094

Closes https://github.com/curl/curl/pull/4115

5 years agotest1173: make it also check all libcurl option man pages
Daniel Stenberg [Tue, 16 Jul 2019 09:23:59 +0000 (11:23 +0200)]
test1173: make it also check all libcurl option man pages

... and adjust those that cause errors

Closes #4116

5 years agocurl: only accept COLUMNS less than 10000
Daniel Stenberg [Mon, 15 Jul 2019 21:52:43 +0000 (23:52 +0200)]
curl: only accept COLUMNS less than 10000

... as larger values would rather indicate something silly (and could
potentially cause buffer problems).

Reported-by: pendrek at hackerone
Closes #4114

5 years agodist: add manpage-syntax.pl
Daniel Stenberg [Mon, 15 Jul 2019 13:24:25 +0000 (15:24 +0200)]
dist: add manpage-syntax.pl

follow-up to 7fb66c403

5 years agotest1173: detect some basic man page format mistakes
Daniel Stenberg [Sun, 14 Jul 2019 23:38:39 +0000 (01:38 +0200)]
test1173: detect some basic man page format mistakes

Triggered by PR #4111

Closes #4113

5 years agodocs: Fix missing lines caused by undefined macros
Bjarni Ingi Gislason [Tue, 2 Apr 2019 21:55:11 +0000 (21:55 +0000)]
docs: Fix missing lines caused by undefined macros

- Escape apostrophes at line start.

Some lines begin with a "'" (apostrophe, single quote), which is then
interpreted as a control character in *roff.

Such lines are interpreted as being a call to a macro, and if
undefined, the lines are removed from the output.

Bug: https://bugs.debian.org/926352
Signed-off-by: Bjarni Ingi Gislason <bjarniig@rhi.hi.is>
Submitted-by: Alessandro Ghedini
Closes https://github.com/curl/curl/pull/4111

5 years agolibcurl-security.3: update to new CURLOPT_REDIR_PROTOCOLS defaults
Daniel Stenberg [Sun, 14 Jul 2019 14:32:50 +0000 (16:32 +0200)]
libcurl-security.3: update to new CURLOPT_REDIR_PROTOCOLS defaults

follow-up to 6080ea098

5 years agolibcurl: Add testcase for gopher redirects
Linos Giannopoulos [Wed, 10 Jul 2019 11:11:57 +0000 (14:11 +0300)]
libcurl: Add testcase for gopher redirects

The testcase ensures that redirects to CURLPROTO_GOPHER won't be
allowed, by default, in the future. Also, curl is being used
for convenience while keeping the testcases DRY.

The expected error code is CURLE_UNSUPPORTED_PROTOCOL when the client is
redirected to CURLPROTO_GOPHER

Signed-off-by: Linos Giannopoulos <lgian@skroutz.gr>
5 years agolibcurl: Restrict redirect schemes
Linos Giannopoulos [Fri, 5 Jul 2019 14:48:07 +0000 (17:48 +0300)]
libcurl: Restrict redirect schemes

All protocols except for CURLPROTO_FILE/CURLPROTO_SMB and their TLS
counterpart were allowed for redirect. This vastly broadens the
exploitation surface in case of a vulnerability such as SSRF [1], where
libcurl-based clients are forced to make requests to arbitrary hosts.

For instance, CURLPROTO_GOPHER can be used to smuggle any TCP-based
protocol by URL-encoding a payload in the URI. Gopher will open a TCP
connection and send the payload.

Only HTTP/HTTPS and FTP are allowed. All other protocols have to be
explicitly enabled for redirects through CURLOPT_REDIR_PROTOCOLS.

[1]: https://www.acunetix.com/blog/articles/server-side-request-forgery-vulnerability/

Signed-off-by: Linos Giannopoulos <lgian@skroutz.gr>
Closes #4094

5 years agoopenssl: define HAVE_SSL_GET_SHUTDOWN based on version number
Zenju [Tue, 9 Jul 2019 09:24:41 +0000 (11:24 +0200)]
openssl: define HAVE_SSL_GET_SHUTDOWN based on version number

Closes #4100

5 years agohttp: allow overriding timecond with custom header
Peter Simonyi [Wed, 10 Jul 2019 22:42:35 +0000 (18:42 -0400)]
http: allow overriding timecond with custom header

With CURLOPT_TIMECONDITION set, a header is automatically added (e.g.
If-Modified-Since).  Allow this to be replaced or suppressed with
CURLOPT_HTTPHEADER.

Fixes #4103
Closes #4109

5 years agosmb: Use the correct error code for access denied on file open
Juergen Hoetzel [Sun, 7 Jul 2019 15:10:24 +0000 (17:10 +0200)]
smb: Use the correct error code for access denied on file open

- Return CURLE_REMOTE_ACCESS_DENIED for SMB access denied on file open.

Prior to this change CURLE_REMOTE_FILE_NOT_FOUND was returned instead.

Closes https://github.com/curl/curl/pull/4095

5 years agoDEPRECATE: fixup versions and spelling
Daniel Gustafsson [Wed, 10 Jul 2019 11:12:40 +0000 (13:12 +0200)]
DEPRECATE: fixup versions and spelling

Correctly set the July 17 version to 7.65.2, and update spelling to
be consistent. Also fix a typo.

Closes https://github.com/curl/curl/pull/4107

5 years agosystem_win32: fix clang warning
Gisle Vanem [Thu, 11 Jul 2019 06:26:57 +0000 (02:26 -0400)]
system_win32: fix clang warning

- Declare variable in header as extern.

Bug: https://github.com/curl/curl/commit/48b9ea4#commitcomment-34084597

5 years agoheaders: Remove no longer exported functions
Daniel Gustafsson [Wed, 10 Jul 2019 17:26:40 +0000 (19:26 +0200)]
headers: Remove no longer exported functions

There were a leftover few prototypes of Curl_ functions that we used to
export but no longer do, this removes those prototypes and cleans up any
comments still referring to them.

Curl_write32_le(), Curl_strcpy_url(), Curl_strlen_url(), Curl_up_free()
Curl_concat_url(), Curl_detach_connnection(), Curl_http_setup_conn()
were made static in 05b100aee247bb9bec8e9a1b0166496aa4248d1c.
Curl_http_perhapsrewind() made static in 574aecee208f79d391f10d57520b3.

For the remainder, I didn't trawl the Git logs hard enough to capture
their exact time of deletion, but they were all gone: Curl_splayprint(),
Curl_http2_send_request(), Curl_global_host_cache_dtor(),
Curl_scan_cache_used(), Curl_hostcache_destroy(), Curl_second_connect(),
Curl_http_auth_stage() and Curl_close_connections().

Closes #4096
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
5 years agoCMake: fix typos and spelling
Daniel Gustafsson [Tue, 9 Jul 2019 20:27:59 +0000 (22:27 +0200)]
CMake: fix typos and spelling

5 years agoCMake: Convert errant elseif() to else()
Kyle Edwards [Tue, 9 Jul 2019 14:03:06 +0000 (10:03 -0400)]
CMake: Convert errant elseif() to else()

CMake interprets an elseif() with no arguments as elseif(FALSE),
resulting in the elseif() block not being executed. That is not what
was intended here. Change the empty elseif() to an else() as it was
intended.

Closes #4101
Reported-by: Artalus <artalus-mail@yandex.ru>
Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
5 years agobuildconf: fix header filename
Daniel Gustafsson [Tue, 9 Jul 2019 15:33:07 +0000 (17:33 +0200)]
buildconf: fix header filename

The header file inclusion had a typo, it should be .h and not .hd.
Fix by renaming.

Fixes #4102
Reported-by: AceCrow on Github
5 years agoconfigure: fix --disable-code-coverage
Jan Chren [Mon, 8 Jul 2019 20:20:26 +0000 (20:20 +0000)]
configure: fix --disable-code-coverage

This fixes the case when --disable-code-coverage supplied to ./configure
would result in coverage="yes" being set.

Closes #4099
Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
5 years agocleanup: fix typo in comment
Daniel Gustafsson [Mon, 8 Jul 2019 11:19:35 +0000 (13:19 +0200)]
cleanup: fix typo in comment

5 years agoRELEASE-NOTES: synced
Daniel Gustafsson [Mon, 8 Jul 2019 10:56:20 +0000 (12:56 +0200)]
RELEASE-NOTES: synced

5 years agonss: support using libnss on macOS
Daniel Gustafsson [Wed, 19 Jun 2019 20:28:20 +0000 (22:28 +0200)]
nss: support using libnss on macOS

The file suffix for dynamically loadable objects on macOS is .dylib,
which need to be added for the module definitions in order to get the
NSS TLS backend to work properly on macOS.

Closes https://github.com/curl/curl/pull/4046

5 years agonss: don't set unused parameter
Daniel Gustafsson [Thu, 20 Jun 2019 10:19:41 +0000 (12:19 +0200)]
nss: don't set unused parameter

The value of the maxPTDs parameter to PR_Init() has since at least
NSPR 2.1, which was released sometime in 1998, been marked ignored
as is accordingly not used in the initialization code.  Setting it
to a value when calling PR_Init() is thus benign, but indicates an
intent which may be misleading. Reset the value to zero to improve
clarity.

Closes https://github.com/curl/curl/pull/4054

5 years agonss: only cache valid CRL entries
Daniel Gustafsson [Thu, 20 Jun 2019 10:11:59 +0000 (12:11 +0200)]
nss: only cache valid CRL entries

Change the logic around such that we only keep CRLs that NSS actually
ended up caching around for later deletion.  If CERT_CacheCRL() fails
then there is little point in delaying the freeing of the CRL as it
is not used.

Closes https://github.com/curl/curl/pull/4053

5 years agolib: Use UTF-8 encoding in comments
Gergely Nagy [Wed, 3 Jul 2019 12:31:31 +0000 (14:31 +0200)]
lib: Use UTF-8 encoding in comments

Some editors and IDEs assume that source files use UTF-8 file encodings.
It also fixes the build with MSVC when /utf-8 command line option is
used (this option is mandatory for some other open-source projects, this
is useful when using the same options is desired for building all
libraries of a project).

Closes https://github.com/curl/curl/pull/4087

5 years agoCURLOPT_HEADEROPT.3: Fix example
Caleb Raitto [Wed, 3 Jul 2019 21:35:52 +0000 (17:35 -0400)]
CURLOPT_HEADEROPT.3: Fix example

Fix an issue where example builds a curl_slist, but fails to actually
use it, or free it.

Closes https://github.com/curl/curl/pull/4090

5 years agowinbuild: Change Makefile to honor ENABLE_OPENSSL_AUTO_LOAD_CONFIG
Shankar Jadhavar [Fri, 5 Jul 2019 05:25:50 +0000 (00:25 -0500)]
winbuild: Change Makefile to honor ENABLE_OPENSSL_AUTO_LOAD_CONFIG

- Made changes so that ENABLE_OPENSSL_AUTO_LOAD_CONFIG will be honored.

- Also removed some ^M chars from file.

Prior to this change while building on Windows platform even if we pass
the ENABLE_OPENSSL_AUTO_LOAD_CONFIG option with value as "no" it does
not set the CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG flag.

Closes https://github.com/curl/curl/pull/4086

5 years agodoh-url.d: added in 7.62.0
Daniel Stenberg [Thu, 4 Jul 2019 12:02:20 +0000 (14:02 +0200)]
doh-url.d: added in 7.62.0

5 years agodocs: Fix links to OpenSSL docs
Jay Satiro [Sun, 30 Jun 2019 21:16:28 +0000 (17:16 -0400)]
docs: Fix links to OpenSSL docs

OpenSSL changed their manual locations and does not redirect to the new
locations.

Bug: https://curl.haxx.se/mail/lib-2019-06/0056.html
Reported-by: Daniel Stenberg
5 years agocurl_multi_wait.3: escape backslash in example
Gaël PORTAY [Wed, 26 Jun 2019 10:27:04 +0000 (06:27 -0400)]
curl_multi_wait.3: escape backslash in example

The backslash in the character Line Feed must be escaped.

The current man-page outputs the code as following:

fprintf(stderr, "curl_multi failed, code %d.0, mc);

The commit fixes it as follow:

fprintf(stderr, "curl_multi failed, code %d\n", mc);

Closes #4079

5 years agoopenssl: disable engine if OPENSSL_NO_UI_CONSOLE is defined
Daniel Stenberg [Tue, 25 Jun 2019 18:35:22 +0000 (20:35 +0200)]
openssl: disable engine if OPENSSL_NO_UI_CONSOLE is defined

... since that needs UI_OpenSSL() which isn't provided when OpenSSL is
built with OPENSSL_NO_UI_CONSOLE which happens when OpenSSL is built for
UWP (with "VC-WIN32-UWP").

Reported-by: Vasily Lobaskin
Fixes #4073
Closes #4077

5 years agotest1521: adapt to SLISTPOINT
Daniel Stenberg [Tue, 25 Jun 2019 11:09:22 +0000 (13:09 +0200)]
test1521: adapt to SLISTPOINT

The header now has the slist-using options marked as SLISTPOINT so this
makes sure test 1521 understands that.

Follow-up to ae99b4de1c443ae989

Closes #4074

5 years agowin32: make DLL loading a no-op for UWP
Daniel Stenberg [Tue, 25 Jun 2019 06:26:05 +0000 (08:26 +0200)]
win32: make DLL loading a no-op for UWP

Reported-by: Michael Brehm
Fixes #4060
Closes #4072

5 years agoconfigure: fix typo '--disable-http-uath'
1ocalhost [Tue, 25 Jun 2019 15:20:15 +0000 (23:20 +0800)]
configure: fix typo '--disable-http-uath'

Closes #4076

5 years agodocs: fix string suggesting HTTP/2 is not the default
Niklas Hambüchen [Tue, 25 Jun 2019 11:39:00 +0000 (13:39 +0200)]
docs: fix string suggesting HTTP/2 is not the default

Commit 25fd1057c9c86e3 made HTTP2 the default, and further down in the
man page that new default is mentioned, but the section at the top
contradicted it until now.

Also remove claim that setting the HTTP version is not sensible.

Closes #4075

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Tue, 25 Jun 2019 06:54:11 +0000 (08:54 +0200)]
RELEASE-NOTES: synced

5 years agotests: update fixed IP for hostip/clientip split
Stephan Szabo [Mon, 24 Jun 2019 16:25:31 +0000 (09:25 -0700)]
tests: update fixed IP for hostip/clientip split

These tests give differences for me on linux when using a hostip
pointing to the external ip address for the local machine.

Closes #4070

5 years agohttp: clarify header buffer size calculation
Daniel Gustafsson [Mon, 24 Jun 2019 21:30:31 +0000 (23:30 +0200)]
http: clarify header buffer size calculation

The header buffer size calculation can from static analysis seem to
overlow as it performs an addition between two size_t variables and
stores the result in a size_t variable. Overflow is however guarded
against elsewhere since the input to the addition is regulated by
the maximum read buffer size. Clarify this with a comment since the
question was asked.

Reviewed-by: Daniel Stenberg <daniel@haxx.se>
5 years agoKNOWN_BUGS: Don't clear digest for single realm
Daniel Stenberg [Mon, 24 Jun 2019 21:26:59 +0000 (23:26 +0200)]
KNOWN_BUGS: Don't clear digest for single realm

Closes #3267

5 years agoKNOWN_BUGS: Schannel disable CURLOPT_SSL_VERIFYPEER and verify hostname
Daniel Stenberg [Mon, 24 Jun 2019 21:23:13 +0000 (23:23 +0200)]
KNOWN_BUGS: Schannel disable CURLOPT_SSL_VERIFYPEER and verify hostname

Closes #3284

5 years agohttp2: call done_sending on end of upload
Daniel Stenberg [Mon, 24 Jun 2019 09:21:26 +0000 (11:21 +0200)]
http2: call done_sending on end of upload

To make sure a HTTP/2 stream registers the end of stream.

Bug #4043 made me find this problem but this fix doesn't correct the
reported issue.

Closes #4068

5 years agoc-ares: honor port numbers in CURLOPT_DNS_SERVERS
James Brown [Mon, 24 Jun 2019 06:15:02 +0000 (23:15 -0700)]
c-ares: honor port numbers in CURLOPT_DNS_SERVERS

By using ares_set_servers_ports_csv on new enough c-ares.

Fixes #4066
Closes #4067

5 years agoCURLMOPT_SOCKETFUNCTION.3: fix typo
Daniel Gustafsson [Mon, 24 Jun 2019 12:19:13 +0000 (14:19 +0200)]
CURLMOPT_SOCKETFUNCTION.3: fix typo

5 years agocurl: skip CURLOPT_PROXY_CAPATH for disabled-proxy builds
Koen Dergent [Mon, 24 Jun 2019 10:45:01 +0000 (12:45 +0200)]
curl: skip CURLOPT_PROXY_CAPATH for disabled-proxy builds

Closes #4061

5 years agotest153: fix content-length to avoid occasional hang
Daniel Stenberg [Sun, 23 Jun 2019 21:12:48 +0000 (23:12 +0200)]
test153: fix content-length to avoid occasional hang

Closes #4065

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Mon, 24 Jun 2019 06:29:53 +0000 (08:29 +0200)]
RELEASE-NOTES: synced

5 years agomulti: enable multiplexing by default (again)
Daniel Stenberg [Thu, 20 Jun 2019 07:19:26 +0000 (09:19 +0200)]
multi: enable multiplexing by default (again)

It was originally made default in d7c4213bd0c (7.62.0) but mistakenly
reverted in commit 2f44e94efb3d (7.65.0). Now enabled again.

Closes #4051

5 years agotypecheck: add 3 missing strings and a callback data pointer
Daniel Stenberg [Thu, 20 Jun 2019 07:01:40 +0000 (09:01 +0200)]
typecheck: add 3 missing strings and a callback data pointer

Closes #4050

5 years agotests: add disable-scan.pl to dist
Daniel Stenberg [Thu, 20 Jun 2019 21:35:04 +0000 (23:35 +0200)]
tests: add disable-scan.pl to dist

follow-up from 29177f422a5

Closes #4059

5 years agohttp2: don't call stream-close on already closed streams
Daniel Stenberg [Thu, 20 Jun 2019 10:30:25 +0000 (12:30 +0200)]
http2: don't call stream-close on already closed streams

Closes #4055

5 years agotravis: enable alt-svc for coverage build
Marcel Raad [Thu, 13 Jun 2019 09:18:40 +0000 (11:18 +0200)]
travis: enable alt-svc for coverage build

Closes

5 years agotravis: enable libssh2 for coverage build
Marcel Raad [Wed, 12 Jun 2019 18:59:12 +0000 (20:59 +0200)]
travis: enable libssh2 for coverage build

It was enabled by default before commit c92d2e14cfb.

Disable torture tests 600 and 601 because of
https://github.com/curl/curl/issues/1678.

Closes

5 years agotravis: disable threaded resolver for coverage build
Marcel Raad [Wed, 12 Jun 2019 14:23:19 +0000 (16:23 +0200)]
travis: disable threaded resolver for coverage build

This enables more tests.

Closes

5 years agotravis: enable brotli for all xenial jobs
Marcel Raad [Wed, 12 Jun 2019 14:15:39 +0000 (16:15 +0200)]
travis: enable brotli for all xenial jobs

There's no need for a separate job, and no need to build it from source
with Xenial.

Closes

5 years agotravis: enable warnings-as-errors for coverage build
Marcel Raad [Wed, 12 Jun 2019 14:06:06 +0000 (16:06 +0200)]
travis: enable warnings-as-errors for coverage build

Closes

5 years agosystem_win32: fix typo
Gisle Vanem [Thu, 20 Jun 2019 07:39:10 +0000 (09:39 +0200)]
system_win32: fix typo

5 years agotypecheck: CURLOPT_CONNECT_TO takes an slist too
Daniel Stenberg [Wed, 19 Jun 2019 07:17:03 +0000 (09:17 +0200)]
typecheck: CURLOPT_CONNECT_TO takes an slist too

Additionally, add an alias in curl.h for slist-using options so that
we can grep/parse those out at will.

Closes #4042

5 years agotests: support non-localhost HOSTIP for dict/smb servers
Stephan Szabo [Wed, 19 Jun 2019 22:54:18 +0000 (15:54 -0700)]
tests: support non-localhost HOSTIP for dict/smb servers

smbserver.py/dictserver.py were explicitly using localhost/127.0.0.1 for
binding the server which when we were running the tests with a separate
HOSTIP and CLIENTIP had failures verifying the server from the device we
were testing.

This changes them to take the address from runtests.py and default to
localhost/127.0.0.1 if none is given.

Closes #4048

5 years agotest1523: basic test of CURLOPT_LOW_SPEED_LIMIT
Daniel Stenberg [Thu, 13 Jun 2019 10:08:57 +0000 (12:08 +0200)]
test1523: basic test of CURLOPT_LOW_SPEED_LIMIT

5 years agoconfigure: --disable-progress-meter
Daniel Stenberg [Mon, 11 Feb 2019 15:38:19 +0000 (16:38 +0100)]
configure: --disable-progress-meter

Builds libcurl without support for the built-in progress meter.

Closes #4023

5 years agocurl: improved skip-setopt-options when built with disabled features
Daniel Stenberg [Tue, 18 Jun 2019 20:30:54 +0000 (22:30 +0200)]
curl: improved skip-setopt-options when built with disabled features

Reduces #ifdefs in src/tool_operate.c

Follow-up from 4e86f2fc4e6
Closes #3936

5 years agonetrc: Return the correct error code when out of memory
Steve Holme [Mon, 17 Jun 2019 22:01:49 +0000 (23:01 +0100)]
netrc: Return the correct error code when out of memory

Introduced in 763c5178.

Closes #4036

5 years agoconfig-os400: add getpeername and getsockname defines
Daniel Stenberg [Tue, 18 Jun 2019 13:44:01 +0000 (15:44 +0200)]
config-os400: add getpeername and getsockname defines

Reported-by: jonrumsey on github
Fixes #4037
Closes #4039

5 years agoruntests: keep logfiles around by default
Daniel Stenberg [Mon, 17 Jun 2019 12:20:51 +0000 (14:20 +0200)]
runtests: keep logfiles around by default

Make '-k' a no-op. The singletest function now clears the log directory
BEFORE each individual test and not after, which makes it possible to
always keep the logfiles around after a test has been run. No need to
specify -k anymore. Keeping the option parsing around to work with users
of old habits.

Some tests also didn't work properly when -k was used (since the old
logs would be kep when a new test starts) which this change also fixes.

Closes #4035

5 years agoopenssl: fix pubkey/signature algorithm detection in certinfo
Gergely Nagy [Sun, 16 Jun 2019 07:44:21 +0000 (09:44 +0200)]
openssl: fix pubkey/signature algorithm detection in certinfo

Certinfo gives the same result for all OpenSSL versions.
Also made printing RSA pubkeys consistent with older versions.

Reported-by: Michael Wallner
Fixes #3706
Closes #4030

5 years agoconn_maxage: move the check to prune_dead_connections()
Daniel Stenberg [Sun, 16 Jun 2019 21:25:38 +0000 (23:25 +0200)]
conn_maxage: move the check to prune_dead_connections()

... and avoid the locking issue.

Reported-by: Kunal Ekawde
Fixes #4029
Closes #4032

5 years agotests: have runtests figure out disabled features
Daniel Stenberg [Mon, 10 Jun 2019 06:17:16 +0000 (08:17 +0200)]
tests: have runtests figure out disabled features

... so that runtests can skip individual test cases that test features
that are explicitly disabled in this build. This new logic is intended
for disabled features that aren't otherwise easily visible through the
curl_version_info() or other API calls.

tests/server/disabled is a newly built executable that will output a
list of disabled features. Outputs nothing for a default build.

Closes #3950

5 years agotest188/189: fix Content-Length
Daniel Stenberg [Mon, 17 Jun 2019 09:44:21 +0000 (11:44 +0200)]
test188/189: fix Content-Length

This cures the flaky test results

Closes #4034

5 years agowinbuild: use WITH_PREFIX if given
Thomas Gamper [Sun, 16 Jun 2019 13:38:13 +0000 (15:38 +0200)]
winbuild: use WITH_PREFIX if given

Closes #4031

5 years agoopenssl: remove outdated comment
Daniel Gustafsson [Mon, 17 Jun 2019 11:11:02 +0000 (13:11 +0200)]
openssl: remove outdated comment

OpenSSL used to call exit(1) on syntax errors in OPENSSL_config(),
which is why we switched to CONF_modules_load_file() and introduced
a comment stating why. This behavior was however changed in OpenSSL
commit abdd677125f3a9e3082f8c5692203590fdb9b860, so remove the now
outdated and incorrect comment. The mentioned commit also declares
OPENSSL_config() deprecated so keep the current coding.

Closes #4033
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Sun, 16 Jun 2019 20:48:26 +0000 (22:48 +0200)]
RELEASE-NOTES: synced

5 years agoos400: make vsetopt() non-static as Curl_vsetopt() for os400 support.
Patrick Monnerat [Sat, 15 Jun 2019 23:05:53 +0000 (01:05 +0200)]
os400: make vsetopt() non-static as Curl_vsetopt() for os400 support.

Use it in curl_easy_setopt_ccsid().

Reported-by: jonrumsey on github
Fixes #3833
Closes #4028

5 years agoruntests: report single test time + total duration
Daniel Stenberg [Fri, 14 Jun 2019 09:06:03 +0000 (11:06 +0200)]
runtests: report single test time + total duration

... after each successful test.

Closes #4027

5 years agomulti: fix the transfer hash function
Daniel Stenberg [Thu, 13 Jun 2019 15:07:59 +0000 (17:07 +0200)]
multi: fix the transfer hash function

Follow-up from 8b987cc7eb

Reported-by: Tom van der Woerdt
Fixes #4018
Closes #4024

5 years agounit1654: cleanup on memory failure
Daniel Stenberg [Thu, 13 Jun 2019 09:09:32 +0000 (11:09 +0200)]
unit1654: cleanup on memory failure

... to make it handle torture tests properly.

Reported-by: Marcel Raad
Fixes #4021
Closes #4022

5 years agokrb5: fix compiler warning
Marcel Raad [Wed, 12 Jun 2019 21:07:07 +0000 (23:07 +0200)]
krb5: fix compiler warning

Even though the variable was used in a DEBUGASSERT, GCC 8 warned in
debug mode:
krb5.c:324:17: error: unused variable 'maj' [-Werror=unused-variable]

Just suppress the warning and declare the variable unconditionally
instead of only for DEBUGBUILD (which also missed the check for
HAVE_ASSERT_H).

Closes https://github.com/curl/curl/pull/4020

5 years agoquote.d: asterisk prefix works for SFTP as well
Daniel Stenberg [Wed, 12 Jun 2019 20:36:47 +0000 (22:36 +0200)]
quote.d: asterisk prefix works for SFTP as well

Reported-by: Ben Voris
Fixes #4017
Closes #4019

5 years agomulti: fix the transfer hashes in the socket hash entries
Daniel Stenberg [Tue, 11 Jun 2019 21:50:26 +0000 (23:50 +0200)]
multi: fix the transfer hashes in the socket hash entries

- The transfer hashes weren't using the correct keys so removing entries
  failed.

- Simplified the iteration logic over transfers sharing the same socket and
  they now simply are set to expire and thus get handled in the "regular"
  timer loop instead.

Reported-by: Tom van der Woerdt
Fixes #4012
Closes #4014