summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* cleanup: s/curl_debug/curl_dbg_debug in comments and docsDaniel Stenberg2019-08-081-3/+3
| | | | | | | | | | Leftovers from the function rename back in 76b63489495 Reported-by: Gisle Vanem Bug: https://github.com/curl/curl/commit/f3e0f071b14fcb46a453f69bdf4e062bcaacf362#com mitcomment-34601751 Closes #4203
* CURLOPT_HTTP_VERSION: seting this to 3 forces HTTP/3 use directlyDaniel Stenberg2019-08-084-9/+5
| | | | | | | | | | | | Even though it cannot fall-back to a lower HTTP version automatically. The safer way to upgrade remains via CURLOPT_ALTSVC. CURLOPT_H3 no longer has any bits that do anything and might be removed before we remove the experimental label. Updated the curl tool accordingly to use "--http3". Closes #4197
* curl: make use of CURLINFO_RETRY_AFTER when retryingDaniel Stenberg2019-08-071-1/+14
| | | | | | | | If a Retry-After: header was used in the response, that value overrides other retry timing options. Fixes #3794 Closes #4195
* curl: use CURLINFO_PROTOCOL to check for HTTP(s)Daniel Stenberg2019-08-071-4/+3
| | | | ... instead of CURLINFO_EFFECTIVE_URL to avoid string operations.
* curl: have -w's 'http_version' show '3' for HTTP/3Daniel Stenberg2019-08-071-1/+4
| | | | Closes #4196
* curl: --sasl-authzid added to support CURLOPT_SASL_AUTHZID from the toolSteve Holme2019-08-065-1/+14
| | | | | | | | | | | | Ref: https://github.com/curl/curl/issues/3653 Ref: https://github.com/curl/curl/pull/3790 NOTE: This commit was cherry-picked and is part of a series of commits that added the authzid feature for upcoming 7.66.0. The series was temporarily reverted in db8ec1f so that it would not ship in a 7.65.x patch release. Closes https://github.com/curl/curl/pull/4186
* curl_multi_poll: a sister to curl_multi_wait() that waits moreDaniel Stenberg2019-08-061-40/+2
| | | | | | | | | | | | | | | | | | | | | | | | Repeatedly we see problems where using curl_multi_wait() is difficult or just awkward because if it has no file descriptor to wait for internally, it returns immediately and leaves it to the caller to wait for a small amount of time in order to avoid occasional busy-looping. This is often missed or misunderstood, leading to underperforming applications. This change introduces curl_multi_poll() as a replacement drop-in function that accepts the exact same set of arguments. This function works identically to curl_multi_wait() - EXCEPT - for the case when there's nothing to wait for internally, as then this function will by itself wait for a "suitable" short time before it returns. This effectiely avoids all risks of busy-looping and should also make it less likely that apps "over-wait". This also changes the curl tool to use this funtion internally when doing parallel transfers and changes curl_easy_perform() to use it internally. Closes #4163
* http09: disable HTTP/0.9 by default in both tool and libraryDaniel Stenberg2019-08-061-1/+1
| | | | | | | | As the plan has been laid out in DEPRECATED. Update docs accordingly and verify in test 1174. Now requires the option to be set to allow HTTP/0.9 responses. Closes #4191
* src/makefile: fix uncompressed hugehelp.c generationDaniel Stenberg2019-08-011-1/+1
| | | | | | | | Regression from 5cf5d57ab9 (7.64.1) Fixed-by: Lance Ware Fixes #4176 Closes #4177
* curl: remove outdated commentDaniel Stenberg2019-07-301-6/+0
| | | | | | | | Turned bad with commit b8894085000 Reported-by: niallor on github Fixes #4172 Closes #4173
* curl: cap the maximum allowed values for retry time argumentsDaniel Stenberg2019-07-303-3/+26
| | | | | | | | | | ... to avoid integer overflows later when multiplying with 1000 to convert seconds to milliseconds. Added test 1269 to verify. Reported-by: Jason Lee Closes #4166
* curl: avoid uncessary libcurl timeouts (in parallel mode)Daniel Stenberg2019-07-291-2/+5
| | | | | | | When curl_multi_wait() returns OK without file descriptors to wait for, it might already have done a long timeout. Closes #4159
* tool_operate: fix implicit call to easysrc_cleanupJay Satiro2019-07-231-2/+6
| | | | | | | | | | easysrc_cleanup is only defined when CURL_DISABLE_LIBCURL_OPTION is not defined, and prior to this change would be called regardless. Bug: https://github.com/curl/curl/pull/3804#issuecomment-513922637 Reported-by: Marcel Raad Closes https://github.com/curl/curl/pull/4142
* curl:create_transfers check return code from curl_easy_setoptDaniel Stenberg2019-07-221-1/+3
| | | | | | | | From commit b8894085 Pointed out by Coverity CID 1451703 Closes #4134
* HTTP3: initial (experimental) supportDaniel Stenberg2019-07-214-1/+13
| | | | | | | | | USe configure --with-ngtcp2 or --with-quiche Using either option will enable a HTTP3 build. Co-authored-by: Alessandro Ghedini <alessandro@ghedini.me> Closes #3500
* curl: remove dead codeDaniel Stenberg2019-07-211-25/+19
| | | | | | | The loop never loops (since b889408500), pointed out by Coverity (CID 1451702) Closes #4133
* curl: support parallel transfersDaniel Stenberg2019-07-2018-753/+1414
| | | | | | | | This is done by making sure each individual transfer is first added to a linked list as then they can be performed serially, or at will, in parallel. Closes #3804
* curl: only accept COLUMNS less than 10000Daniel Stenberg2019-07-161-1/+2
| | | | | | | | ... as larger values would rather indicate something silly (and could potentially cause buffer problems). Reported-by: pendrek at hackerone Closes #4114
* curl: skip CURLOPT_PROXY_CAPATH for disabled-proxy buildsKoen Dergent2019-06-241-1/+2
| | | | Closes #4061
* curl: improved skip-setopt-options when built with disabled featuresDaniel Stenberg2019-06-183-35/+80
| | | | | | | Reduces #ifdefs in src/tool_operate.c Follow-up from 4e86f2fc4e6 Closes #3936
* tool_cb_prg: Fix integer overflow in progress barDaniel Gustafsson2019-06-101-4/+9
| | | | | | | | | | | | | Commit 61faa0b420c236480bc9ef6fd52b4ecc1e0f8d17 fixed the progress bar width calculation to avoid integer overflow, but failed to account for the fact that initial_size is initialized to -1 when the file size is retrieved from the remote on an upload, causing another signed integer overflow. Fix by separately checking for this case before the width calculation. Closes #3984 Reported-by: Brian Carpenter (Geeknik Labs) Reviewed-by: Daniel Stenberg <daniel@haxx.se>
* build: fix Codacy warningsMarcel Raad2019-06-051-1/+1
| | | | | | Reduce variable scopes and remove redundant variable stores. Closes https://github.com/curl/curl/pull/3975
* tool_parsecfg: Use correct return type for GetModuleFileName()Steve Holme2019-06-041-2/+3
| | | | | | | GetModuleFileName() returns a DWORD which is a typedef of an unsigned long and not an int. Closes #3980
* tool_parsecfg: Fix control flow issue (DEADCODE)Steve Holme2019-06-021-7/+7
| | | | | | | Follow-up to 8144ba38. Detected by Coverity CID 1445663 Closes #3976
* tls13-docs: mention it is only for OpenSSL >= 1.1.1Daniel Stenberg2019-06-021-4/+4
| | | | | | | Reported-by: Jay Satiro Co-authored-by: Jay Satiro Fixes #3938 Closes #3946
* Revert all SASL authzid (new feature) commitsJay Satiro2019-05-255-14/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Revert all commits related to the SASL authzid feature since the next release will be a patch release, 7.65.1. Prior to this change CURLOPT_SASL_AUTHZID / --sasl-authzid was destined for the next release, assuming it would be a feature release 7.66.0. However instead the next release will be a patch release, 7.65.1 and will not contain any new features. After the patch release after the reverted commits can be restored by using cherry-pick: git cherry-pick a14d72c a9499ff 8c1cc36 c2a8d52 0edf690 Details for all reverted commits: Revert "os400: take care of CURLOPT_SASL_AUTHZID in curl_easy_setopt_ccsid()." This reverts commit 0edf6907ae37e2020722e6f61229d8ec64095b0a. Revert "tests: Fix the line endings for the SASL alt-auth tests" This reverts commit c2a8d52a1356a722ff9f4aeb983cd4eaf80ef221. Revert "examples: Added SASL PLAIN authorisation identity (authzid) examples" This reverts commit 8c1cc369d0c7163c6dcc91fd38edfea1f509ae75. Revert "curl: --sasl-authzid added to support CURLOPT_SASL_AUTHZID from the tool" This reverts commit a9499ff136d89987af885e2d7dff0a066a3e5817. Revert "sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZID" This reverts commit a14d72ca2fec5d4eb5a043936e4f7ce08015c177.
* tool_setopt: for builds with disabled-proxy, skip all proxy setopts()Daniel Stenberg2019-05-232-19/+74
| | | | | | Reported-by: Marcel Raad Fixes #3926 Closes #3929
* tool_parse_cfg: Avoid 2 fopen() for WIN32Gisle Vanem2019-05-231-3/+4
| | | | | | | Using the memdebug.h mem-leak feature, I noticed 2 calls like: FILE tool_parsecfg.c:70 fopen("c:\Users\Gisle\AppData\Roaming\_curlrc","rt") FILE tool_parsecfg.c:114 fopen("c:\Users\Gisle\AppData\Roaming\_curlrc","rt") No need for 'fopen(), 'fclose()' and a 'fopen()' yet again.
* curl: --sasl-authzid added to support CURLOPT_SASL_AUTHZID from the toolSteve Holme2019-05-225-1/+14
|
* curl: report error for "--no-" on non-boolean optionsDaniel Stenberg2019-05-203-2/+10
| | | | | | Reported-by: Olen Andoni Fixes #3906 Closes #3907
* tool_formparse: remove redundant assignmentMarcel Raad2019-05-201-3/+2
| | | | | | Just initialize word_begin with the correct value. Closes https://github.com/curl/curl/pull/3873
* curl: make code work with protocol-disabled libcurlDaniel Stenberg2019-05-181-5/+12
| | | | Closes #3844
* cleanup: remove FIXME and TODO commentsDaniel Stenberg2019-05-164-18/+4
| | | | | | | | | They serve very little purpose and mostly just add noise. Most of them have been around for a very long time. I read them all before removing or rephrasing them. Ref: #3876 Closes #3883
* curl: don't set FTP options for FTP-disabled buildsDaniel Stenberg2019-05-161-1/+4
| | | | | | | | | | ... since libcurl has started to be totally unaware of options for disabled protocols they now return error. Bug: https://github.com/curl/curl/commit/c9c5304dd4747cbe75d2f24be85920d572fcb5b8#commitcomment-33533937 Reported-by: Marcel Raad Closes #3886
* tool_help: Warn if curl and libcurl versions do not matchJay Satiro2019-04-161-0/+4
| | | | | | | | | | | .. because functionality may be affected if the versions differ. This commit implements TODO 18.7 "warning if curl version is not in sync with libcurl version". Ref: https://github.com/curl/curl/blob/curl-7_64_1/docs/TODO#L1028-L1033 Closes https://github.com/curl/curl/pull/3774
* build: fix Codacy/CppCheck warningsMarcel Raad2019-04-115-7/+6
| | | | | | | | | | - remove unused variables - declare conditionally used variables conditionally - suppress unused variable warnings in the CMake tests - remove dead variable stores - consistently use WIN32 macro to detect Windows Closes https://github.com/curl/curl/pull/3739
* tool_cb_wrt: fix bad-function-cast warningMarcel Raad2019-04-021-5/+3
| | | | | | | | | Commit f5bc578f4cdfdc6c708211dfc2962a0e9d79352d reintroduced the warning fixed in commit 2f5f31bb57d68b54e03bffcd9648aece1fe564f8. Extend fhnd's scope and reuse that variable instead of calling _get_osfhandle a second time to fix the warning again. Closes https://github.com/curl/curl/pull/3718
* tool_help: include <strings.h> for strcasecmpDaniel Stenberg2019-04-011-0/+3
| | | | | | Reported-by: Wyatt O'Day Fixes #3715 Closes #3716
* tool_cb_wrt: fix writing to Windows null device NULJay Satiro2019-03-261-1/+6
| | | | | | | | | | | | - Improve console detection. Prior to this change WriteConsole could be called to write to a handle that may not be a console, which would cause an error. This issue is limited to character devices that are not also consoles such as the null device NUL. Bug: https://github.com/curl/curl/issues/3175#issuecomment-439068724 Reported-by: Gisle Vanem
* tool_getpass: termios.h is present on AmigaOS 3, but no tcgetattr/tcsetattrChris Young2019-03-151-1/+5
|
* tool_operate: build on AmigaOSChris Young2019-03-151-3/+7
|
* makefile: make checksrc and hugefile commands "silent"Daniel Stenberg2019-03-141-13/+23
| | | | | | | ... to match the style already used for compiling, linking etc. Acknowledges 'make V=1' to enable verbose. Closes #3681
* curl.1: mark the argument to --cookie as <data|filename>Daniel Stenberg2019-03-141-1/+1
| | | | | | | | From a discussion in #3676 Suggested-by: Tim Rühsen Closes #3682
* memdebug: make debug-specific functions use curl_dbg_ prefixDaniel Stenberg2019-03-081-3/+3
| | | | | | | To not "collide" or use up the regular curl_ name space. Also makes them easier to detect in helper scripts. Closes #3656
* alt-svc: the curl command line bitsDaniel Stenberg2019-03-035-9/+26
|
* alt-svc: the libcurl bitsDaniel Stenberg2019-03-031-0/+1
|
* curl: display --version features sorted alphabeticallyDaniel Stenberg2019-02-271-3/+23
| | | | Closes #3611
* curl: remove MANUAL from -M outputDaniel Stenberg2019-02-203-33/+8
| | | | | | | | | | | | | | | ... and remove it from the dist tarball. It has served its time, it barely gets updated anymore and "everything curl" is now convering all this document once tried to include, and does it more and better. In the compressed scenario, this removes ~15K data from the binary, which is 25% of the -M output. It remains in the git repo for now for as long as the web site builds a page using that as source. It renders poorly on the site (especially for mobile users) so its not even good there. Closes #3587
* cli tool: fix mime post with --disable-libcurl-option configure optionPatrick Monnerat2019-02-198-127/+181
| | | | | | Reported-by: Marcel Raad Fixes #3576 Closes #3583
* cli tool: refactor encoding conversion sequence for switch case fallthrough.Patrick Monnerat2019-02-161-7/+5
|