summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* openssl: set the transfer pointer for logging earlybagder/openssl-trace-handshakeDaniel Stenberg2021-03-251-0/+1
| | | | | | | | Otherwise, the transfer will be NULL in the trace function when the early handshake details arrive and then curl won't show them. Reported-by: David Hu Fixes #6783
* RELEASE-NOTES: syncedDaniel Stenberg2021-03-251-10/+25
|
* TODO: Custom progress meter update intervalDaniel Stenberg2021-03-251-0/+7
| | | | Ref: https://stackoverflow.com/q/66789977/93747
* docs/ABI: tighten up the languageDaniel Stenberg2021-03-241-9/+8
| | | | | | Make the promises more firm Closes #6786
* openldap: disconnect betterDaniel Stenberg2021-03-241-1/+1
| | | | | | | | | Instead of clearing the callback argument in disconnect, set it to the (new) transfer to make sure the correct data is passed to the callbacks. Follow-up to e467ea3bd937f38 Assisted-by: Patrick Monnerat Closes #6787
* libssh2: kdb_callback: get the right struct pointerDaniel Stenberg2021-03-231-2/+2
| | | | | | | | | | | | After the recent conn/data refactor in this source file, this function was mistakenly still getting the old struct pointer which would lead to crash on servers with keyboard-interactive auth enabled. Follow-up to a304051620b92e12b (shipped in 7.75.0) Reported-by: Christian Schmitz Fixes #6691 Closes #6782
* tftp: remove unused struct fieldsDaniel Stenberg2021-03-231-7/+0
| | | | | | Follow-up to d3d90ad9c00530d Closes #6781
* openldap: avoid NULL pointer dereferencesDaniel Stenberg2021-03-231-15/+25
| | | | | | | Follow-up to a59c33ceffb8f78 Reported-by: Patrick Monnerat Fixes #6676 Closes #6780
* http: strip default port from URL sent to proxyDaniel Stenberg2021-03-232-2/+2
| | | | | | | | | | To make sure the Host: header and the URL provide the same authority portion when sent to the proxy, strip the default port number from the URL if one was provided. Reported-by: Michael Brown Fixes #6769 Closes #6778
* azure: disable test 433 on azure-ubuntuDaniel Stenberg2021-03-231-2/+2
| | | | | | | | | Something in that environment sets XDG_CONFIG_HOME for us in a way that breaks the test. Reported-by: Marc Hörsken Fixes #6739 Closes #6777
* tftp: remove the 3600 second default timeoutDaniel Stenberg2021-03-221-38/+22
| | | | | | | | ... it was never meant to be there. Reported-by: Tomas Berger Fixes #6774 Closes #6776
* docs: make gen.pl support *italic* and **bold**Daniel Stenberg2021-03-2221-41/+53
| | | | | | | Remove some nroffisms from the cmdline doc files to simplify editing, and instead support this markdown style. Closes #6771
* ngtcp2: sync with recent API updatesDaniel Stenberg2021-03-221-2/+4
| | | | Closes #6770
* RELEASE-NOTES: syncedDaniel Stenberg2021-03-211-12/+26
|
* libssh2:ssh_connect: clear session pointer after freeDaniel Stenberg2021-03-211-0/+1
| | | | | | | | | If libssh2_knownhost_init() returns NULL, like in an OOM situation, the ssh session was freed but the pointer wasn't cleared which made libcurl later call libssh2 to cleanup using the stale pointer. Fixes #6764 Closes #6766
* docs: document version of crustls dependencyJacob Hoffman-Andrews2021-03-215-3/+36
| | | | | | | | | | | | | This also pins a specific release in the Travis test so future API-breaking changins in crustls won't break curl builds. Add RUSTLS documentation to release tarball. Enable running tests for rustls, minus FTP tests (require connect_blocking, which rustls doesn't implement) and 313 (requires CRL handling). Closes #6763
* rustls: Handle close_notify.Jacob Hoffman-Andrews2021-03-211-2/+6
| | | | | | | | If we get a close_notify, treat that as EOF. If we get an EOF from the TCP stream, treat that as an error (because we should have ended the connection earlier, when we got a close_notify). Closes #6763
* docs: clarify timeouts for queued transfers in multi APIDaniel Stenberg2021-03-192-3/+21
| | | | Closes #6758
* ftpserver: only load the preprocessed test fileDaniel Stenberg2021-03-191-12/+6
| | | | | | We always preprocess and tests are no longer sensible to load "raw" Closes #6738
* tests: use %TESTNUMBER instead of fixed numberDaniel Stenberg2021-03-191292-4389/+4386
| | | | | | | This makes the tests easier to copy and relocate to other test numbers without having to update content. Closes #6738
* KNOWN_BUGS: CURLOPT_OPENSOCKETPAIRFUNCTION is missingDaniel Stenberg2021-03-181-0/+10
| | | | Closes #5747
* TODO: provide timing info for each redirectDaniel Stenberg2021-03-181-0/+10
| | | | Closes #6743
* docs: Add SSL backend names to CURL_SSL_BACKENDJay Satiro2021-03-172-3/+9
| | | | | | | | | | | - Document the names that can be used with CURL_SSL_BACKEND: bearssl, gnutls, gskit, mbedtls, mesalink, nss, openssl, rustls, schannel, secure-transport, wolfssl Ref: https://github.com/curl/curl/issues/2209#issuecomment-360623286 Ref: https://github.com/curl/curl/issues/6717#issuecomment-800745201 Closes https://github.com/curl/curl/pull/6755
* docs: Explain DOH transfers inherit some SSL settingsJay Satiro2021-03-174-1/+24
| | | | | | | | | | | - Document in DOH that some SSL settings are inherited but DOH hostname and peer verification are not and are controlled separately. - Document that CURLOPT_SSL_CTX_FUNCTION is inherited by DOH handles but we're considering changing behavior to no longer inherit it. Request feedback. Closes https://github.com/curl/curl/pull/6688
* http: make 416 not fail with resume + CURLOPT_FAILONERRRORDaniel Stenberg2021-03-175-21/+110
| | | | | | | | | | | | | When asked to resume a download, libcurl will convert that to HTTP logic and if then the entire file is already transferred it will result in a 416 response from the HTTP server. With CURLOPT_FAILONERRROR set in that scenario, it should *not* lead to an error return. Updated test 1156, added test 1273 Reported-by: Jonathan Watt Fixes #6740 Closes #6753
* Curl_timeleft: check both timeouts during connectbagder/timeleftDaniel Stenberg2021-03-171-40/+38
| | | | | | | | | | | | | | | | | | | The duration of a connect and the total transfer are calculated from two different time-stamps. It can end up with the total timeout triggering before the connect timeout expires and we should make sure to acknowledge whichever timeout that is reached first. This is especially notable when a transfer first sits in PENDING, as that time is counted in the total time but the connect timeout is based on the time since the handle changed to the CONNECT state. The CONNECTTIMEOUT is per connect attempt. The TIMEOUT is for the entire operation. Fixes #6744 Closes #6745 Reported-by: Andrei Bica Assisted-by: Jay Satiro
* configure: remove use of deprecated macrosDaniel Stenberg2021-03-163-13/+1
| | | | AC_HEADER_TIME, AC_HEADER_STDC and AC_TYPE_SIGNAL
* configure: make AC_TRY_* into AC_*_IFELSEDaniel Stenberg2021-03-161-28/+33
| | | | ... as the former versions are deprecated.
* configure: s/AC_HELP_STRING/AS_HELP_STRINGDaniel Stenberg2021-03-164-182/+182
| | | | | | | | | AC_HELP_STRING is deprecated in 2.70+ and I believe AS_HELP_STRING works already since 2.59 so bump the minimum required version to that. Reported-by: Emil Engler Fixes #6647 Closes #6748
* RELEASE-NOTES: syncedDaniel Stenberg2021-03-161-7/+35
|
* travis: use ubuntu nghttp2 package instead of build our ownDaniel Stenberg2021-03-162-13/+1
| | | | Closes #6751
* travis: bump wolfssl to 4.7.0Daniel Stenberg2021-03-162-6/+6
|
* travis: only build wolfssl when neededDaniel Stenberg2021-03-162-6/+9
| | | | Closes #6751
* rustls: allocate a buffer for TLS data.Jacob Hoffman-Andrews2021-03-161-9/+15
| | | | | | | | | Previously, rustls was using an on-stack array for TLS data. However, crustls has an (unusual) requirement that buffers it deals with are initialized before writing to them. By using calloc, we can ensure the buffer is initialized once and then reuse it across calls. Closes #6742
* travis: add a rustls buildDaniel Stenberg2021-03-162-0/+21
| | | | | | ... that doesn't run any tests (yet) Closes #6750
* HTTP2: remove the outdated remark about multiplexing for the toolDaniel Stenberg2021-03-161-5/+0
|
* http2: don't set KEEP_SEND when there's no more data to be sentRobert Ronto2021-03-151-3/+5
| | | | | | | this should fix an issue where curl sometimes doesn't send out a request with authorization info after a 401 is received over http2 Closes #6747
* config: fix building SMB with configure using Win32 CryptoMarc Hoersken2021-03-154-39/+131
| | | | | | | | | | | | | | | | | | | Align conditions for NTLM features between CMake and configure builds by differentiating between USE_NTLM and USE_CURL_NTLM_CORE, just like curl_setup.h does internally to detect support of: - USE_NTLM: required for NTLM crypto authentication feature - USE_CURL_NTLM_CORE: required for SMB protocol Implement USE_WIN32_CRYPTO detection by checking for Crypt functions in wincrypt.h which are not available in the Windows App environment. Link advapi32 and crypt32 for Crypto API and Schannel SSL backend. Fix condition of Schannel SSL backend in CMake build accordingly. Reviewed-by: Marcel Raad Closes #6277
* config: fix detection of restricted Windows App environmentMarc Hoersken2021-03-151-11/+10
| | | | | | | | | | Move the detection of the restricted Windows App environment in curl_setup.h before the definition of USE_WIN32_CRYPTO via included config-win32.h in case no build system is used. Reviewed-by: Marcel Raad Part of #6277
* HISTORY: curl 7.7.2 was the first version used in Mac OS X 10.1Daniel Stenberg2021-03-151-5/+5
|
* gen.pl: quote "bare" minuses in the nroff curl.1Daniel Stenberg2021-03-142-5/+19
| | | | | | Reported-by: Alejandro Colomar Fixes #6698 Closes #6722
* hsts: remove unused definesDaniel Gustafsson2021-03-141-2/+0
| | | | | | | | | MAX_HSTS_SUBLEN and MAX_HSTS_SUBLENSTR were unused from the initial commit, and mostly likely leftovers from early development. Remove as they're not used for anything. Closes #6741 Reviewed-by: Daniel Stenberg <daniel@haxx.se>
* github: add torture-ftp for FTP-only torture testingDaniel Stenberg2021-03-121-0/+5
| | | | | | and at 20% to try to keep the run-time reasonable Closes #6728
* travis: split "torture" into a separate "events" build as wellDaniel Stenberg2021-03-122-1/+20
| | | | | | | | | Run torture without FTP and reducing coverage to 20% For some reason the torture tests now run a lot slower on travis and run into the 50 minute limit all the time. Closes #6728
* ftp: fix memory leak in ftp_doneDaniel Stenberg2021-03-121-1/+3
| | | | | | | | | If after a transfer is complete Curl_GetFTPResponse() returns an error, curl would not free the ftp->pathalloc block. Found by torture-testing test 576 Closes #6737
* http2: fail if connection terminated without END_STREAMoxalica2021-03-121-0/+11
| | | | Closes #6736
* RELEASE-NOTES: syncedDaniel Stenberg2021-03-121-8/+48
|
* rustls: support CURLOPT_SSL_VERIFYPEERJacob Hoffman-Andrews2021-03-121-42/+97
| | | | | | | | | | | | | This requires the latest main branch of crustls, which provides rustls_client_config_builder_dangerous_set_certificate_verifier and rustls_client_config_builder_set_enable_sni. This refactors the session setup into its own function, and adds a new function cr_hostname_is_ip. Because crustls doesn't support verification of IP addresses, special handling is needed: We disable SNI and set a placeholder hostname (which never actually gets sent on the wire). Closes #6719
* cookies: Fix potential NULL pointer deref with PSLDaniel Gustafsson2021-03-121-2/+6
| | | | | | | | | | | | | | | Curl_cookie_init can be called with data being NULL, and this can in turn be passed to Curl_cookie_add, meaning that both functions must be careful to only use data where it's checked for being a NULL pointer. The libpsl support code does however dereference data without checking, so if we are indeed having an unset data pointer we cannot PSL check the cookiedomain. This is currently not a reachable dereference, as the only caller with a NULL data isn't passing a file to initialize cookies from, but since the API has this contract let's ensure we hold it. Closes #6731 Reviewed-by: Daniel Stenberg <daniel@haxx.se>
* configure: only add OpenSSL paths if they are definedMichael Hordijk2021-03-121-2/+4
| | | | | | | | Add paths for OpenSSL compiling and linking only if they have been defined. If they haven't been defined, we'll assume that the paths are already available to the toolchain. Closes #6730