summaryrefslogtreecommitdiff
path: root/docs/libcurl
Commit message (Collapse)AuthorAgeFilesLines
* opt-docs: make sure all man pages have examplesDaniel Stenberg2021-09-0410-16/+215
| | | | | | | | | Extended manpage-syntax.pl (run by test 1173) to check that every man page for a libcurl option has an EXAMPLE section that is more than two lines. Then fixed all errors it found and added examples. Reviewed-by: Daniel Gustafsson Closes #7656
* curl_easy_setopt: tweak the string copy wordingDaniel Stenberg2021-08-261-5/+5
| | | | | | Reported-by: Yaobin Wen Fixes #7632 Closes #7634
* setopt: enable CURLOPT_IGNORE_CONTENT_LENGTH for hyperDaniel Stenberg2021-08-231-1/+1
| | | | | | | | | | | Since this option is also used for FTP, it needs to work to set for applications even if hyper doesn't support it for HTTP. Verified by test 1137. Updated docs to specify that the option doesn't work for HTTP when using the hyper backend. Closes #7614
* libcurl-errors.3: clarify two CURLUcode errorsDaniel Stenberg2021-08-231-2/+2
| | | | | | | | | | CURLUE_BAD_HANDLE and CURLUE_BAD_PARTPOINTER should be for "bad" or wrong pointers in a generic sense, not just for NULL pointers. Reviewed-by: Jay Satiro Ref: #7605 Closes #7611
* symbols-in-versions: fix CURLSSLBACKEND_QSOSSL last used versionJay Satiro2021-08-231-2/+2
| | | | | | | ... and also change the 'Removed' column name to 'Last' since that column is for the last version to contain the symbol. Closes https://github.com/curl/curl/pull/7609
* mksymbolsmanpage.pl: Fix showing symbol's last used versionJay Satiro2021-08-221-1/+1
| | | | | | | | Prior to this change the symbol's deprecated version was erroneously shown as its last used version. Bug: https://github.com/curl/curl/commit/4e53b94#commitcomment-55239509 Reported-by: i-ky@users.noreply.github.com
* mksymbolsmanpage.pl: match symbols case insenitivelyDaniel Stenberg2021-08-211-2/+2
| | | | | | | | Follow-up to 4e53b9430c750 which made this bug show. Reported-by: i-ky Bug: https://github.com/curl/curl/commit/4e53b9430c7504de8984796e2a2091ec16f27136#commitcomment-55239253 Closes #7607
* man pages: remove trailing whitespacesDaniel Stenberg2021-08-212-3/+3
| | | | | | | | | Extended test 1173 (via the manpage-syntax.pl script) to detect and warn for them. Ref: #7602 Reported-by: a1346054 on github Closes #7604
* sectransp: support CURLINFO_CERTINFOSergey Markelov2021-08-172-4/+6
| | | | | Fixes #4130 Closes #7372
* curl_url_get.3: clarify about path and queryEmil Engler2021-08-131-0/+9
| | | | | | | The current man-page lacks some details regarding the obtained path and query. Closes #7563
* bearssl: support CURLOPT_CAINFO_BLOBAleksandr Krotov2021-07-281-2/+2
| | | | Closes #7468
* CURLOPT_DOH_URL.3: CURLOPT_OPENSOCKETFUNCTION is not inheritedDaniel Stenberg2021-07-281-6/+9
| | | | | | Reported-by: Daniel Woelfel Fixes #7441 Closes #7509
* docs: fix grammarJosh Soref2021-07-271-2/+3
| | | | | | | Fixes https://github.com/curl/curl/issues/7444 Fixes https://github.com/curl/curl/issues/7451 Fixes https://github.com/curl/curl/issues/7465 Closes https://github.com/curl/curl/pull/7495
* CURLOPT_SSL_CTX_*.3: tidy up the exampleDaniel Stenberg2021-07-262-18/+92
| | | | | | | Use the proper code style. Don't store return codes that aren't read. Copy the same example into CURLOPT_SSL_CTX_FUNCTION.3 as well. Closes #7500
* docs: change max-filesize caveat againJay Satiro2021-07-232-6/+6
| | | | | | | | | | | | | | | - Add protocols field to max-filesize.d. - Revert wording on unknown file size caveat and do not discuss specific protocols in that section. Partial revert of ecf0225. All max-filesize options now have the list of protocols and it's clearer just to have that list without discussing specific protocols in the caveat. Reported-by: Josh Soref Ref: https://github.com/curl/curl/issues/7453#issuecomment-884128762
* CURLMOPT_TIMERFUNCTION.3: remove misplaced "time"Oleg Pudeyev2021-07-211-1/+1
| | | | Closes #7470
* docs: mention max-filesize options also apply to MQTT transfersJay Satiro2021-07-212-8/+8
| | | | | | | | | | Also make it clearer that the caveat 'if the file size is unknown it the option will have no effect' may apply to protocols other than FTP and HTTP. Reported-by: Josh Soref Fixes https://github.com/curl/curl/issues/7453
* docs: correct spelling errors and a broken linkNyholm2021-07-181-1/+1
| | | | | | | Update grammar and spelling in docs and source code comments. Closes: #7427 Reviewed-by: Daniel Stenberg <daniel@haxx.se>
* cleanup: spell DoH with a lowercase oJosh Soref2021-07-166-35/+35
| | | | | | Signed-off-by: Josh Soref <jsoref@users.noreply.github.com> Closes #7413
* docs: fix inconsistencies in EGDSOCKET documentationDaniel Gustafsson2021-07-141-3/+3
| | | | | | | | | Only the OpenSSL backend actually use the EGDSOCKET, and also use TLS consistently rather than mixing SSL and TLS. While there, also fix a minor spelling nit. Closes: #7391 Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
* docs: fix incorrect argument name referenceRandolf J2021-07-131-2/+2
| | | | | | | | | The documentation for the read callback was erroneously referencing the nitems argument by nmemb. The error was introduced in commit ce0881edee3c7. Closes #7383 Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
* msnprintf: return number of printed characters excluding null byteDaniel Stenberg2021-07-081-3/+3
| | | | | | | | ... even when the output is "capped" by the maximum length argument. Clarified in the docs. Closes #7361
* libcurl-security.3: mention file descriptors and forksDaniel Stenberg2021-06-171-4/+13
| | | | | | | ... and move the security report section last. Reported-by: Harry Sintonen Closes #7270
* idn: fix libidn2 with windows unicode buildsViktor Szakats2021-06-151-1/+1
| | | | | | | | | | | | | Unicode Windows builds use UTF-8 strings internally in libcurl, so make sure to call the UTF-8 flavour of the libidn2 API. Also document that Windows builds with libidn2 and UNICODE do expect CURLOPT_URL as an UTF-8 string. Reported-by: dEajL3kA on github Assisted-by: Jay Satiro Reviewed-by: Marcel Raad Closes #7246 Fixes #7228
* curl_url_set: reject spaces in URLs w/o CURLU_ALLOW_SPACEDaniel Stenberg2021-06-152-0/+10
| | | | | | | | | | | | | They were never officially allowed and slipped in only due to sloppy parsing. Spaces (ascii 32) should be correctly encoded (to %20) before being part of a URL. The new flag bit CURLU_ALLOW_SPACE when a full URL is set, makes libcurl allow spaces. Updated test 1560 to verify. Closes #7073
* CURLOPT_WRITEFUNCTION.3: minor update of the exampleFawad Mirza2021-06-091-1/+1
| | | | | | Safely avoid chunk.size garbage value if declared non globally. Closes #7219
* test269: disable for hyperDaniel Stenberg2021-06-031-2/+3
| | | | | | | --ignore-content-length / CURLOPT_IGNORE_CONTENT_LENGTH doesn't work with hyper. Closes #7184
* CURLE_SETOPT_OPTION_SYNTAX: new error name for wrong setopt syntaxDaniel Stenberg2021-06-022-2/+4
| | | | | | | | | For options that pass in lists or strings that are subsequently parsed and must be correct. This broadens the scope for the option previously known as CURLE_TELNET_OPTION_SYNTAX but the old name is of course still provided as a #define for existing applications. Closes #7175
* docs: fix typosDaniel Gustafsson2021-05-311-1/+1
|
* copyright: update copyright year ranges to 2021Daniel Stenberg2021-05-261-1/+1
|
* CURLOPT_IPRESOLVE: preventing wrong IP version from being usedLucas Clemente Vella2021-05-203-9/+10
| | | | | | | | | | | | | | | | | | | In some situations, it was possible that a transfer was setup to use an specific IP version, but due do DNS caching or connection reuse, it ended up using a different IP version from requested. This commit changes the effect of CURLOPT_IPRESOLVE from simply restricting address resolution to preventing the wrong connection type being used, when choosing a connection from the pool, and to restricting what addresses could be used when establishing a new connection. It is important that all addresses versions are resolved, even if not used in that transfer in particular, because the result is cached, and could be useful for a different transfer with a different CURLOPT_IPRESOLVE setting. Closes #6853
* docs: cookies from HTTP headers need domain setDaniel Stenberg2021-05-171-7/+4
| | | | | | | | | | ... or the cookies won't get sent. Push users to using the "Netscape" format instead, which curl uses when saving a cookie "jar". Reported-by: Martin Dorey Reviewed-by: Daniel Gustafsson Fixes #6723 Closes #7077
* CURLOPT_CAPATH.3: defaults to a path, not NULLDaniel Stenberg2021-05-161-2/+2
| | | | | | Reported-by: Andrew Barnert Closes #7062
* http: limit the initial send amount to used upload buffer sizeDaniel Stenberg2021-05-072-2/+8
| | | | | | | | | | | | | | | Previously this logic would cap the send to CURL_MAX_WRITE_SIZE bytes, but for the situations where a larger upload buffer has been set, this function can benefit from sending more bytes. With default size used, this does the same as before. Also changed the storage of the size to an 'unsigned int' as it is not allowed to be set larger than 2M. Also added cautions to the man pages about changing buffer sizes in run-time. Closes #7022
* curl_mprintf.3: add descriptionDaniel Stenberg2021-05-061-36/+186
| | | | | | | | These functions have existed in the API since the dawn of time. It is about time we describe how they work, even if we discourage users from using them. Closes #7010
* libcurl.3: mention the URL APIDaniel Stenberg2021-05-062-9/+12
| | | | | | To make it easier to find. Also a minor polish of libcurl-url.3 Closes #7009
* SSL: support in-memory CA certs for some backendsGilles Vollant2021-05-057-2/+154
| | | | | | | | | | | | | | | | | - New options CURLOPT_CAINFO_BLOB and CURLOPT_PROXY_CAINFO_BLOB to specify in-memory PEM certificates for OpenSSL, Schannel (Windows) and Secure Transport (Apple) SSL backends. Prior to this change PEM certificates could only be imported from a file and not from memory. Co-authored-by: moparisthebest@users.noreply.github.com Ref: https://github.com/curl/curl/pull/4679 Ref: https://github.com/curl/curl/pull/5677 Ref: https://github.com/curl/curl/pull/6109 Closes https://github.com/curl/curl/pull/6662
* CURLcode: add CURLE_SSL_CLIENTCERTejanchivdorj2021-05-032-0/+3
| | | | | | | | | | When a TLS server requests a client certificate during handshake and none can be provided, libcurl now returns this new error code CURLE_SSL_CLIENTCERT Only supported by Secure Transport and OpenSSL for TLS 1.3 so far. Closes #6721
* libcurl-security.3: be careful of setuidDaniel Stenberg2021-04-271-0/+12
| | | | | Reported-by: Harry Sintonen Closes #6970
* libcurl-security.3: don't try to filter IPv4 hosts based on the URLDaniel Stenberg2021-04-261-1/+7
| | | | Closes #6942
* curl_url_set.3: add memory management informationJohann1502021-04-251-0/+3
| | | | | | | | | wording taken from man page for CURLOPT_URL.3 As far as I can see, the URL part is either malloc'ed before due to encoding or it is strdup'ed. Closes #6953
* CURLOPT_POSTFIELDS.3: clarify how it gets the size of the dataDaniel Stenberg2021-04-231-1/+6
| | | | | Ref: https://curl.se/mail/lib-2021-04/0085.html Closes #6943
* version: add gsasl_version to curl_version_info_dataMartin Halle2021-04-222-0/+7
| | | | | | | | - Add gsasl_version string and bump to CURLVERSION_TENTH. Ref: https://curl.se/mail/lib-2021-04/0003.html Closes https://github.com/curl/curl/pull/6843
* schannel: Disable auto credentials; add an option to enable itJay Satiro2021-04-223-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Disable auto credentials by default. This is a breaking change for clients that are using it, wittingly or not. - New libcurl ssl option value CURLSSLOPT_AUTO_CLIENT_CERT tells libcurl to automatically locate and use a client certificate for authentication, when requested by the server. - New curl tool options --ssl-auto-client-cert and --proxy-ssl-auto-client-cert map to CURLSSLOPT_AUTO_CLIENT_CERT. This option is only supported for Schannel (the native Windows SSL library). Prior to this change Schannel would, with no notification to the client, attempt to locate a client certificate and send it to the server, when requested by the server. Since the server can request any certificate that supports client authentication in the OS certificate store it could be a privacy violation and unexpected. Fixes https://github.com/curl/curl/issues/2262 Reported-by: Jeroen Ooms Assisted-by: Wes Hinsley Assisted-by: Rich FitzJohn Ref: https://curl.se/mail/lib-2021-02/0066.html Reported-by: Morten Minde Neergaard Closes https://github.com/curl/curl/pull/6673
* vtls: refuse setting any SSL versionDaniel Stenberg2021-04-191-3/+5
| | | | | | | | | ... previously they were supported if a TLS library would (unexpectedly) still support them, but from this change they will be refused already in curl_easy_setopt(). SSLv2 and SSLv3 have been known to be insecure for many years now. Closes #6773
* cookie: CURLOPT_COOKIEFILE set to NULL switches off cookiesDaniel Stenberg2021-04-141-1/+4
| | | | | | | | | Add test 676 to verify that setting CURLOPT_COOKIEFILE to NULL again clears the cookiejar from memory. Reported-by: Stefan Karpinski Fixes #6889 Closes #6891
* CURLOPT_AUTOREFERER.3: clarify that it sets the full URLDaniel Stenberg2021-03-301-3/+3
| | | | ... some users may not want that!
* copyright: update copyright year ranges to 2021Daniel Stenberg2021-03-275-5/+5
| | | | | Reviewed-by: Emil Engler Closes #6802
* curl_easy_setopt.3: add curl_easy_option* functions to SEE ALSODaniel Stenberg2021-03-261-1/+3
|
* docs/ABI: tighten up the languageDaniel Stenberg2021-03-241-9/+8
| | | | | | Make the promises more firm Closes #6786