summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* curl/system.h: fix build for hppaDaniel Stenberg2017-08-201-1/+1
| | | | | Reported-by: John David Anglin Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=872502#10
* curl/system.h: check for __ppc__ as wellDaniel Stenberg2017-08-181-2/+2
| | | | | | | | | | ... regression since issue #1774 (commit 10b3df10596a) since obviously some older gcc doesn't know __powerpc__ while some newer doesn't know __ppc__ ... Fixes #1797 Closes #1798 Reported-by: Ryan Schmidt
* system.h: remove all CURL_SIZEOF_* definesDaniel Stenberg2017-08-171-90/+0
| | | | | | | ... as they're not used externally and internally we check for the sizes already in configure etc. Closes #1767
* curl/system.h: checksrc complianceDaniel Stenberg2017-08-171-4/+6
|
* ssh: add the ability to enable compression (for SCP/SFTP)Viktor Szakats2017-08-171-0/+3
| | | | | | | | | | | | | | | | | | The required low-level logic was already available as part of `libssh2` (via `LIBSSH2_FLAG_COMPRESS` `libssh2_session_flag()`[1] option.) This patch adds the new `libcurl` option `CURLOPT_SSH_COMPRESSION` (boolean) and the new `curl` command-line option `--compressed-ssh` to request this `libssh2` feature. To have compression enabled, it is required that the SSH server supports a (zlib) compatible compression method and that `libssh2` was built with `zlib` support enabled. [1] https://www.libssh2.org/libssh2_session_flag.html Ref: https://github.com/curl/curl/issues/1732 Closes https://github.com/curl/curl/pull/1735
* curlver: toward 7.56.0?Daniel Stenberg2017-08-151-4/+4
|
* curl/system.h: GCC doesn't define __ppc__ on PowerPC, uses __powerpc__Alex Potapenko2017-08-131-1/+1
| | | | Closes #1774
* curl/system.h: add Oracle Solaris StudioDaniel Stenberg2017-08-121-1/+25
| | | | Fixes #1752
* curl/system.h: support more architecturesThomas Petazzoni2017-08-111-2/+3
| | | | | | | | | | | | | | | | | The long list of architectures in include/curl/system.h is annoying to maintain, and needs to be extended for each and every architecture to support. Instead, let's rely on the __SIZEOF_LONG__ define of the gcc compiler (we are in the GNUC condition anyway), which tells us if long is 4 bytes or 8 bytes. This fixes the build of libcurl 7.55.0 on architectures such as OpenRISC or ARC. Closes #1766 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* curlver: bump to 7.55.1Daniel Stenberg2017-08-111-3/+3
|
* system.h: include winsock2.h before windows.hMarcel Raad2017-07-121-1/+1
| | | | | ... to avoid compiler warnings if the user doesn't want WIN32_LEAN_AND_MEAN.
* curl_setup: always define WIN32_LEAN_AND_MEAN on WindowsMarcel Raad2017-07-111-3/+0
| | | | | | | | | Make sure to always define WIN32_LEAN_AND_MEAN before including any Windows headers to avoid pulling in unnecessary headers. This avoids unnecessary macro clashes and compiler warnings. Ref: https://github.com/curl/curl/issues/1562 Closes https://github.com/curl/curl/pull/1672
* CURLOPT_SOCKS5_AUTH: allowed methods for SOCKS5 proxy authKamil Dudka2017-06-281-0/+5
| | | | | | | | | | | | | | | | | | If libcurl was built with GSS-API support, it unconditionally advertised GSS-API authentication while connecting to a SOCKS5 proxy. This caused problems in environments with improperly configured Kerberos: a stock libcurl failed to connect, despite libcurl built without GSS-API connected fine using username and password. This commit introduces the CURLOPT_SOCKS5_AUTH option to control the allowed methods for SOCKS5 authentication at run time. Note that a new option was preferred over reusing CURLOPT_PROXYAUTH for compatibility reasons because the set of authentication methods allowed by default was different for HTTP and SOCKS5 proxies. Bug: https://curl.haxx.se/mail/lib-2017-01/0005.html Closes https://github.com/curl/curl/pull/1454
* curl/system.h: add check for XTENSA for 32bit gccDaniel Stenberg2017-06-241-1/+2
| | | | | Reported-by: Neil Kolban Fixes: 1598
* --request-target: instead of --strip-path-slashDaniel Stenberg2017-06-211-2/+2
| | | | | | | | | | | | | | ... and CURLOPT_REQUEST_TARGET instead of CURLOPT_STRIP_PATH_SLASH. This option instead provides the full "alternative" target to use in the request, instead of extracting the path from the URL. Test 1298 and 1299 updated accordingly. Idea-by: Evert Pot Suggestion: https://daniel.haxx.se/blog/2017/06/19/options-with-curl/comment-page-1/#comment-18373 Closes #1593
* typecheck-gcc: add support for CURLINFO_OFF_TMarcel Raad2017-06-211-3/+12
| | | | | | | | typecheck-gcc expected curl_socket_t instead of curl_off_t arguments for CURLINFO_OFF_T. Detected by test1521, unfortunately only when run locally. Closes https://github.com/curl/curl/pull/1592
* http: add --strip-path-slash and CURLOPT_STRIP_PATH_SLASHDaniel Stenberg2017-06-191-0/+3
| | | | | | | | | | | ... to enable sending "OPTIONS *" which wasn't possible previously. This option currently only works for HTTP. Added test cases 1298 + 1299 to verify Fixes #1280 Closes #1462
* getinfo: return sizes as curl_off_tDaniel Stenberg2017-06-191-0/+7
| | | | | | | | | | | | | | | This change introduces new alternatives for the existing six curl_easy_getinfo() options that return sizes or speeds as doubles. The new versions are named like the old ones but with an appended '_T': CURLINFO_CONTENT_LENGTH_DOWNLOAD_T CURLINFO_CONTENT_LENGTH_UPLOAD_T CURLINFO_SIZE_DOWNLOAD_T CURLINFO_SIZE_UPLOAD_T CURLINFO_SPEED_DOWNLOAD_T CURLINFO_SPEED_UPLOAD_T Closes #1511
* curl/curlver.h: start working on 7.55.0Daniel Stenberg2017-06-151-4/+4
|
* system.h: fix MinGW buildMarcel Raad2017-06-141-2/+2
| | | | | CURLSYS_PULL_WS2TCPIP_H got renamed to CURL_PULL_WS2TCPIP_H in commit 73a2fcea0b4adea6ba342cd7ed1149782c214ae3.
* includes: remove curl/curlbuild.h and curl/curlrules.hDaniel Stenberg2017-06-149-1570/+347
| | | | | | | | Rely entirely on curl/system.h now. Introduced in Aug 2008 with commit 14240e9e109f. Now gone. Fixes #1456
* typecheck-gcc: allow CURLOPT_STDERR to be NULL tooDaniel Stenberg2017-06-051-2/+3
|
* typecheck-gcc.h: check CURLINFO_CERTINFODaniel Stenberg2017-06-011-0/+9
| | | | | | ... and update the certinfo.c example accordingly. Fixes https://github.com/curl/curl/issues/846
* typecheck-gcc.h: check CURLINFO_TLS_SSL_PTR and CURLINFO_TLS_SESSIONDaniel Stenberg2017-06-011-0/+10
| | | | | ... so that they get the required "struct curl_tlssessioninfo **" arguments.
* typecheck-gcc.h: separate getinfo slist checks from other pointersDaniel Stenberg2017-06-012-6/+7
| | | | Fixes #1524
* curl: show the libcurl release date in --version outputDaniel Stenberg2017-05-141-3/+3
| | | | | | | | | | | | | | | | | ... and support and additional "security patched" date for those who enhance older versions that way. Pass on the define CURL_PATCHSTAMP with a date for that. Building with non-release headers shows the date as [unreleased]. Also: this changes the date format generated in the curlver.h file to be "YYYY-MM-DD" (no name of the day or month, no time, no time zone) to make it easier on the eye and easier to parse. Example (new) date string: 2017-05-09 Suggested-by: Brian Childs Closes #1474
* typecheck-gcc: add support for CURLINFO_SOCKETMarcel Raad2017-05-031-0/+9
| | | | Closes https://github.com/curl/curl/pull/1452
* typecheck-gcc: add missing string optionsMarcel Raad2017-05-031-0/+14
| | | | Closes https://github.com/curl/curl/pull/1452
* typecheck-gcc: fix _curl_is_slist_infoMarcel Raad2017-04-251-1/+1
| | | | | | | | | | | | | | | | | Info values starting with CURLINFO_SOCKET expect a curl_socket_t, not a curl_slist argument. This fixes the following GCC warning when building the examples with --enable-optimize: ../../include/curl/typecheck-gcc.h:126:42: warning: call to ‘_curl_easy_getinfo_err_curl_slist’ declared with attribute warning: curl_easy_getinfo expects a pointer to 'struct curl_slist *' for this info [enabled by default] sendrecv.c:90:11: note: in expansion of macro ‘curl_easy_getinfo’ res = curl_easy_getinfo(curl, CURLINFO_ACTIVESOCKET, &sockfd); Closes https://github.com/curl/curl/pull/1447
* typecheck-gcc: handle function pointers properlyMarcel Raad2017-04-211-53/+54
| | | | | | | | | | | | | | | | | | | All the callbacks passed to curl_easy_setopt are defined as function pointers. The possibility to pass both functions and function pointers was handled for the callbacks that typecheck-gcc.h defined as compatible, but not for the public callback types themselves. This makes all compatible callback types defined in typecheck-gcc.h function pointers too and checks all functions uniformly with _curl_callback_compatible, which handles both functions and function pointers. A symptom of the problem was a warning in tool_operate.c with --disable-libcurl-option and without --enable-debug as that file passes the callback functions to curl_easy_setopt directly. Fixes https://github.com/curl/curl/issues/1403 Closes https://github.com/curl/curl/pull/1404
* bump: start working on next releaseDaniel Stenberg2017-04-191-3/+3
|
* system.h: fix mingw sectionDaniel Stenberg2017-04-111-1/+14
| | | | | | Reported-by: Marcel Raad Fixes #1408 Closes #1409
* system.h: add section for tccDaniel Stenberg2017-04-071-0/+13
| | | | Closes #1397
* system.h: set sizeof long to 4 on "default 32 bit" systemsDaniel Stenberg2017-04-061-0/+1
| | | | | Triggered a test failure on test 1541 for the build known as "Linux 4.4 i686 tcc 0.9.26 glibc 2.20"
* include: curl/system.h is a run-time version of curlbuild.hDaniel Stenberg2017-04-034-26/+461
| | | | | | | | | | | | | | | | | | system.h is aimed to replace curlbuild.h at a later point in time when we feel confident system.h works sufficiently well. curl/system.h is currently used in parallel with curl/curlbuild.h curl/system.h determines a data sizes, data types and include file status based on available preprocessor defines instead of getting generated at build-time. This, in order to avoid relying on a build-time generated file that makes it complicated to do 32 and 64 bit bields from the same installed set of headers. Test 1541 verifies that system.h comes to the same conclusion that curlbuild.h offers. Closes #1373
* spelling fixesklemens2017-03-262-3/+3
| | | | Closes #1356
* url: add option CURLOPT_SUPPRESS_CONNECT_HEADERSDesmond O. Chang2017-03-121-0/+3
| | | | | | | | | | | | | | - Add new option CURLOPT_SUPPRESS_CONNECT_HEADERS to allow suppressing proxy CONNECT response headers from the user callback functions CURLOPT_HEADERFUNCTION and CURLOPT_WRITEFUNCTION. - Add new tool option --suppress-connect-headers to expose CURLOPT_SUPPRESS_CONNECT_HEADERS and allow suppressing proxy CONNECT response headers from --dump-header and --include. Assisted-by: Jay Satiro Assisted-by: CarloCannas@users.noreply.github.com Closes https://github.com/curl/curl/pull/783
* bump: next release will be known as 7.54.0Daniel Stenberg2017-03-081-4/+4
| | | | ...due to the newly added CURL_SSLVERSION_MAX_* functionality
* vtls: add options to specify range of enabled TLS versionsJozef Kralik2017-03-081-0/+12
| | | | | | | This commit introduces the CURL_SSLVERSION_MAX_* constants as well as the --tls-max option of the curl tool. Closes https://github.com/curl/curl/pull/1166
* bump: work on the next releaseDaniel Stenberg2017-02-241-3/+3
|
* bump: 7.53.1 coming upDaniel Stenberg2017-02-231-3/+3
| | | | synced with df665f4df0f7a352
* CURLOPT_BUFFERSIZE: support enlarging receive bufferRichy Kim2017-01-191-0/+5
| | | | | | | | | | Replace use of fixed macro BUFSIZE to define the size of the receive buffer. Reappropriate CURLOPT_BUFFERSIZE to include enlarging receive buffer size. Upon setting, resize buffer if larger than the current default size up to a MAX_BUFSIZE (512KB). This can benefit protocols like SFTP. Closes #1222
* bump: next release will be 7.53.0Daniel Stenberg2017-01-162-8/+8
|
* unix_socket: add support for abstract unix domain socketIsaac Boukris2017-01-132-1/+5
| | | | | | | | | | | | | | | | | | | | | In addition to unix domain sockets, Linux also supports an abstract namespace which is independent of the filesystem. In order to support it, add new CURLOPT_ABSTRACT_UNIX_SOCKET option which uses the same storage as CURLOPT_UNIX_SOCKET_PATH internally, along with a flag to specify abstract socket. On non-supporting platforms, the abstract address will be interpreted as an empty string and fail gracefully. Also add new --abstract-unix-socket tool parameter. Signed-off-by: Isaac Boukris <iboukris@gmail.com> Reported-by: Chungtsun Li (typeless) Reviewed-by: Daniel Stenberg Reviewed-by: Peter Wu Closes #1197 Fixes #1061
* curl.h: CURLE_FUNCTION_NOT_FOUND is no longer in useDaniel Stenberg2016-12-291-1/+1
| | | | | This error code was once introduced when some library was dynamically loaded and a funciton within said library couldn't be found.
* bump: toward next releaseDaniel Stenberg2016-12-231-3/+3
|
* bump: toward next releaseDaniel Stenberg2016-12-211-3/+3
|
* preproxy: renamed what was added as SOCKS_PROXYDaniel Stenberg2016-12-161-2/+2
| | | | | | | CURLOPT_SOCKS_PROXY -> CURLOPT_PRE_PROXY Added the corresponding --preroxy command line option. Sets a SOCKS proxy to connect to _before_ connecting to a HTTP(S) proxy.
* CURLOPT_SOCKS_PROXYTYPE: removedDaniel Stenberg2016-12-161-5/+1
| | | | | | This was added as part of the SOCKS+HTTPS proxy merge but there's no need to support this as we prefer to have the protocol specified as a prefix instead.
* checksrc: stricter no-space-before-paren enforcementDaniel Stenberg2016-12-133-6/+9
| | | | In order to make the code style more uniform everywhere