]> granicus.if.org Git - curl/log
curl
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

5 years agourl: Fix CURLOPT_MAXAGE_CONN time comparison
Cliff Crosland [Tue, 11 Jun 2019 21:17:30 +0000 (14:17 -0700)]
url: Fix CURLOPT_MAXAGE_CONN time comparison

Old connections are meant to expire from the connection cache after
CURLOPT_MAXAGE_CONN seconds. However, they actually expire after 1000x
that value. This occurs because a time value measured in milliseconds is
accidentally divided by 1M instead of by 1,000.

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

5 years agotest1165: verify that CURL_DISABLE_ symbols are in sync
Daniel Stenberg [Tue, 11 Jun 2019 13:33:29 +0000 (15:33 +0200)]
test1165: verify that CURL_DISABLE_ symbols are in sync

between configure.ac and source code. They should be possible to switch
on/off in configure AND be used in source code.

5 years agoconfigure: remove CURL_DISABLE_TLS_SRP
Daniel Stenberg [Tue, 11 Jun 2019 13:33:29 +0000 (15:33 +0200)]
configure: remove CURL_DISABLE_TLS_SRP

It isn't used by code so stop providing the define.

Closes #4010

5 years agoRevert "cmake: add SMB to list of disabled protocols if HTTP_ONLY is specified"
Daniel Stenberg [Tue, 11 Jun 2019 13:19:47 +0000 (15:19 +0200)]
Revert "cmake: add SMB to list of disabled protocols if HTTP_ONLY is specified"

This reverts commit 36738caeb78603ce24e3ea089a167b8c216fb938.

Apparently several of the appveyor windows builds broke.

5 years agocmake: add SMB to list of disabled protocols if HTTP_ONLY is specified
sergey-raevskiy [Fri, 12 Apr 2019 13:28:37 +0000 (16:28 +0300)]
cmake: add SMB to list of disabled protocols if HTTP_ONLY is specified

Reviewed-by: Jakub Zakrzewski
Closes #3770

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

5 years agohttp2: remove CURL_DISABLE_TYPECHECK define
Daniel Stenberg [Tue, 11 Jun 2019 05:49:24 +0000 (07:49 +0200)]
http2: remove CURL_DISABLE_TYPECHECK define

... in http2-less builds as it served no use.

5 years agoconfigure: more --disable switches to toggle off individual features
Daniel Stenberg [Mon, 10 Jun 2019 21:10:19 +0000 (23:10 +0200)]
configure: more --disable switches to toggle off individual features

... actual support in the code for disabling these has already landed.

Closes #4009

5 years agowolfssl: fix key pinning build error
Daniel Stenberg [Tue, 11 Jun 2019 05:45:12 +0000 (07:45 +0200)]
wolfssl: fix key pinning build error

follow-up from deb9462ff2de8

5 years agoCURLMOPT_SOCKETFUNCTION.3: clarified
Daniel Stenberg [Mon, 10 Jun 2019 09:47:17 +0000 (11:47 +0200)]
CURLMOPT_SOCKETFUNCTION.3: clarified

Moved away the callback explanation from curl_multi_socket_action.3 and
expanded it somewhat.

Closes #4006

5 years agowolfssl: fixup for SNI use
Daniel Stenberg [Mon, 10 Jun 2019 10:40:25 +0000 (12:40 +0200)]
wolfssl: fixup for SNI use

follow-up from deb9462ff2de8

Closes #4007

5 years agoCURLOPT_CAINFO.3: polished wording
Daniel Stenberg [Mon, 10 Jun 2019 07:10:14 +0000 (09:10 +0200)]
CURLOPT_CAINFO.3: polished wording

Clarify the functionality when built to use Schannel and Secure
Transport and stop calling it the "recommended" or "preferred" way and
instead rather call it the default.

Removed the reference to the ssl comparison table as it isn't necessary.

Reported-by: Richard Alcock
Bug: https://curl.haxx.se/mail/lib-2019-06/0019.html
Closes #4005

5 years agoSECURITY.md: created
Daniel Stenberg [Mon, 10 Jun 2019 08:16:02 +0000 (10:16 +0200)]
SECURITY.md: created

Brief security policy description for use/display on github.

5 years agotool_cb_prg: Fix integer overflow in progress bar
Daniel Gustafsson [Mon, 10 Jun 2019 07:32:30 +0000 (09:32 +0200)]
tool_cb_prg: Fix integer overflow in progress bar

Commit 61faa0b420c236480bc9ef6fd52b4ecc1e0f8d17 fixed the progress bar
width calculation to avoid integer overflow, but failed to account for
the fact that initial_size is initialized to -1 when the file size is
retrieved from the remote on an upload, causing another signed integer
overflow.  Fix by separately checking for this case before the width
calculation.

Closes #3984
Reported-by: Brian Carpenter (Geeknik Labs)
Reviewed-by: Daniel Stenberg <daniel@haxx.se>
5 years agowolfssl: refer to it as wolfSSL only
Daniel Stenberg [Sun, 2 Jun 2019 14:55:05 +0000 (16:55 +0200)]
wolfssl: refer to it as wolfSSL only

Remove support for, references to and use of "cyaSSL" from the source
and docs. wolfSSL is the current name and there's no point in keeping
references to ancient history.

Assisted-by: Daniel Gustafsson
Closes #3903

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Mon, 10 Jun 2019 06:50:30 +0000 (08:50 +0200)]
RELEASE-NOTES: synced

5 years agobindlocal: detect and avoid IP version mismatches in bind()
Daniel Stenberg [Sat, 8 Jun 2019 21:21:45 +0000 (23:21 +0200)]
bindlocal: detect and avoid IP version mismatches in bind()

Reported-by: Alex Grebenschikov
Fixes #3993
Closes #4002

5 years agomulti: make sure 'data' can present in several sockhash entries
Daniel Stenberg [Wed, 5 Jun 2019 13:50:49 +0000 (15:50 +0200)]
multi: make sure 'data' can present in several sockhash entries

Since more than one socket can be used by each transfer at a given time,
each sockhash entry how has its own hash table with transfers using that
socket.

In addition, the sockhash entry can now be marked 'blocked = TRUE'"
which then makes the delete function just set 'removed = TRUE' instead
of removing it "for real", as a way to not rip out the carpet under the
feet of a parent function that iterates over the transfers of that same
sockhash entry.

Reported-by: Tom van der Woerdt
Fixes #3961
Fixes #3986
Fixes #3995
Fixes #4004
Closes #3997

5 years agolibcurl-tutorial.3: Fix small typo (mutipart -> multipart)
Sorcus [Sat, 8 Jun 2019 20:18:18 +0000 (20:18 +0000)]
libcurl-tutorial.3: Fix small typo (mutipart -> multipart)

Fixed-by: MrSorcus on github
Closes #4000

5 years agounpause: trigger a timeout for event-based transfers
Daniel Stenberg [Sat, 8 Jun 2019 21:03:03 +0000 (23:03 +0200)]
unpause: trigger a timeout for event-based transfers

... so that timeouts or other state machine actions get going again
after a changing pause state. For example, if the last delivery was
paused there's no pending socket activity.

Reported-by: sstruchtrup on github
Fixes #3994
Closes #4001

5 years agotravis: use xenial LLVM package for scan-build
Marcel Raad [Sun, 9 Jun 2019 11:20:57 +0000 (13:20 +0200)]
travis: use xenial LLVM package for scan-build

I missed that in commit 99a49d6.

5 years agotravis: update scan-build job to xenial
Marcel Raad [Sat, 8 Jun 2019 13:02:07 +0000 (15:02 +0200)]
travis: update scan-build job to xenial

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

5 years agobump: start working on 7.65.2
Daniel Stenberg [Sat, 8 Jun 2019 20:39:36 +0000 (22:39 +0200)]
bump: start working on 7.65.2

5 years agoexamples/htmltitle: use C++ casts between pointer types
Marcel Raad [Sat, 25 May 2019 17:36:35 +0000 (19:36 +0200)]
examples/htmltitle: use C++ casts between pointer types

Compilers and static analyzers warn about using C-style casts here.

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