Age | Commit message (Collapse) | Author |
|
... and thus should return 0, not EAGAIN.
Reported-by: Tom van der Woerdt
Fixes #4496
Closes #4505
|
|
To make sure that transfer is being dealt with. Streams without
Content-Length need a final read to notice the end-of-stream state.
Reported-by: Tom van der Woerdt
Fixes #4496
|
|
Test 323 is failing for some reason, so disable it there for now.
|
|
With the `isdigit` implementation that comes with MSYS2, the argument
is used as an array subscript, resulting in a -Wchar-subscripts
warning. `isdigit`'s behavior is undefined if the argument is negative
and not EOF [0]. As done in lib/curl_ctype.h, cast the `char` variable
to `unsigned char` to avoid that.
[0] https://en.cppreference.com/w/c/string/byte/isdigit
Closes https://github.com/curl/curl/pull/4503
|
|
In particular, this removes the case where configure would find an old
cyall installation rather than a wolfssl one if present. The library is
named wolfssl in modern days so there's no real need to keep support for
the former.
Reported-by: Jacob Barthelmeh
Closes #4502
|
|
This avoids MSYS2 converting the backslasb in the URL to a slash,
causing the test to fail.
|
|
|
|
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
|
|
- 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
|
|
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
|
|
Mark some files as text.
Closes https://github.com/curl/curl/pull/4490
|
|
This makes the tests succeed when using --disable-proxy.
Closes https://github.com/curl/curl/pull/4488
|
|
Python 2's `ConfigParser` module is spelled `configparser` in Python 3.
Closes https://github.com/curl/curl/pull/4484
|
|
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
|
|
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
|
|
Closes #4344
|
|
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.
|
|
Closes #3116
|
|
Closes #4482
|
|
fixed build for systems that need netinet/in.h for IPPROTO_TCP and are
missing INADDR_LOOPBACK
Closes #4480
|
|
Follow-up to bc2dbef0afc08
|
|
|
|
|
|
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
|
|
|
|
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
|
|
|
|
... when the tests want "connection refused".
|
|
Closes #3747
|
|
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]
|
|
|
|
Follow-up to 93373a960c3bb4
Reported-by: infinnovation-dev on github
Fixes #4474
Closes #4475
|
|
Also, select the images using image_family to get the latest snapshots
automatically.
[skip ci]
|
|
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
|
|
Closes #4016
|
|
... 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
|
|
Similar to multi-uv.c but using libevent 2. This is a simpler libevent
integration example then hiperfifo.c.
Closes #4471
|
|
- 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
|
|
Closes https://github.com/curl/curl/pull/4460
|
|
|
|
This completes #3794.
Also make sure the new tests from #4195 are enabled
Closes #4465
|
|
Fixes https://github.com/curl/curl/issues/4308
Closes https://github.com/curl/curl/pull/4309
|
|
Closes #4457
|
|
The second argument is really a 'bool' so use that and pass in TRUE/FALSE
to make it clear.
Closes #4455
|
|
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
|
|
Follow-up from 2c20109a9b5d04
Added test 663 to verify.
Reported by OSS-Fuzz
Bug: https://crbug.com/oss-fuzz/17954
Closes #4453
|
|
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
|
|
Closes #4446
|
|
|
|
Closes #4011
|