]> granicus.if.org Git - curl/log
curl
5 years agotravis: Add an ARM64 build dfandrich/ci
Dan Fandrich [Thu, 17 Oct 2019 08:24:28 +0000 (10:24 +0200)]
travis: Add an ARM64 build

TESTING

5 years agoCURLOPT_TIMEOUT.3: Clarify transfer timeout time includes queue time
Jay Satiro [Tue, 15 Oct 2019 19:12:31 +0000 (15:12 -0400)]
CURLOPT_TIMEOUT.3: Clarify transfer timeout time includes queue time

Prior to this change some users did not understand that the "request"
starts when the handle is added to the multi handle, or probably they
did not understand that some of those transfers may be queued and that
time is included in timeout.

Reported-by: Jeroen Ooms
Fixes https://github.com/curl/curl/issues/4486
Closes https://github.com/curl/curl/pull/4489

5 years agotool_operate: Fix retry sleep time shown to user when Retry-After
Stian Soiland-Reyes [Wed, 16 Oct 2019 13:35:56 +0000 (14:35 +0100)]
tool_operate: Fix retry sleep time shown to user when Retry-After

- If server header Retry-After is being used for retry sleep time then
  show that value to the user instead of the normal retry sleep time.

This is a follow-up to 640b973 (7.66.0) which changed curl tool so that
the value from Retry-After header overrides other retry timing options.

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

5 years agourl: normalize CURLINFO_EFFECTIVE_URL
Daniel Stenberg [Wed, 16 Oct 2019 07:57:33 +0000 (09:57 +0200)]
url: normalize CURLINFO_EFFECTIVE_URL

The URL extracted with CURLINFO_EFFECTIVE_URL was returned as given as
input in most cases, which made it not get a scheme prefixed like before
if the URL was given without one, and it didn't remove dotdot sequences
etc.

Added test case 1907 to verify that this now works as intended and as
before 7.62.0.

Regression introduced in 7.62.0

Reported-by: Christophe Dervieux
Fixes #4491
Closes #4493

5 years agotests: line ending fixes for Windows
Marcel Raad [Tue, 15 Oct 2019 21:37:20 +0000 (23:37 +0200)]
tests: line ending fixes for Windows

Mark some files as text.

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

5 years agotests: use proxy feature
Marcel Raad [Mon, 14 Oct 2019 20:29:19 +0000 (22:29 +0200)]
tests: use proxy feature

This makes the tests succeed when using --disable-proxy.

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

5 years agosmbserver: fix Python 3 compatibility
Marcel Raad [Sun, 13 Oct 2019 19:35:56 +0000 (21:35 +0200)]
smbserver: fix Python 3 compatibility

Python 2's `ConfigParser` module is spelled `configparser` in Python 3.

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

5 years agosecurity: silence conversion warning
Marcel Raad [Sun, 13 Oct 2019 17:14:39 +0000 (19:14 +0200)]
security: silence conversion warning

With MinGW-w64, `curl_socket_t` is is a 32 or 64 bit unsigned integer,
while `read` expects a 32 bit signed integer.
Use `sread` instead of `read` to use the correct parameter type.

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

5 years agoconnect: silence sign-compare warning
Marcel Raad [Sun, 13 Oct 2019 09:13:34 +0000 (11:13 +0200)]
connect: silence sign-compare warning

With MinGW-w64 using WinSock, `curl_socklen_t` is signed, while the
result of `sizeof` is unsigned.

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

5 years agoTODO: Handle growing SFTP files
Daniel Stenberg [Sun, 13 Oct 2019 09:57:56 +0000 (11:57 +0200)]
TODO: Handle growing SFTP files

Closes #4344

5 years agoKNOWN_BUGS: remove "CURLFORM_CONTENTLEN in an array"
Daniel Stenberg [Sun, 13 Oct 2019 09:35:57 +0000 (11:35 +0200)]
KNOWN_BUGS: remove "CURLFORM_CONTENTLEN in an array"

The curl_formadd() function is deprecated and shouldn't be used so the
real fix for applications is to switch to the curl_mime_* API.

5 years agoKNOWN_BUGS: "LDAP on Windows does authentication wrong"
Daniel Stenberg [Sat, 12 Oct 2019 20:45:13 +0000 (22:45 +0200)]
KNOWN_BUGS: "LDAP on Windows does authentication wrong"

Closes #3116

5 years agoappveyor: add a winbuild that uses VS2017
Daniel Stenberg [Sat, 12 Oct 2019 14:33:30 +0000 (16:33 +0200)]
appveyor: add a winbuild that uses VS2017

Closes #4482

5 years agosocketpair: fix include and define for older TCP header systems
Harry Sintonen [Thu, 10 Oct 2019 09:52:51 +0000 (12:52 +0300)]
socketpair: fix include and define for older TCP header systems

fixed build for systems that need netinet/in.h for IPPROTO_TCP and are
missing INADDR_LOOPBACK

Closes #4480

5 years agosocketpair: fix double-close in error case
Daniel Stenberg [Thu, 10 Oct 2019 09:18:21 +0000 (11:18 +0200)]
socketpair: fix double-close in error case

Follow-up to bc2dbef0afc08

5 years agogskit: use the generic Curl_socketpair
Daniel Stenberg [Mon, 7 Oct 2019 06:25:53 +0000 (08:25 +0200)]
gskit: use the generic Curl_socketpair

5 years agoasyn-thread: make use of Curl_socketpair() where available
Daniel Stenberg [Sat, 5 Oct 2019 13:41:09 +0000 (15:41 +0200)]
asyn-thread: make use of Curl_socketpair() where available

5 years agosocketpair: an implemention for Windows and more
Daniel Stenberg [Fri, 4 Oct 2019 21:59:29 +0000 (23:59 +0200)]
socketpair: an implemention for Windows and more

Curl_socketpair() is designed to be used and work everywhere if there's
no native version or the native version isn't good enough.

Closes #4466

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Wed, 9 Oct 2019 12:24:52 +0000 (14:24 +0200)]
RELEASE-NOTES: synced

5 years agoconnect: return CURLE_OPERATION_TIMEDOUT for errno == ETIMEDOUT
Daniel Stenberg [Fri, 4 Oct 2019 11:29:04 +0000 (13:29 +0200)]
connect: return CURLE_OPERATION_TIMEDOUT for errno == ETIMEDOUT

Previosly all connect() failures would return CURLE_COULDNT_CONNECT, no
matter what errno said.

This makes for example --retry work on these transfer failures.

Reported-by: Nathaniel J. Smith
Fixes #4461
Clsoes #4462

5 years agocirrus: switch off blackhole status on the freebsd CI machines
Daniel Stenberg [Wed, 9 Oct 2019 07:20:29 +0000 (09:20 +0200)]
cirrus: switch off blackhole status on the freebsd CI machines

5 years agotests: use port 2 instead of 60000 for a safer non-listening port
Daniel Stenberg [Tue, 8 Oct 2019 08:11:35 +0000 (10:11 +0200)]
tests: use port 2 instead of 60000 for a safer non-listening port

... when the tests want "connection refused".

5 years agoKNOWN_BUGS: IDN tests failing on Windows
Daniel Stenberg [Wed, 9 Oct 2019 11:05:32 +0000 (13:05 +0200)]
KNOWN_BUGS: IDN tests failing on Windows

Closes #3747

5 years agocirrus: Increase the git clone depth.
Dan Fandrich [Wed, 9 Oct 2019 08:55:06 +0000 (10:55 +0200)]
cirrus: Increase the git clone depth.

If more commits are submitted to master between the time of triggering
the first Cirrus build and the time the final build gets started, the
desired commit is no longer at HEAD and the build will error out.
[skip ci]

5 years agodocs: make sure the --no-progress-meter docs file is in dist too
Daniel Stenberg [Wed, 9 Oct 2019 08:10:05 +0000 (10:10 +0200)]
docs: make sure the --no-progress-meter docs file is in dist too

5 years agodocs: document it as --no-progress-meter instead of the reverse
Daniel Stenberg [Tue, 8 Oct 2019 21:05:35 +0000 (23:05 +0200)]
docs: document it as --no-progress-meter instead of the reverse

Follow-up to 93373a960c3bb4

Reported-by: infinnovation-dev on github
Fixes #4474
Closes #4475

5 years agocirrus: Switch the FreeBSD 11.x build to 11.3 and add a 13.0 build.
Dan Fandrich [Tue, 8 Oct 2019 09:14:38 +0000 (11:14 +0200)]
cirrus: Switch the FreeBSD 11.x build to 11.3 and add a 13.0 build.

Also, select the images using image_family to get the latest snapshots
automatically.
[skip ci]

5 years agocurl: --no-progress-meter
Daniel Stenberg [Mon, 7 Oct 2019 12:54:35 +0000 (14:54 +0200)]
curl: --no-progress-meter

New option that allows a user to ONLY switch off curl's progress meter
and leave everything else in "talkative" mode.

Reported-by: Piotr Komborski
Fixes #4422
Closes #4470

5 years agoTODO: Consult %APPDATA% also for .netrc
Daniel Stenberg [Tue, 8 Oct 2019 18:45:02 +0000 (20:45 +0200)]
TODO: Consult %APPDATA% also for .netrc

Closes #4016

5 years agoCURLOPT_TIMEOUT.3: remove the mention of "minutes"
Daniel Stenberg [Mon, 7 Oct 2019 12:22:23 +0000 (14:22 +0200)]
CURLOPT_TIMEOUT.3: remove the mention of "minutes"

... just say that limiting operations risk aborting otherwise fine
working transfers. If that means seconds, minutes or hours, we leave to
the user.

Reported-by: Martin Gartner
Closes #4469

5 years agodocs: added multi-event.c example
Andrei Valeriu BICA [Mon, 7 Oct 2019 13:19:02 +0000 (16:19 +0300)]
docs: added multi-event.c example

Similar to multi-uv.c but using libevent 2. This is a simpler libevent
integration example then hiperfifo.c.

Closes #4471

5 years agoldap: fix OOM error on missing query string
Nicolas [Sat, 5 Oct 2019 01:49:43 +0000 (22:49 -0300)]
ldap: fix OOM error on missing query string

- Allow missing queries, don't return NO_MEMORY error in such a case.

It is acceptable for there to be no specified query string, for example:

curl ldap://ldap.forumsys.com

A regression bug in 1b443a7 caused this issue.

This is a partial fix for #4261.

Bug: https://github.com/curl/curl/issues/4261#issuecomment-525543077
Reported-by: Jojojov@users.noreply.github.com
Analyzed-by: Samuel Surtees
Closes https://github.com/curl/curl/pull/4467

5 years agobuild: Remove unused HAVE_LIBSSL and HAVE_LIBCRYPTO defines
Paul B. Omta [Fri, 4 Oct 2019 07:55:54 +0000 (09:55 +0200)]
build: Remove unused HAVE_LIBSSL and HAVE_LIBCRYPTO defines

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

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Sat, 5 Oct 2019 09:46:48 +0000 (11:46 +0200)]
RELEASE-NOTES: synced

5 years agocurl: ensure HTTP 429 triggers --retry
Stian Soiland-Reyes [Fri, 4 Oct 2019 15:18:23 +0000 (16:18 +0100)]
curl: ensure HTTP 429 triggers --retry

This completes #3794.

Also make sure the new tests from #4195 are enabled

Closes #4465

5 years agowinbuild: add ENABLE_UNICODE option
apique [Mon, 9 Sep 2019 15:06:15 +0000 (17:06 +0200)]
winbuild: add ENABLE_UNICODE option

Fixes https://github.com/curl/curl/issues/4308
Closes https://github.com/curl/curl/pull/4309

5 years agongtcp2: adapt to API change
Daniel Stenberg [Thu, 3 Oct 2019 21:08:45 +0000 (23:08 +0200)]
ngtcp2: adapt to API change

Closes #4457

5 years agocookies: change argument type for Curl_flush_cookies
Daniel Stenberg [Thu, 3 Oct 2019 12:29:57 +0000 (14:29 +0200)]
cookies: change argument type for Curl_flush_cookies

The second argument is really a 'bool' so use that and pass in TRUE/FALSE
to make it clear.

Closes #4455

5 years agohttp2: move state-init from creation to pre-transfer
Daniel Stenberg [Mon, 30 Sep 2019 07:30:58 +0000 (09:30 +0200)]
http2: move state-init from creation to pre-transfer

To make sure that the HTTP/2 state is initialized correctly for
duplicated handles. It would otherwise easily generate "spurious"
PRIORITY frames to get sent over HTTP/2 connections when duplicated easy
handles were used.

Reported-by: Daniel Silverstone
Fixes #4303
Closes #4442

5 years agourlapi: fix use-after-free bug
Daniel Stenberg [Thu, 3 Oct 2019 11:24:43 +0000 (13:24 +0200)]
urlapi: fix use-after-free bug

Follow-up from 2c20109a9b5d04

Added test 663 to verify.

Reported by OSS-Fuzz
Bug: https://crbug.com/oss-fuzz/17954

Closes #4453

5 years agocookie: avoid harmless use after free
Paul Dreik [Thu, 3 Oct 2019 08:57:09 +0000 (10:57 +0200)]
cookie: avoid harmless use after free

This fix removes a use after free which can be triggered by
the internal cookie fuzzer, but otherwise is probably
impossible to trigger from an ordinary application.

The following program reproduces it:

        curl_global_init(CURL_GLOBAL_DEFAULT);
        CURL*  handle=curl_easy_init();
        CookieInfo* info=Curl_cookie_init(handle,NULL,NULL,false);
        curl_easy_setopt(handle, CURLOPT_COOKIEJAR, "/dev/null");
        Curl_flush_cookies(handle, true);
        Curl_cookie_cleanup(info);
        curl_easy_cleanup(handle);
        curl_global_cleanup();

This was found through fuzzing.

Closes #4454

5 years agodocs: add note on failed handles not being counted by curl_multi_perform
Denis Chaplygin [Tue, 1 Oct 2019 07:55:08 +0000 (10:55 +0300)]
docs: add note on failed handles not being counted by curl_multi_perform

Closes #4446

5 years agoCURLMOPT_MAX_CONCURRENT_STREAMS.3: fix SEE ALSO typo
Daniel Stenberg [Thu, 3 Oct 2019 12:16:10 +0000 (14:16 +0200)]
CURLMOPT_MAX_CONCURRENT_STREAMS.3: fix SEE ALSO typo

5 years agoESNI: initial build/setup
Niall [Tue, 4 Jun 2019 14:53:02 +0000 (15:53 +0100)]
ESNI: initial build/setup

Closes #4011

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Wed, 2 Oct 2019 06:04:07 +0000 (08:04 +0200)]
RELEASE-NOTES: synced

5 years agoredirect: when following redirects to an absolute URL, URL encode it
Daniel Stenberg [Tue, 1 Oct 2019 07:54:21 +0000 (09:54 +0200)]
redirect: when following redirects to an absolute URL, URL encode it

... to make it handle for example (RFC violating) embeded spaces.

Reported-by: momala454 on github
Fixes #4445
Closes #4447

5 years agourlapi: fix URL encoding when setting a full URL
Daniel Stenberg [Tue, 1 Oct 2019 07:53:28 +0000 (09:53 +0200)]
urlapi: fix URL encoding when setting a full URL

5 years agotool_operate: rename functions to make more sense
Daniel Stenberg [Mon, 30 Sep 2019 21:24:49 +0000 (23:24 +0200)]
tool_operate: rename functions to make more sense

5 years agocurl: create easy handles on-demand and not ahead of time
Daniel Stenberg [Mon, 23 Sep 2019 15:11:22 +0000 (17:11 +0200)]
curl: create easy handles on-demand and not ahead of time

This should again enable crazy-large download ranges of the style
[1-10000000] that otherwise easily ran out of memory starting in 7.66.0
when this new handle allocating scheme was introduced.

Reported-by: Peter Sumatra
Fixes #4393
Closes #4438

5 years agoCURLMOPT_MAX_CONCURRENT_STREAMS: new setopt
Kunal Ekawde [Tue, 24 Sep 2019 12:56:11 +0000 (08:56 -0400)]
CURLMOPT_MAX_CONCURRENT_STREAMS: new setopt

Closes #4410

5 years agochunked-encoding: stop hiding the CURLE_BAD_CONTENT_ENCODING error
Daniel Stenberg [Tue, 1 Oct 2019 13:40:05 +0000 (15:40 +0200)]
chunked-encoding: stop hiding the CURLE_BAD_CONTENT_ENCODING error

Unknown content-encoding would get returned as CURLE_WRITE_ERROR if the
response is chunked-encoded.

Reported-by: Ilya Kosarev
Fixes #4310
Closes #4449

5 years agochecksrc: fix uninitialized variable warning
Marcel Raad [Mon, 30 Sep 2019 22:32:26 +0000 (00:32 +0200)]
checksrc: fix uninitialized variable warning

The loop doesn't need to be executed without a file argument.

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

5 years agourlapi: fix unused variable warning
Marcel Raad [Mon, 30 Sep 2019 22:26:03 +0000 (00:26 +0200)]
urlapi: fix unused variable warning

`dest` is only used with `ENABLE_IPV6`.

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

5 years agolib: silence conversion warnings
Marcel Raad [Mon, 30 Sep 2019 22:24:50 +0000 (00:24 +0200)]
lib: silence conversion warnings

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

5 years agoAppVeyor: add 32-bit MinGW-w64 build
Marcel Raad [Tue, 24 Sep 2019 17:26:51 +0000 (19:26 +0200)]
AppVeyor: add 32-bit MinGW-w64 build

With WinSSL and testing enabled so that it would have detected most of
the warnings fixed in [0] and [1].

[0] https://github.com/curl/curl/pull/4398
[1] https://github.com/curl/curl/pull/4415

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

5 years agoAppVeyor: remove MSYS2_ARG_CONV_EXCL for winbuild
Marcel Raad [Tue, 24 Sep 2019 17:15:10 +0000 (19:15 +0200)]
AppVeyor: remove MSYS2_ARG_CONV_EXCL for winbuild

It's only used for MSYS2 with MinGW.

Closes

5 years agogit: add tests/server/disabled to .gitignore
Emil Engler [Mon, 30 Sep 2019 15:00:45 +0000 (17:00 +0200)]
git: add tests/server/disabled to .gitignore

Closes #4441

5 years agoaltsvc: accept quoted ma and persist values
Daniel Stenberg [Mon, 30 Sep 2019 08:29:46 +0000 (10:29 +0200)]
altsvc: accept quoted ma and persist values

As mandated by the spec. Test 1654 is extended to verify.

Closes #4443

5 years agomailmap: a Lucas fix
Daniel Stenberg [Mon, 30 Sep 2019 09:42:32 +0000 (11:42 +0200)]
mailmap: a Lucas fix

5 years agoquiche: update HTTP/3 config creation to new API
lucas [Fri, 27 Sep 2019 11:31:13 +0000 (12:31 +0100)]
quiche: update HTTP/3 config creation to new API

5 years agoBINDINGS: PureBasic, Net::Curl for perl and Nim
Daniel Stenberg [Sun, 29 Sep 2019 10:34:07 +0000 (12:34 +0200)]
BINDINGS: PureBasic, Net::Curl for perl and Nim

5 years agoBINDINGS: Kapito is an Erlang library, basically a binding
Daniel Stenberg [Sun, 29 Sep 2019 09:57:24 +0000 (11:57 +0200)]
BINDINGS: Kapito is an Erlang library, basically a binding

5 years agoBINDINGS: added clj-curl
Daniel Stenberg [Sun, 29 Sep 2019 09:37:37 +0000 (11:37 +0200)]
BINDINGS: added clj-curl

Reported-by: Lucas Severo
5 years agodocs: disambiguate CURLUPART_HOST is for host name (ie no port)
Jay Satiro [Wed, 25 Sep 2019 23:12:27 +0000 (19:12 -0400)]
docs: disambiguate CURLUPART_HOST is for host name (ie no port)

Closes #4424

5 years agocookies: using a share with cookies shouldn't enable the cookie engine
Daniel Stenberg [Fri, 27 Sep 2019 07:41:43 +0000 (09:41 +0200)]
cookies: using a share with cookies shouldn't enable the cookie engine

The 'share object' only sets the storage area for cookies. The "cookie
engine" still needs to be enabled or activated using the normal cookie
options.

This caused the curl command line tool to accidentally use cookies
without having been told to, since curl switched to using shared cookies
in 7.66.0.

Test 1166 verifies

Updated test 506

Fixes #4429
Closes #4434

5 years agosetopt: handle ALTSVC set to NULL
Daniel Stenberg [Fri, 27 Sep 2019 13:10:49 +0000 (15:10 +0200)]
setopt: handle ALTSVC set to NULL

5 years agoRELEASE-NOTES: synced
Daniel Stenberg [Fri, 27 Sep 2019 11:56:08 +0000 (13:56 +0200)]
RELEASE-NOTES: synced

5 years agoINSTALL: add vcpkg installation instructions
grdowns [Fri, 27 Sep 2019 09:37:29 +0000 (02:37 -0700)]
INSTALL: add vcpkg installation instructions

Closes #4435

5 years agoFTP: add test for FTPFILE_NOCWD: Avoid redundant CWDs
Zenju [Tue, 24 Sep 2019 17:58:35 +0000 (19:58 +0200)]
FTP: add test for FTPFILE_NOCWD: Avoid redundant CWDs

Add libtest 661

Closes #4417

5 years agoFTP: url-decode path before evaluation
Zenju [Wed, 25 Sep 2019 15:48:53 +0000 (17:48 +0200)]
FTP: url-decode path before evaluation

Closes #4428

5 years agotests: fix narrowing conversion warnings
Marcel Raad [Tue, 24 Sep 2019 16:58:23 +0000 (18:58 +0200)]
tests: fix narrowing conversion warnings

`timediff_t` is 64 bits wide also on 32-bit systems since
commit b1616dad8f0.

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

5 years agovtls: Fix comment typo about macosx-version-min compiler flag
julian [Thu, 26 Sep 2019 01:24:01 +0000 (18:24 -0700)]
vtls: Fix comment typo about macosx-version-min compiler flag

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

5 years agoREADME: minor grammar fix
Yechiel Kalmenson [Thu, 26 Sep 2019 19:37:24 +0000 (15:37 -0400)]
README: minor grammar fix

Closes #4431

5 years agoHTTP3: fix prefix parameter for ngtcp2 build
Spezifant [Thu, 26 Sep 2019 18:45:14 +0000 (20:45 +0200)]
HTTP3: fix prefix parameter for ngtcp2 build

Closes #4430

5 years agoquiche: don't close connection at end of stream!
Daniel Stenberg [Thu, 26 Sep 2019 14:06:11 +0000 (16:06 +0200)]
quiche: don't close connection at end of stream!

5 years agoquiche: set 'drain' when returning without having drained the queues
Daniel Stenberg [Thu, 26 Sep 2019 13:45:58 +0000 (15:45 +0200)]
quiche: set 'drain' when returning without having drained the queues

5 years agoRevert "FTP: url-decode path before evaluation"
Daniel Stenberg [Thu, 26 Sep 2019 12:52:30 +0000 (14:52 +0200)]
Revert "FTP: url-decode path before evaluation"

This reverts commit 2f036a72d543e96128bd75cb0fedd88815fd42e2.

5 years agoHTTP3: merged and simplified the two 'running' sections
Daniel Stenberg [Thu, 26 Sep 2019 12:17:09 +0000 (14:17 +0200)]
HTTP3: merged and simplified the two 'running' sections

5 years agoHTTP3: show an --alt-svc using example too
Daniel Stenberg [Thu, 26 Sep 2019 12:12:16 +0000 (14:12 +0200)]
HTTP3: show an --alt-svc using example too

5 years agoFTP: url-decode path before evaluation
Zenju [Wed, 25 Sep 2019 15:48:53 +0000 (17:48 +0200)]
FTP: url-decode path before evaluation

Closes #4423

5 years agoopenssl: use strerror on SSL_ERROR_SYSCALL
Daniel Stenberg [Tue, 24 Sep 2019 12:03:23 +0000 (14:03 +0200)]
openssl: use strerror on SSL_ERROR_SYSCALL

Instead of showing the somewhat nonsensical errno number, use strerror()
to provide a more relatable error message.

Closes #4411

5 years agoHTTP3: update quic.aiortc.org + add link to server list
Daniel Stenberg [Thu, 26 Sep 2019 11:18:17 +0000 (13:18 +0200)]
HTTP3: update quic.aiortc.org + add link to server list

Reported-by: Jeremy Lainé
5 years agourl: don't set appconnect time for non-ssl/non-ssh connections
Jay Satiro [Fri, 12 Apr 2019 22:57:53 +0000 (18:57 -0400)]
url: don't set appconnect time for non-ssl/non-ssh connections

Prior to this change non-ssl/non-ssh connections that were reused set
TIMER_APPCONNECT [1]. Arguably that was incorrect since no SSL/SSH
handshake took place.

[1]: TIMER_APPCONNECT is publicly known as CURLINFO_APPCONNECT_TIME in
libcurl and %{time_appconnect} in the curl tool. It is documented as
"the time until the SSL/SSH handshake is completed".

Reported-by: Marcel Hernandez
Ref: https://github.com/curl/curl/issues/3760

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

5 years agongtcp2: remove fprintf() calls
Daniel Stenberg [Wed, 25 Sep 2019 10:27:26 +0000 (12:27 +0200)]
ngtcp2: remove fprintf() calls

- convert some of them to H3BUF() calls to infof()
- remove some of them completely
- made DEBUG_HTTP3 defined only if CURLDEBUG is set for now

Closes #4421

5 years agourl: fix the NULL hostname compiler warning case
Jay Satiro [Wed, 25 Sep 2019 12:35:02 +0000 (14:35 +0200)]
url: fix the NULL hostname compiler warning case

Closes #4403

5 years agotravis: move the go install to linux-only
Jay Satiro [Wed, 25 Sep 2019 12:34:31 +0000 (14:34 +0200)]
travis: move the go install to linux-only

... to repair the build again
Closes #4403

5 years agoaltsvc: correct the #ifdef for the ngtcp2 backend
Daniel Stenberg [Wed, 25 Sep 2019 10:13:43 +0000 (12:13 +0200)]
altsvc: correct the #ifdef for the ngtcp2 backend

5 years agoaltsvc: save h3 as h3-23
Daniel Stenberg [Wed, 25 Sep 2019 10:06:20 +0000 (12:06 +0200)]
altsvc: save h3 as h3-23

Follow-up to d176a2c7e5

5 years agourlapi: question mark within fragment is still fragment
Daniel Stenberg [Tue, 24 Sep 2019 12:45:27 +0000 (14:45 +0200)]
urlapi: question mark within fragment is still fragment

The parser would check for a query part before fragment, which caused it
to do wrong when the fragment contains a question mark.

Extended test 1560 to verify.

Reported-by: Alex Konev
Fixes #4412
Closes #4413

5 years agoHTTP3.md: move -p for mkdir, remove -j for make
Alex Samorukov [Mon, 23 Sep 2019 18:56:48 +0000 (20:56 +0200)]
HTTP3.md: move -p for mkdir, remove -j for make

- mkdir on OSX/Darwin requires `-p` argument before dir

- portabbly figuring out number of cores is an exercise for somewhere
  else

Closes #4407

5 years agoos400: getpeername() and getsockname() return ebcdic AF_UNIX sockaddr,
Patrick Monnerat [Sun, 11 Aug 2019 15:22:45 +0000 (17:22 +0200)]
os400: getpeername() and getsockname() return ebcdic AF_UNIX sockaddr,

As libcurl now uses these 2 system functions, wrappers are needed on os400
to convert returned AF_UNIX sockaddrs to ascii.

This is a follow-up to commit 7fb54ef.
See also #4037.
Closes #4214

5 years agostrcase: fix raw lowercasing the letter X
Lucas Pardue [Tue, 24 Sep 2019 05:27:33 +0000 (01:27 -0400)]
strcase: fix raw lowercasing the letter X

Casing mistake in Curl_raw_tolower 'X' wasn't lowercased as 'x' prior to
this change.

Follow-up to 0023fce which added the function several days ago.

Ref: https://github.com/curl/curl/pull/4401#discussion_r327396546

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

5 years agohttp2: Expression 'stream->stream_id != - 1' is always true
Daniel Stenberg [Mon, 23 Sep 2019 09:05:37 +0000 (11:05 +0200)]
http2: Expression 'stream->stream_id != - 1' is always true

PVS-Studio warning
Fixes #4402

5 years agohttp2: A value is being subtracted from the unsigned variable
Daniel Stenberg [Mon, 23 Sep 2019 09:04:13 +0000 (11:04 +0200)]
http2: A value is being subtracted from the unsigned variable

PVS-Studio warning
Fixes #4402

5 years agolibssh: part of conditional expression is always true: !result
Daniel Stenberg [Mon, 23 Sep 2019 08:55:43 +0000 (10:55 +0200)]
libssh: part of conditional expression is always true: !result

PVS-Studio warning
Fixed #4402

5 years agolibssh: part of conditional expression is always true
Daniel Stenberg [Mon, 23 Sep 2019 08:55:05 +0000 (10:55 +0200)]
libssh: part of conditional expression is always true

PVS-Studio warning
Fixes #4402

5 years agolibssh: The expression is excessive or contains a misprint
Daniel Stenberg [Mon, 23 Sep 2019 08:54:03 +0000 (10:54 +0200)]
libssh: The expression is excessive or contains a misprint

PVS-Studio warning
Fixes #4402

5 years agoquiche: The expression must be surrounded by parentheses
Daniel Stenberg [Mon, 23 Sep 2019 08:51:00 +0000 (10:51 +0200)]
quiche: The expression must be surrounded by parentheses

PVS-Studio warning
Fixes #4402

5 years agovauth: The parameter 'status' must be surrounded by parentheses
Daniel Stenberg [Mon, 23 Sep 2019 08:48:06 +0000 (10:48 +0200)]
vauth: The parameter 'status' must be surrounded by parentheses

PVS-Studio warning
Fixes #4402

5 years agodoh: allow only http and https in debug mode
Paul Dreik [Mon, 23 Sep 2019 11:11:49 +0000 (13:11 +0200)]
doh: allow only http and https in debug mode

Otherwise curl may be told to use for instance pop3 to
communicate with the doh server, which most likely
is not what you want.

Found through fuzzing.

Closes #4406