aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-06-08ngtcp2: update with recent API changesDaniel Stenberg
Syncs with ngtcp2 commit 7e9a917d386d98 merged June 7 2020. Assisted-by: Tatsuhiro Tsujikawa Closes #5538
2020-06-08socks: remove unreachable breaks in socks.c and mime.cxquery
Closes #5537
2020-06-08tool_cfgable: free login_options at exitDaniel Stenberg
Memory leak Reported-by: Geeknik Labs Fixes #5535 Closes #5536
2020-06-08libssh2: keep sftp errors as 'unsigned long'Daniel Stenberg
Remove weird work-around for storing the SFTP errors as int instead of the "unsigned long" that libssh2 actually returns for SFTP errors. Closes #5534
2020-06-06timeouts: move ms timeouts to timediff_t from int and longMarc Hoersken
Now that all functions in select.[ch] take timediff_t instead of the limited int or long, we can remove type conversions and related preprocessor checks to silence compiler warnings. Avoiding conversions from time_t was already done in 842f73de. Based upon #5262 Supersedes #5214, #5220 and #5221 Follow up to #5343 and #5479 Closes #5490
2020-06-06openssl: set FLAG_TRUSTED_FIRST unconditionallyFrançois Rigault
On some systems, openssl 1.0.x is still the default, but it has been patched to contain all the recent security fixes. As a result of this patching, it is possible for macro X509_V_FLAG_NO_ALT_CHAINS to be defined, while the previous behavior of openssl to not look at trusted chains first, remains. Fix it: ensure X509_V_FLAG_TRUSTED_FIRST is always set, do not try to probe for the behavior of openssl based on the existence ofmacros. Closes #5530
2020-06-06server/util: fix logmsg format using curl_off_t argumentDaniel Stenberg
... this caused segfaults on armv7. Regression added in dd0365d560aea5a (7.70.0) Reviewed-by: Jay Satiro Closes #5529
2020-06-05RELEASE-NOTES: syncedDaniel Stenberg
2020-06-05socks: fix expected length of SOCKS5 replyCherish98
Commit 4a4b63d forgot to set the expected SOCKS5 reply length when the reply ATYP is X'01'. This resulted in erroneously expecting more bytes when the request length is greater than the reply length (e.g., when remotely resolving the hostname). Closes #5527
2020-06-05.gitignore: add directory containing the stats repoMarc Hoersken
Since the new curl/stats repository is designed to be checked out into the curl repository working tree as stats/ it should be on the ignore list to aid in commit staging.
2020-06-05HTTP3.md: clarify cargo build directoryAdnan Khan
Cargo needs to be called from within the 'quiche' directory. Closes #5522
2020-06-05user-agent.d: spell out what happens given a blank argumentDaniel Stenberg
Closes #5525
2020-06-05trailers: switch h1-trailer logic to use dynbufDaniel Stenberg
In the continued effort to remove "manual" realloc schemes. Closes #5524
2020-06-05CURLINFO_ACTIVESOCKET.3: clarify the descriptionDaniel Stenberg
Reported-by: Jay Satiro Fixes #5299 Closes #5520
2020-06-04mailmap: Don J OlmsteadDaniel Stenberg
2020-06-04configure: only strip first -L from LDFLAGSDaniel Stenberg
In the logic that works out if a given OpenSSL path works, it stripped off a possibly leading -L flag using an incorrect sed pattern which would remove all instances of -L in the string, including if the path itself contained that two-letter sequence! The same pattern was used and is now updated in multiple places. Now it only removes -L if it starts the strings. Reported-by: Mohamed Osama Fixes #5519 Closes #5521
2020-06-04quiche: advertise draft 28 supportPeter Wu
Fix the verbose message while at it, quiche currently supports draft 27 and draft 28 simultaneously. Closes #5518
2020-06-04KNOWN_BUGS: RTSP authentication breaks without redirect supportDaniel Stenberg
Closes #4750
2020-06-04projects: Add crypt32.lib to dependencies for all OpenSSL configsJay Satiro
Windows project configurations that use OpenSSL with USE_WIN32_CRYPTO need crypt32. Follow-up to 148534d which added CURLSSLOPT_NATIVE_CA for 7.71.0. The changes that are in this commit were made by script. Ref: https://gist.github.com/jay/a1861b50ecce2b32931237180f856e28 Closes https://github.com/curl/curl/pull/5516
2020-06-03CI/macos: fix 'is already installed' errors by using bundleMarc Hoersken
Avoid failing CI builds due to nghttp2 being already installed. Closes #5513
2020-06-03altsvc: fix 'dsthost' may be used uninitialized in this functionDaniel Stenberg
2020-06-02RELEASE-NOTES: syncedDaniel Stenberg
2020-06-02urldata: let the HTTP method be in the set.* structDaniel Stenberg
When the method is updated inside libcurl we must still not change the method as set by the user as then repeated transfers with that same handle might not execute the same operation anymore! This fixes the libcurl part of #5462 Test 1633 added to verify. Closes #5499
2020-06-02hostip: fix the memory-leak introduced in 67d2802Daniel Stenberg
Fixes #5503 Closes #5504
2020-06-02test970: make it require proxy supportDaniel Stenberg
This test verifies the -w %json output and the test case includes a full generated "blob". If there's no proxy support built into libcurl, it will return an error for proxy related info variables and they will not be included in the json, thus causing a mismatch and this test fails. Reported-by: Marc Hörsken Fixes #5501 Closes #5502
2020-06-02examples/http2-down/upload: add error checksRadoslav Georgiev
If `index.html` does not exist in the directory from which the example is invoked, the fopen(upload, "rb") invocation in `setup` would fail, returning NULL. This value is subsequently passed as the FILE* argument of the `fread` invocation in the `read_callback` function, which is the actual cause of the crash (apparently `fread` assumes that argument to be non-null). In addition, mitigate some possible crashes of similar origin. Closes #5463
2020-06-02examples/ephiperfifo: turn off interval when setting timerfdkotoriのねこ
Reported-by: therealhirudo on github Fixes #5485 Closes #5497
2020-06-01vtls: repair the build with `CURL_DISABLE_PROXY`Saleem Abdulrasool
`http_proxy` will not be available in `conndata` if `CURL_DISABLE_PROXY` is enabled. Repair the build with that configuration. Follow-up to f3d501dc67 Closes #5498
2020-06-01transfer: remove k->str NULL checkDaniel Stenberg
"Null-checking k->str suggests that it may be null, but it has already been dereferenced on all paths leading to the check" - and it can't legally be NULL at this point. Remove check. Detected by Coverity CID 1463884 Closes #5495
2020-06-01select: always use Sleep in Curl_wait_ms on Win32Marc Hoersken
Since Win32 almost always will also have USE_WINSOCK, we can reduce complexity and always use Sleep there. Assisted-by: Jay Satiro Reviewed-by: Daniel Stenberg Follow up to #5343 Closes #5489
2020-05-31conncache: download buffer needs +1 size for trailing zeroDaniel Stenberg
Follow-up to c4e6968127e Detected by OSS-Fuzz: https://oss-fuzz.com/testcase-detail/5727799779524608
2020-05-31azure: use matrix strategy to avoid configuration redundancyMarc Hoersken
This also includes the following changes: - Use the same timeout for all jobs on Linux (60 minutes) and Windows (90 minutes) - Use CLI stable apt-get install -y instead of apt install which warns about that and run apt-get update first - Enable MQTT for Windows msys2 builds instead of legacy msys1 builds - Add ./configure --prefix parameter to the msys2 builds - The MSYSTEM environment variable is now preset inside the container images for the msys2 builds Note: on Azure Pipelines the matrix strategy is basically just a simple list of job copies and not really a matrix. Closes #5468
2020-05-30build: disable more code/data when built without proxy supportDaniel Stenberg
Added build to travis to verify Closes #5466
2020-05-30url: alloc the download buffer at transfer startDaniel Stenberg
... and free it as soon as the transfer is done. It removes the extra alloc when a new size is set with setopt() and reduces memory for unused easy handles. In addition: the closure_handle now doesn't use an allocated buffer at all but the smallest supported size as a stack based one. Closes #5472
2020-05-30timeouts: change millisecond timeouts to timediff_t from time_tDaniel Stenberg
For millisecond timers we like timediff_t better. Also, time_t can be unsigned so returning a negative value doesn't work then. Closes #5479
2020-05-30select: add overflow checks for timeval conversionsMarc Hoersken
Using time_t and suseconds_t if suseconds_t is available, long on Windows (maybe others in the future) and int elsewhere. Also handle case of ULONG_MAX being greater or equal to INFINITE. Assisted-by: Jay Satiro Reviewed-by: Daniel Stenberg Part of #5343
2020-05-30select: use timediff_t instead of time_t and int for timeout_msMarc Hoersken
Make all functions in select.[ch] take timeout_ms as timediff_t which should always be large enough and signed on all platforms to take all possible timeout values and avoid type conversions. Reviewed-by: Jay Satiro Reviewed-by: Daniel Stenberg Replaces #5107 and partially #5262 Related to #5240 and #5286 Closes #5343
2020-05-30unit1604.c: fix implicit conv from 'SANITIZEcode' to 'CURLcode'Marc Hoersken
GCC 10 warns about this with warning: implicit conversion from 'SANITIZEcode' to 'CURLcode' [-Wenum-conversion] Since 'expected_result' is not really of type 'CURLcode' and it is not exposed in any way, we can just use 'SANITIZEcode'. Reviewed-by: Daniel Stenberg Reviewed-by: Marcel Raad Closes #5476
2020-05-30tests/libtest: fix undefined reference to 'curlx_win32_fopen'Marc Hoersken
Since curl_setup.h now makes use of curlx_win32_fopen for Win32 builds with USE_WIN32_LARGE_FILES or USE_WIN32_SMALL_FILES defined, we need to include the relevant files for tests using fopen, because the libtest sources are also including curl_setup.h Reviewed-by: Marcel Raad Reviewed-by: Daniel Stenberg Follow up to #3784 (ffdddb45d9) Closes #5475
2020-05-30appveyor: add non-debug plain autotools-based buildMarc Hoersken
This should enable us to catch linking issues with the testsuite early, like the one described/fixed in #5475. Reviewed-by: Daniel Stenberg Reviewed-by: Marcel Raad Closes #5477
2020-05-29RELEASE-NOTES: syncedDaniel Stenberg
2020-05-29Revert "buildconf: use find -execdir"Daniel Stenberg
This partially reverts commit c712009838f44211958854de431315586995bc61. Keep the ares_ files removed but bring back the older way to run find, to make it work with busybox's find, as apparently that's being used. Reported-by: Max Peal Fixes #5483 Closes #5484
2020-05-29server/sws: fix asan warning on use of uninitialized variableDaniel Stenberg
2020-05-29libssh2: improved error output for wrong quote syntaxDaniel Stenberg
Reported-by: Werner Stolz Closes #5474
2020-05-29mk-lib1521: generate code for testing BLOB options as wellDaniel Stenberg
Follow-up to cac5374298b3 Closes #5478
2020-05-28configure: repair the check if argv can be written toDaniel Stenberg
Due to bad escaping of the test code, the test wouldn't build and thus result in a negative test result, which would lead to the unconditional assumption that overwriting the arguments doesn't work and thus curl would never hide credentials given in the command line, even when it would otherwise be possible. Regression from commit 2d4c2152c (7.60.0) Reported-by: huzunhao on github Fixes #5470 Closes #5471
2020-05-28CMake: rebuild Makefile.inc.cmake when Makefile.inc changesPeter Wu
Otherwise the build might fail due to missing source files, as demonstrated by the recent keylog.c addition on an existing build dir. Closes #5469
2020-05-28urldata: fix comments: Curl_done() is called multi_done() nowDaniel Stenberg
... since 575e885db
2020-05-27ngtcp2: use common key log routine for better thread-safetyPeter Wu
Tested with ngtcp2 built against the OpenSSL library. Additionally tested with MultiSSL (NSS for TLS and ngtcp2+OpenSSL for QUIC). The TLS backend (independent of QUIC) may or may not already have opened the keylog file before. Therefore Curl_tls_keylog_open is always called to ensure the file is open.
2020-05-27wolfssl: add SSLKEYLOGFILE supportPeter Wu
Tested following the same curl and tshark commands as in commit "vtls: Extract and simplify key log file handling from OpenSSL" using WolfSSL v4.4.0-stable-128-g5179503e8 from git master built with `./configure --enable-all --enable-debug CFLAGS=-DHAVE_SECRET_CALLBACK`. Full support for this feature requires certain wolfSSL build options, see "Availability note" in lib/vtls/wolfssl.c for details. Closes #5327