summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* whitespace fixesViktor Szakats2018-09-231-2/+2
| | | | | | | | | | | - replace tabs with spaces where possible - remove line ending spaces - remove double/triple newlines at EOF - fix a non-UTF-8 character - cleanup a few indentations/line continuations in manual examples Closes https://github.com/curl/curl/pull/3037
* urlapi: document the error codes, remove two unused onesDaniel Stenberg2018-09-191-5/+3
| | | | | Assisted-by: Daniel Gustafsson Closes #3019
* urlapi: add CURLU_GUESS_SCHEME and fix hostname acceptanceDaniel Stenberg2018-09-191-0/+1
| | | | | | | | | | | | | | | In order for this API to fully work for libcurl itself, it now offers a CURLU_GUESS_SCHEME flag that makes it "guess" scheme based on the host name prefix just like libcurl always did. If there's no known prefix, it will guess "http://". Separately, it relaxes the check of the host name so that IDN host names can be passed in as well. Both these changes are necessary for libcurl itself to use this API. Assisted-by: Daniel Gustafsson Closes #3018
* URL-APIDaniel Stenberg2018-09-083-2/+124
| | | | | | | See header file and man pages for API. All documented API details work and are tested in the 1560 test case. Closes #2842
* curl_easy_upkeep: removed 'conn' from the nameDaniel Stenberg2018-09-072-3/+3
| | | | | | | ... including the associated option. Fixes #2951 Closes #2952
* upkeep: add a connection upkeep API: curl_easy_conn_upkeep()Max Dymond2018-09-072-0/+16
| | | | | | | | | Add functionality so that protocols can do custom keepalive on their connections, when an external API function is called. Add docs for the new options in 7.62.0 Closes #1641
* CURLOPT_UPLOAD_BUFFERSIZE: set upload buffer sizeDaniel Stenberg2018-09-061-0/+3
| | | | | | | This is step 3 of #2888. Fixes #2888 Closes #2896
* setopt: add CURLOPT_DOH_URLDaniel Stenberg2018-09-062-2/+7
| | | | Closes #2668
* ssl: deprecate CURLE_SSL_CACERT in favour of a unified error codeHan Han2018-09-061-3/+6
| | | | Long live CURLE_PEER_FAILED_VERIFICATION
* RELEASE-NOTES: start working on 7.62.0Daniel Stenberg2018-09-051-4/+4
|
* RELEASE-NOTES: syncDaniel Stenberg2018-07-181-3/+3
| | | | ... and work toward 7.61.1
* include/README: remove "hacking" advice, not the right placeDaniel Stenberg2018-06-251-17/+2
|
* system.h: fix for gcc on 32 bit OpenServerKevin R. Bulgrien2018-06-221-1/+1
| | | | Bug: https://curl.haxx.se/mail/lib-2018-06/0100.html
* system.h: add support for IBM xlc C compilerStephan Mühlstrasser2018-06-061-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | Added a section to system.h guarded with __xlc__ for the IBM xml C compiler. Before this change the section titled 'generic "safe guess" on old 32 bit style' was used, which resulted in a wrong definition of CURL_TYPEOF_CURL_SOCKLEN_T, and for 64-bit also CURL_TYPEOF_CURL_OFF_T was wrong. Compilation warnings fixed with this change: CC libcurl_la-ftp.lo "ftp.c", line 290.55: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. "ftp.c", line 293.48: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. "ftp.c", line 1070.49: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. "ftp.c", line 1154.53: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. "ftp.c", line 1187.51: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. CC libcurl_la-connect.lo "connect.c", line 448.56: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. "connect.c", line 516.66: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. "connect.c", line 687.55: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. "connect.c", line 696.55: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. CC libcurl_la-tftp.lo "tftp.c", line 1115.33: 1506-280 (W) Function argument assignment between types "unsigned long* restrict" and "int*" is not allowed. Closes #2637
* spelling fixesViktor Szakats2018-06-031-1/+1
| | | | | | Detected using the `codespell` tool (version 1.13.0). Also secure and fix an URL.
* option: disallow username in URLBjörn Stenberg2018-05-311-0/+3
| | | | | | | Adds CURLOPT_DISALLOW_USERNAME_IN_URL and --disallow-username-in-url. Makes libcurl reject URLs with a username in them. Closes #2340
* setopt: add TLS 1.3 ciphersuitesDaniel Stenberg2018-05-291-0/+4
| | | | | | | | | | Adds CURLOPT_TLS13_CIPHERS and CURLOPT_PROXY_TLS13_CIPHERS. curl: added --tls13-ciphers and --proxy-tls13-ciphers Fixes #2435 Reported-by: zzq1015 on github Closes #2607
* psl: use latest psl and refresh it periodicallyPatrick Monnerat2018-05-281-0/+1
| | | | | | | | | | | The latest psl is cached in the multi or share handle. It is refreshed before use after 72 hours. New share lock CURL_LOCK_DATA_PSL controls the psl cache sharing. If the latest psl is not available, the builtin psl is used. Reported-by: Yaakov Selkowitz Fixes #2553 Closes #2601
* httpauth: add support for Bearer tokensLinus Lewandowski2018-05-241-0/+2
| | | | Closes #2102
* getinfo: add microsecond precise timers for various intervalsPhilip Prindeville2018-05-171-1/+11
| | | | | | | | | | | | | | | | | Provide a set of new timers that return the time intervals using integer number of microseconds instead of floats. The new info names are as following: CURLINFO_APPCONNECT_TIME_T CURLINFO_CONNECT_TIME_T CURLINFO_NAMELOOKUP_TIME_T CURLINFO_PRETRANSFER_TIME_T CURLINFO_REDIRECT_TIME_T CURLINFO_STARTTRANSFER_TIME_T CURLINFO_TOTAL_TIME_T Closes #2495
* bump: start working on the pending 7.61.0Daniel Stenberg2018-05-171-3/+3
|
* system.h: Add sparcv8plus to oracle/sunpro 32-bit detectionDagobert Michelsen2018-04-151-1/+3
| | | | | | | | | | | With specific compiler options selecting the arch like -xarch=sparc on newer compilers like Oracle Studio 12.4 there is no definition of __sparcv8 but __sparcv8plus which means the V9 ISA, but limited to the 32ÎíÎñbit subset defined by the V8plus ISA specification, without the Visual Instruction Set (VIS), and without other implementation-specific ISA extensions. So it should be the same as __sparcv8. Closes https://github.com/curl/curl/pull/2491
* resolve: add CURLOPT_DNS_SHUFFLE_ADDRESSESRick Deist2018-03-171-0/+3
| | | | | | | | | | | This patch adds CURLOPT_DNS_SHUFFLE_ADDRESSES to explicitly request shuffling of IP addresses returned for a hostname when there is more than one. This is useful when the application knows that a round robin approach is appropriate and is willing to accept the consequences of potentially discarding some preference order returned by the system's implementation. Closes #1694
* CURLOPT_HAPROXYPROTOCOL: support the HAProxy PROXY protocolLawrence Matthews2018-03-171-0/+3
| | | | | | Add --haproxy-protocol for the command line tool Closes #2162
* RELEASE-NOTES: toward 7.60.0Daniel Stenberg2018-03-161-3/+3
|
* spelling fixesViktor Szakats2018-02-231-2/+2
| | | | | | | | Detected using the `codespell` tool. Also contains one URL protocol upgrade. Closes https://github.com/curl/curl/pull/2334
* url: Add option CURLOPT_RESOLVER_START_FUNCTIONFrancisco Sedano2018-02-212-1/+22
| | | | | | | | | | | | - Add new option CURLOPT_RESOLVER_START_FUNCTION to set a callback that will be called every time before a new resolve request is started (ie before a host is resolved) with a pointer to backend-specific resolver data. Currently this is only useful for ares. - Add new option CURLOPT_RESOLVER_START_DATA to set a user pointer to pass to the resolver start callback. Closes https://github.com/curl/curl/pull/2311
* lib: CURLOPT_HAPPY_EYEBALLS_TIMEOUT => CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MSJay Satiro2018-02-211-2/+2
| | | | | | | | | | | | | | | | - In keeping with the naming of our other connect timeout options rename CURLOPT_HAPPY_EYEBALLS_TIMEOUT to CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS. This change adds the _MS suffix since the option expects milliseconds. This is more intuitive for our users since other connect timeout options that expect milliseconds use _MS such as CURLOPT_TIMEOUT_MS, CURLOPT_CONNECTTIMEOUT_MS, CURLOPT_ACCEPTTIMEOUT_MS. The tool option already uses an -ms suffix, --happy-eyeballs-timeout-ms. Follow-up to 2427d94 which added the lib and tool option yesterday. Ref: https://github.com/curl/curl/pull/2260
* url: Add option CURLOPT_HAPPY_EYEBALLS_TIMEOUTAnders Bakken2018-02-201-0/+8
| | | | | | | | | | | | | | - Add new option CURLOPT_HAPPY_EYEBALLS_TIMEOUT to set libcurl's happy eyeball timeout value. - Add new optval macro CURL_HET_DEFAULT to represent the default happy eyeballs timeout value (currently 200 ms). - Add new tool option --happy-eyeballs-timeout-ms to expose CURLOPT_HAPPY_EYEBALLS_TIMEOUT. The -ms suffix is used because the other -timeout options in the tool expect seconds not milliseconds. Closes https://github.com/curl/curl/pull/2260
* TODO fixed: Detect when called from within callbacksBjörn Stenberg2018-02-152-0/+4
| | | | Closes #2302
* curlver: next release will be 7.59.0Daniel Stenberg2018-01-301-4/+4
|
* curl/curl.h: fix comment typo for CURLOPT_DNS_LOCAL_IP6Michał Janiszewski2018-01-301-1/+1
| | | | Closes #2275
* time: support > year 2038 time stamps for system with 32bit longDaniel Stenberg2018-01-301-1/+6
| | | | | | | | ... with the introduction of CURLOPT_TIMEVALUE_LARGE and CURLINFO_FILETIME_T. Fixes #2238 Closes #2264
* bump: towards 7.58.1Daniel Stenberg2018-01-251-5/+5
|
* system.h: Additionally check __LONG_MAX__ for defining curl_off_tDimitrios Apostolou2018-01-091-2/+4
| | | | | | | __SIZEOF_LONG__ was introduced in GCC 4.4, __LONG_MAX__ was introduced in GCC 3.3. Closes #2216
* Revert "curl/system.h: fix compilation with gcc on AIX PPC and IA64 HP-UX"Jay Satiro2018-01-021-2/+1
| | | | | | | | | | This reverts commit c97648b55080343bb371522bf4233e94a2a13a99. SIZEOF_LONG should not be checked in system.h since that macro is only defined when building libcurl. Ref: https://github.com/curl/curl/pull/2186#issuecomment-354767080 Ref: https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html
* curl/system.h: fix compilation with gcc on AIX PPC and IA64 HP-UXDimitrios Apostolou2017-12-221-1/+2
| | | | Closes https://github.com/curl/curl/pull/2186
* curl.h: remove incorrect comment about ERRORBUFFERDaniel Stenberg2017-12-081-1/+1
| | | | ... error messages are _not_ sent to stderr if this is not set.
* RELEASE-NOTES: synced with b261c44e8Daniel Stenberg2017-12-061-4/+4
| | | | ... and bump next release version to 7.58.0
* Added support for libssh SSH SCP back-endNikos Mavrogiannopoulos2017-12-011-1/+4
| | | | | | | | | | libssh is an alternative library to libssh2. https://www.libssh.org/ That patch set also introduces support for ECDSA ed25519 keys, as well as gssapi authentication. Signed-off-by: Nikos Mavrogiannopoulos <nmav@redhat.com>
* curlver: towards 7.57.1Daniel Stenberg2017-12-011-3/+3
|
* global_init: ignore CURL_GLOBAL_SSL's absenseDaniel Stenberg2017-11-271-1/+1
| | | | | | | | | | | | | | | | | This bit is no longer used. It is not clear what it meant for users to "init the TLS" in a world with different TLS backends and since the introduction of multissl, libcurl didn't properly work if inited without this bit set. Not a single user responded to the call for users of it: https://curl.haxx.se/mail/lib-2017-11/0072.html Reported-by: Evgeny Grin Assisted-by: Jay Satiro Fixes #2089 Fixes #2083 Closes #2107
* HTTP: implement Brotli content encodingPatrick Monnerat2017-11-051-1/+9
| | | | | | | | | | | | This uses the brotli external library (https://github.com/google/brotli). Brotli becomes a feature: additional curl_version_info() bit and structure fields are provided for it and CURLVERSION_NOW bumped. Tests 314 and 315 check Brotli content unencoding with correct and erroneous data. Some tests are updated to accomodate with the now configuration dependent parameters of the Accept-Encoding header.
* curlver.h: next expected release is 7.57.0Daniel Stenberg2017-10-081-3/+3
|
* curl.h: include <sys/select.h> on cygwin tooDaniel Stenberg2017-09-271-0/+1
| | | | | | | | | | | When building with -std=c++14 on cygwin, this header won't be automatically included as it otherwise is. The <sys/select.h> include decision should ideally be reversed and be avoided where that header file doesn't exist. Reported-by: Ian Fette Fixes #1925
* vtls: provide curl_global_sslset() even in non-SSL buildsDaniel Stenberg2017-09-221-1/+2
| | | | | | | | | ... it just returns error: Bug: https://github.com/curl/curl/commit/1328f69d53f2f2e937696ea954c480412b018451#commitcomment-24470367 Reported-by: Marcel Raad Closes #1906
* form/mime: field names are not allowed to contain zero-valued bytes.Patrick Monnerat2017-09-221-2/+1
| | | | | Also suppress length argument of curl_mime_name() (names are always zero-terminated).
* code style: remove wrong uses of multiple spacesDaniel Stenberg2017-09-121-2/+2
| | | | Closes #1878
* curl.h: use lower case curl_mime* as for all public symbolsDaniel Stenberg2017-09-051-3/+3
|
* curl.h: fix "unused checksrc ignore", remove dangling referenceDaniel Stenberg2017-09-041-4/+1
| | | | ... to a README file that doesn't exist anymore