summaryrefslogtreecommitdiff
path: root/docs/libcurl/opts
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
* 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
* man pages: remove trailing whitespacesDaniel Stenberg2021-08-211-1/+1
| | | | | | | | | 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
* 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
* cleanup: spell DoH with a lowercase oJosh Soref2021-07-165-31/+31
| | | | | | 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>
* 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
* 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
* CURLOPT_IPRESOLVE: preventing wrong IP version from being usedLucas Clemente Vella2021-05-202-8/+9
| | | | | | | | | | | | | | | | | | | 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
* SSL: support in-memory CA certs for some backendsGilles Vollant2021-05-055-2/+148
| | | | | | | | | | | | | | | | | - 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
* 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
* schannel: Disable auto credentials; add an option to enable itJay Satiro2021-04-222-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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!
* docs: clarify timeouts for queued transfers in multi APIDaniel Stenberg2021-03-192-3/+21
| | | | Closes #6758
* docs: Explain DOH transfers inherit some SSL settingsJay Satiro2021-03-172-0/+14
| | | | | | | | | | | - Document in DOH that some SSL settings are inherited but DOH hostname and peer verification are not and are controlled separately. - Document that CURLOPT_SSL_CTX_FUNCTION is inherited by DOH handles but we're considering changing behavior to no longer inherit it. Request feedback. Closes https://github.com/curl/curl/pull/6688
* docs: Fix typosDaniel Gustafsson2021-02-251-2/+2
| | | | Random typos spotted when skimming docs.
* docs: add CURLOPT_CURLU to 'See also' in curl_url_ functionsJay Satiro2021-02-231-0/+1
| | | | Closes https://github.com/curl/curl/pull/6639
* http: add new files missed from referrer commitViktor Szakats2021-02-191-0/+61
| | | | | Ref: 44872aefc2d54f297caf2b0cc887df321bc9d791 Ref: #6591
* http: add support to read and store the referrer headerViktor Szakats2021-02-192-2/+4
| | | | | | | | | - add CURLINFO_REFERER libcurl option - add --write-out '%{referer}' command-line option - extend --xattr command-line option to fill user.xdg.referrer.url extended attribute with the referrer (if there was any) Closes #6591
* doh: add options to disable ssl verificationJay Satiro2021-02-144-0/+253
| | | | | | | | | | | | | | | | | | | | | | - New libcurl options CURLOPT_DOH_SSL_VERIFYHOST, CURLOPT_DOH_SSL_VERIFYPEER and CURLOPT_DOH_SSL_VERIFYSTATUS do the same as their respective counterparts. - New curl tool options --doh-insecure and --doh-cert-status do the same as their respective counterparts. Prior to this change DOH SSL certificate verification settings for verifyhost and verifypeer were supposed to be inherited respectively from CURLOPT_SSL_VERIFYHOST and CURLOPT_SSL_VERIFYPEER, but due to a bug were not. As a result DOH verification remained at the default, ie enabled, and it was not possible to disable. This commit changes behavior so that the DOH verification settings are independent and not inherited. Ref: https://github.com/curl/curl/pull/4579#issuecomment-554723676 Fixes https://github.com/curl/curl/issues/4578 Closes https://github.com/curl/curl/pull/6597
* CURLOPT_QUOTE.3: clarify that libcurl doesn't parse what's sentDaniel Stenberg2021-02-081-5/+12
| | | | | | | | ... so passed in commands may confuse libcurl's knowledge of state. Reported-by: Bodo Bergmann Fixes #6577 Closes #6580
* http: improve AWS HTTP v4 Signature authDmitry Wagin2021-01-301-27/+42
| | | | | | | | | | | | | | | | | | - Add support services without region and service prefixes in the URL endpoint (ex. Min.IO, GCP, Yandex Cloud, Mail.Ru Cloud Solutions, etc) by providing region and service parameters via aws-sigv4 option. - Add [:region[:service]] suffix to aws-sigv4 option; - Fix memory allocation errors. - Refactor memory management. - Use Curl_http_method instead() STRING_CUSTOMREQUEST. - Refactor canonical headers generating. - Remove repeated sha256_to_hex() usage. - Add some docs fixes. - Add some codestyle fixes. - Add overloaded strndup() for debug - curl_dbg_strndup(). - Update tests. Closes #6524
* 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
* language: s/behaviour/behavior/gEmil Engler2021-01-024-4/+4
| | | | | | | | We currently use both spellings the british "behaviour" and the american "behavior". However "behavior" is more used in the project so I think it's worth dropping the british name. Closes #6395
* docs/examples: adjust prototypes for CURLOPT_READFUNCTIONOlaf Hering2020-12-301-1/+1
| | | | | | | The type of the buffer in curl_read_callback is 'char *', not 'void *'. Signed-off-by: Olaf Hering <olaf@aepfle.de> Closes #6392
* dns: extend CURLOPT_RESOLVE syntax for adding non-permanent entriesPaul Groke2020-12-291-7/+12
| | | | | | | | | | | | | | | | | | Extend the syntax of CURLOPT_RESOLVE strings: allow using a '+' prefix (similar to the existing '-' prefix for removing entries) to add DNS cache entries that will time out just like entries that are added by libcurl itself. Append " (non-permanent)" to info log message in case a non-permanent entry is added. Adjust relevant comments to reflect the new behavior. Adjust documentation. Extend unit1607 to test the new functionality. Closes #6294
* docs: add AWS HTTP v4 SignatureMatthias Gatto2020-12-213-0/+88
|
* CURLOPT_URL.3: remove scheme specific detailsDaniel Stenberg2020-12-121-230/+0
| | | | | | ... that are now found in URL-SYNTAX.md Closes #6307
* ftp: CURLOPT_FTP_SKIP_PASV_IP by defaultDaniel Stenberg2020-12-071-3/+5
| | | | | | | | | | | | The command line tool also independently sets --ftp-skip-pasv-ip by default. Ten test cases updated to adapt the modified --libcurl output. Bug: https://curl.se/docs/CVE-2020-8284.html CVE-2020-8284 Reported-by: Varnavas Papaioannou
* CURLOPT_HSTS.3: document the file formatDaniel Stenberg2020-11-131-0/+15
| | | | Closes #6205
* copyright: fix year rangesDaniel Stenberg2020-11-051-1/+1
| | | | Follow-up from 4d2f8006777
* curl.se: new homeDaniel Stenberg2020-11-04371-387/+387
| | | | Closes #6172
* hsts: add read/write callbacksDaniel Stenberg2020-11-036-0/+299
| | | | | | | | - read/write callback options - man pages for the 4 new setopts - test 1915 verifies the callbacks Closes #5896
* hsts: add support for Strict-Transport-SecurityDaniel Stenberg2020-11-033-0/+141
| | | | | | | | | | | | | | | | | | | | | | | | | - enable in the build (configure) - header parsing - host name lookup - unit tests for the above - CI build - CURL_VERSION_HSTS bit - curl_version_info support - curl -V output - curl-config --features - CURLOPT_HSTS_CTRL - man page for CURLOPT_HSTS_CTRL - curl --hsts (sets CURLOPT_HSTS_CTRL and works with --libcurl) - man page for --hsts - save cache to disk - load cache from disk - CURLOPT_HSTS - man page for CURLOPT_HSTS - added docs/HSTS.md - fixed --version docs - adjusted curl_easy_duphandle Closes #5896
* CURLOPT_DNS_USE_GLOBAL_CACHE.3: fix typoJay Satiro2020-10-261-1/+1
| | | | | | Reported-by: Rui LIU Closes https://github.com/curl/curl/issues/6131
* alt-svc: enable by defaultDaniel Stenberg2020-10-252-16/+1
| | | | | | | | Remove CURLALTSVC_IMMEDIATELY, which was never implemented/supported. alt-svc support in curl is no longer considered experimental Closes #5868
* CURLOPT_NOBODY.3: fix typoDaniel Stenberg2020-10-161-1/+1
| | | | | Reported-by: Basuke Suzuki Fixes #6097