aboutsummaryrefslogtreecommitdiff
path: root/docs/libcurl
AgeCommit message (Collapse)Author
2020-01-09include: remove non-curl prefixed definesDaniel Stenberg
...requires some rearranging of the setup of CURLOPT_ and CURLMOPT_ enums.
2020-01-06CURLOPT_READFUNCTION.3: fix fopen params in exampleJay Satiro
2020-01-06CURLOPT_READFUNCTION.3: fix variable name in exampleJay Satiro
Reported-by: Paul Joyce Fixes https://github.com/curl/curl/issues/4787
2020-01-05docs: mention CURL_MAX_INPUT_LENGTH restrictionsDaniel Stenberg
... for curl_easy_setopt() and curl_url_set(). [skip ci] Closes #4783
2019-12-26CURLOPT_HEADERFUNCTION.3: Document that size is always 1Jay Satiro
For compatibility with `fwrite`, the `CURLOPT_HEADERFUNCTION` callback is passed two `size_t` parameters which, when multiplied, designate the number of bytes of data passed in. In practice, CURL always sets the first parameter (`size`) to 1. This practice is also enshrined in documentation and cannot be changed in future. The documentation states that the default callback is `fwrite`, which means `fwrite` must be a suitable function for this purpose. However, the documentation also states that the callback must return the number of *bytes* it successfully handled, whereas ISO C `fwrite` returns the number of items (each of size `size`) which it wrote. The only way these numbers can be equal is if `size` is 1. Since `size` is 1 and can never be changed in future anyway, document that fact explicitly and let users rely on it. Reported-by: Frank Gevaerts Commit-message-by: Christopher Head Ref: https://github.com/curl/curl/pull/2787 Fixes https://github.com/curl/curl/issues/4758
2019-12-18CURLOPT_QUOTE.3: fix typosJay Satiro
Prior to this change the EXAMPLE in the QUOTE/PREQUOTE/POSTQUOTE man pages would not compile because a variable name was incorrect. Reported-by: Bylon2@users.noreply.github.com Fixes https://github.com/curl/curl/issues/4736
2019-12-18CURLOPT_URL.3: "curl supports SMB version 1 (only)"Daniel Stenberg
[skip ci]
2019-12-16docs: TLS SRP doesn't work with TLS 1.3Daniel Stenberg
Reported-by: sayrer on github Closes #4262 [skip ci]
2019-12-04CURLOPT_VERBOSE.3: see also ERRORBUFFERDaniel Stenberg
2019-12-03openssl: CURLSSLOPT_NO_PARTIALCHAIN can disable partial cert chainsDaniel Stenberg
Closes #4655
2019-12-03OPENSOCKETFUNCTION.3: correct the purpose descriptionDaniel Stenberg
Reported-by: Jeff Mears Bug: https://curl.haxx.se/mail/lib-2019-12/0007.html Closes #4667
2019-11-28docs: add more references to curl_multi_pollDaniel Stenberg
Fixes #4643 Closes #4652
2019-11-26XFERINFOFUNCTION: support CURL_PROGRESSFUNC_CONTINUEJohn Schroeder
(also for PROGRESSFUNCTION) By returning this value from the callback, the internal progress function call is still called afterward. Closes #4599
2019-11-26TLS: add BearSSL vtls implementationMichael Forney
Closes #4597
2019-11-26curl_multi_wakeup.3: add example and AVAILABILITYDaniel Stenberg
Reviewed-by: Gergely Nagy Closes #4635
2019-11-25multi: add curl_multi_wakeup()Gergely Nagy
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
2019-11-22test1175: verify symbols-in-versions and libcurl-errors.3 in syncDaniel Stenberg
Closes #4628
2019-11-21include: make CURLE_HTTP3 use a new error codeDaniel Stenberg
To avoid potential issues with error code reuse. Reported-by: Christoph M. Becker Assisted-by: Dan Fandrich Fixes #4601 Closes #4627
2019-11-12quiche: reject headers in the wrong orderDaniel Stenberg
Pseudo header MUST come before regular headers or cause an error. Reported-by: Cynthia Coan Fixes #4571 Closes #4584
2019-11-02copyrights: update all copyright notices to 2019 on files changed this yearVilhelm Prytz
Closes #4547
2019-10-16CURLOPT_TIMEOUT.3: Clarify transfer timeout time includes queue timeJay Satiro
Prior to this change some users did not understand that the "request" starts when the handle is added to the multi handle, or probably they did not understand that some of those transfers may be queued and that time is included in timeout. Reported-by: Jeroen Ooms Fixes https://github.com/curl/curl/issues/4486 Closes https://github.com/curl/curl/pull/4489
2019-10-07CURLOPT_TIMEOUT.3: remove the mention of "minutes"Daniel Stenberg
... just say that limiting operations risk aborting otherwise fine working transfers. If that means seconds, minutes or hours, we leave to the user. Reported-by: Martin Gartner Closes #4469
2019-10-03docs: add note on failed handles not being counted by curl_multi_performDenis Chaplygin
Closes #4446
2019-10-03CURLMOPT_MAX_CONCURRENT_STREAMS.3: fix SEE ALSO typoDaniel Stenberg
2019-10-02ESNI: initial build/setupNiall
Closes #4011
2019-10-02CURLMOPT_MAX_CONCURRENT_STREAMS: new setoptKunal Ekawde
Closes #4410
2019-09-28docs: disambiguate CURLUPART_HOST is for host name (ie no port)Jay Satiro
Closes #4424
2019-09-19urlapi: CURLU_NO_AUTHORITY allows empty authority/host partJens Finkhaeuser
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
2019-09-15docs: remove trailing ':' from section names in CURLOPT_TRAILER* manAlessandro Ghedini
2019-09-15docs: fix typo in CURLOPT_HTTP_VERSION manAlessandro Ghedini
2019-08-28CURLOPT_HEADERFUNCTION.3: clarifyChristopher Head
Closes #4273
2019-08-28CURLINFO docs: mention that in redirects times are addedDaniel Stenberg
Suggested-by: Brandon Dong Fixes #4250 Closes #4269
2019-08-20CURLOPT_SSL_VERIFYHOST: treat the value 1 as 2Daniel Stenberg
For a long time (since 7.28.1) we've returned error when setting the value to 1 to make applications notice that we stopped supported the old behavior for 1. Starting now, we treat 1 and 2 exactly the same. Closes #4241
2019-08-14CURLOPT_ALTSVC.3: use a "" file name to not load from a fileDaniel Stenberg
2019-08-14vauth: Use CURLE_AUTH_ERROR for auth function errorsJay Satiro
- 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
2019-08-13curl_version_info: make the quic_version a constDaniel Stenberg
Follow-up from 1a2df1518ad8653f Closes #4222
2019-08-13curl_version_info.3: mentioned ALTSVC and HTTP3Daniel Stenberg
... and sorted the list alphabetically
2019-08-13CURLOPT_ALTSVC_CTRL.3: remove CURLALTSVC_ALTUSEDDaniel Stenberg
Follow-up to 98c3f148 that removed it from the header file
2019-08-12curl_version_info: offer quic (and h3) library infoDaniel Stenberg
Closes #4216
2019-08-12CURLOPT_READFUNCTION.3: provide inline exampleDaniel Stenberg
... instead of mentioning one in another place
2019-08-11curl_global_init_mem.3: mention it was added in 7.12.0Daniel Stenberg
2019-08-09CURLOPT_H3: removedDaniel Stenberg
There's no use for this anymore and it was never in a release. Closes #4206
2019-08-08alt-svc: send Alt-Used: in redirected requestsDaniel Stenberg
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
2019-08-08CURLOPT_HTTP_VERSION: seting this to 3 forces HTTP/3 use directlyDaniel Stenberg
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
2019-08-07CURLINFO_RETRY_AFTER: parse the Retry-After header valueDaniel Stenberg
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
2019-08-07curl.h: add CURL_HTTP_VERSION_3 to the version enumDaniel Stenberg
It can't be set for CURLOPT_HTTP_VERSION, but it can be extracted with CURLINFO_HTTP_VERSION.
2019-08-06sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZIDSteve Holme
Added the ability for the calling program to specify the authorisation identity (authzid), the identity to act as, in addition to the authentication identity (authcid) and password when using SASL PLAIN authentication. Fixes #3653 Closes #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
2019-08-06curl_multi_poll: a sister to curl_multi_wait() that waits moreDaniel Stenberg
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
2019-08-06http09: disable HTTP/0.9 by default in both tool and libraryDaniel Stenberg
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
2019-07-29HTTP: use chunked Transfer-Encoding for HTTP_POST if size unknownBalazs Kovacsics
If using the read callback for HTTP_POST, and POSTFIELDSIZE is not set, automatically add a Transfer-Encoding: chunked header, same as it is already done for HTTP_PUT, HTTP_POST_FORM and HTTP_POST_MIME. Update test 1514 according to the new behaviour. Closes #4138