summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* wording: avoid blacklist/whitelist stereotypesDaniel Stenberg2020-06-101-4/+2
| | | | | | | | Instead of discussing if there's value or meaning (implied or not) in the colors, let's use words without the same possibly negative associations. Closes #5546
* all: fix codespell errorsViktor Szakats2020-05-251-1/+1
| | | | | | Reviewed-by: Jay Satiro Reviewed-by: Daniel Stenberg Closes https://github.com/curl/curl/pull/5452
* setopt: add CURLOPT_PROXY_ISSUERCERT(_BLOB) for coherencyGilles Vollant2020-05-231-0/+4
| | | | Closes #5431
* typecheck-gcc.h: CURLINFO_PRIVATE does not need a 'char *'Daniel Stenberg2020-05-211-2/+3
| | | | | | Reported-by: Billyzou0741326 on github Fixes #5432 Closes #5436
* typecheck-gcc.h: fix the OFF_T checkDaniel Stenberg2020-05-201-2/+2
| | | | | | | | The option number also needs to be less than CURLOPTTYPE_BLOB. Follow-up to cac5374298 Reported-by: Jeroen Ooms Bug: https://github.com/curl/curl/pull/5365#issuecomment-631084114
* setopt: support certificate options in memory with struct curl_blobGilles Vollant2020-05-152-1/+20
| | | | | | | | | | | | | This change introduces a generic way to provide binary data in setopt options, called BLOBs. This change introduces these new setopts: CURLOPT_ISSUERCERT_BLOB, CURLOPT_PROXY_SSLCERT_BLOB, CURLOPT_PROXY_SSLKEY_BLOB, CURLOPT_SSLCERT_BLOB and CURLOPT_SSLKEY_BLOB. Reviewed-by: Daniel Stenberg Closes #5357
* source cleanup: remove all custom typedef structsDaniel Stenberg2020-05-151-6/+8
| | | | | | | | | | | - Stick to a single unified way to use structs - Make checksrc complain on 'typedef struct {' - Allow them in tests, public headers and examples - Let MD4_CTX, MD5_CTX, and SHA256_CTX typedefs remain as they actually typedef different types/structs depending on build conditions. Closes #5338
* RELEASE-NOTES: syncedDaniel Stenberg2020-05-081-4/+4
| | | | And bumped next version to 7.71.0
* CURLOPT_SSL_OPTIONS: add *_NATIVE_CA to use Windows CA store (with openssl)Gilles Vollant2020-05-081-0/+4
| | | | Closes #4346
* RELEASE-NOTES: syncedDaniel Stenberg2020-04-291-3/+3
| | | | ... and bumped curlver.h to 7.70.1
* curl.h: update comment typoBrian Bergeron2020-04-221-1/+1
| | | | | | "routines with be invoked" -> "routines will be invoked" Closes #5279
* mqtt: add new experimental protocolBjorn Stenberg2020-04-141-0/+1
| | | | Closes #5173
* curl.h: remnove CURL_VERSION_ESNI. Never supported nor documentedDaniel Stenberg2020-03-291-2/+0
| | | | | | Considered experimental and therefore we can do this. Closes #5157
* version: add 'cainfo' and 'capath' to version info structDaniel Stenberg2020-03-271-1/+9
| | | | | | | | Suggested-by: Timothe Litt URL: https://curl.haxx.se/mail/lib-2020-03/0090.html Reviewed-by: Jay Satiro Closes #5150
* copyright: fix out-of-date copyright ranges and missing headersDaniel Stenberg2020-03-241-0/+21
| | | | | | | | | Reported by the new script 'scripts/copyright.pl'. The script has a regex whitelist for the files that don't need copyright headers. Removed three (mostly usesless) README files from docs/ Closes #5141
* RELEASE-NOTES: syncedDaniel Stenberg2020-03-181-4/+4
| | | | ... and bumped curlver.h to 7.70.0
* schannel: add "best effort" revocation check optionJohannes Schindelin2020-03-181-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Implement new option CURLSSLOPT_REVOKE_BEST_EFFORT and --ssl-revoke-best-effort to allow a "best effort" revocation check. A best effort revocation check ignores errors that the revocation check was unable to take place. The reasoning is described in detail below and discussed further in the PR. --- When running e.g. with Fiddler, the schannel backend fails with an unhelpful error message: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate. Sadly, many enterprise users who are stuck behind MITM proxies suffer the very same problem. This has been discussed in plenty of issues: https://github.com/curl/curl/issues/3727, https://github.com/curl/curl/issues/264, for example. In the latter, a Microsoft Edge developer even made the case that the common behavior is to ignore issues when a certificate has no recorded distribution point for revocation lists, or when the server is offline. This is also known as "best effort" strategy and addresses the Fiddler issue. Unfortunately, this strategy was not chosen as the default for schannel (and is therefore a backend-specific behavior: OpenSSL seems to happily ignore the offline servers and missing distribution points). To maintain backward-compatibility, we therefore add a new flag (`CURLSSLOPT_REVOKE_BEST_EFFORT`) and a new option (`--ssl-revoke-best-effort`) to select the new behavior. Due to the many related issues Git for Windows and GitHub Desktop, the plan is to make this behavior the default in these software packages. The test 2070 was added to verify this behavior, adapted from 310. Based-on-work-by: georgeok <giorgos.n.oikonomou@gmail.com> Co-authored-by: Markus Olsson <j.markus.olsson@gmail.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Closes https://github.com/curl/curl/pull/4981
* RELEASE-NOTES: syncedDaniel Stenberg2020-03-111-3/+3
| | | | bumped to 7.69.2
* RELEASE-NOTES: syncedDaniel Stenberg2020-03-051-3/+3
| | | | and bumped curlver.h
* curl.h: define CURL_WIN32 on windowsDaniel Stenberg2020-01-271-5/+14
| | | | | | | | | | | | ... so that the subsequent logic below can use a single known define to know when built on Windows (as we don't define WIN32 anymore). Follow-up to 1adebe7886ddf20b Reported-by: crazydef on github Assisted-by: Marcel Raad Fixes #4854 Closes #4855
* smtp: Allow RCPT TO command to fail for some recipientsPavel Volgarev2020-01-211-0/+3
| | | | | | | | Introduces CURLOPT_MAIL_RCPT_ALLLOWFAILS. Verified with the new tests 3002-3007 Closes #4816
* ngtcp2: Add an error code for QUIC connection errorsEmil Engler2020-01-111-0/+1
| | | | | | | | | | - Add new error code CURLE_QUIC_CONNECT_ERROR for QUIC connection errors. Prior to this change CURLE_FAILED_INIT was used, but that was not correct. Closes https://github.com/curl/curl/pull/4754
* multi: Change curl_multi_wait/poll to error on negative timeoutJay Satiro2020-01-111-1/+2
| | | | | | | | | | | | | | - Add new error CURLM_BAD_FUNCTION_ARGUMENT and return that error when curl_multi_wait/poll is passed timeout param < 0. Prior to this change passing a negative value to curl_multi_wait/poll such as -1 could cause the function to wait forever. Reported-by: hamstergene@users.noreply.github.com Fixes https://github.com/curl/curl/issues/4763 Closes https://github.com/curl/curl/pull/4765
* include: remove non-curl prefixed definesDaniel Stenberg2020-01-092-364/+339
| | | | | ...requires some rearranging of the setup of CURLOPT_ and CURLMOPT_ enums.
* curl.h: remove WIN32 defineDaniel Stenberg2020-01-091-10/+1
| | | | | It isn't our job to define this in a public header - and it defines a name outside of our naming scope.
* bump: work towards 7.69.0 is startedDaniel Stenberg2020-01-091-5/+5
|
* multi.h: move INITIAL_MAX_CONCURRENT_STREAMS from public headerDaniel Stenberg2020-01-061-4/+1
| | | | | | | ... to the private multihhandle.h. It is not for public use and it wasn't prefixed correctly anyway! Closes #4790
* curl.h: add two defines for the "pre ISO C" caseDaniel Stenberg2019-12-191-0/+2
| | | | | | | | | Without this fix, this caused a compilation failure on AIX with IBM xlc 13.1.3 compiler. Reported-by: Ram Krushna Mishra Fixes #4739 Closes #4740
* openssl: CURLSSLOPT_NO_PARTIALCHAIN can disable partial cert chainsDaniel Stenberg2019-12-031-0/+4
| | | | Closes #4655
* XFERINFOFUNCTION: support CURL_PROGRESSFUNC_CONTINUEJohn Schroeder2019-11-261-0/+5
| | | | | | | | | (also for PROGRESSFUNCTION) By returning this value from the callback, the internal progress function call is still called afterward. Closes #4599
* TLS: add BearSSL vtls implementationMichael Forney2019-11-261-1/+2
| | | | Closes #4597
* multi: add curl_multi_wakeup()Gergely Nagy2019-11-251-0/+10
| | | | | | | | | | | | This commit adds curl_multi_wakeup() which was previously in the TODO list under the curl_multi_unblock name. On some platforms and with some configurations this feature might not be available or can fail, in these cases a new error code (CURLM_WAKEUP_FAILURE) is returned from curl_multi_wakeup(). Fixes #4418 Closes #4608
* include: make CURLE_HTTP3 use a new error codeDaniel Stenberg2019-11-211-3/+2
| | | | | | | | | To avoid potential issues with error code reuse. Reported-by: Christoph M. Becker Assisted-by: Dan Fandrich Fixes #4601 Closes #4627
* bump: next release will be 7.68.0Daniel Stenberg2019-11-211-4/+4
|
* quiche: reject headers in the wrong orderDaniel Stenberg2019-11-121-1/+3
| | | | | | | | Pseudo header MUST come before regular headers or cause an error. Reported-by: Cynthia Coan Fixes #4571 Closes #4584
* system.h: fix for MCST lcc compilerr-a-sattarov2019-11-091-8/+19
| | | | | | | | | | | | Fixed build by MCST lcc compiler on MCST Elbrus 2000 architecture and do some code cleanup. e2k (Elbrus 2000) - this is VLIW/EPIC architecture, like Intel Itanium architecture. Ref: https://en.wikipedia.org/wiki/Elbrus_2000 Closes https://github.com/curl/curl/pull/4576
* curlver: bump to 7.67.1Daniel Stenberg2019-11-081-3/+3
|
* ESNI: initial build/setupNiall2019-10-021-0/+2
| | | | Closes #4011
* CURLMOPT_MAX_CONCURRENT_STREAMS: new setoptKunal Ekawde2019-10-021-0/+6
| | | | Closes #4410
* urlapi: CURLU_NO_AUTHORITY allows empty authority/host partJens Finkhaeuser2019-09-191-0/+2
| | | | | | | CURLU_NO_AUTHORITY is intended for use with unknown schemes (i.e. not "file:///") to override cURL's default demand that an authority exists. Closes #4349
* version: next release will be 7.67.0Daniel Stenberg2019-09-191-4/+4
|
* curlver: bump to 7.66.1Daniel Stenberg2019-09-121-3/+3
|
* defines: avoid underscore-prefixed definesDaniel Stenberg2019-08-239-310/+310
| | | | | | | | | | | Double-underscored or underscore plus uppercase letter at least. ... as they're claimed to be reserved. Reported-by: patnyb on github Fixes #4254 Closes #4255
* vauth: Use CURLE_AUTH_ERROR for auth function errorsJay Satiro2019-08-141-0/+2
| | | | | | | | | | | | | | - Add new error code CURLE_AUTH_ERROR. Prior to this change auth function errors were signaled by CURLE_OUT_OF_MEMORY and CURLE_RECV_ERROR, and neither one was technically correct. Ref: https://github.com/curl/curl/pull/3848 Co-authored-by: Dominik Hölzl Closes https://github.com/curl/curl/pull/3864
* curl_version_info: make the quic_version a constDaniel Stenberg2019-08-131-1/+1
| | | | | | Follow-up from 1a2df1518ad8653f Closes #4222
* curl_version_info: offer quic (and h3) library infoDaniel Stenberg2019-08-121-1/+2
| | | | Closes #4216
* CURLOPT_H3: removedDaniel Stenberg2019-08-091-6/+1
| | | | | | There's no use for this anymore and it was never in a release. Closes #4206
* alt-svc: send Alt-Used: in redirected requestsDaniel Stenberg2019-08-081-1/+1
| | | | | | | | | | | | | | | RFC 7838 section 5: When using an alternative service, clients SHOULD include an Alt-Used header field in all requests. Removed CURLALTSVC_ALTUSED again (feature is still EXPERIMENTAL thus this is deemed ok). You can disable sending this header just like you disable any other HTTP header in libcurl. Closes #4199
* CURLOPT_HTTP_VERSION: seting this to 3 forces HTTP/3 use directlyDaniel Stenberg2019-08-081-5/+2
| | | | | | | | | | | | 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
* CURLINFO_RETRY_AFTER: parse the Retry-After header valueDaniel Stenberg2019-08-071-1/+2
| | | | | | | | This is only the libcurl part that provides the information. There's no user of the parsed value. This change includes three new tests for the parser. Ref: #3794