summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* runtests: preprocess DISABLED to allow conditionalsbagder/preproDaniel Stenberg2021-01-181-9/+19
| | | | | ... with this function provided, we can disable tests for specific environments and setups directly within this file.
* runtests: turn preprocessing into a separate functionDaniel Stenberg2021-01-181-73/+52
| | | | | ... and remove all other variable substitutions as they're now done once and for all in the preprocessor.
* lib: pass in 'struct Curl_easy *' to most functionsDaniel Stenberg2021-01-1776-2585/+2849
| | | | | | | | | | | | | | | | | | | | | ... in most cases instead of 'struct connectdata *' but in some cases in addition to. - We mostly operate on transfers and not connections. - We need the transfer handle to log, store data and more. Everything in libcurl is driven by a transfer (the CURL * in the public API). - This work clarifies and separates the transfers from the connections better. - We should avoid "conn->data". Since individual connections can be used by many transfers when multiplexing, making sure that conn->data points to the current and correct transfer at all times is difficult and has been notoriously error-prone over the years. The goal is to ultimately remove the conn->data pointer for this reason. Closes #6425
* docs: fix typos in NEW-PROTOCOL.mdEmil Engler2021-01-171-2/+2
| | | | | | This fixes a misspelled "it" and a grammatically wrong "-ing" suffix. Closes #6471
* RELEASE-NOTES: syncedDaniel Stenberg2021-01-161-10/+47
|
* cmake: expose CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIGRazvan Cojocaru2021-01-162-0/+5
| | | | | | | This does for cmake builds what --disable-openssl-auto-load-config does for autoconf builds. Closes https://github.com/curl/curl/pull/6435
* test1918: verify curl_easy_option_by_name() and curl_easy_option_by_id()Daniel Stenberg2021-01-154-2/+95
| | | | | | | | | | | | ... and as a practical side-effect, make sure that the Curl_easyopts_check() function is asserted in debug builds, which we want to detect mismatches between the options list in easyoptions.c and the options in curl.h Found-by: Gisle Vanem Bug: https://github.com/curl/curl/commit/08e8455dddc5e48e58a12ade3815c01ae3da3b64#commitcomment-45991815 Closes #6461
* easyoptions: add the missing AWS_SIGV4Gisle Vanem2021-01-151-2/+3
| | | | Follow-up from AWS_SIGV4
* schannel_verify: fix safefree call typoDaniel Stenberg2021-01-151-5/+5
| | | | | | Follow-up from e87ad71d1ba00519 Closes #6459
* mime: make sure setting MIMEPOST to NULL resets properlyDaniel Stenberg2021-01-155-5/+104
| | | | | | | | | | | | ... so that a function can first use MIMEPOST and then set it to NULL to reset it back to a blank POST. Added test 584 to verify the fix. Reported-by: Christoph M. Becker Fixes #6455 Closes #6456
* multi: set the PRETRANSFER time-stamp when we switch to PERFORMDaniel Stenberg2021-01-141-23/+9
| | | | | | | | | | | ... instead of at end of the DO state. This makes the timer more accurate for the protocols that use the DOING state (such as FTP), and simplifies how the function (now called init_perform) is called. The timer will then include the entire procedure up to PERFORM - including all instructions for getting the transfer started. Closes #6454
* CURLINFO_PRETRANSFER_TIME.3: clarifyDaniel Stenberg2021-01-141-5/+6
| | | | | | | | ... the timer *does* include the instructions for getting the remote file. Ref: #6452 Closes #6453
* schannel: plug a memory-leakGisle Vanem2021-01-141-1/+1
| | | | | | ... when built without -DUNICODE. Closes #6457
* gitattributes: Set batch files to CRLF line endings on checkoutJay Satiro2021-01-141-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a batch file is run without CRLF line endings (ie LF-only) then arbitrary behavior may occur. I consider that a bug in Windows, however the effects can be serious enough (eg unintended code executed) that we're fixing it in the repo by requiring CRLF line endings for batch files on checkout. Prior to this change the checked-out line endings of batch files were dependent on a user's git preferences. On Windows it is common for git users to have automatic CRLF conversion enabled (core.autocrlf true), but those users that don't would run into this behavior. For example a user has reported running the Visual Studio project generator batch file (projects/generate.bat) and it looped forever. Output showed that the Windows OS interpreter was occasionally jumping to arbitrary points in the batch file and executing commands. This resulted in unintended files being removed (a removal sequence called) and looping forever. Ref: https://serverfault.com/q/429594 Ref: https://stackoverflow.com/q/232651 Ref: https://www.dostips.com/forum/viewtopic.php?t=8988 Ref: https://git-scm.com/docs/gitattributes#_checking_out_and_checking_in Ref: https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#_core_autocrlf Bug: https://github.com/curl/curl/discussions/6427 Reported-by: Ganesh Kamath Closes https://github.com/curl/curl/pull/6442
* tool_operate: spellfix a commentDaniel Stenberg2021-01-141-1/+1
|
* ROADMAP: refreshedDaniel Stenberg2021-01-141-7/+12
| | | | | | o removed HSTS - already implemented o added HTTPS RR records o mention HTTP/3 completion
* http_chunks: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-6/+6
|
* transfer: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-5/+5
|
* tftp: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-5/+5
|
* multi: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-14/+14
|
* ldap: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-5/+5
|
* doh: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-2/+2
|
* asyn-ares: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-4/+4
|
* vtls: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-26/+26
|
* bearssl: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-31/+31
|
* mbedtls: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-32/+32
|
* wolfssl: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-30/+30
|
* nss: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-44/+44
|
* gnutls: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-49/+49
|
* openssl: remove Curl_ prefix from static functionsDaniel Stenberg2021-01-141-65/+65
| | | | | | ... as we reserve this prefix to library-wide functions. Closes #6443
* nss: get the run-time version instead of build-timeDaniel Stenberg2021-01-131-2/+2
| | | | Closes #6445
* tool_doswin: Restore original console settings on CTRL signalJay Satiro2021-01-122-53/+66
| | | | | | | | | | | | | | | | | | - Move Windows terminal init code from tool_main to tool_doswin. - Restore the original console settings on CTRL+C and CTRL+BREAK. Background: On Windows the curl tool changes the console settings to enable virtual terminal processing (eg color output) if supported (ie Win 10). The original settings are restored on exit but prior to this change were not restored in the case of the CTRL signals. Windows VT behavior varies depending on console/powershell/terminal; refer to the discussion in #6226. Assisted-by: Rich Turner Closes https://github.com/curl/curl/pull/6226
* gen.pl: fix perl syntaxDaniel Stenberg2021-01-121-2/+2
| | | | Follow-up to 324cf1d2e
* help: update to current codebaseEmil Engler2021-01-121-5/+6
| | | | | | This commit bumps the help to the current state of the project. Closes #6437
* docs: fix line length bug in gen.plEmil Engler2021-01-121-2/+5
| | | | | | | | | The script warns if the length of $opt and $desc is > 78. However, these two variables are on totally separate lines so the check makes no sense. Also the $bitmask field is totally forgotten. Currently this leads to two warnings within `--resolve` and `--aws-sigv4`. Closes #6438
* docs: fix wrong documentation in help.dEmil Engler2021-01-121-1/+1
| | | | | | | curl does not list all categories when you invoke "--help" without any parameters. Closes #6436
* aws-sigv4.d: polish the wordingDaniel Stenberg2021-01-121-2/+2
| | | | | | Make it shorter and imperative form Closes #6439
* misc: fix typosFabian Keil2021-01-117-10/+12
| | | | | Bug: https://curl.se/mail/lib-2021-01/0063.html Closes #6434
* multi_runsingle: bail out early on data->conn == NULLDaniel Stenberg2021-01-111-1/+4
| | | | | | | As that's a significant error condition and scan-build warns for NULL pointer dereferences if we don't. Closes #6433
* multi: skip DONE state if there's no connection left for ftp wildcardDaniel Stenberg2021-01-111-1/+4
| | | | ... to avoid running in that state with data->conn being NULL.
* libssh2: fix "Value stored to 'readdir_len' is never read"Daniel Stenberg2021-01-111-1/+0
| | | | Detected by scan-build
* connect: mark intentional ignores of setsockopt return valuesDaniel Stenberg2021-01-111-9/+8
| | | | | | Pointed out by Coverity Closes #6431
* http_proxy: Fix CONNECT chunked encoding race conditionJay Satiro2021-01-111-1/+4
| | | | | | | | | | | | | | | | - During the end-of-headers response phase do not mark the tunnel complete unless the response body was completely parsed/ignored. Prior to this change if the entirety of a CONNECT response with chunked encoding was not received by the time the final header was parsed then the connection would be marked done prematurely, before all the chunked data could be read in and ignored (since this is what we do with any CONNECT response body) and the connection could not be used. Bug: https://curl.se/mail/lib-2021-01/0033.html Reported-by: Fabian Keil Closes https://github.com/curl/curl/pull/6432
* RELEASE-NOTES: syncedDaniel Stenberg2021-01-111-9/+27
|
* url: if IDNA conversion fails, fallback to TransitionalDaniel Stenberg2021-01-111-0/+5
| | | | | | | | This improves IDNA2003 compatiblity. Reported-by: Bubu on github Fixes #6423 Closes #6428
* travis: make the Hyper build from its master branchDaniel Stenberg2021-01-111-1/+1
| | | | Closes #6430
* http: make 'authneg' also work for HyperDaniel Stenberg2021-01-105-21/+25
| | | | | | | When doing a request with a request body expecting a 401/407 back, that initial request is sent with a zero content-length. Test 177 and more. Closes #6424
* cmake: Add an option to disable libidn2Jay Satiro2021-01-081-1/+5
| | | | | | | | | | New option USE_LIBIDN2 defaults to ON for libidn2 detection. Prior to this change libidn2 detection could not be turned off in cmake builds. Reported-by: William A Rowe Jr Fixes https://github.com/curl/curl/issues/6361 Closes https://github.com/curl/curl/pull/6362
* HYPER: no longer needs the special branchDaniel Stenberg2021-01-081-1/+1
|
* test179: use consistent header line endingsDaniel Stenberg2021-01-081-1/+1
| | | | ... to make "Hyper mode" work better.