From cbf31846e80e3facbf5455bd3c5c6c81c4fdfabe Mon Sep 17 00:00:00 2001 From: Chris Koeritz Date: Sun, 25 Sep 2016 18:57:27 -0400 Subject: [PATCH] updated curl for windows. --- production/3rdparty/curl/COPYING | 21 - production/3rdparty/curl/README | 79 - production/3rdparty/curl/bin/curl-config | 157 -- production/3rdparty/curl/include/curl/curl.h | 1668 +++++++++++++---- .../3rdparty/curl/include/curl/curlbuild.h | 586 ++++++ .../3rdparty/curl/include/curl/curlrules.h | 262 +++ .../3rdparty/curl/include/curl/curlver.h | 35 +- production/3rdparty/curl/include/curl/easy.h | 31 +- .../3rdparty/curl/include/curl/mprintf.h | 29 +- production/3rdparty/curl/include/curl/multi.h | 310 +-- .../3rdparty/curl/include/curl/stdcheaders.h | 17 +- .../curl/include/curl/typecheck-gcc.h | 622 ++++++ production/3rdparty/curl/include/curl/types.h | 1 - production/3rdparty/curl/lib/libcurl-3.dll | Bin 181248 -> 0 bytes production/3rdparty/curl/lib/libcurl.a | Bin 240292 -> 0 bytes production/3rdparty/curl/lib/libcurl.dll | Bin 0 -> 310784 bytes production/3rdparty/curl/lib/libcurl.dll.a | Bin 29366 -> 0 bytes production/3rdparty/curl/lib/libcurl.exp | Bin 0 -> 8353 bytes production/3rdparty/curl/lib/libcurl.lib | Bin 0 -> 14376 bytes scripts/clam/cpp/rules.def | 5 +- 20 files changed, 3085 insertions(+), 738 deletions(-) delete mode 100644 production/3rdparty/curl/COPYING delete mode 100644 production/3rdparty/curl/README delete mode 100644 production/3rdparty/curl/bin/curl-config mode change 100644 => 100755 production/3rdparty/curl/include/curl/curl.h create mode 100755 production/3rdparty/curl/include/curl/curlbuild.h create mode 100755 production/3rdparty/curl/include/curl/curlrules.h mode change 100644 => 100755 production/3rdparty/curl/include/curl/curlver.h mode change 100644 => 100755 production/3rdparty/curl/include/curl/easy.h mode change 100644 => 100755 production/3rdparty/curl/include/curl/mprintf.h mode change 100644 => 100755 production/3rdparty/curl/include/curl/multi.h mode change 100644 => 100755 production/3rdparty/curl/include/curl/stdcheaders.h create mode 100755 production/3rdparty/curl/include/curl/typecheck-gcc.h delete mode 100644 production/3rdparty/curl/include/curl/types.h delete mode 100644 production/3rdparty/curl/lib/libcurl-3.dll delete mode 100644 production/3rdparty/curl/lib/libcurl.a create mode 100755 production/3rdparty/curl/lib/libcurl.dll delete mode 100644 production/3rdparty/curl/lib/libcurl.dll.a create mode 100755 production/3rdparty/curl/lib/libcurl.exp create mode 100755 production/3rdparty/curl/lib/libcurl.lib diff --git a/production/3rdparty/curl/COPYING b/production/3rdparty/curl/COPYING deleted file mode 100644 index 9769e843..00000000 --- a/production/3rdparty/curl/COPYING +++ /dev/null @@ -1,21 +0,0 @@ -COPYRIGHT AND PERMISSION NOTICE - -Copyright (c) 1996 - 2005, Daniel Stenberg, . - -All rights reserved. - -Permission to use, copy, modify, and distribute this software for any purpose -with or without fee is hereby granted, provided that the above copyright -notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN -NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE -OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of a copyright holder shall not -be used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization of the copyright holder. diff --git a/production/3rdparty/curl/README b/production/3rdparty/curl/README deleted file mode 100644 index 9043dcea..00000000 --- a/production/3rdparty/curl/README +++ /dev/null @@ -1,79 +0,0 @@ - _ _ ____ _ - ___| | | | _ \| | - / __| | | | |_) | | - | (__| |_| | _ <| |___ - \___|\___/|_| \_\_____| - -README - - Curl is a command line tool for transferring data specified with URL - syntax. Find out how to use Curl by reading the curl.1 man page or the - MANUAL document. Find out how to install Curl by reading the INSTALL - document. - - libcurl is the library curl is using to do its job. It is readily - available to be used by your software. Read the libcurl.3 man page to - learn how! - - You find answers to the most frequent questions we get in the FAQ document. - - Study the COPYING file for distribution terms and similar. If you distribute - curl binaries or other binaries that involve libcurl, you might enjoy the - LICENSE-MIXING document. - -CONTACT - - If you have problems, questions, ideas or suggestions, please contact us - by posting to a suitable mailing list. See http://curl.haxx.se/mail/ - - All contributors to the project are listed in the THANKS document. - -WEB SITE - - Visit the curl web site or mirrors for the latest news and downloads: - - Sweden http://curl.haxx.se/ - Australia http://curl.planetmirror.com/ - Austria http://curl.gds.tuwien.ac.at/ - Denmark http://curl.cofman.dk/ - France http://curl.fastmirror.net/ - Germany http://curl.miscellaneousmirror.org/ - Germany http://curl.mirror.at.stealer.net/ - Germany http://curl.mirroring.de/ - Germany http://curl.mons-new-media.de/ - Germany http://curl.triplemind.com/ - Germany http://curl.freemirror.de/ - Netherlands http://curl.nedmirror.nl/ - Russia http://curl.tsuren.net/ - Taiwan http://curl.cs.pu.edu.tw/ - Thailand http://curl.siamu.ac.th/ - US (AZ) http://curl.islandofpoker.com/ - US (CA) http://curl.mirror.redwire.net/ - US (CA) http://curl.mirrormonster.com/ - US (CA) http://curl.signal42.com/ - US (CA) http://curl.tolix.org/ - US (CA) http://curl.webhosting76.com/ - US (CA) http://curl.meulie.net/ - US (FL) http://curl.hoxt.com/ - US (TX) http://curl.109k.com/ - US (TX) http://curl.mirrors.cyberservers.net/ - US (TX) http://curl.seekmeup.com/ - US (TX) http://curl.hostingzero.com/ - -CVS - - To download the very latest source off the CVS server do this: - - cvs -d :pserver:anonymous@cool.haxx.se:/cvsroot/curl login - - (just press enter when asked for password) - - cvs -d :pserver:anonymous@cool.haxx.se:/cvsroot/curl co curl - - (you'll get a directory named curl created, filled with the source code) - -NOTICE - - Curl contains pieces of source code that is Copyright (c) 1998, 1999 - Kungliga Tekniska Högskolan. This notice is included here to comply with the - distribution terms. diff --git a/production/3rdparty/curl/bin/curl-config b/production/3rdparty/curl/bin/curl-config deleted file mode 100644 index c6879296..00000000 --- a/production/3rdparty/curl/bin/curl-config +++ /dev/null @@ -1,157 +0,0 @@ -#! /bin/sh -# -# The idea to this kind of setup info script was stolen from numerous -# other packages, such as neon, libxml and gnome. -# -# $Id: curl-config,v 1.1 2006/07/09 22:41:13 fred_t_hamster Exp $ -# -prefix=/usr/local -exec_prefix=${prefix} -includedir=${prefix}/include - -usage() -{ - cat <, et al. + * Copyright (C) 1998 - 2016, Daniel Stenberg, , et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. + * are also available at https://curl.haxx.se/docs/copyright.html. * * You may opt to use, copy, modify, merge, publish, distribute and/or sell * copies of the Software, and permit persons to whom the Software is @@ -20,112 +20,126 @@ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * - * $Id: curl.h,v 1.1 2006/07/09 22:41:14 fred_t_hamster Exp $ ***************************************************************************/ -/* If you have problems, all libcurl docs and details are found here: - http://curl.haxx.se/libcurl/ -*/ +/* + * If you have libcurl problems, all docs and details are found here: + * https://curl.haxx.se/libcurl/ + * + * curl-library mailing list subscription and unsubscription web interface: + * https://cool.haxx.se/mailman/listinfo/curl-library/ + */ + +#ifdef CURL_NO_OLDIES +#define CURL_STRICTER +#endif -#include "curlver.h" /* the libcurl version defines */ +#include "curlver.h" /* libcurl version defines */ +#include "curlbuild.h" /* libcurl build definitions */ +#include "curlrules.h" /* libcurl rules enforcement */ + +/* + * Define WIN32 when build target is Win32 API + */ + +#if (defined(_WIN32) || defined(__WIN32__)) && \ + !defined(WIN32) && !defined(__SYMBIAN32__) +#define WIN32 +#endif #include #include +#if defined(__FreeBSD__) && (__FreeBSD__ >= 2) +/* Needed for __FreeBSD_version symbol definition */ +#include +#endif + /* The include stuff here below is mainly for time_t! */ -#ifdef vms -# include -# include -#else -# include -# include -#endif /* defined (vms) */ +#include +#include + +#if defined(WIN32) && !defined(_WIN32_WCE) && !defined(__CYGWIN__) +#if !(defined(_WINSOCKAPI_) || defined(_WINSOCK_H) || \ + defined(__LWIP_OPT_H__) || defined(LWIP_HDR_OPT_H)) +/* The check above prevents the winsock2 inclusion if winsock.h already was + included, since they can't co-exist without problems */ +#include +#include +#endif +#endif -typedef void CURL; +/* HP-UX systems version 9, 10 and 11 lack sys/select.h and so does oldish + libc5-based Linux systems. Only include it on systems that are known to + require it! */ +#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \ + defined(__minix) || defined(__SYMBIAN32__) || defined(__INTEGRITY) || \ + defined(ANDROID) || defined(__ANDROID__) || defined(__OpenBSD__) || \ + (defined(__FreeBSD_version) && (__FreeBSD_version < 800000)) +#include +#endif + +#if !defined(WIN32) && !defined(_WIN32_WCE) +#include +#endif + +#if !defined(WIN32) && !defined(__WATCOMC__) && !defined(__VXWORKS__) +#include +#endif + +#ifdef __BEOS__ +#include +#endif #ifdef __cplusplus extern "C" { #endif -/* - * Decorate exportable functions for Win32 DLL linking. - * This avoids using a .def file for building libcurl.dll. - */ -#if (defined(WIN32) || defined(_WIN32)) && !defined(CURL_STATICLIB) -#if defined(BUILDING_LIBCURL) -#define CURL_EXTERN __declspec(dllexport) -#else -#define CURL_EXTERN __declspec(dllimport) -#endif +#if defined(BUILDING_LIBCURL) || defined(CURL_STRICTER) +typedef struct Curl_easy CURL; +typedef struct Curl_share CURLSH; #else -#define CURL_EXTERN +typedef void CURL; +typedef void CURLSH; #endif /* - * We want the typedef curl_off_t setup for large file support on all - * platforms. We also provide a CURL_FORMAT_OFF_T define to use in *printf - * format strings when outputting a variable of type curl_off_t. + * libcurl external API function linkage decorations. */ -#if defined(_MSC_VER) || defined(__LCC__) -/* MSVC */ -#ifdef _WIN32_WCE - typedef long curl_off_t; -#define CURL_FORMAT_OFF_T "%ld" +#ifdef CURL_STATICLIB +# define CURL_EXTERN +#elif defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__) +# if defined(BUILDING_LIBCURL) +# define CURL_EXTERN __declspec(dllexport) +# else +# define CURL_EXTERN __declspec(dllimport) +# endif +#elif defined(BUILDING_LIBCURL) && defined(CURL_HIDDEN_SYMBOLS) +# define CURL_EXTERN CURL_EXTERN_SYMBOL #else - typedef signed __int64 curl_off_t; -#define CURL_FORMAT_OFF_T "%I64d" -#endif -#else /* _MSC_VER || __LCC__ */ -#if (defined(__GNUC__) && defined(WIN32)) || defined(__WATCOMC__) -/* gcc on windows or Watcom */ - typedef long long curl_off_t; -#define CURL_FORMAT_OFF_T "%I64d" -#else /* GCC or Watcom on Windows */ - -/* "normal" POSIX approach, do note that this does not necessarily mean that - the type is >32 bits, see the SIZEOF_CURL_OFF_T define for that! */ - typedef off_t curl_off_t; - -/* Check a range of defines to detect large file support. On Linux it seems - none of these are set by default, so if you don't explicitly switches on - large file support, this define will be made for "small file" support. */ -#ifndef _FILE_OFFSET_BITS -#define _FILE_OFFSET_BITS 0 /* to prevent warnings in the check below */ -#define UNDEF_FILE_OFFSET_BITS -#endif -#ifndef FILESIZEBITS -#define FILESIZEBITS 0 /* to prevent warnings in the check below */ -#define UNDEF_FILESIZEBITS -#endif - -#if defined(_LARGE_FILES) || (_FILE_OFFSET_BITS > 32) || (FILESIZEBITS > 32) \ - || defined(_LARGEFILE_SOURCE) || defined(_LARGEFILE64_SOURCE) - /* For now, we assume at least one of these to be set for large files to - work! */ -#define CURL_FORMAT_OFF_T "%lld" -#else /* LARGE_FILE support */ -#define CURL_FORMAT_OFF_T "%ld" -#endif -#endif /* GCC or Watcom on Windows */ -#endif /* _MSC_VER || __LCC__ */ - -#ifdef UNDEF_FILE_OFFSET_BITS -/* this was defined above for our checks, undefine it again */ -#undef _FILE_OFFSET_BITS +# define CURL_EXTERN #endif -#ifdef UNDEF_FILESIZEBITS -/* this was defined above for our checks, undefine it again */ -#undef FILESIZEBITS +#ifndef curl_socket_typedef +/* socket typedef */ +#if defined(WIN32) && !defined(__LWIP_OPT_H__) && !defined(LWIP_HDR_OPT_H) +typedef SOCKET curl_socket_t; +#define CURL_SOCKET_BAD INVALID_SOCKET +#else +typedef int curl_socket_t; +#define CURL_SOCKET_BAD -1 #endif +#define curl_socket_typedef +#endif /* curl_socket_typedef */ struct curl_httppost { struct curl_httppost *next; /* next entry in the list */ char *name; /* pointer to allocated name */ long namelength; /* length of name length */ char *contents; /* pointer to allocated data contents */ - long contentslength; /* length of contents field */ + long contentslength; /* length of contents field, see also + CURL_HTTPPOST_LARGE */ char *buffer; /* pointer to allocated buffer contents */ long bufferlength; /* length of buffer field */ char *contenttype; /* Content-Type */ @@ -134,51 +148,223 @@ struct curl_httppost { file, this link should link to following files */ long flags; /* as defined below */ -#define HTTPPOST_FILENAME (1<<0) /* specified content is a file name */ -#define HTTPPOST_READFILE (1<<1) /* specified content is a file name */ -#define HTTPPOST_PTRNAME (1<<2) /* name is only stored pointer - do not free in formfree */ -#define HTTPPOST_PTRCONTENTS (1<<3) /* contents is only stored pointer - do not free in formfree */ -#define HTTPPOST_BUFFER (1<<4) /* upload file from buffer */ -#define HTTPPOST_PTRBUFFER (1<<5) /* upload file from pointer contents */ + +/* specified content is a file name */ +#define CURL_HTTPPOST_FILENAME (1<<0) +/* specified content is a file name */ +#define CURL_HTTPPOST_READFILE (1<<1) +/* name is only stored pointer do not free in formfree */ +#define CURL_HTTPPOST_PTRNAME (1<<2) +/* contents is only stored pointer do not free in formfree */ +#define CURL_HTTPPOST_PTRCONTENTS (1<<3) +/* upload file from buffer */ +#define CURL_HTTPPOST_BUFFER (1<<4) +/* upload file from pointer contents */ +#define CURL_HTTPPOST_PTRBUFFER (1<<5) +/* upload file contents by using the regular read callback to get the data and + pass the given pointer as custom pointer */ +#define CURL_HTTPPOST_CALLBACK (1<<6) +/* use size in 'contentlen', added in 7.46.0 */ +#define CURL_HTTPPOST_LARGE (1<<7) char *showfilename; /* The file name to show. If not set, the actual file name will be used (if this is a file part) */ + void *userp; /* custom pointer used for + HTTPPOST_CALLBACK posts */ + curl_off_t contentlen; /* alternative length of contents + field. Used if CURL_HTTPPOST_LARGE is + set. Added in 7.46.0 */ }; +/* This is the CURLOPT_PROGRESSFUNCTION callback proto. It is now considered + deprecated but was the only choice up until 7.31.0 */ typedef int (*curl_progress_callback)(void *clientp, double dltotal, double dlnow, double ultotal, double ulnow); +/* This is the CURLOPT_XFERINFOFUNCTION callback proto. It was introduced in + 7.32.0, it avoids floating point and provides more detailed information. */ +typedef int (*curl_xferinfo_callback)(void *clientp, + curl_off_t dltotal, + curl_off_t dlnow, + curl_off_t ultotal, + curl_off_t ulnow); + +#ifndef CURL_MAX_WRITE_SIZE /* Tests have proven that 20K is a very bad buffer size for uploads on - Windows, while 16K for some odd reason performed a lot better. */ + Windows, while 16K for some odd reason performed a lot better. + We do the ifndef check to allow this value to easier be changed at build + time for those who feel adventurous. The practical minimum is about + 400 bytes since libcurl uses a buffer of this size as a scratch area + (unrelated to network send operations). */ #define CURL_MAX_WRITE_SIZE 16384 +#endif + +#ifndef CURL_MAX_HTTP_HEADER +/* The only reason to have a max limit for this is to avoid the risk of a bad + server feeding libcurl with a never-ending header that will cause reallocs + infinitely */ +#define CURL_MAX_HTTP_HEADER (100*1024) +#endif + +/* This is a magic return code for the write callback that, when returned, + will signal libcurl to pause receiving on the current transfer. */ +#define CURL_WRITEFUNC_PAUSE 0x10000001 typedef size_t (*curl_write_callback)(char *buffer, size_t size, size_t nitems, void *outstream); + + +/* enumeration of file types */ +typedef enum { + CURLFILETYPE_FILE = 0, + CURLFILETYPE_DIRECTORY, + CURLFILETYPE_SYMLINK, + CURLFILETYPE_DEVICE_BLOCK, + CURLFILETYPE_DEVICE_CHAR, + CURLFILETYPE_NAMEDPIPE, + CURLFILETYPE_SOCKET, + CURLFILETYPE_DOOR, /* is possible only on Sun Solaris now */ + + CURLFILETYPE_UNKNOWN /* should never occur */ +} curlfiletype; + +#define CURLFINFOFLAG_KNOWN_FILENAME (1<<0) +#define CURLFINFOFLAG_KNOWN_FILETYPE (1<<1) +#define CURLFINFOFLAG_KNOWN_TIME (1<<2) +#define CURLFINFOFLAG_KNOWN_PERM (1<<3) +#define CURLFINFOFLAG_KNOWN_UID (1<<4) +#define CURLFINFOFLAG_KNOWN_GID (1<<5) +#define CURLFINFOFLAG_KNOWN_SIZE (1<<6) +#define CURLFINFOFLAG_KNOWN_HLINKCOUNT (1<<7) + +/* Content of this structure depends on information which is known and is + achievable (e.g. by FTP LIST parsing). Please see the url_easy_setopt(3) man + page for callbacks returning this structure -- some fields are mandatory, + some others are optional. The FLAG field has special meaning. */ +struct curl_fileinfo { + char *filename; + curlfiletype filetype; + time_t time; + unsigned int perm; + int uid; + int gid; + curl_off_t size; + long int hardlinks; + + struct { + /* If some of these fields is not NULL, it is a pointer to b_data. */ + char *time; + char *perm; + char *user; + char *group; + char *target; /* pointer to the target filename of a symlink */ + } strings; + + unsigned int flags; + + /* used internally */ + char * b_data; + size_t b_size; + size_t b_used; +}; + +/* return codes for CURLOPT_CHUNK_BGN_FUNCTION */ +#define CURL_CHUNK_BGN_FUNC_OK 0 +#define CURL_CHUNK_BGN_FUNC_FAIL 1 /* tell the lib to end the task */ +#define CURL_CHUNK_BGN_FUNC_SKIP 2 /* skip this chunk over */ + +/* if splitting of data transfer is enabled, this callback is called before + download of an individual chunk started. Note that parameter "remains" works + only for FTP wildcard downloading (for now), otherwise is not used */ +typedef long (*curl_chunk_bgn_callback)(const void *transfer_info, + void *ptr, + int remains); + +/* return codes for CURLOPT_CHUNK_END_FUNCTION */ +#define CURL_CHUNK_END_FUNC_OK 0 +#define CURL_CHUNK_END_FUNC_FAIL 1 /* tell the lib to end the task */ + +/* If splitting of data transfer is enabled this callback is called after + download of an individual chunk finished. + Note! After this callback was set then it have to be called FOR ALL chunks. + Even if downloading of this chunk was skipped in CHUNK_BGN_FUNC. + This is the reason why we don't need "transfer_info" parameter in this + callback and we are not interested in "remains" parameter too. */ +typedef long (*curl_chunk_end_callback)(void *ptr); + +/* return codes for FNMATCHFUNCTION */ +#define CURL_FNMATCHFUNC_MATCH 0 /* string corresponds to the pattern */ +#define CURL_FNMATCHFUNC_NOMATCH 1 /* pattern doesn't match the string */ +#define CURL_FNMATCHFUNC_FAIL 2 /* an error occurred */ + +/* callback type for wildcard downloading pattern matching. If the + string matches the pattern, return CURL_FNMATCHFUNC_MATCH value, etc. */ +typedef int (*curl_fnmatch_callback)(void *ptr, + const char *pattern, + const char *string); + +/* These are the return codes for the seek callbacks */ +#define CURL_SEEKFUNC_OK 0 +#define CURL_SEEKFUNC_FAIL 1 /* fail the entire transfer */ +#define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking can't be done, so + libcurl might try other means instead */ +typedef int (*curl_seek_callback)(void *instream, + curl_off_t offset, + int origin); /* 'whence' */ + /* This is a return code for the read callback that, when returned, will signal libcurl to immediately abort the current transfer. */ #define CURL_READFUNC_ABORT 0x10000000 +/* This is a return code for the read callback that, when returned, will + signal libcurl to pause sending data on the current transfer. */ +#define CURL_READFUNC_PAUSE 0x10000001 + typedef size_t (*curl_read_callback)(char *buffer, size_t size, size_t nitems, void *instream); +typedef enum { + CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */ + CURLSOCKTYPE_ACCEPT, /* socket created by accept() call */ + CURLSOCKTYPE_LAST /* never use */ +} curlsocktype; + +/* The return code from the sockopt_callback can signal information back + to libcurl: */ +#define CURL_SOCKOPT_OK 0 +#define CURL_SOCKOPT_ERROR 1 /* causes libcurl to abort and return + CURLE_ABORTED_BY_CALLBACK */ +#define CURL_SOCKOPT_ALREADY_CONNECTED 2 + +typedef int (*curl_sockopt_callback)(void *clientp, + curl_socket_t curlfd, + curlsocktype purpose); + +struct curl_sockaddr { + int family; + int socktype; + int protocol; + unsigned int addrlen; /* addrlen was a socklen_t type before 7.18.0 but it + turned really ugly and painful on the systems that + lack this type */ + struct sockaddr addr; +}; -#ifndef CURL_NO_OLDIES - /* not used since 7.10.8, will be removed in a future release */ -typedef int (*curl_passwd_callback)(void *clientp, - const char *prompt, - char *buffer, - int buflen); -#endif +typedef curl_socket_t +(*curl_opensocket_callback)(void *clientp, + curlsocktype purpose, + struct curl_sockaddr *address); + +typedef int +(*curl_closesocket_callback)(void *clientp, curl_socket_t item); typedef enum { CURLIOE_OK, /* I/O operation successful */ @@ -197,6 +383,7 @@ typedef curlioerr (*curl_ioctl_callback)(CURL *handle, int cmd, void *clientp); +#ifndef CURL_DID_MEMORY_FUNC_TYPEDEFS /* * The following typedef's are signatures of malloc, free, realloc, strdup and * calloc respectively. Function pointers of these types can be passed to the @@ -209,6 +396,9 @@ typedef void *(*curl_realloc_callback)(void *ptr, size_t size); typedef char *(*curl_strdup_callback)(const char *str); typedef void *(*curl_calloc_callback)(size_t nmemb, size_t size); +#define CURL_DID_MEMORY_FUNC_TYPEDEFS +#endif + /* the kind of data that is passed to information_callback*/ typedef enum { CURLINFO_TEXT = 0, @@ -240,70 +430,81 @@ typedef enum { CURLE_UNSUPPORTED_PROTOCOL, /* 1 */ CURLE_FAILED_INIT, /* 2 */ CURLE_URL_MALFORMAT, /* 3 */ - CURLE_URL_MALFORMAT_USER, /* 4 (NOT USED) */ + CURLE_NOT_BUILT_IN, /* 4 - [was obsoleted in August 2007 for + 7.17.0, reused in April 2011 for 7.21.5] */ CURLE_COULDNT_RESOLVE_PROXY, /* 5 */ CURLE_COULDNT_RESOLVE_HOST, /* 6 */ CURLE_COULDNT_CONNECT, /* 7 */ - CURLE_FTP_WEIRD_SERVER_REPLY, /* 8 */ - CURLE_FTP_ACCESS_DENIED, /* 9 a service was denied by the FTP server + CURLE_WEIRD_SERVER_REPLY, /* 8 */ + CURLE_REMOTE_ACCESS_DENIED, /* 9 a service was denied by the server due to lack of access - when login fails this is not returned. */ - CURLE_FTP_USER_PASSWORD_INCORRECT, /* 10 */ + CURLE_FTP_ACCEPT_FAILED, /* 10 - [was obsoleted in April 2006 for + 7.15.4, reused in Dec 2011 for 7.24.0]*/ CURLE_FTP_WEIRD_PASS_REPLY, /* 11 */ - CURLE_FTP_WEIRD_USER_REPLY, /* 12 */ + CURLE_FTP_ACCEPT_TIMEOUT, /* 12 - timeout occurred accepting server + [was obsoleted in August 2007 for 7.17.0, + reused in Dec 2011 for 7.24.0]*/ CURLE_FTP_WEIRD_PASV_REPLY, /* 13 */ CURLE_FTP_WEIRD_227_FORMAT, /* 14 */ CURLE_FTP_CANT_GET_HOST, /* 15 */ - CURLE_FTP_CANT_RECONNECT, /* 16 */ - CURLE_FTP_COULDNT_SET_BINARY, /* 17 */ + CURLE_HTTP2, /* 16 - A problem in the http2 framing layer. + [was obsoleted in August 2007 for 7.17.0, + reused in July 2014 for 7.38.0] */ + CURLE_FTP_COULDNT_SET_TYPE, /* 17 */ CURLE_PARTIAL_FILE, /* 18 */ CURLE_FTP_COULDNT_RETR_FILE, /* 19 */ - CURLE_FTP_WRITE_ERROR, /* 20 */ - CURLE_FTP_QUOTE_ERROR, /* 21 */ + CURLE_OBSOLETE20, /* 20 - NOT USED */ + CURLE_QUOTE_ERROR, /* 21 - quote command failure */ CURLE_HTTP_RETURNED_ERROR, /* 22 */ CURLE_WRITE_ERROR, /* 23 */ - CURLE_MALFORMAT_USER, /* 24 - NOT USED */ - CURLE_FTP_COULDNT_STOR_FILE, /* 25 - failed FTP upload */ - CURLE_READ_ERROR, /* 26 - could open/read from file */ + CURLE_OBSOLETE24, /* 24 - NOT USED */ + CURLE_UPLOAD_FAILED, /* 25 - failed upload "command" */ + CURLE_READ_ERROR, /* 26 - couldn't open/read from file */ CURLE_OUT_OF_MEMORY, /* 27 */ - CURLE_OPERATION_TIMEOUTED, /* 28 - the timeout time was reached */ - CURLE_FTP_COULDNT_SET_ASCII, /* 29 - TYPE A failed */ + /* Note: CURLE_OUT_OF_MEMORY may sometimes indicate a conversion error + instead of a memory allocation error if CURL_DOES_CONVERSIONS + is defined + */ + CURLE_OPERATION_TIMEDOUT, /* 28 - the timeout time was reached */ + CURLE_OBSOLETE29, /* 29 - NOT USED */ CURLE_FTP_PORT_FAILED, /* 30 - FTP PORT operation failed */ CURLE_FTP_COULDNT_USE_REST, /* 31 - the REST command failed */ - CURLE_FTP_COULDNT_GET_SIZE, /* 32 - the SIZE command failed */ - CURLE_HTTP_RANGE_ERROR, /* 33 - RANGE "command" didn't work */ + CURLE_OBSOLETE32, /* 32 - NOT USED */ + CURLE_RANGE_ERROR, /* 33 - RANGE "command" didn't work */ CURLE_HTTP_POST_ERROR, /* 34 */ CURLE_SSL_CONNECT_ERROR, /* 35 - wrong when connecting with SSL */ CURLE_BAD_DOWNLOAD_RESUME, /* 36 - couldn't resume download */ CURLE_FILE_COULDNT_READ_FILE, /* 37 */ CURLE_LDAP_CANNOT_BIND, /* 38 */ CURLE_LDAP_SEARCH_FAILED, /* 39 */ - CURLE_LIBRARY_NOT_FOUND, /* 40 */ + CURLE_OBSOLETE40, /* 40 - NOT USED */ CURLE_FUNCTION_NOT_FOUND, /* 41 */ CURLE_ABORTED_BY_CALLBACK, /* 42 */ CURLE_BAD_FUNCTION_ARGUMENT, /* 43 */ - CURLE_BAD_CALLING_ORDER, /* 44 - NOT USED */ + CURLE_OBSOLETE44, /* 44 - NOT USED */ CURLE_INTERFACE_FAILED, /* 45 - CURLOPT_INTERFACE failed */ - CURLE_BAD_PASSWORD_ENTERED, /* 46 - NOT USED */ - CURLE_TOO_MANY_REDIRECTS , /* 47 - catch endless re-direct loops */ - CURLE_UNKNOWN_TELNET_OPTION, /* 48 - User specified an unknown option */ - CURLE_TELNET_OPTION_SYNTAX , /* 49 - Malformed telnet option */ - CURLE_OBSOLETE, /* 50 - NOT USED */ - CURLE_SSL_PEER_CERTIFICATE, /* 51 - peer's certificate wasn't ok */ + CURLE_OBSOLETE46, /* 46 - NOT USED */ + CURLE_TOO_MANY_REDIRECTS, /* 47 - catch endless re-direct loops */ + CURLE_UNKNOWN_OPTION, /* 48 - User specified an unknown option */ + CURLE_TELNET_OPTION_SYNTAX, /* 49 - Malformed telnet option */ + CURLE_OBSOLETE50, /* 50 - NOT USED */ + CURLE_PEER_FAILED_VERIFICATION, /* 51 - peer's certificate or fingerprint + wasn't verified fine */ CURLE_GOT_NOTHING, /* 52 - when this is a specific error */ CURLE_SSL_ENGINE_NOTFOUND, /* 53 - SSL crypto engine not found */ CURLE_SSL_ENGINE_SETFAILED, /* 54 - can not set SSL crypto engine as default */ CURLE_SEND_ERROR, /* 55 - failed sending network data */ CURLE_RECV_ERROR, /* 56 - failure in receiving network data */ - CURLE_SHARE_IN_USE, /* 57 - share is in use */ + CURLE_OBSOLETE57, /* 57 - NOT IN USE */ CURLE_SSL_CERTPROBLEM, /* 58 - problem with the local certificate */ CURLE_SSL_CIPHER, /* 59 - couldn't use specified cipher */ CURLE_SSL_CACERT, /* 60 - problem with the CA cert (path?) */ - CURLE_BAD_CONTENT_ENCODING, /* 61 - Unrecognized transfer encoding */ + CURLE_BAD_CONTENT_ENCODING, /* 61 - Unrecognized/bad encoding */ CURLE_LDAP_INVALID_URL, /* 62 - Invalid LDAP URL */ CURLE_FILESIZE_EXCEEDED, /* 63 - Maximum file size exceeded */ - CURLE_FTP_SSL_FAILED, /* 64 - Requested FTP SSL level failed */ + CURLE_USE_SSL_FAILED, /* 64 - Requested FTP SSL level failed */ CURLE_SEND_FAIL_REWIND, /* 65 - Sending the data requires a rewind that failed */ CURLE_SSL_ENGINE_INITFAILED, /* 66 - failed to initialise ENGINE */ @@ -311,65 +512,272 @@ typedef enum { accepted and we failed to login */ CURLE_TFTP_NOTFOUND, /* 68 - file not found on server */ CURLE_TFTP_PERM, /* 69 - permission problem on server */ - CURLE_TFTP_DISKFULL, /* 70 - out of disk space on server */ + CURLE_REMOTE_DISK_FULL, /* 70 - out of disk space on server */ CURLE_TFTP_ILLEGAL, /* 71 - Illegal TFTP operation */ CURLE_TFTP_UNKNOWNID, /* 72 - Unknown transfer ID */ - CURLE_TFTP_EXISTS, /* 73 - File already exists */ + CURLE_REMOTE_FILE_EXISTS, /* 73 - File already exists */ CURLE_TFTP_NOSUCHUSER, /* 74 - No such user */ + CURLE_CONV_FAILED, /* 75 - conversion failed */ + CURLE_CONV_REQD, /* 76 - caller must register conversion + callbacks using curl_easy_setopt options + CURLOPT_CONV_FROM_NETWORK_FUNCTION, + CURLOPT_CONV_TO_NETWORK_FUNCTION, and + CURLOPT_CONV_FROM_UTF8_FUNCTION */ + CURLE_SSL_CACERT_BADFILE, /* 77 - could not load CACERT file, missing + or wrong format */ + CURLE_REMOTE_FILE_NOT_FOUND, /* 78 - remote file not found */ + CURLE_SSH, /* 79 - error from the SSH layer, somewhat + generic so the error message will be of + interest when this has happened */ + + CURLE_SSL_SHUTDOWN_FAILED, /* 80 - Failed to shut down the SSL + connection */ + CURLE_AGAIN, /* 81 - socket is not ready for send/recv, + wait till it's ready and try again (Added + in 7.18.2) */ + CURLE_SSL_CRL_BADFILE, /* 82 - could not load CRL file, missing or + wrong format (Added in 7.19.0) */ + CURLE_SSL_ISSUER_ERROR, /* 83 - Issuer check failed. (Added in + 7.19.0) */ + CURLE_FTP_PRET_FAILED, /* 84 - a PRET command failed */ + CURLE_RTSP_CSEQ_ERROR, /* 85 - mismatch of RTSP CSeq numbers */ + CURLE_RTSP_SESSION_ERROR, /* 86 - mismatch of RTSP Session Ids */ + CURLE_FTP_BAD_FILE_LIST, /* 87 - unable to parse FTP file list */ + CURLE_CHUNK_FAILED, /* 88 - chunk callback reported error */ + CURLE_NO_CONNECTION_AVAILABLE, /* 89 - No connection available, the + session will be queued */ + CURLE_SSL_PINNEDPUBKEYNOTMATCH, /* 90 - specified pinned public key did not + match */ + CURLE_SSL_INVALIDCERTSTATUS, /* 91 - invalid certificate status */ + CURLE_HTTP2_STREAM, /* 92 - stream error in HTTP/2 framing layer + */ CURL_LAST /* never use! */ } CURLcode; +#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all + the obsolete stuff removed! */ + +/* Previously obsolete error code re-used in 7.38.0 */ +#define CURLE_OBSOLETE16 CURLE_HTTP2 + +/* Previously obsolete error codes re-used in 7.24.0 */ +#define CURLE_OBSOLETE10 CURLE_FTP_ACCEPT_FAILED +#define CURLE_OBSOLETE12 CURLE_FTP_ACCEPT_TIMEOUT + +/* compatibility with older names */ +#define CURLOPT_ENCODING CURLOPT_ACCEPT_ENCODING +#define CURLE_FTP_WEIRD_SERVER_REPLY CURLE_WEIRD_SERVER_REPLY + +/* The following were added in 7.21.5, April 2011 */ +#define CURLE_UNKNOWN_TELNET_OPTION CURLE_UNKNOWN_OPTION + +/* The following were added in 7.17.1 */ +/* These are scheduled to disappear by 2009 */ +#define CURLE_SSL_PEER_CERTIFICATE CURLE_PEER_FAILED_VERIFICATION + +/* The following were added in 7.17.0 */ +/* These are scheduled to disappear by 2009 */ +#define CURLE_OBSOLETE CURLE_OBSOLETE50 /* no one should be using this! */ +#define CURLE_BAD_PASSWORD_ENTERED CURLE_OBSOLETE46 +#define CURLE_BAD_CALLING_ORDER CURLE_OBSOLETE44 +#define CURLE_FTP_USER_PASSWORD_INCORRECT CURLE_OBSOLETE10 +#define CURLE_FTP_CANT_RECONNECT CURLE_OBSOLETE16 +#define CURLE_FTP_COULDNT_GET_SIZE CURLE_OBSOLETE32 +#define CURLE_FTP_COULDNT_SET_ASCII CURLE_OBSOLETE29 +#define CURLE_FTP_WEIRD_USER_REPLY CURLE_OBSOLETE12 +#define CURLE_FTP_WRITE_ERROR CURLE_OBSOLETE20 +#define CURLE_LIBRARY_NOT_FOUND CURLE_OBSOLETE40 +#define CURLE_MALFORMAT_USER CURLE_OBSOLETE24 +#define CURLE_SHARE_IN_USE CURLE_OBSOLETE57 +#define CURLE_URL_MALFORMAT_USER CURLE_NOT_BUILT_IN + +#define CURLE_FTP_ACCESS_DENIED CURLE_REMOTE_ACCESS_DENIED +#define CURLE_FTP_COULDNT_SET_BINARY CURLE_FTP_COULDNT_SET_TYPE +#define CURLE_FTP_QUOTE_ERROR CURLE_QUOTE_ERROR +#define CURLE_TFTP_DISKFULL CURLE_REMOTE_DISK_FULL +#define CURLE_TFTP_EXISTS CURLE_REMOTE_FILE_EXISTS +#define CURLE_HTTP_RANGE_ERROR CURLE_RANGE_ERROR +#define CURLE_FTP_SSL_FAILED CURLE_USE_SSL_FAILED + +/* The following were added earlier */ + +#define CURLE_OPERATION_TIMEOUTED CURLE_OPERATION_TIMEDOUT + +#define CURLE_HTTP_NOT_FOUND CURLE_HTTP_RETURNED_ERROR +#define CURLE_HTTP_PORT_FAILED CURLE_INTERFACE_FAILED +#define CURLE_FTP_COULDNT_STOR_FILE CURLE_UPLOAD_FAILED + +#define CURLE_FTP_PARTIAL_FILE CURLE_PARTIAL_FILE +#define CURLE_FTP_BAD_DOWNLOAD_RESUME CURLE_BAD_DOWNLOAD_RESUME + +/* This was the error code 50 in 7.7.3 and a few earlier versions, this + is no longer used by libcurl but is instead #defined here only to not + make programs break */ +#define CURLE_ALREADY_COMPLETE 99999 + +/* Provide defines for really old option names */ +#define CURLOPT_FILE CURLOPT_WRITEDATA /* name changed in 7.9.7 */ +#define CURLOPT_INFILE CURLOPT_READDATA /* name changed in 7.9.7 */ +#define CURLOPT_WRITEHEADER CURLOPT_HEADERDATA + +/* Since long deprecated options with no code in the lib that does anything + with them. */ +#define CURLOPT_WRITEINFO CURLOPT_OBSOLETE40 +#define CURLOPT_CLOSEPOLICY CURLOPT_OBSOLETE72 + +#endif /*!CURL_NO_OLDIES*/ + +/* This prototype applies to all conversion callbacks */ +typedef CURLcode (*curl_conv_callback)(char *buffer, size_t length); + typedef CURLcode (*curl_ssl_ctx_callback)(CURL *curl, /* easy handle */ void *ssl_ctx, /* actually an OpenSSL SSL_CTX */ void *userptr); -/* Make a spelling correction for the operation timed-out define */ -#define CURLE_OPERATION_TIMEDOUT CURLE_OPERATION_TIMEOUTED +typedef enum { + CURLPROXY_HTTP = 0, /* added in 7.10, new in 7.19.4 default is to use + CONNECT HTTP/1.1 */ + CURLPROXY_HTTP_1_0 = 1, /* added in 7.19.4, force to use CONNECT + HTTP/1.0 */ + CURLPROXY_SOCKS4 = 4, /* support added in 7.15.2, enum existed already + in 7.10 */ + CURLPROXY_SOCKS5 = 5, /* added in 7.10 */ + CURLPROXY_SOCKS4A = 6, /* added in 7.18.0 */ + CURLPROXY_SOCKS5_HOSTNAME = 7 /* Use the SOCKS5 protocol but pass along the + host name rather than the IP address. added + in 7.18.0 */ +} curl_proxytype; /* this enum was added in 7.10 */ -#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all - the obsolete stuff removed! */ -/* backwards compatibility with older names */ -#define CURLE_HTTP_NOT_FOUND CURLE_HTTP_RETURNED_ERROR -#define CURLE_HTTP_PORT_FAILED CURLE_INTERFACE_FAILED -#endif +/* + * Bitmasks for CURLOPT_HTTPAUTH and CURLOPT_PROXYAUTH options: + * + * CURLAUTH_NONE - No HTTP authentication + * CURLAUTH_BASIC - HTTP Basic authentication (default) + * CURLAUTH_DIGEST - HTTP Digest authentication + * CURLAUTH_NEGOTIATE - HTTP Negotiate (SPNEGO) authentication + * CURLAUTH_GSSNEGOTIATE - Alias for CURLAUTH_NEGOTIATE (deprecated) + * CURLAUTH_NTLM - HTTP NTLM authentication + * CURLAUTH_DIGEST_IE - HTTP Digest authentication with IE flavour + * CURLAUTH_NTLM_WB - HTTP NTLM authentication delegated to winbind helper + * CURLAUTH_ONLY - Use together with a single other type to force no + * authentication or just that single type + * CURLAUTH_ANY - All fine types set + * CURLAUTH_ANYSAFE - All fine types except Basic + */ +#define CURLAUTH_NONE ((unsigned long)0) +#define CURLAUTH_BASIC (((unsigned long)1)<<0) +#define CURLAUTH_DIGEST (((unsigned long)1)<<1) +#define CURLAUTH_NEGOTIATE (((unsigned long)1)<<2) +/* Deprecated since the advent of CURLAUTH_NEGOTIATE */ +#define CURLAUTH_GSSNEGOTIATE CURLAUTH_NEGOTIATE +#define CURLAUTH_NTLM (((unsigned long)1)<<3) +#define CURLAUTH_DIGEST_IE (((unsigned long)1)<<4) +#define CURLAUTH_NTLM_WB (((unsigned long)1)<<5) +#define CURLAUTH_ONLY (((unsigned long)1)<<31) +#define CURLAUTH_ANY (~CURLAUTH_DIGEST_IE) +#define CURLAUTH_ANYSAFE (~(CURLAUTH_BASIC|CURLAUTH_DIGEST_IE)) + +#define CURLSSH_AUTH_ANY ~0 /* all types supported by the server */ +#define CURLSSH_AUTH_NONE 0 /* none allowed, silly but complete */ +#define CURLSSH_AUTH_PUBLICKEY (1<<0) /* public/private key files */ +#define CURLSSH_AUTH_PASSWORD (1<<1) /* password */ +#define CURLSSH_AUTH_HOST (1<<2) /* host key files */ +#define CURLSSH_AUTH_KEYBOARD (1<<3) /* keyboard interactive */ +#define CURLSSH_AUTH_AGENT (1<<4) /* agent (ssh-agent, pageant...) */ +#define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY + +#define CURLGSSAPI_DELEGATION_NONE 0 /* no delegation (default) */ +#define CURLGSSAPI_DELEGATION_POLICY_FLAG (1<<0) /* if permitted by policy */ +#define CURLGSSAPI_DELEGATION_FLAG (1<<1) /* delegate always */ + +#define CURL_ERROR_SIZE 256 + +enum curl_khtype { + CURLKHTYPE_UNKNOWN, + CURLKHTYPE_RSA1, + CURLKHTYPE_RSA, + CURLKHTYPE_DSS +}; + +struct curl_khkey { + const char *key; /* points to a zero-terminated string encoded with base64 + if len is zero, otherwise to the "raw" data */ + size_t len; + enum curl_khtype keytype; +}; + +/* this is the set of return values expected from the curl_sshkeycallback + callback */ +enum curl_khstat { + CURLKHSTAT_FINE_ADD_TO_FILE, + CURLKHSTAT_FINE, + CURLKHSTAT_REJECT, /* reject the connection, return an error */ + CURLKHSTAT_DEFER, /* do not accept it, but we can't answer right now so + this causes a CURLE_DEFER error but otherwise the + connection will be left intact etc */ + CURLKHSTAT_LAST /* not for use, only a marker for last-in-list */ +}; + +/* this is the set of status codes pass in to the callback */ +enum curl_khmatch { + CURLKHMATCH_OK, /* match */ + CURLKHMATCH_MISMATCH, /* host found, key mismatch! */ + CURLKHMATCH_MISSING, /* no matching host/key found */ + CURLKHMATCH_LAST /* not for use, only a marker for last-in-list */ +}; + +typedef int + (*curl_sshkeycallback) (CURL *easy, /* easy handle */ + const struct curl_khkey *knownkey, /* known */ + const struct curl_khkey *foundkey, /* found */ + enum curl_khmatch, /* libcurl's view on the keys */ + void *clientp); /* custom pointer passed from app */ + +/* parameter for the CURLOPT_USE_SSL option */ typedef enum { - CURLPROXY_HTTP = 0, - CURLPROXY_SOCKS4 = 4, - CURLPROXY_SOCKS5 = 5 -} curl_proxytype; - -#define CURLAUTH_NONE 0 /* nothing */ -#define CURLAUTH_BASIC (1<<0) /* Basic (default) */ -#define CURLAUTH_DIGEST (1<<1) /* Digest */ -#define CURLAUTH_GSSNEGOTIATE (1<<2) /* GSS-Negotiate */ -#define CURLAUTH_NTLM (1<<3) /* NTLM */ -#define CURLAUTH_ANY ~0 /* all types set */ -#define CURLAUTH_ANYSAFE (~CURLAUTH_BASIC) + CURLUSESSL_NONE, /* do not attempt to use SSL */ + CURLUSESSL_TRY, /* try using SSL, proceed anyway otherwise */ + CURLUSESSL_CONTROL, /* SSL for the control connection or fail */ + CURLUSESSL_ALL, /* SSL for all communication or fail */ + CURLUSESSL_LAST /* not an option, never use */ +} curl_usessl; + +/* Definition of bits for the CURLOPT_SSL_OPTIONS argument: */ + +/* - ALLOW_BEAST tells libcurl to allow the BEAST SSL vulnerability in the + name of improving interoperability with older servers. Some SSL libraries + have introduced work-arounds for this flaw but those work-arounds sometimes + make the SSL communication fail. To regain functionality with those broken + servers, a user can this way allow the vulnerability back. */ +#define CURLSSLOPT_ALLOW_BEAST (1<<0) + +/* - NO_REVOKE tells libcurl to disable certificate revocation checks for those + SSL backends where such behavior is present. */ +#define CURLSSLOPT_NO_REVOKE (1<<1) #ifndef CURL_NO_OLDIES /* define this to test if your app builds with all the obsolete stuff removed! */ -/* this was the error code 50 in 7.7.3 and a few earlier versions, this - is no longer used by libcurl but is instead #defined here only to not - make programs break */ -#define CURLE_ALREADY_COMPLETE 99999 -/* These are just to make older programs not break: */ -#define CURLE_FTP_PARTIAL_FILE CURLE_PARTIAL_FILE -#define CURLE_FTP_BAD_DOWNLOAD_RESUME CURLE_BAD_DOWNLOAD_RESUME -#endif +/* Backwards compatibility with older names */ +/* These are scheduled to disappear by 2009 */ -#define CURL_ERROR_SIZE 256 +#define CURLFTPSSL_NONE CURLUSESSL_NONE +#define CURLFTPSSL_TRY CURLUSESSL_TRY +#define CURLFTPSSL_CONTROL CURLUSESSL_CONTROL +#define CURLFTPSSL_ALL CURLUSESSL_ALL +#define CURLFTPSSL_LAST CURLUSESSL_LAST +#define curl_ftpssl curl_usessl +#endif /*!CURL_NO_OLDIES*/ -/* parameter for the CURLOPT_FTP_SSL option */ +/* parameter for the CURLOPT_FTP_SSL_CCC option */ typedef enum { - CURLFTPSSL_NONE, /* do not attempt to use SSL */ - CURLFTPSSL_TRY, /* try using SSL, proceed anyway otherwise */ - CURLFTPSSL_CONTROL, /* SSL for the control connection or fail */ - CURLFTPSSL_ALL, /* SSL for all communication or fail */ - CURLFTPSSL_LAST /* not an option, never use */ -} curl_ftpssl; + CURLFTPSSL_CCC_NONE, /* do not send CCC */ + CURLFTPSSL_CCC_PASSIVE, /* Let the server initiate the shutdown */ + CURLFTPSSL_CCC_ACTIVE, /* Initiate the shutdown */ + CURLFTPSSL_CCC_LAST /* not an option, never use */ +} curl_ftpccc; /* parameter for the CURLOPT_FTPSSLAUTH option */ typedef enum { @@ -379,41 +787,86 @@ typedef enum { CURLFTPAUTH_LAST /* not an option, never use */ } curl_ftpauth; +/* parameter for the CURLOPT_FTP_CREATE_MISSING_DIRS option */ +typedef enum { + CURLFTP_CREATE_DIR_NONE, /* do NOT create missing dirs! */ + CURLFTP_CREATE_DIR, /* (FTP/SFTP) if CWD fails, try MKD and then CWD + again if MKD succeeded, for SFTP this does + similar magic */ + CURLFTP_CREATE_DIR_RETRY, /* (FTP only) if CWD fails, try MKD and then CWD + again even if MKD failed! */ + CURLFTP_CREATE_DIR_LAST /* not an option, never use */ +} curl_ftpcreatedir; + +/* parameter for the CURLOPT_FTP_FILEMETHOD option */ +typedef enum { + CURLFTPMETHOD_DEFAULT, /* let libcurl pick */ + CURLFTPMETHOD_MULTICWD, /* single CWD operation for each path part */ + CURLFTPMETHOD_NOCWD, /* no CWD at all */ + CURLFTPMETHOD_SINGLECWD, /* one CWD to full dir, then work on file */ + CURLFTPMETHOD_LAST /* not an option, never use */ +} curl_ftpmethod; + +/* bitmask defines for CURLOPT_HEADEROPT */ +#define CURLHEADER_UNIFIED 0 +#define CURLHEADER_SEPARATE (1<<0) + +/* CURLPROTO_ defines are for the CURLOPT_*PROTOCOLS options */ +#define CURLPROTO_HTTP (1<<0) +#define CURLPROTO_HTTPS (1<<1) +#define CURLPROTO_FTP (1<<2) +#define CURLPROTO_FTPS (1<<3) +#define CURLPROTO_SCP (1<<4) +#define CURLPROTO_SFTP (1<<5) +#define CURLPROTO_TELNET (1<<6) +#define CURLPROTO_LDAP (1<<7) +#define CURLPROTO_LDAPS (1<<8) +#define CURLPROTO_DICT (1<<9) +#define CURLPROTO_FILE (1<<10) +#define CURLPROTO_TFTP (1<<11) +#define CURLPROTO_IMAP (1<<12) +#define CURLPROTO_IMAPS (1<<13) +#define CURLPROTO_POP3 (1<<14) +#define CURLPROTO_POP3S (1<<15) +#define CURLPROTO_SMTP (1<<16) +#define CURLPROTO_SMTPS (1<<17) +#define CURLPROTO_RTSP (1<<18) +#define CURLPROTO_RTMP (1<<19) +#define CURLPROTO_RTMPT (1<<20) +#define CURLPROTO_RTMPE (1<<21) +#define CURLPROTO_RTMPTE (1<<22) +#define CURLPROTO_RTMPS (1<<23) +#define CURLPROTO_RTMPTS (1<<24) +#define CURLPROTO_GOPHER (1<<25) +#define CURLPROTO_SMB (1<<26) +#define CURLPROTO_SMBS (1<<27) +#define CURLPROTO_ALL (~0) /* enable everything */ + /* long may be 32 or 64 bits, but we should never depend on anything else but 32 */ #define CURLOPTTYPE_LONG 0 #define CURLOPTTYPE_OBJECTPOINT 10000 +#define CURLOPTTYPE_STRINGPOINT 10000 #define CURLOPTTYPE_FUNCTIONPOINT 20000 #define CURLOPTTYPE_OFF_T 30000 +/* *STRINGPOINT is an alias for OBJECTPOINT to allow tools to extract the + string options from the header file */ + /* name is uppercase CURLOPT_, type is one of the defined CURLOPTTYPE_ number is unique identifier */ #ifdef CINIT #undef CINIT #endif -/* - * Figure out if we can use the ## operator, which is supported by ISO/ANSI C - * and C++. Some compilers support it without setting __STDC__ or __cplusplus - * so we need to carefully check for them too. We don't use configure-checks - * for these since we want these headers to remain generic and working for all - * platforms. - */ -#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \ - defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) - /* This compiler is believed to have an ISO compatible preprocessor */ -#define CURL_ISOCPP -#else - /* This compiler is believed NOT to have an ISO compatible preprocessor */ -#undef CURL_ISOCPP -#endif #ifdef CURL_ISOCPP -#define CINIT(name,type,number) CURLOPT_ ## name = CURLOPTTYPE_ ## type + number +#define CINIT(na,t,nu) CURLOPT_ ## na = CURLOPTTYPE_ ## t + nu #else /* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */ #define LONG CURLOPTTYPE_LONG #define OBJECTPOINT CURLOPTTYPE_OBJECTPOINT +#define STRINGPOINT CURLOPTTYPE_OBJECTPOINT #define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT #define OFF_T CURLOPTTYPE_OFF_T #define CINIT(name,type,number) CURLOPT_/**/name = type + number @@ -427,30 +880,30 @@ typedef enum { typedef enum { /* This is the FILE * or void * the regular output should be written to. */ - CINIT(FILE, OBJECTPOINT, 1), + CINIT(WRITEDATA, OBJECTPOINT, 1), /* The full URL to get/put */ - CINIT(URL, OBJECTPOINT, 2), + CINIT(URL, STRINGPOINT, 2), /* Port number to connect to, if other than default. */ CINIT(PORT, LONG, 3), /* Name of proxy to use. */ - CINIT(PROXY, OBJECTPOINT, 4), + CINIT(PROXY, STRINGPOINT, 4), - /* "name:password" to use when fetching. */ - CINIT(USERPWD, OBJECTPOINT, 5), + /* "user:password;options" to use when fetching. */ + CINIT(USERPWD, STRINGPOINT, 5), - /* "name:password" to use with proxy. */ - CINIT(PROXYUSERPWD, OBJECTPOINT, 6), + /* "user:password" to use with proxy. */ + CINIT(PROXYUSERPWD, STRINGPOINT, 6), /* Range to get, specified as an ASCII string. */ - CINIT(RANGE, OBJECTPOINT, 7), + CINIT(RANGE, STRINGPOINT, 7), /* not used */ /* Specified file stream to upload from (use as input): */ - CINIT(INFILE, OBJECTPOINT, 9), + CINIT(READDATA, OBJECTPOINT, 9), /* Buffer to receive error messages in, must be at least CURL_ERROR_SIZE * bytes big. If this is not used, error messages go to stderr instead: */ @@ -469,7 +922,7 @@ typedef enum { /* If the CURLOPT_INFILE is used, this can be used to inform libcurl about * how large the file being sent really is. That allows better error - * checking and better verifies that the upload was succcessful. -1 means + * checking and better verifies that the upload was successful. -1 means * unknown size. * * For large file support, there is also a _LARGE version of the key @@ -478,18 +931,18 @@ typedef enum { */ CINIT(INFILESIZE, LONG, 14), - /* POST input fields. */ + /* POST static input fields. */ CINIT(POSTFIELDS, OBJECTPOINT, 15), - /* Set the referer page (needed by some CGIs) */ - CINIT(REFERER, OBJECTPOINT, 16), + /* Set the referrer page (needed by some CGIs) */ + CINIT(REFERER, STRINGPOINT, 16), /* Set the FTP PORT string (interface name, named or numerical IP address) Use i.e '-' to use default address. */ - CINIT(FTPPORT, OBJECTPOINT, 17), + CINIT(FTPPORT, STRINGPOINT, 17), /* Set the User-Agent string (examined by some CGIs) */ - CINIT(USERAGENT, OBJECTPOINT, 18), + CINIT(USERAGENT, STRINGPOINT, 18), /* If the download receives less than "low speed limit" bytes/second * during "low speed time" seconds, the operations is aborted. @@ -498,7 +951,7 @@ typedef enum { */ /* Set the "low speed limit" */ - CINIT(LOW_SPEED_LIMIT, LONG , 19), + CINIT(LOW_SPEED_LIMIT, LONG, 19), /* Set the "low speed time" */ CINIT(LOW_SPEED_TIME, LONG, 20), @@ -512,21 +965,20 @@ typedef enum { CINIT(RESUME_FROM, LONG, 21), /* Set cookie in request: */ - CINIT(COOKIE, OBJECTPOINT, 22), + CINIT(COOKIE, STRINGPOINT, 22), - /* This points to a linked list of headers, struct curl_slist kind */ + /* This points to a linked list of headers, struct curl_slist kind. This + list is also used for RTSP (in spite of its name) */ CINIT(HTTPHEADER, OBJECTPOINT, 23), - /* This points to a linked list of post entries, struct HttpPost */ + /* This points to a linked list of post entries, struct curl_httppost */ CINIT(HTTPPOST, OBJECTPOINT, 24), /* name of the file keeping your private SSL-certificate */ - CINIT(SSLCERT, OBJECTPOINT, 25), + CINIT(SSLCERT, STRINGPOINT, 25), - /* password for the SSL-private key, keep this for compatibility */ - CINIT(SSLCERTPASSWD, OBJECTPOINT, 26), - /* password for the SSL private key */ - CINIT(SSLKEYPASSWD, OBJECTPOINT, 26), + /* password for the SSL or SSH private key */ + CINIT(KEYPASSWD, STRINGPOINT, 26), /* send TYPE parameter? */ CINIT(CRLF, LONG, 27), @@ -536,13 +988,13 @@ typedef enum { /* send FILE * or void * to store headers to, if you use a callback it is simply passed to the callback unmodified */ - CINIT(WRITEHEADER, OBJECTPOINT, 29), + CINIT(HEADERDATA, OBJECTPOINT, 29), /* point to a file to read the initial cookies from, also enables "cookie awareness" */ - CINIT(COOKIEFILE, OBJECTPOINT, 31), + CINIT(COOKIEFILE, STRINGPOINT, 31), - /* What version to specifly try to use. + /* What version to specifically try to use. See CURL_SSLVERSION defines below. */ CINIT(SSLVERSION, LONG, 32), @@ -559,9 +1011,9 @@ typedef enum { HTTP: DELETE, TRACE and others FTP: to use a different list command */ - CINIT(CUSTOMREQUEST, OBJECTPOINT, 36), + CINIT(CUSTOMREQUEST, STRINGPOINT, 36), - /* HTTP request, for odd commands like DELETE, TRACE and others */ + /* FILE handle to use instead of stderr */ CINIT(STDERR, OBJECTPOINT, 37), /* 38 is not used */ @@ -569,20 +1021,18 @@ typedef enum { /* send linked-list of post-transfer QUOTE commands */ CINIT(POSTQUOTE, OBJECTPOINT, 39), - /* Pass a pointer to string of the output using full variable-replacement - as described elsewhere. */ - CINIT(WRITEINFO, OBJECTPOINT, 40), + CINIT(OBSOLETE40, OBJECTPOINT, 40), /* OBSOLETE, do not use! */ CINIT(VERBOSE, LONG, 41), /* talk a lot */ CINIT(HEADER, LONG, 42), /* throw the header out too */ CINIT(NOPROGRESS, LONG, 43), /* shut off the progress meter */ CINIT(NOBODY, LONG, 44), /* use HEAD to get http document */ - CINIT(FAILONERROR, LONG, 45), /* no output on http error codes >= 300 */ + CINIT(FAILONERROR, LONG, 45), /* no output on http error codes >= 400 */ CINIT(UPLOAD, LONG, 46), /* this is an upload */ CINIT(POST, LONG, 47), /* HTTP POST method */ - CINIT(FTPLISTONLY, LONG, 48), /* Use NLST when listing ftp dir */ + CINIT(DIRLISTONLY, LONG, 48), /* bare names when listing directories */ - CINIT(FTPAPPEND, LONG, 50), /* Append instead of overwrite on upload! */ + CINIT(APPEND, LONG, 50), /* Append instead of overwrite on upload! */ /* Specify whether to read the user+password from the .netrc or the URL. * This must be one of the CURL_NETRC_* enums below. */ @@ -595,15 +1045,18 @@ typedef enum { /* 55 = OBSOLETE */ - /* Function that will be called instead of the internal progress display + /* DEPRECATED + * Function that will be called instead of the internal progress display * function. This function should be defined as the curl_progress_callback * prototype defines. */ CINIT(PROGRESSFUNCTION, FUNCTIONPOINT, 56), - /* Data passed to the progress callback */ + /* Data passed to the CURLOPT_PROGRESSFUNCTION and CURLOPT_XFERINFOFUNCTION + callbacks */ CINIT(PROGRESSDATA, OBJECTPOINT, 57), +#define CURLOPT_XFERINFODATA CURLOPT_PROGRESSDATA - /* We want the referer field set automatically when following locations */ + /* We want the referrer field set automatically when following locations */ CINIT(AUTOREFERER, LONG, 58), /* Port of the proxy, can be set in the proxy string as well with: @@ -617,19 +1070,19 @@ typedef enum { CINIT(HTTPPROXYTUNNEL, LONG, 61), /* Set the interface string to use as outgoing network interface */ - CINIT(INTERFACE, OBJECTPOINT, 62), + CINIT(INTERFACE, STRINGPOINT, 62), - /* Set the krb4 security level, this also enables krb4 awareness. This is a - * string, 'clear', 'safe', 'confidential' or 'private'. If the string is - * set but doesn't match one of these, 'private' will be used. */ - CINIT(KRB4LEVEL, OBJECTPOINT, 63), + /* Set the krb4/5 security level, this also enables krb4/5 awareness. This + * is a string, 'clear', 'safe', 'confidential' or 'private'. If the string + * is set but doesn't match one of these, 'private' will be used. */ + CINIT(KRBLEVEL, STRINGPOINT, 63), /* Set if we should verify the peer in ssl handshake, set 1 to verify. */ CINIT(SSL_VERIFYPEER, LONG, 64), /* The CApath or CAfile used to validate the peer certificate this option is used only if SSL_VERIFYPEER is true */ - CINIT(CAINFO, OBJECTPOINT, 65), + CINIT(CAINFO, STRINGPOINT, 65), /* 66 = OBSOLETE */ /* 67 = OBSOLETE */ @@ -647,9 +1100,7 @@ typedef enum { /* Max amount of cached alive connections */ CINIT(MAXCONNECTS, LONG, 71), - /* What policy to use when closing connections when the cache is filled - up */ - CINIT(CLOSEPOLICY, LONG, 72), + CINIT(OBSOLETE72, LONG, 72), /* OBSOLETE, do not use! */ /* 73 = OBSOLETE */ @@ -665,14 +1116,13 @@ typedef enum { /* Set to a file name that contains random data for libcurl to use to seed the random engine when doing SSL connects. */ - CINIT(RANDOM_FILE, OBJECTPOINT, 76), + CINIT(RANDOM_FILE, STRINGPOINT, 76), /* Set to the Entropy Gathering Daemon socket pathname */ - CINIT(EGDSOCKET, OBJECTPOINT, 77), + CINIT(EGDSOCKET, STRINGPOINT, 77), - /* Time-out connect operations after this amount of seconds, if connects - are OK within this time, then fine... This only aborts the connect - phase. [Only works on unix-style/SIGALRM operating systems] */ + /* Time-out connect operations after this amount of seconds, if connects are + OK within this time, then fine... This only aborts the connect phase. */ CINIT(CONNECTTIMEOUT, LONG, 78), /* Function that will be called to store headers (instead of fwrite). The @@ -691,31 +1141,31 @@ typedef enum { /* Specify which file name to write all known cookies in after completed operation. Set file name to "-" (dash) to make it go to stdout. */ - CINIT(COOKIEJAR, OBJECTPOINT, 82), + CINIT(COOKIEJAR, STRINGPOINT, 82), /* Specify which SSL ciphers to use */ - CINIT(SSL_CIPHER_LIST, OBJECTPOINT, 83), + CINIT(SSL_CIPHER_LIST, STRINGPOINT, 83), /* Specify which HTTP version to use! This must be set to one of the CURL_HTTP_VERSION* enums set below. */ CINIT(HTTP_VERSION, LONG, 84), - /* Specificly switch on or off the FTP engine's use of the EPSV command. By + /* Specifically switch on or off the FTP engine's use of the EPSV command. By default, that one will always be attempted before the more traditional PASV command. */ CINIT(FTP_USE_EPSV, LONG, 85), /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") */ - CINIT(SSLCERTTYPE, OBJECTPOINT, 86), + CINIT(SSLCERTTYPE, STRINGPOINT, 86), /* name of the file keeping your private SSL-key */ - CINIT(SSLKEY, OBJECTPOINT, 87), + CINIT(SSLKEY, STRINGPOINT, 87), /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */ - CINIT(SSLKEYTYPE, OBJECTPOINT, 88), + CINIT(SSLKEYTYPE, STRINGPOINT, 88), /* crypto engine for the SSL-sub system */ - CINIT(SSLENGINE, OBJECTPOINT, 89), + CINIT(SSLENGINE, STRINGPOINT, 89), /* set the crypto engine for the SSL-sub system as default the param has no meaning... @@ -723,12 +1173,12 @@ typedef enum { CINIT(SSLENGINE_DEFAULT, LONG, 90), /* Non-zero value means to use the global dns cache */ - CINIT(DNS_USE_GLOBAL_CACHE, LONG, 91), /* To becomeO BSOLETE soon */ + CINIT(DNS_USE_GLOBAL_CACHE, LONG, 91), /* DEPRECATED, do not use! */ /* DNS cache timeout */ CINIT(DNS_CACHE_TIMEOUT, LONG, 92), - /* send linked-list of pre-transfer QUOTE commands (Wesley Laxton)*/ + /* send linked-list of pre-transfer QUOTE commands */ CINIT(PREQUOTE, OBJECTPOINT, 93), /* set the debug function */ @@ -742,7 +1192,7 @@ typedef enum { /* The CApath directory used to validate the peer certificate this option is used only if SSL_VERIFYPEER is true */ - CINIT(CAPATH, OBJECTPOINT, 97), + CINIT(CAPATH, STRINGPOINT, 97), /* Instruct libcurl to use a smaller receive buffer */ CINIT(BUFFERSIZE, LONG, 98), @@ -756,12 +1206,13 @@ typedef enum { CINIT(SHARE, OBJECTPOINT, 100), /* indicates type of proxy. accepted values are CURLPROXY_HTTP (default), - CURLPROXY_SOCKS4 and CURLPROXY_SOCKS5. */ + CURLPROXY_SOCKS4, CURLPROXY_SOCKS4A and CURLPROXY_SOCKS5. */ CINIT(PROXYTYPE, LONG, 101), /* Set the Accept-Encoding string. Use this to tell a server you would like - the response to be compressed. */ - CINIT(ENCODING, OBJECTPOINT, 102), + the response to be compressed. Before 7.21.6, this was known as + CURLOPT_ENCODING */ + CINIT(ACCEPT_ENCODING, STRINGPOINT, 102), /* Set pointer to private data */ CINIT(PRIVATE, OBJECTPOINT, 103), @@ -770,12 +1221,12 @@ typedef enum { CINIT(HTTP200ALIASES, OBJECTPOINT, 104), /* Continue to send authentication (user+password) when following locations, - even when hostname changed. This can potentionally send off the name + even when hostname changed. This can potentially send off the name and password to whatever host the server decides. */ CINIT(UNRESTRICTED_AUTH, LONG, 105), - /* Specificly switch on or off the FTP engine's use of the EPRT command ( it - also disables the LPRT attempt). By default, those ones will always be + /* Specifically switch on or off the FTP engine's use of the EPRT command ( + it also disables the LPRT attempt). By default, those ones will always be attempted before the good old traditional PORT command. */ CINIT(FTP_USE_EPRT, LONG, 106), @@ -793,7 +1244,10 @@ typedef enum { argument */ CINIT(SSL_CTX_DATA, OBJECTPOINT, 109), - /* FTP Option that causes missing dirs to be created on the remote server */ + /* FTP Option that causes missing dirs to be created on the remote server. + In 7.19.4 we introduced the convenience enums for this option using the + CURLFTP_CREATE_DIR prefix. + */ CINIT(FTP_CREATE_MISSING_DIRS, LONG, 110), /* Set this to a bitmask value to enable the particular authentications @@ -805,7 +1259,8 @@ typedef enum { getting a response. This is different from transfer timeout time and essentially places a demand on the FTP server to acknowledge commands in a timely manner. */ - CINIT(FTP_RESPONSE_TIMEOUT, LONG , 112), + CINIT(FTP_RESPONSE_TIMEOUT, LONG, 112), +#define CURLOPT_SERVER_RESPONSE_TIMEOUT CURLOPT_FTP_RESPONSE_TIMEOUT /* Set this option to one of the CURL_IPRESOLVE_* defines (see below) to tell libcurl to resolve names to those IP versions only. This only has @@ -838,14 +1293,14 @@ typedef enum { to parse (using the CURLOPT_NETRC option). If not set, libcurl will do a poor attempt to find the user's home directory and check for a .netrc file in there. */ - CINIT(NETRC_FILE, OBJECTPOINT, 118), + CINIT(NETRC_FILE, STRINGPOINT, 118), /* Enable SSL/TLS for FTP, pick one of: - CURLFTPSSL_TRY - try using SSL, proceed anyway otherwise - CURLFTPSSL_CONTROL - SSL for the control connection or fail - CURLFTPSSL_ALL - SSL for all communication or fail + CURLUSESSL_TRY - try using SSL, proceed anyway otherwise + CURLUSESSL_CONTROL - SSL for the control connection or fail + CURLUSESSL_ALL - SSL for all communication or fail */ - CINIT(FTP_SSL, LONG, 119), + CINIT(USE_SSL, LONG, 119), /* The _LARGE version of the standard POSTFIELDSIZE option */ CINIT(POSTFIELDSIZE_LARGE, OFF_T, 120), @@ -854,24 +1309,14 @@ typedef enum { CINIT(TCP_NODELAY, LONG, 121), /* 122 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ - - /* When doing 3rd party transfer, set the source user and password with - this */ - CINIT(SOURCE_USERPWD, OBJECTPOINT, 123), - + /* 123 OBSOLETE. Gone in 7.16.0 */ /* 124 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ /* 125 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ /* 126 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ + /* 127 OBSOLETE. Gone in 7.16.0 */ + /* 128 OBSOLETE. Gone in 7.16.0 */ - /* When doing 3rd party transfer, set the source pre-quote linked list - of commands with this */ - CINIT(SOURCE_PREQUOTE, OBJECTPOINT, 127), - - /* When doing 3rd party transfer, set the source post-quote linked list - of commands with this */ - CINIT(SOURCE_POSTQUOTE, OBJECTPOINT, 128), - - /* When FTP over SSL/TLS is selected (with CURLOPT_FTP_SSL), this option + /* When FTP over SSL/TLS is selected (with CURLOPT_USE_SSL), this option can be used to change libcurl's default action which is to first try "AUTH SSL" and then "AUTH TLS" in this order, and proceed when a OK response has been received. @@ -886,19 +1331,15 @@ typedef enum { CINIT(IOCTLFUNCTION, FUNCTIONPOINT, 130), CINIT(IOCTLDATA, OBJECTPOINT, 131), - /* To make a 3rd party transfer, set the source URL with this */ - CINIT(SOURCE_URL, OBJECTPOINT, 132), - - /* When doing 3rd party transfer, set the source quote linked list of - commands with this */ - CINIT(SOURCE_QUOTE, OBJECTPOINT, 133), + /* 132 OBSOLETE. Gone in 7.16.0 */ + /* 133 OBSOLETE. Gone in 7.16.0 */ /* zero terminated string for pass on to the FTP server when asked for "account" info */ - CINIT(FTP_ACCOUNT, OBJECTPOINT, 134), + CINIT(FTP_ACCOUNT, STRINGPOINT, 134), - /* feed cookies into cookie engine */ - CINIT(COOKIELIST, OBJECTPOINT, 135), + /* feed cookie into cookie engine */ + CINIT(COOKIELIST, STRINGPOINT, 135), /* ignore Content-Length */ CINIT(IGNORE_CONTENT_LENGTH, LONG, 136), @@ -909,38 +1350,380 @@ typedef enum { control connection. */ CINIT(FTP_SKIP_PASV_IP, LONG, 137), - /* Select "file method" to use when doing FTP */ + /* Select "file method" to use when doing FTP, see the curl_ftpmethod + above. */ CINIT(FTP_FILEMETHOD, LONG, 138), - CURLOPT_LASTENTRY /* the last unused */ -} CURLoption; + /* Local port number to bind the socket to */ + CINIT(LOCALPORT, LONG, 139), - /* Below here follows defines for the CURLOPT_IPRESOLVE option. If a host - name resolves addresses using more than one IP protocol version, this - option might be handy to force libcurl to use a specific IP version. */ -#define CURL_IPRESOLVE_WHATEVER 0 /* default, resolves addresses to all IP - versions that your system allows */ -#define CURL_IPRESOLVE_V4 1 /* resolve to ipv4 addresses */ -#define CURL_IPRESOLVE_V6 2 /* resolve to ipv6 addresses */ + /* Number of ports to try, including the first one set with LOCALPORT. + Thus, setting it to 1 will make no additional attempts but the first. + */ + CINIT(LOCALPORTRANGE, LONG, 140), - /* three convenient "aliases" that follow the name scheme better */ -#define CURLOPT_WRITEDATA CURLOPT_FILE -#define CURLOPT_READDATA CURLOPT_INFILE -#define CURLOPT_HEADERDATA CURLOPT_WRITEHEADER + /* no transfer, set up connection and let application use the socket by + extracting it with CURLINFO_LASTSOCKET */ + CINIT(CONNECT_ONLY, LONG, 141), + + /* Function that will be called to convert from the + network encoding (instead of using the iconv calls in libcurl) */ + CINIT(CONV_FROM_NETWORK_FUNCTION, FUNCTIONPOINT, 142), + + /* Function that will be called to convert to the + network encoding (instead of using the iconv calls in libcurl) */ + CINIT(CONV_TO_NETWORK_FUNCTION, FUNCTIONPOINT, 143), + + /* Function that will be called to convert from UTF8 + (instead of using the iconv calls in libcurl) + Note that this is used only for SSL certificate processing */ + CINIT(CONV_FROM_UTF8_FUNCTION, FUNCTIONPOINT, 144), + + /* if the connection proceeds too quickly then need to slow it down */ + /* limit-rate: maximum number of bytes per second to send or receive */ + CINIT(MAX_SEND_SPEED_LARGE, OFF_T, 145), + CINIT(MAX_RECV_SPEED_LARGE, OFF_T, 146), + + /* Pointer to command string to send if USER/PASS fails. */ + CINIT(FTP_ALTERNATIVE_TO_USER, STRINGPOINT, 147), + + /* callback function for setting socket options */ + CINIT(SOCKOPTFUNCTION, FUNCTIONPOINT, 148), + CINIT(SOCKOPTDATA, OBJECTPOINT, 149), + + /* set to 0 to disable session ID re-use for this transfer, default is + enabled (== 1) */ + CINIT(SSL_SESSIONID_CACHE, LONG, 150), + + /* allowed SSH authentication methods */ + CINIT(SSH_AUTH_TYPES, LONG, 151), + + /* Used by scp/sftp to do public/private key authentication */ + CINIT(SSH_PUBLIC_KEYFILE, STRINGPOINT, 152), + CINIT(SSH_PRIVATE_KEYFILE, STRINGPOINT, 153), + + /* Send CCC (Clear Command Channel) after authentication */ + CINIT(FTP_SSL_CCC, LONG, 154), + + /* Same as TIMEOUT and CONNECTTIMEOUT, but with ms resolution */ + CINIT(TIMEOUT_MS, LONG, 155), + CINIT(CONNECTTIMEOUT_MS, LONG, 156), + + /* set to zero to disable the libcurl's decoding and thus pass the raw body + data to the application even when it is encoded/compressed */ + CINIT(HTTP_TRANSFER_DECODING, LONG, 157), + CINIT(HTTP_CONTENT_DECODING, LONG, 158), + + /* Permission used when creating new files and directories on the remote + server for protocols that support it, SFTP/SCP/FILE */ + CINIT(NEW_FILE_PERMS, LONG, 159), + CINIT(NEW_DIRECTORY_PERMS, LONG, 160), + + /* Set the behaviour of POST when redirecting. Values must be set to one + of CURL_REDIR* defines below. This used to be called CURLOPT_POST301 */ + CINIT(POSTREDIR, LONG, 161), + + /* used by scp/sftp to verify the host's public key */ + CINIT(SSH_HOST_PUBLIC_KEY_MD5, STRINGPOINT, 162), + + /* Callback function for opening socket (instead of socket(2)). Optionally, + callback is able change the address or refuse to connect returning + CURL_SOCKET_BAD. The callback should have type + curl_opensocket_callback */ + CINIT(OPENSOCKETFUNCTION, FUNCTIONPOINT, 163), + CINIT(OPENSOCKETDATA, OBJECTPOINT, 164), + + /* POST volatile input fields. */ + CINIT(COPYPOSTFIELDS, OBJECTPOINT, 165), + + /* set transfer mode (;type=) when doing FTP via an HTTP proxy */ + CINIT(PROXY_TRANSFER_MODE, LONG, 166), + + /* Callback function for seeking in the input stream */ + CINIT(SEEKFUNCTION, FUNCTIONPOINT, 167), + CINIT(SEEKDATA, OBJECTPOINT, 168), + + /* CRL file */ + CINIT(CRLFILE, STRINGPOINT, 169), + + /* Issuer certificate */ + CINIT(ISSUERCERT, STRINGPOINT, 170), + + /* (IPv6) Address scope */ + CINIT(ADDRESS_SCOPE, LONG, 171), + + /* Collect certificate chain info and allow it to get retrievable with + CURLINFO_CERTINFO after the transfer is complete. */ + CINIT(CERTINFO, LONG, 172), + + /* "name" and "pwd" to use when fetching. */ + CINIT(USERNAME, STRINGPOINT, 173), + CINIT(PASSWORD, STRINGPOINT, 174), + + /* "name" and "pwd" to use with Proxy when fetching. */ + CINIT(PROXYUSERNAME, STRINGPOINT, 175), + CINIT(PROXYPASSWORD, STRINGPOINT, 176), + + /* Comma separated list of hostnames defining no-proxy zones. These should + match both hostnames directly, and hostnames within a domain. For + example, local.com will match local.com and www.local.com, but NOT + notlocal.com or www.notlocal.com. For compatibility with other + implementations of this, .local.com will be considered to be the same as + local.com. A single * is the only valid wildcard, and effectively + disables the use of proxy. */ + CINIT(NOPROXY, STRINGPOINT, 177), + + /* block size for TFTP transfers */ + CINIT(TFTP_BLKSIZE, LONG, 178), + + /* Socks Service */ + CINIT(SOCKS5_GSSAPI_SERVICE, STRINGPOINT, 179), /* DEPRECATED, do not use! */ + + /* Socks Service */ + CINIT(SOCKS5_GSSAPI_NEC, LONG, 180), + + /* set the bitmask for the protocols that are allowed to be used for the + transfer, which thus helps the app which takes URLs from users or other + external inputs and want to restrict what protocol(s) to deal + with. Defaults to CURLPROTO_ALL. */ + CINIT(PROTOCOLS, LONG, 181), + + /* set the bitmask for the protocols that libcurl is allowed to follow to, + as a subset of the CURLOPT_PROTOCOLS ones. That means the protocol needs + to be set in both bitmasks to be allowed to get redirected to. Defaults + to all protocols except FILE and SCP. */ + CINIT(REDIR_PROTOCOLS, LONG, 182), + + /* set the SSH knownhost file name to use */ + CINIT(SSH_KNOWNHOSTS, STRINGPOINT, 183), + + /* set the SSH host key callback, must point to a curl_sshkeycallback + function */ + CINIT(SSH_KEYFUNCTION, FUNCTIONPOINT, 184), + + /* set the SSH host key callback custom pointer */ + CINIT(SSH_KEYDATA, OBJECTPOINT, 185), + + /* set the SMTP mail originator */ + CINIT(MAIL_FROM, STRINGPOINT, 186), + + /* set the list of SMTP mail receiver(s) */ + CINIT(MAIL_RCPT, OBJECTPOINT, 187), + + /* FTP: send PRET before PASV */ + CINIT(FTP_USE_PRET, LONG, 188), + + /* RTSP request method (OPTIONS, SETUP, PLAY, etc...) */ + CINIT(RTSP_REQUEST, LONG, 189), + + /* The RTSP session identifier */ + CINIT(RTSP_SESSION_ID, STRINGPOINT, 190), + + /* The RTSP stream URI */ + CINIT(RTSP_STREAM_URI, STRINGPOINT, 191), + + /* The Transport: header to use in RTSP requests */ + CINIT(RTSP_TRANSPORT, STRINGPOINT, 192), + + /* Manually initialize the client RTSP CSeq for this handle */ + CINIT(RTSP_CLIENT_CSEQ, LONG, 193), + + /* Manually initialize the server RTSP CSeq for this handle */ + CINIT(RTSP_SERVER_CSEQ, LONG, 194), + + /* The stream to pass to INTERLEAVEFUNCTION. */ + CINIT(INTERLEAVEDATA, OBJECTPOINT, 195), + + /* Let the application define a custom write method for RTP data */ + CINIT(INTERLEAVEFUNCTION, FUNCTIONPOINT, 196), + + /* Turn on wildcard matching */ + CINIT(WILDCARDMATCH, LONG, 197), + + /* Directory matching callback called before downloading of an + individual file (chunk) started */ + CINIT(CHUNK_BGN_FUNCTION, FUNCTIONPOINT, 198), + + /* Directory matching callback called after the file (chunk) + was downloaded, or skipped */ + CINIT(CHUNK_END_FUNCTION, FUNCTIONPOINT, 199), + + /* Change match (fnmatch-like) callback for wildcard matching */ + CINIT(FNMATCH_FUNCTION, FUNCTIONPOINT, 200), + + /* Let the application define custom chunk data pointer */ + CINIT(CHUNK_DATA, OBJECTPOINT, 201), + + /* FNMATCH_FUNCTION user pointer */ + CINIT(FNMATCH_DATA, OBJECTPOINT, 202), + + /* send linked-list of name:port:address sets */ + CINIT(RESOLVE, OBJECTPOINT, 203), + + /* Set a username for authenticated TLS */ + CINIT(TLSAUTH_USERNAME, STRINGPOINT, 204), + + /* Set a password for authenticated TLS */ + CINIT(TLSAUTH_PASSWORD, STRINGPOINT, 205), + + /* Set authentication type for authenticated TLS */ + CINIT(TLSAUTH_TYPE, STRINGPOINT, 206), + + /* Set to 1 to enable the "TE:" header in HTTP requests to ask for + compressed transfer-encoded responses. Set to 0 to disable the use of TE: + in outgoing requests. The current default is 0, but it might change in a + future libcurl release. + + libcurl will ask for the compressed methods it knows of, and if that + isn't any, it will not ask for transfer-encoding at all even if this + option is set to 1. + + */ + CINIT(TRANSFER_ENCODING, LONG, 207), + + /* Callback function for closing socket (instead of close(2)). The callback + should have type curl_closesocket_callback */ + CINIT(CLOSESOCKETFUNCTION, FUNCTIONPOINT, 208), + CINIT(CLOSESOCKETDATA, OBJECTPOINT, 209), + + /* allow GSSAPI credential delegation */ + CINIT(GSSAPI_DELEGATION, LONG, 210), + + /* Set the name servers to use for DNS resolution */ + CINIT(DNS_SERVERS, STRINGPOINT, 211), + + /* Time-out accept operations (currently for FTP only) after this amount + of miliseconds. */ + CINIT(ACCEPTTIMEOUT_MS, LONG, 212), + + /* Set TCP keepalive */ + CINIT(TCP_KEEPALIVE, LONG, 213), + + /* non-universal keepalive knobs (Linux, AIX, HP-UX, more) */ + CINIT(TCP_KEEPIDLE, LONG, 214), + CINIT(TCP_KEEPINTVL, LONG, 215), + + /* Enable/disable specific SSL features with a bitmask, see CURLSSLOPT_* */ + CINIT(SSL_OPTIONS, LONG, 216), + + /* Set the SMTP auth originator */ + CINIT(MAIL_AUTH, STRINGPOINT, 217), + + /* Enable/disable SASL initial response */ + CINIT(SASL_IR, LONG, 218), + + /* Function that will be called instead of the internal progress display + * function. This function should be defined as the curl_xferinfo_callback + * prototype defines. (Deprecates CURLOPT_PROGRESSFUNCTION) */ + CINIT(XFERINFOFUNCTION, FUNCTIONPOINT, 219), + + /* The XOAUTH2 bearer token */ + CINIT(XOAUTH2_BEARER, STRINGPOINT, 220), + + /* Set the interface string to use as outgoing network + * interface for DNS requests. + * Only supported by the c-ares DNS backend */ + CINIT(DNS_INTERFACE, STRINGPOINT, 221), + + /* Set the local IPv4 address to use for outgoing DNS requests. + * Only supported by the c-ares DNS backend */ + CINIT(DNS_LOCAL_IP4, STRINGPOINT, 222), + + /* Set the local IPv4 address to use for outgoing DNS requests. + * Only supported by the c-ares DNS backend */ + CINIT(DNS_LOCAL_IP6, STRINGPOINT, 223), + + /* Set authentication options directly */ + CINIT(LOGIN_OPTIONS, STRINGPOINT, 224), + + /* Enable/disable TLS NPN extension (http2 over ssl might fail without) */ + CINIT(SSL_ENABLE_NPN, LONG, 225), + + /* Enable/disable TLS ALPN extension (http2 over ssl might fail without) */ + CINIT(SSL_ENABLE_ALPN, LONG, 226), + + /* Time to wait for a response to a HTTP request containing an + * Expect: 100-continue header before sending the data anyway. */ + CINIT(EXPECT_100_TIMEOUT_MS, LONG, 227), + + /* This points to a linked list of headers used for proxy requests only, + struct curl_slist kind */ + CINIT(PROXYHEADER, OBJECTPOINT, 228), + + /* Pass in a bitmask of "header options" */ + CINIT(HEADEROPT, LONG, 229), + + /* The public key in DER form used to validate the peer public key + this option is used only if SSL_VERIFYPEER is true */ + CINIT(PINNEDPUBLICKEY, STRINGPOINT, 230), + + /* Path to Unix domain socket */ + CINIT(UNIX_SOCKET_PATH, STRINGPOINT, 231), + + /* Set if we should verify the certificate status. */ + CINIT(SSL_VERIFYSTATUS, LONG, 232), + + /* Set if we should enable TLS false start. */ + CINIT(SSL_FALSESTART, LONG, 233), + + /* Do not squash dot-dot sequences */ + CINIT(PATH_AS_IS, LONG, 234), + + /* Proxy Service Name */ + CINIT(PROXY_SERVICE_NAME, STRINGPOINT, 235), + + /* Service Name */ + CINIT(SERVICE_NAME, STRINGPOINT, 236), + + /* Wait/don't wait for pipe/mutex to clarify */ + CINIT(PIPEWAIT, LONG, 237), + + /* Set the protocol used when curl is given a URL without a protocol */ + CINIT(DEFAULT_PROTOCOL, STRINGPOINT, 238), + + /* Set stream weight, 1 - 256 (default is 16) */ + CINIT(STREAM_WEIGHT, LONG, 239), + + /* Set stream dependency on another CURL handle */ + CINIT(STREAM_DEPENDS, OBJECTPOINT, 240), + + /* Set E-xclusive stream dependency on another CURL handle */ + CINIT(STREAM_DEPENDS_E, OBJECTPOINT, 241), + + /* Do not send any tftp option requests to the server */ + CINIT(TFTP_NO_OPTIONS, LONG, 242), + + /* Linked-list of host:port:connect-to-host:connect-to-port, + overrides the URL's host:port (only for the network layer) */ + CINIT(CONNECT_TO, OBJECTPOINT, 243), + + /* Set TCP Fast Open */ + CINIT(TCP_FASTOPEN, LONG, 244), + + CURLOPT_LASTENTRY /* the last unused */ +} CURLoption; #ifndef CURL_NO_OLDIES /* define this to test if your app builds with all the obsolete stuff removed! */ -#define CURLOPT_HTTPREQUEST -1 -#define CURLOPT_FTPASCII CURLOPT_TRANSFERTEXT -#define CURLOPT_MUTE -2 -#define CURLOPT_PASSWDFUNCTION -3 -#define CURLOPT_PASSWDDATA -4 -#define CURLOPT_CLOSEFUNCTION -5 - -#define CURLOPT_SOURCE_HOST -6 -#define CURLOPT_SOURCE_PATH -7 -#define CURLOPT_SOURCE_PORT -8 -#define CURLOPT_PASV_HOST -9 + +/* Backwards compatibility with older names */ +/* These are scheduled to disappear by 2011 */ + +/* This was added in version 7.19.1 */ +#define CURLOPT_POST301 CURLOPT_POSTREDIR + +/* These are scheduled to disappear by 2009 */ + +/* The following were added in 7.17.0 */ +#define CURLOPT_SSLKEYPASSWD CURLOPT_KEYPASSWD +#define CURLOPT_FTPAPPEND CURLOPT_APPEND +#define CURLOPT_FTPLISTONLY CURLOPT_DIRLISTONLY +#define CURLOPT_FTP_SSL CURLOPT_USE_SSL + +/* The following were added earlier */ + +#define CURLOPT_SSLCERTPASSWD CURLOPT_KEYPASSWD +#define CURLOPT_KRB4LEVEL CURLOPT_KRBLEVEL #else /* This is set if CURL_NO_OLDIES is defined at compile-time */ @@ -948,6 +1731,17 @@ typedef enum { #endif + /* Below here follows defines for the CURLOPT_IPRESOLVE option. If a host + name resolves addresses using more than one IP protocol version, this + option might be handy to force libcurl to use a specific IP version. */ +#define CURL_IPRESOLVE_WHATEVER 0 /* default, resolves addresses to all IP + versions that your system allows */ +#define CURL_IPRESOLVE_V4 1 /* resolve to IPv4 addresses */ +#define CURL_IPRESOLVE_V6 2 /* resolve to IPv6 addresses */ + + /* three convenient "aliases" that follow the name scheme better */ +#define CURLOPT_RTSPHEADER CURLOPT_HTTPHEADER + /* These enums are for use with the CURLOPT_HTTP_VERSION option. */ enum { CURL_HTTP_VERSION_NONE, /* setting this means we don't care, and that we'd @@ -955,10 +1749,38 @@ enum { for us! */ CURL_HTTP_VERSION_1_0, /* please use HTTP 1.0 in the request */ CURL_HTTP_VERSION_1_1, /* please use HTTP 1.1 in the request */ + CURL_HTTP_VERSION_2_0, /* please use HTTP 2 in the request */ + CURL_HTTP_VERSION_2TLS, /* use version 2 for HTTPS, version 1.1 for HTTP */ + CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE, /* please use HTTP 2 without HTTP/1.1 + Upgrade */ CURL_HTTP_VERSION_LAST /* *ILLEGAL* http version */ }; +/* Convenience definition simple because the name of the version is HTTP/2 and + not 2.0. The 2_0 version of the enum name was set while the version was + still planned to be 2.0 and we stick to it for compatibility. */ +#define CURL_HTTP_VERSION_2 CURL_HTTP_VERSION_2_0 + +/* + * Public API enums for RTSP requests + */ +enum { + CURL_RTSPREQ_NONE, /* first in list */ + CURL_RTSPREQ_OPTIONS, + CURL_RTSPREQ_DESCRIBE, + CURL_RTSPREQ_ANNOUNCE, + CURL_RTSPREQ_SETUP, + CURL_RTSPREQ_PLAY, + CURL_RTSPREQ_PAUSE, + CURL_RTSPREQ_TEARDOWN, + CURL_RTSPREQ_GET_PARAMETER, + CURL_RTSPREQ_SET_PARAMETER, + CURL_RTSPREQ_RECORD, + CURL_RTSPREQ_RECEIVE, + CURL_RTSPREQ_LAST /* last in list */ +}; + /* These enums are for use with the CURLOPT_NETRC option. */ enum CURL_NETRC_OPTION { CURL_NETRC_IGNORED, /* The .netrc will never be read. @@ -973,13 +1795,33 @@ enum CURL_NETRC_OPTION { enum { CURL_SSLVERSION_DEFAULT, - CURL_SSLVERSION_TLSv1, + CURL_SSLVERSION_TLSv1, /* TLS 1.x */ CURL_SSLVERSION_SSLv2, CURL_SSLVERSION_SSLv3, + CURL_SSLVERSION_TLSv1_0, + CURL_SSLVERSION_TLSv1_1, + CURL_SSLVERSION_TLSv1_2, CURL_SSLVERSION_LAST /* never use, keep last */ }; +enum CURL_TLSAUTH { + CURL_TLSAUTH_NONE, + CURL_TLSAUTH_SRP, + CURL_TLSAUTH_LAST /* never use, keep last */ +}; + +/* symbols to use with CURLOPT_POSTREDIR. + CURL_REDIR_POST_301, CURL_REDIR_POST_302 and CURL_REDIR_POST_303 + can be bitwise ORed so that CURL_REDIR_POST_301 | CURL_REDIR_POST_302 + | CURL_REDIR_POST_303 == CURL_REDIR_POST_ALL */ + +#define CURL_REDIR_GET_ALL 0 +#define CURL_REDIR_POST_301 1 +#define CURL_REDIR_POST_302 2 +#define CURL_REDIR_POST_303 4 +#define CURL_REDIR_POST_ALL \ + (CURL_REDIR_POST_301|CURL_REDIR_POST_302|CURL_REDIR_POST_303) typedef enum { CURL_TIMECOND_NONE, @@ -991,10 +1833,6 @@ typedef enum { CURL_TIMECOND_LAST } curl_TimeCond; -#ifdef __BEOS__ -#include -#endif - /* curl_strequal() and curl_strnequal() are subject for removal in a future libcurl, see lib/README.curlx for details */ @@ -1038,7 +1876,10 @@ typedef enum { CFINIT(END), CFINIT(OBSOLETE2), - CURLFORM_LASTENTRY /* the last unusued */ + CFINIT(STREAM), + CFINIT(CONTENTLEN), /* added in 7.46.0, provide a curl_off_t length */ + + CURLFORM_LASTENTRY /* the last unused */ } CURLformoption; #undef CFINIT /* done */ @@ -1060,7 +1901,7 @@ struct curl_forms { * CURL_FORMADD_MEMORY if the allocation of a FormInfo struct failed * CURL_FORMADD_UNKNOWN_OPTION if an unknown option was used * CURL_FORMADD_INCOMPLETE if the some FormInfo is not complete (or error) - * CURL_FORMADD_MEMORY if a HttpPost struct cannot be allocated + * CURL_FORMADD_MEMORY if a curl_httppost struct cannot be allocated * CURL_FORMADD_MEMORY if some allocation for string copying failed. * CURL_FORMADD_ILLEGAL_ARRAY if an illegal option is used in an array * @@ -1084,7 +1925,7 @@ typedef enum { * * DESCRIPTION * - * Pretty advanved function for building multi-part formposts. Each invoke + * Pretty advanced function for building multi-part formposts. Each invoke * adds one part that together construct a full post. Then use * CURLOPT_HTTPPOST to send it off to libcurl. */ @@ -1092,6 +1933,29 @@ CURL_EXTERN CURLFORMcode curl_formadd(struct curl_httppost **httppost, struct curl_httppost **last_post, ...); +/* + * callback function for curl_formget() + * The void *arg pointer will be the one passed as second argument to + * curl_formget(). + * The character buffer passed to it must not be freed. + * Should return the buffer length passed to it as the argument "len" on + * success. + */ +typedef size_t (*curl_formget_callback)(void *arg, const char *buf, + size_t len); + +/* + * NAME curl_formget() + * + * DESCRIPTION + * + * Serialize a curl_httppost struct built with curl_formadd(). + * Accepts a void pointer as second argument which will be passed to + * the curl_formget_callback function. + * Returns 0 on success. + */ +CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg, + curl_formget_callback append); /* * NAME curl_formfree() * @@ -1121,7 +1985,7 @@ CURL_EXTERN char *curl_getenv(const char *variable); CURL_EXTERN char *curl_version(void); /* - * NAME curl_escape() + * NAME curl_easy_escape() * * DESCRIPTION * @@ -1129,18 +1993,34 @@ CURL_EXTERN char *curl_version(void); * %XX versions). This function returns a new allocated string or NULL if an * error occurred. */ -CURL_EXTERN char *curl_escape(const char *string, int length); +CURL_EXTERN char *curl_easy_escape(CURL *handle, + const char *string, + int length); + +/* the previous version: */ +CURL_EXTERN char *curl_escape(const char *string, + int length); + /* - * NAME curl_unescape() + * NAME curl_easy_unescape() * * DESCRIPTION * * Unescapes URL encoding in strings (converts all %XX codes to their 8bit * versions). This function returns a new allocated string or NULL if an error * occurred. + * Conversion Note: On non-ASCII platforms the ASCII %XX codes are + * converted into the host encoding. */ -CURL_EXTERN char *curl_unescape(const char *string, int length); +CURL_EXTERN char *curl_easy_unescape(CURL *handle, + const char *string, + int length, + int *outlength); + +/* the previous version */ +CURL_EXTERN char *curl_unescape(const char *string, + int length); /* * NAME curl_free() @@ -1158,7 +2038,9 @@ CURL_EXTERN void curl_free(void *p); * DESCRIPTION * * curl_global_init() should be invoked exactly once for each application that - * uses libcurl + * uses libcurl and before any call of other libcurl functions. + * + * This function is not thread-safe! */ CURL_EXTERN CURLcode curl_global_init(long flags); @@ -1229,10 +2111,49 @@ CURL_EXTERN void curl_slist_free_all(struct curl_slist *); */ CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused); +/* info about the certificate chain, only for OpenSSL builds. Asked + for with CURLOPT_CERTINFO / CURLINFO_CERTINFO */ +struct curl_certinfo { + int num_of_certs; /* number of certificates with information */ + struct curl_slist **certinfo; /* for each index in this array, there's a + linked list with textual information in the + format "name: value" */ +}; + +/* enum for the different supported SSL backends */ +typedef enum { + CURLSSLBACKEND_NONE = 0, + CURLSSLBACKEND_OPENSSL = 1, + CURLSSLBACKEND_GNUTLS = 2, + CURLSSLBACKEND_NSS = 3, + CURLSSLBACKEND_OBSOLETE4 = 4, /* Was QSOSSL. */ + CURLSSLBACKEND_GSKIT = 5, + CURLSSLBACKEND_POLARSSL = 6, + CURLSSLBACKEND_CYASSL = 7, + CURLSSLBACKEND_SCHANNEL = 8, + CURLSSLBACKEND_DARWINSSL = 9, + CURLSSLBACKEND_AXTLS = 10, + CURLSSLBACKEND_MBEDTLS = 11 +} curl_sslbackend; + +/* aliases for library clones and renames */ +#define CURLSSLBACKEND_LIBRESSL 1 +#define CURLSSLBACKEND_BORINGSSL 1 +#define CURLSSLBACKEND_WOLFSSL 6 + +/* Information about the SSL library used and the respective internal SSL + handle, which can be used to obtain further information regarding the + connection. Asked for with CURLINFO_TLS_SSL_PTR or CURLINFO_TLS_SESSION. */ +struct curl_tlssessioninfo { + curl_sslbackend backend; + void *internals; +}; + #define CURLINFO_STRING 0x100000 #define CURLINFO_LONG 0x200000 #define CURLINFO_DOUBLE 0x300000 #define CURLINFO_SLIST 0x400000 +#define CURLINFO_SOCKET 0x500000 #define CURLINFO_MASK 0x0fffff #define CURLINFO_TYPEMASK 0xf00000 @@ -1266,9 +2187,27 @@ typedef enum { CURLINFO_NUM_CONNECTS = CURLINFO_LONG + 26, CURLINFO_SSL_ENGINES = CURLINFO_SLIST + 27, CURLINFO_COOKIELIST = CURLINFO_SLIST + 28, + CURLINFO_LASTSOCKET = CURLINFO_LONG + 29, + CURLINFO_FTP_ENTRY_PATH = CURLINFO_STRING + 30, + CURLINFO_REDIRECT_URL = CURLINFO_STRING + 31, + CURLINFO_PRIMARY_IP = CURLINFO_STRING + 32, + CURLINFO_APPCONNECT_TIME = CURLINFO_DOUBLE + 33, + CURLINFO_CERTINFO = CURLINFO_SLIST + 34, + CURLINFO_CONDITION_UNMET = CURLINFO_LONG + 35, + CURLINFO_RTSP_SESSION_ID = CURLINFO_STRING + 36, + CURLINFO_RTSP_CLIENT_CSEQ = CURLINFO_LONG + 37, + CURLINFO_RTSP_SERVER_CSEQ = CURLINFO_LONG + 38, + CURLINFO_RTSP_CSEQ_RECV = CURLINFO_LONG + 39, + CURLINFO_PRIMARY_PORT = CURLINFO_LONG + 40, + CURLINFO_LOCAL_IP = CURLINFO_STRING + 41, + CURLINFO_LOCAL_PORT = CURLINFO_LONG + 42, + CURLINFO_TLS_SESSION = CURLINFO_SLIST + 43, + CURLINFO_ACTIVESOCKET = CURLINFO_SOCKET + 44, + CURLINFO_TLS_SSL_PTR = CURLINFO_SLIST + 45, + CURLINFO_HTTP_VERSION = CURLINFO_LONG + 46, /* Fill in new entries below here! */ - CURLINFO_LASTONE = 28 + CURLINFO_LASTONE = 46 } CURLINFO; /* CURLINFO_RESPONSE_CODE is the new name for the option previously known as @@ -1292,6 +2231,7 @@ typedef enum { #define CURL_GLOBAL_ALL (CURL_GLOBAL_SSL|CURL_GLOBAL_WIN32) #define CURL_GLOBAL_NOTHING 0 #define CURL_GLOBAL_DEFAULT CURL_GLOBAL_ALL +#define CURL_GLOBAL_ACK_EINTR (1<<2) /***************************************************************************** @@ -1301,7 +2241,7 @@ typedef enum { /* Different data locks for a single share */ typedef enum { CURL_LOCK_DATA_NONE = 0, - /* CURL_LOCK_DATA_SHARE is used internaly to say that + /* CURL_LOCK_DATA_SHARE is used internally to say that * the locking is just made to change the internal state of the share * itself. */ @@ -1329,21 +2269,21 @@ typedef void (*curl_unlock_function)(CURL *handle, curl_lock_data data, void *userptr); -typedef void CURLSH; typedef enum { CURLSHE_OK, /* all is fine */ CURLSHE_BAD_OPTION, /* 1 */ CURLSHE_IN_USE, /* 2 */ CURLSHE_INVALID, /* 3 */ - CURLSHE_NOMEM, /* out of memory */ - CURLSHE_LAST /* never use */ + CURLSHE_NOMEM, /* 4 out of memory */ + CURLSHE_NOT_BUILT_IN, /* 5 feature not present in lib */ + CURLSHE_LAST /* never use */ } CURLSHcode; typedef enum { CURLSHOPT_NONE, /* don't use */ CURLSHOPT_SHARE, /* specify a data type to share */ - CURLSHOPT_UNSHARE, /* specify shich data type to stop sharing */ + CURLSHOPT_UNSHARE, /* specify which data type to stop sharing */ CURLSHOPT_LOCKFUNC, /* pass in a 'curl_lock_function' pointer */ CURLSHOPT_UNLOCKFUNC, /* pass in a 'curl_unlock_function' pointer */ CURLSHOPT_USERDATA, /* pass in a user data pointer used in the lock/unlock @@ -1363,15 +2303,16 @@ typedef enum { CURLVERSION_FIRST, CURLVERSION_SECOND, CURLVERSION_THIRD, + CURLVERSION_FOURTH, CURLVERSION_LAST /* never actually use this */ } CURLversion; /* The 'CURLVERSION_NOW' is the symbolic name meant to be used by - basicly all programs ever, that want to get version information. It is + basically all programs ever that want to get version information. It is meant to be a built-in version number for what kind of struct the caller expects. If the struct ever changes, we redefine the NOW to another enum from above. */ -#define CURLVERSION_NOW CURLVERSION_THIRD +#define CURLVERSION_NOW CURLVERSION_FOURTH typedef struct { CURLversion age; /* age of the returned struct */ @@ -1389,24 +2330,46 @@ typedef struct { const char *ares; int ares_num; - /* This field was aded in CURLVERSION_THIRD */ + /* This field was added in CURLVERSION_THIRD */ const char *libidn; -} curl_version_info_data; -#define CURL_VERSION_IPV6 (1<<0) /* IPv6-enabled */ -#define CURL_VERSION_KERBEROS4 (1<<1) /* kerberos auth is supported */ -#define CURL_VERSION_SSL (1<<2) /* SSL options are present */ -#define CURL_VERSION_LIBZ (1<<3) /* libz features are present */ -#define CURL_VERSION_NTLM (1<<4) /* NTLM auth is supported */ -#define CURL_VERSION_GSSNEGOTIATE (1<<5) /* Negotiate auth support */ -#define CURL_VERSION_DEBUG (1<<6) /* built with debug capabilities */ -#define CURL_VERSION_ASYNCHDNS (1<<7) /* asynchronous dns resolves */ -#define CURL_VERSION_SPNEGO (1<<8) /* SPNEGO auth */ -#define CURL_VERSION_LARGEFILE (1<<9) /* supports files bigger than 2GB */ -#define CURL_VERSION_IDN (1<<10) /* International Domain Names support */ -#define CURL_VERSION_SSPI (1<<11) /* SSPI is supported */ + /* These field were added in CURLVERSION_FOURTH */ -/* + /* Same as '_libiconv_version' if built with HAVE_ICONV */ + int iconv_ver_num; + + const char *libssh_version; /* human readable string */ + +} curl_version_info_data; + +#define CURL_VERSION_IPV6 (1<<0) /* IPv6-enabled */ +#define CURL_VERSION_KERBEROS4 (1<<1) /* Kerberos V4 auth is supported + (deprecated) */ +#define CURL_VERSION_SSL (1<<2) /* SSL options are present */ +#define CURL_VERSION_LIBZ (1<<3) /* libz features are present */ +#define CURL_VERSION_NTLM (1<<4) /* NTLM auth is supported */ +#define CURL_VERSION_GSSNEGOTIATE (1<<5) /* Negotiate auth is supported + (deprecated) */ +#define CURL_VERSION_DEBUG (1<<6) /* Built with debug capabilities */ +#define CURL_VERSION_ASYNCHDNS (1<<7) /* Asynchronous DNS resolves */ +#define CURL_VERSION_SPNEGO (1<<8) /* SPNEGO auth is supported */ +#define CURL_VERSION_LARGEFILE (1<<9) /* Supports files larger than 2GB */ +#define CURL_VERSION_IDN (1<<10) /* Internationized Domain Names are + supported */ +#define CURL_VERSION_SSPI (1<<11) /* Built against Windows SSPI */ +#define CURL_VERSION_CONV (1<<12) /* Character conversions supported */ +#define CURL_VERSION_CURLDEBUG (1<<13) /* Debug memory tracking supported */ +#define CURL_VERSION_TLSAUTH_SRP (1<<14) /* TLS-SRP auth is supported */ +#define CURL_VERSION_NTLM_WB (1<<15) /* NTLM delegation to winbind helper + is suported */ +#define CURL_VERSION_HTTP2 (1<<16) /* HTTP2 support built-in */ +#define CURL_VERSION_GSSAPI (1<<17) /* Built against a GSS-API library */ +#define CURL_VERSION_KERBEROS5 (1<<18) /* Kerberos V5 auth is supported */ +#define CURL_VERSION_UNIX_SOCKETS (1<<19) /* Unix domain sockets support */ +#define CURL_VERSION_PSL (1<<20) /* Mozilla's Public Suffix List, used + for cookie domain verification */ + + /* * NAME curl_version_info() * * DESCRIPTION @@ -1438,6 +2401,26 @@ CURL_EXTERN const char *curl_easy_strerror(CURLcode); */ CURL_EXTERN const char *curl_share_strerror(CURLSHcode); +/* + * NAME curl_easy_pause() + * + * DESCRIPTION + * + * The curl_easy_pause function pauses or unpauses transfers. Select the new + * state by setting the bitmask, use the convenience defines below. + * + */ +CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask); + +#define CURLPAUSE_RECV (1<<0) +#define CURLPAUSE_RECV_CONT (0) + +#define CURLPAUSE_SEND (1<<2) +#define CURLPAUSE_SEND_CONT (0) + +#define CURLPAUSE_ALL (CURLPAUSE_RECV|CURLPAUSE_SEND) +#define CURLPAUSE_CONT (CURLPAUSE_RECV_CONT|CURLPAUSE_SEND_CONT) + #ifdef __cplusplus } #endif @@ -1447,4 +2430,21 @@ CURL_EXTERN const char *curl_share_strerror(CURLSHcode); #include "easy.h" /* nothing in curl is fun without the easy stuff */ #include "multi.h" +/* the typechecker doesn't work in C++ (yet) */ +#if defined(__GNUC__) && defined(__GNUC_MINOR__) && \ + ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \ + !defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK) +#include "typecheck-gcc.h" +#else +#if defined(__STDC__) && (__STDC__ >= 1) +/* This preprocessor magic that replaces a call with the exact same call is + only done to make sure application authors pass exactly three arguments + to these functions. */ +#define curl_easy_setopt(handle,opt,param) curl_easy_setopt(handle,opt,param) +#define curl_easy_getinfo(handle,info,arg) curl_easy_getinfo(handle,info,arg) +#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param) +#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param) +#endif /* __STDC__ >= 1 */ +#endif /* gcc >= 4.3 && !__cplusplus */ + #endif /* __CURL_CURL_H */ diff --git a/production/3rdparty/curl/include/curl/curlbuild.h b/production/3rdparty/curl/include/curl/curlbuild.h new file mode 100755 index 00000000..ae95095f --- /dev/null +++ b/production/3rdparty/curl/include/curl/curlbuild.h @@ -0,0 +1,586 @@ +#ifndef __CURL_CURLBUILD_H +#define __CURL_CURLBUILD_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2016, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.haxx.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ***************************************************************************/ + +/* ================================================================ */ +/* NOTES FOR CONFIGURE CAPABLE SYSTEMS */ +/* ================================================================ */ + +/* + * NOTE 1: + * ------- + * + * See file include/curl/curlbuild.h.in, run configure, and forget + * that this file exists it is only used for non-configure systems. + * But you can keep reading if you want ;-) + * + */ + +/* ================================================================ */ +/* NOTES FOR NON-CONFIGURE SYSTEMS */ +/* ================================================================ */ + +/* + * NOTE 1: + * ------- + * + * Nothing in this file is intended to be modified or adjusted by the + * curl library user nor by the curl library builder. + * + * If you think that something actually needs to be changed, adjusted + * or fixed in this file, then, report it on the libcurl development + * mailing list: https://cool.haxx.se/mailman/listinfo/curl-library/ + * + * Try to keep one section per platform, compiler and architecture, + * otherwise, if an existing section is reused for a different one and + * later on the original is adjusted, probably the piggybacking one can + * be adversely changed. + * + * In order to differentiate between platforms/compilers/architectures + * use only compiler built in predefined preprocessor symbols. + * + * This header file shall only export symbols which are 'curl' or 'CURL' + * prefixed, otherwise public name space would be polluted. + * + * NOTE 2: + * ------- + * + * For any given platform/compiler curl_off_t must be typedef'ed to a + * 64-bit wide signed integral data type. The width of this data type + * must remain constant and independent of any possible large file + * support settings. + * + * As an exception to the above, curl_off_t shall be typedef'ed to a + * 32-bit wide signed integral data type if there is no 64-bit type. + * + * As a general rule, curl_off_t shall not be mapped to off_t. This + * rule shall only be violated if off_t is the only 64-bit data type + * available and the size of off_t is independent of large file support + * settings. Keep your build on the safe side avoiding an off_t gating. + * If you have a 64-bit off_t then take for sure that another 64-bit + * data type exists, dig deeper and you will find it. + * + * NOTE 3: + * ------- + * + * Right now you might be staring at file include/curl/curlbuild.h.dist or + * at file include/curl/curlbuild.h, this is due to the following reason: + * file include/curl/curlbuild.h.dist is renamed to include/curl/curlbuild.h + * when the libcurl source code distribution archive file is created. + * + * File include/curl/curlbuild.h.dist is not included in the distribution + * archive. File include/curl/curlbuild.h is not present in the git tree. + * + * The distributed include/curl/curlbuild.h file is only intended to be used + * on systems which can not run the also distributed configure script. + * + * On systems capable of running the configure script, the configure process + * will overwrite the distributed include/curl/curlbuild.h file with one that + * is suitable and specific to the library being configured and built, which + * is generated from the include/curl/curlbuild.h.in template file. + * + * If you check out from git on a non-configure platform, you must run the + * appropriate buildconf* script to set up curlbuild.h and other local files. + * + */ + +/* ================================================================ */ +/* DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE */ +/* ================================================================ */ + +#ifdef CURL_SIZEOF_LONG +# error "CURL_SIZEOF_LONG shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_SIZEOF_LONG_already_defined +#endif + +#ifdef CURL_TYPEOF_CURL_SOCKLEN_T +# error "CURL_TYPEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_already_defined +#endif + +#ifdef CURL_SIZEOF_CURL_SOCKLEN_T +# error "CURL_SIZEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_already_defined +#endif + +#ifdef CURL_TYPEOF_CURL_OFF_T +# error "CURL_TYPEOF_CURL_OFF_T shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_already_defined +#endif + +#ifdef CURL_FORMAT_CURL_OFF_T +# error "CURL_FORMAT_CURL_OFF_T shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_already_defined +#endif + +#ifdef CURL_FORMAT_CURL_OFF_TU +# error "CURL_FORMAT_CURL_OFF_TU shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_already_defined +#endif + +#ifdef CURL_FORMAT_OFF_T +# error "CURL_FORMAT_OFF_T shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_FORMAT_OFF_T_already_defined +#endif + +#ifdef CURL_SIZEOF_CURL_OFF_T +# error "CURL_SIZEOF_CURL_OFF_T shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_already_defined +#endif + +#ifdef CURL_SUFFIX_CURL_OFF_T +# error "CURL_SUFFIX_CURL_OFF_T shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_already_defined +#endif + +#ifdef CURL_SUFFIX_CURL_OFF_TU +# error "CURL_SUFFIX_CURL_OFF_TU shall not be defined except in curlbuild.h" + Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_already_defined +#endif + +/* ================================================================ */ +/* EXTERNAL INTERFACE SETTINGS FOR NON-CONFIGURE SYSTEMS ONLY */ +/* ================================================================ */ + +#if defined(__DJGPP__) || defined(__GO32__) +# if defined(__DJGPP__) && (__DJGPP__ > 1) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# else +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__SALFORDC__) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__BORLANDC__) +# if (__BORLANDC__ < 0x520) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# else +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_FORMAT_OFF_T "%I64d" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__TURBOC__) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__WATCOMC__) +# if defined(__386__) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_FORMAT_OFF_T "%I64d" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# else +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__POCC__) +# if (__POCC__ < 280) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# elif defined(_MSC_VER) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_FORMAT_OFF_T "%I64d" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# else +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__LCC__) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__SYMBIAN32__) +# if defined(__EABI__) /* Treat all ARM compilers equally */ +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(__CW32__) +# pragma longlong on +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(__VC32__) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__MWERKS__) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(_WIN32_WCE) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_FORMAT_OFF_T "%I64d" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__MINGW32__) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_FORMAT_OFF_T "%I64d" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__VMS) +# if defined(__VAX) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# else +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +#elif defined(__OS400__) +# if defined(__ILEC400__) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 +# endif + +#elif defined(__MVS__) +# if defined(__IBMC__) || defined(__IBMCPP__) +# if defined(_ILP32) +# define CURL_SIZEOF_LONG 4 +# elif defined(_LP64) +# define CURL_SIZEOF_LONG 8 +# endif +# if defined(_LONG_LONG) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(_LP64) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# else +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 +# endif + +#elif defined(__370__) +# if defined(__IBMC__) || defined(__IBMCPP__) +# if defined(_ILP32) +# define CURL_SIZEOF_LONG 4 +# elif defined(_LP64) +# define CURL_SIZEOF_LONG 8 +# endif +# if defined(_LONG_LONG) +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(_LP64) +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# else +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 +# endif + +#elif defined(TPF) +# define CURL_SIZEOF_LONG 8 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +/* ===================================== */ +/* KEEP MSVC THE PENULTIMATE ENTRY */ +/* ===================================== */ + +#elif defined(_MSC_VER) +# if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T __int64 +# define CURL_FORMAT_CURL_OFF_T "I64d" +# define CURL_FORMAT_CURL_OFF_TU "I64u" +# define CURL_FORMAT_OFF_T "%I64d" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T i64 +# define CURL_SUFFIX_CURL_OFF_TU ui64 +# else +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 4 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T int +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 + +/* ===================================== */ +/* KEEP GENERIC GCC THE LAST ENTRY */ +/* ===================================== */ + +#elif defined(__GNUC__) +# if !defined(__LP64__) && (defined(__ILP32__) || \ + defined(__i386__) || defined(__ppc__) || defined(__arm__) || \ + defined(__sparc__) || defined(__mips__) || defined(__sh__)) +# define CURL_SIZEOF_LONG 4 +# define CURL_TYPEOF_CURL_OFF_T long long +# define CURL_FORMAT_CURL_OFF_T "lld" +# define CURL_FORMAT_CURL_OFF_TU "llu" +# define CURL_FORMAT_OFF_T "%lld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T LL +# define CURL_SUFFIX_CURL_OFF_TU ULL +# elif defined(__LP64__) || \ + defined(__x86_64__) || defined(__ppc64__) || defined(__sparc64__) +# define CURL_SIZEOF_LONG 8 +# define CURL_TYPEOF_CURL_OFF_T long +# define CURL_FORMAT_CURL_OFF_T "ld" +# define CURL_FORMAT_CURL_OFF_TU "lu" +# define CURL_FORMAT_OFF_T "%ld" +# define CURL_SIZEOF_CURL_OFF_T 8 +# define CURL_SUFFIX_CURL_OFF_T L +# define CURL_SUFFIX_CURL_OFF_TU UL +# endif +# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t +# define CURL_SIZEOF_CURL_SOCKLEN_T 4 +# define CURL_PULL_SYS_TYPES_H 1 +# define CURL_PULL_SYS_SOCKET_H 1 + +#else +# error "Unknown non-configure build target!" + Error Compilation_aborted_Unknown_non_configure_build_target +#endif + +/* CURL_PULL_SYS_TYPES_H is defined above when inclusion of header file */ +/* sys/types.h is required here to properly make type definitions below. */ +#ifdef CURL_PULL_SYS_TYPES_H +# include +#endif + +/* CURL_PULL_SYS_SOCKET_H is defined above when inclusion of header file */ +/* sys/socket.h is required here to properly make type definitions below. */ +#ifdef CURL_PULL_SYS_SOCKET_H +# include +#endif + +/* Data type definition of curl_socklen_t. */ + +#ifdef CURL_TYPEOF_CURL_SOCKLEN_T + typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t; +#endif + +/* Data type definition of curl_off_t. */ + +#ifdef CURL_TYPEOF_CURL_OFF_T + typedef CURL_TYPEOF_CURL_OFF_T curl_off_t; +#endif + +#endif /* __CURL_CURLBUILD_H */ diff --git a/production/3rdparty/curl/include/curl/curlrules.h b/production/3rdparty/curl/include/curl/curlrules.h new file mode 100755 index 00000000..55d21f68 --- /dev/null +++ b/production/3rdparty/curl/include/curl/curlrules.h @@ -0,0 +1,262 @@ +#ifndef __CURL_CURLRULES_H +#define __CURL_CURLRULES_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2012, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.haxx.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ***************************************************************************/ + +/* ================================================================ */ +/* COMPILE TIME SANITY CHECKS */ +/* ================================================================ */ + +/* + * NOTE 1: + * ------- + * + * All checks done in this file are intentionally placed in a public + * header file which is pulled by curl/curl.h when an application is + * being built using an already built libcurl library. Additionally + * this file is also included and used when building the library. + * + * If compilation fails on this file it is certainly sure that the + * problem is elsewhere. It could be a problem in the curlbuild.h + * header file, or simply that you are using different compilation + * settings than those used to build the library. + * + * Nothing in this file is intended to be modified or adjusted by the + * curl library user nor by the curl library builder. + * + * Do not deactivate any check, these are done to make sure that the + * library is properly built and used. + * + * You can find further help on the libcurl development mailing list: + * https://cool.haxx.se/mailman/listinfo/curl-library/ + * + * NOTE 2 + * ------ + * + * Some of the following compile time checks are based on the fact + * that the dimension of a constant array can not be a negative one. + * In this way if the compile time verification fails, the compilation + * will fail issuing an error. The error description wording is compiler + * dependent but it will be quite similar to one of the following: + * + * "negative subscript or subscript is too large" + * "array must have at least one element" + * "-1 is an illegal array size" + * "size of array is negative" + * + * If you are building an application which tries to use an already + * built libcurl library and you are getting this kind of errors on + * this file, it is a clear indication that there is a mismatch between + * how the library was built and how you are trying to use it for your + * application. Your already compiled or binary library provider is the + * only one who can give you the details you need to properly use it. + */ + +/* + * Verify that some macros are actually defined. + */ + +#ifndef CURL_SIZEOF_LONG +# error "CURL_SIZEOF_LONG definition is missing!" + Error Compilation_aborted_CURL_SIZEOF_LONG_is_missing +#endif + +#ifndef CURL_TYPEOF_CURL_SOCKLEN_T +# error "CURL_TYPEOF_CURL_SOCKLEN_T definition is missing!" + Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_is_missing +#endif + +#ifndef CURL_SIZEOF_CURL_SOCKLEN_T +# error "CURL_SIZEOF_CURL_SOCKLEN_T definition is missing!" + Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_is_missing +#endif + +#ifndef CURL_TYPEOF_CURL_OFF_T +# error "CURL_TYPEOF_CURL_OFF_T definition is missing!" + Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_is_missing +#endif + +#ifndef CURL_FORMAT_CURL_OFF_T +# error "CURL_FORMAT_CURL_OFF_T definition is missing!" + Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_is_missing +#endif + +#ifndef CURL_FORMAT_CURL_OFF_TU +# error "CURL_FORMAT_CURL_OFF_TU definition is missing!" + Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_is_missing +#endif + +#ifndef CURL_FORMAT_OFF_T +# error "CURL_FORMAT_OFF_T definition is missing!" + Error Compilation_aborted_CURL_FORMAT_OFF_T_is_missing +#endif + +#ifndef CURL_SIZEOF_CURL_OFF_T +# error "CURL_SIZEOF_CURL_OFF_T definition is missing!" + Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_is_missing +#endif + +#ifndef CURL_SUFFIX_CURL_OFF_T +# error "CURL_SUFFIX_CURL_OFF_T definition is missing!" + Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_is_missing +#endif + +#ifndef CURL_SUFFIX_CURL_OFF_TU +# error "CURL_SUFFIX_CURL_OFF_TU definition is missing!" + Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_is_missing +#endif + +/* + * Macros private to this header file. + */ + +#define CurlchkszEQ(t, s) sizeof(t) == s ? 1 : -1 + +#define CurlchkszGE(t1, t2) sizeof(t1) >= sizeof(t2) ? 1 : -1 + +/* + * Verify that the size previously defined and expected for long + * is the same as the one reported by sizeof() at compile time. + */ + +typedef char + __curl_rule_01__ + [CurlchkszEQ(long, CURL_SIZEOF_LONG)]; + +/* + * Verify that the size previously defined and expected for + * curl_off_t is actually the the same as the one reported + * by sizeof() at compile time. + */ + +typedef char + __curl_rule_02__ + [CurlchkszEQ(curl_off_t, CURL_SIZEOF_CURL_OFF_T)]; + +/* + * Verify at compile time that the size of curl_off_t as reported + * by sizeof() is greater or equal than the one reported for long + * for the current compilation. + */ + +typedef char + __curl_rule_03__ + [CurlchkszGE(curl_off_t, long)]; + +/* + * Verify that the size previously defined and expected for + * curl_socklen_t is actually the the same as the one reported + * by sizeof() at compile time. + */ + +typedef char + __curl_rule_04__ + [CurlchkszEQ(curl_socklen_t, CURL_SIZEOF_CURL_SOCKLEN_T)]; + +/* + * Verify at compile time that the size of curl_socklen_t as reported + * by sizeof() is greater or equal than the one reported for int for + * the current compilation. + */ + +typedef char + __curl_rule_05__ + [CurlchkszGE(curl_socklen_t, int)]; + +/* ================================================================ */ +/* EXTERNALLY AND INTERNALLY VISIBLE DEFINITIONS */ +/* ================================================================ */ + +/* + * CURL_ISOCPP and CURL_OFF_T_C definitions are done here in order to allow + * these to be visible and exported by the external libcurl interface API, + * while also making them visible to the library internals, simply including + * curl_setup.h, without actually needing to include curl.h internally. + * If some day this section would grow big enough, all this should be moved + * to its own header file. + */ + +/* + * Figure out if we can use the ## preprocessor operator, which is supported + * by ISO/ANSI C and C++. Some compilers support it without setting __STDC__ + * or __cplusplus so we need to carefully check for them too. + */ + +#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \ + defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) || \ + defined(__POCC__) || defined(__SALFORDC__) || defined(__HIGHC__) || \ + defined(__ILEC400__) + /* This compiler is believed to have an ISO compatible preprocessor */ +#define CURL_ISOCPP +#else + /* This compiler is believed NOT to have an ISO compatible preprocessor */ +#undef CURL_ISOCPP +#endif + +/* + * Macros for minimum-width signed and unsigned curl_off_t integer constants. + */ + +#if defined(__BORLANDC__) && (__BORLANDC__ == 0x0551) +# define __CURL_OFF_T_C_HLPR2(x) x +# define __CURL_OFF_T_C_HLPR1(x) __CURL_OFF_T_C_HLPR2(x) +# define CURL_OFF_T_C(Val) __CURL_OFF_T_C_HLPR1(Val) ## \ + __CURL_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_T) +# define CURL_OFF_TU_C(Val) __CURL_OFF_T_C_HLPR1(Val) ## \ + __CURL_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_TU) +#else +# ifdef CURL_ISOCPP +# define __CURL_OFF_T_C_HLPR2(Val,Suffix) Val ## Suffix +# else +# define __CURL_OFF_T_C_HLPR2(Val,Suffix) Val/**/Suffix +# endif +# define __CURL_OFF_T_C_HLPR1(Val,Suffix) __CURL_OFF_T_C_HLPR2(Val,Suffix) +# define CURL_OFF_T_C(Val) __CURL_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_T) +# define CURL_OFF_TU_C(Val) __CURL_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_TU) +#endif + +/* + * Get rid of macros private to this header file. + */ + +#undef CurlchkszEQ +#undef CurlchkszGE + +/* + * Get rid of macros not intended to exist beyond this point. + */ + +#undef CURL_PULL_WS2TCPIP_H +#undef CURL_PULL_SYS_TYPES_H +#undef CURL_PULL_SYS_SOCKET_H +#undef CURL_PULL_SYS_POLL_H +#undef CURL_PULL_STDINT_H +#undef CURL_PULL_INTTYPES_H + +#undef CURL_TYPEOF_CURL_SOCKLEN_T +#undef CURL_TYPEOF_CURL_OFF_T + +#ifdef CURL_NO_OLDIES +#undef CURL_FORMAT_OFF_T /* not required since 7.19.0 - obsoleted in 7.20.0 */ +#endif + +#endif /* __CURL_CURLRULES_H */ diff --git a/production/3rdparty/curl/include/curl/curlver.h b/production/3rdparty/curl/include/curl/curlver.h old mode 100644 new mode 100755 index eea00b1c..9807fa1a --- a/production/3rdparty/curl/include/curl/curlver.h +++ b/production/3rdparty/curl/include/curl/curlver.h @@ -7,11 +7,11 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2005, Daniel Stenberg, , et al. + * Copyright (C) 1998 - 2016, Daniel Stenberg, , et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. + * are also available at https://curl.haxx.se/docs/copyright.html. * * You may opt to use, copy, modify, merge, publish, distribute and/or sell * copies of the Software, and permit persons to whom the Software is @@ -20,21 +20,23 @@ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * - * $Id: curlver.h,v 1.1 2006/07/09 22:41:14 fred_t_hamster Exp $ ***************************************************************************/ /* This header file contains nothing but libcurl version info, generated by a script at release-time. This was made its own header file in 7.11.2 */ +/* This is the global package copyright */ +#define LIBCURL_COPYRIGHT "1996 - 2016 Daniel Stenberg, ." + /* This is the version number of the libcurl package from which this header file origins: */ -#define LIBCURL_VERSION "7.15.1" +#define LIBCURL_VERSION "7.50.3" /* The numeric version number is also available "in parts" by using these defines: */ #define LIBCURL_VERSION_MAJOR 7 -#define LIBCURL_VERSION_MINOR 15 -#define LIBCURL_VERSION_PATCH 1 +#define LIBCURL_VERSION_MINOR 50 +#define LIBCURL_VERSION_PATCH 3 /* This is the numeric version of the libcurl version number, meant for easier parsing and comparions by programs. The LIBCURL_VERSION_NUM define will @@ -50,7 +52,26 @@ This 6-digit (24 bits) hexadecimal number does not show pre-release number, and it is always a greater number in a more recent release. It makes comparisons with greater than and less than work. + + Note: This define is the full hex number and _does not_ use the + CURL_VERSION_BITS() macro since curl's own configure script greps for it + and needs it to contain the full number. */ -#define LIBCURL_VERSION_NUM 0x070f01 +#define LIBCURL_VERSION_NUM 0x073203 + +/* + * This is the date and time when the full source package was created. The + * timestamp is not stored in git, as the timestamp is properly set in the + * tarballs by the maketgz script. + * + * The format of the date should follow this template: + * + * "Mon Feb 12 11:35:33 UTC 2007" + */ +#define LIBCURL_TIMESTAMP "Wed Sep 14 05:57:40 UTC 2016" + +#define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|z) +#define CURL_AT_LEAST_VERSION(x,y,z) \ + (LIBCURL_VERSION_NUM >= CURL_VERSION_BITS(x, y, z)) #endif /* __CURL_CURLVER_H */ diff --git a/production/3rdparty/curl/include/curl/easy.h b/production/3rdparty/curl/include/curl/easy.h old mode 100644 new mode 100755 index deb137e0..afc766cd --- a/production/3rdparty/curl/include/curl/easy.h +++ b/production/3rdparty/curl/include/curl/easy.h @@ -7,11 +7,11 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2004, Daniel Stenberg, , et al. + * Copyright (C) 1998 - 2008, Daniel Stenberg, , et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. + * are also available at https://curl.haxx.se/docs/copyright.html. * * You may opt to use, copy, modify, merge, publish, distribute and/or sell * copies of the Software, and permit persons to whom the Software is @@ -20,7 +20,6 @@ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * - * $Id: easy.h,v 1.1 2006/07/09 22:41:14 fred_t_hamster Exp $ ***************************************************************************/ #ifdef __cplusplus extern "C" { @@ -54,8 +53,8 @@ CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...); * * Creates a new curl session handle with the same options set for the handle * passed in. Duplicating a handle could only be a matter of cloning data and - * options, internal state info and things like persistant connections cannot - * be transfered. It is useful in multithreaded applications when you can run + * options, internal state info and things like persistent connections cannot + * be transferred. It is useful in multithreaded applications when you can run * curl_easy_duphandle() for each new thread to avoid a series of identical * curl_easy_setopt() invokes in every thread. */ @@ -74,6 +73,28 @@ CURL_EXTERN CURL* curl_easy_duphandle(CURL *curl); */ CURL_EXTERN void curl_easy_reset(CURL *curl); +/* + * NAME curl_easy_recv() + * + * DESCRIPTION + * + * Receives data from the connected socket. Use after successful + * curl_easy_perform() with CURLOPT_CONNECT_ONLY option. + */ +CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen, + size_t *n); + +/* + * NAME curl_easy_send() + * + * DESCRIPTION + * + * Sends data over the connected socket. Use after successful + * curl_easy_perform() with CURLOPT_CONNECT_ONLY option. + */ +CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer, + size_t buflen, size_t *n); + #ifdef __cplusplus } #endif diff --git a/production/3rdparty/curl/include/curl/mprintf.h b/production/3rdparty/curl/include/curl/mprintf.h old mode 100644 new mode 100755 index da0a78e7..e20f546e --- a/production/3rdparty/curl/include/curl/mprintf.h +++ b/production/3rdparty/curl/include/curl/mprintf.h @@ -7,11 +7,11 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2004, Daniel Stenberg, , et al. + * Copyright (C) 1998 - 2016, Daniel Stenberg, , et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. + * are also available at https://curl.haxx.se/docs/copyright.html. * * You may opt to use, copy, modify, merge, publish, distribute and/or sell * copies of the Software, and permit persons to whom the Software is @@ -20,36 +20,31 @@ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * - * $Id: mprintf.h,v 1.1 2006/07/09 22:41:14 fred_t_hamster Exp $ ***************************************************************************/ #include #include /* needed for FILE */ +#include "curl.h" /* for CURL_EXTERN */ -#include "curl.h" +#ifdef __cplusplus +extern "C" { +#endif CURL_EXTERN int curl_mprintf(const char *format, ...); CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...); CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...); -CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength, const char *format, ...); +CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength, + const char *format, ...); CURL_EXTERN int curl_mvprintf(const char *format, va_list args); CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args); CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args); -CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength, const char *format, va_list args); +CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength, + const char *format, va_list args); CURL_EXTERN char *curl_maprintf(const char *format, ...); CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args); -#ifdef _MPRINTF_REPLACE -# define printf curl_mprintf -# define fprintf curl_mfprintf -# define sprintf curl_msprintf -# define snprintf curl_msnprintf -# define vprintf curl_mvprintf -# define vfprintf curl_mvfprintf -# define vsprintf curl_mvsprintf -# define vsnprintf curl_mvsnprintf -# define aprintf curl_maprintf -# define vaprintf curl_mvaprintf +#ifdef __cplusplus +} #endif #endif /* __CURL_MPRINTF_H */ diff --git a/production/3rdparty/curl/include/curl/multi.h b/production/3rdparty/curl/include/curl/multi.h old mode 100644 new mode 100755 index 5f55ab0b..d1e00cc5 --- a/production/3rdparty/curl/include/curl/multi.h +++ b/production/3rdparty/curl/include/curl/multi.h @@ -7,11 +7,11 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2005, Daniel Stenberg, , et al. + * Copyright (C) 1998 - 2016, Daniel Stenberg, , et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. + * are also available at https://curl.haxx.se/docs/copyright.html. * * You may opt to use, copy, modify, merge, publish, distribute and/or sell * copies of the Software, and permit persons to whom the Software is @@ -20,7 +20,6 @@ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * - * $Id: multi.h,v 1.1 2006/07/09 22:41:14 fred_t_hamster Exp $ ***************************************************************************/ /* This is an "external" header file. Don't give away any internals here! @@ -37,34 +36,6 @@ file descriptors simultaneous easily. */ -#if defined(_WIN32) && !defined(WIN32) -/* Chris Lewis mentioned that he doesn't get WIN32 defined, only _WIN32 so we - make this adjustment to catch this. */ -#define WIN32 1 -#endif - -#if defined(WIN32) && !defined(_WIN32_WCE) && !defined(__GNUC__) || \ - defined(__MINGW32__) -#if !(defined(_WINSOCKAPI_) || defined(_WINSOCK_H)) -/* The check above prevents the winsock2 inclusion if winsock.h already was - included, since they can't co-exist without problems */ -#include -#endif -#else - -/* HP-UX systems version 9, 10 and 11 lack sys/select.h and so does oldish - libc5-based Linux systems. Only include it on system that are known to - require it! */ -#if defined(_AIX) || defined(NETWARE) -#include -#endif - -#ifndef _WIN32_WCE -#include -#endif -#include -#include -#endif /* * This header file should not really need to include "curl.h" since curl.h @@ -81,34 +52,37 @@ extern "C" { #endif -typedef void CURLM; - -#ifdef HAVE_CURL_MULTI_SOCKET /* this is not set by anything yet */ - -#ifndef curl_socket_typedef -/* Public socket typedef */ -#ifdef WIN32 -typedef SOCKET curl_socket_t; -#define CURL_SOCKET_BAD INVALID_SOCKET +#if defined(BUILDING_LIBCURL) || defined(CURL_STRICTER) +typedef struct Curl_multi CURLM; #else -typedef int curl_socket_t; -#define CURL_SOCKET_BAD -1 +typedef void CURLM; #endif -#define curl_socket_typedef -#endif /* curl_socket_typedef */ - -#endif /* HAVE_CURL_MULTI_SOCKET */ typedef enum { - CURLM_CALL_MULTI_PERFORM = -1, /* please call curl_multi_perform() soon */ + CURLM_CALL_MULTI_PERFORM = -1, /* please call curl_multi_perform() or + curl_multi_socket*() soon */ CURLM_OK, CURLM_BAD_HANDLE, /* the passed-in handle is not a valid CURLM handle */ CURLM_BAD_EASY_HANDLE, /* an easy handle was not good/valid */ CURLM_OUT_OF_MEMORY, /* if you ever get this, you're in deep sh*t */ CURLM_INTERNAL_ERROR, /* this is a libcurl bug */ + CURLM_BAD_SOCKET, /* the passed in socket argument did not match */ + CURLM_UNKNOWN_OPTION, /* curl_multi_setopt() with unsupported option */ + CURLM_ADDED_ALREADY, /* an easy handle already added to a multi handle was + attempted to get added - again */ CURLM_LAST } CURLMcode; +/* just to make code nicer when using curl_multi_socket() you can now check + for CURLM_CALL_MULTI_SOCKET too in the same style it works for + curl_multi_perform() and CURLM_CALL_MULTI_PERFORM */ +#define CURLM_CALL_MULTI_SOCKET CURLM_CALL_MULTI_PERFORM + +/* bitmask bits for CURLMOPT_PIPELINING */ +#define CURLPIPE_NOTHING 0L +#define CURLPIPE_HTTP1 1L +#define CURLPIPE_MULTIPLEX 2L + typedef enum { CURLMSG_NONE, /* first, not used */ CURLMSG_DONE, /* This easy handle has completed. 'result' contains @@ -126,6 +100,19 @@ struct CURLMsg { }; typedef struct CURLMsg CURLMsg; +/* Based on poll(2) structure and values. + * We don't use pollfd and POLL* constants explicitly + * to cover platforms without poll(). */ +#define CURL_WAIT_POLLIN 0x0001 +#define CURL_WAIT_POLLPRI 0x0002 +#define CURL_WAIT_POLLOUT 0x0004 + +struct curl_waitfd { + curl_socket_t fd; + short events; + short revents; /* not supported yet */ +}; + /* * Name: curl_multi_init() * @@ -170,6 +157,20 @@ CURL_EXTERN CURLMcode curl_multi_fdset(CURLM *multi_handle, fd_set *exc_fd_set, int *max_fd); +/* + * Name: curl_multi_wait() + * + * Desc: Poll on all fds within a CURLM set as well as any + * additional fds passed to the function. + * + * Returns: CURLMcode type, general multi error code. + */ +CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle, + struct curl_waitfd extra_fds[], + unsigned int extra_nfds, + int timeout_ms, + int *ret); + /* * Name: curl_multi_perform() * @@ -243,57 +244,14 @@ CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle, */ CURL_EXTERN const char *curl_multi_strerror(CURLMcode); -#ifdef HAVE_CURL_MULTI_SOCKET /* * Name: curl_multi_socket() and * curl_multi_socket_all() * * Desc: An alternative version of curl_multi_perform() that allows the * application to pass in one of the file descriptors that have been - * detected to have "action" on them and let libcurl perform. This - * allows libcurl to not have to scan through all possible file - * descriptors to check for this. The app is recommended to pass in - * the 'easy' argument (or set it to CURL_EASY_NONE) to make libcurl - * figure out the internal structure even faster and easier. If the - * easy argument is set to something else than CURL_EASY_NONE, the - * 's' (socket) argument will be ignored by libcurl. - * - * It also informs the application about updates in the socket (file - * descriptor) status by doing none, one or multiple calls to the - * curl_socket_callback. It thus updates the status with changes - * since the previous time this function was used. If 'callback' is - * NULL, no callback will be called. A status change may also be a - * new timeout only, having the same IN/OUT status as before. - * - * If a previous wait for socket action(s) timed out, you should call - * this function with the socket argument set to - * CURL_SOCKET_TIMEOUT. If you want to force libcurl to (re-)check - * all its internal sockets, and call the callback with status for - * all sockets no matter what the previous state is, you call - * curl_multi_socket_all() instead. - * - * curl_multi_perform() is thus the equivalent of calling - * curl_multi_socket_all(handle, NULL, NULL); - * - * IMPLEMENTATION: libcurl will need an internal hash table to map - * socket numbers to internal easy handles for the cases when 'easy' - * is set to CURL_EASY_NONE. - * - * Regarding the timeout argument in the callback: it is the timeout - * (in milliseconds) for waiting on action on this socket (and the - * given time period starts when the callback is called) until you - * should call curl_multi_socket() with the timeout stuff mentioned - * above. If "actions" happens on the socket before the timeout - * happens, remember that the timout timer keeps ticking until told - * otherwise. - * - * The "what" argument has one of five values: - * - * 0 CURL_POLL_NONE (0) - register, not interested in readiness - * 1 CURL_POLL_IN - register, interested in read readiness - * 2 CURL_POLL_OUT - register, interested in write readiness - * 3 CURL_POLL_INOUT - register, interested in both - * 4 CURL_POLL_REMOVE - deregister + * detected to have "action" on them and let libcurl perform. + * See man page for details. */ #define CURL_POLL_NONE 0 #define CURL_POLL_IN 1 @@ -301,25 +259,51 @@ CURL_EXTERN const char *curl_multi_strerror(CURLMcode); #define CURL_POLL_INOUT 3 #define CURL_POLL_REMOVE 4 -#define CURL_EASY_NONE (CURL *)0 -#define CURL_EASY_TIMEOUT (CURL *)0 #define CURL_SOCKET_TIMEOUT CURL_SOCKET_BAD +#define CURL_CSELECT_IN 0x01 +#define CURL_CSELECT_OUT 0x02 +#define CURL_CSELECT_ERR 0x04 + typedef int (*curl_socket_callback)(CURL *easy, /* easy handle */ curl_socket_t s, /* socket */ int what, /* see above */ - long ms, /* timeout for wait */ - void *userp); /* "private" pointer */ + void *userp, /* private callback + pointer */ + void *socketp); /* private socket + pointer */ +/* + * Name: curl_multi_timer_callback + * + * Desc: Called by libcurl whenever the library detects a change in the + * maximum number of milliseconds the app is allowed to wait before + * curl_multi_socket() or curl_multi_perform() must be called + * (to allow libcurl's timed events to take place). + * + * Returns: The callback should return zero. + */ +typedef int (*curl_multi_timer_callback)(CURLM *multi, /* multi handle */ + long timeout_ms, /* see above */ + void *userp); /* private callback + pointer */ + +CURL_EXTERN CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t s, + int *running_handles); -CURLMcode curl_multi_socket(CURLM *multi_handle, - curl_socket_t s, - CURL *easy, - curl_socket_callback callback, - void *userp); /* passed to callback */ +CURL_EXTERN CURLMcode curl_multi_socket_action(CURLM *multi_handle, + curl_socket_t s, + int ev_bitmask, + int *running_handles); -CURLMcode curl_multi_socket_all(CURLM *multi_handle, - curl_socket_callback callback, - void *userp); /* passed to callback */ +CURL_EXTERN CURLMcode curl_multi_socket_all(CURLM *multi_handle, + int *running_handles); + +#ifndef CURL_ALLOW_OLD_MULTI_SOCKET +/* This macro below was added in 7.16.3 to push users who recompile to use + the new curl_multi_socket_action() instead of the old curl_multi_socket() +*/ +#define curl_multi_socket(x,y,z) curl_multi_socket_action(x,y,0,z) +#endif /* * Name: curl_multi_timeout() @@ -330,9 +314,123 @@ CURLMcode curl_multi_socket_all(CURLM *multi_handle, * * Returns: CURLM error code. */ -CURLMcode curl_multi_timeout(CURLM *multi_handle, long *milliseconds); +CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle, + long *milliseconds); + +#undef CINIT /* re-using the same name as in curl.h */ + +#ifdef CURL_ISOCPP +#define CINIT(name,type,num) CURLMOPT_ ## name = CURLOPTTYPE_ ## type + num +#else +/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */ +#define LONG CURLOPTTYPE_LONG +#define OBJECTPOINT CURLOPTTYPE_OBJECTPOINT +#define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT +#define OFF_T CURLOPTTYPE_OFF_T +#define CINIT(name,type,number) CURLMOPT_/**/name = type + number +#endif + +typedef enum { + /* This is the socket callback function pointer */ + CINIT(SOCKETFUNCTION, FUNCTIONPOINT, 1), + + /* This is the argument passed to the socket callback */ + CINIT(SOCKETDATA, OBJECTPOINT, 2), + + /* set to 1 to enable pipelining for this multi handle */ + CINIT(PIPELINING, LONG, 3), + + /* This is the timer callback function pointer */ + CINIT(TIMERFUNCTION, FUNCTIONPOINT, 4), + + /* This is the argument passed to the timer callback */ + CINIT(TIMERDATA, OBJECTPOINT, 5), + + /* maximum number of entries in the connection cache */ + CINIT(MAXCONNECTS, LONG, 6), + + /* maximum number of (pipelining) connections to one host */ + CINIT(MAX_HOST_CONNECTIONS, LONG, 7), + + /* maximum number of requests in a pipeline */ + CINIT(MAX_PIPELINE_LENGTH, LONG, 8), + + /* a connection with a content-length longer than this + will not be considered for pipelining */ + CINIT(CONTENT_LENGTH_PENALTY_SIZE, OFF_T, 9), + + /* a connection with a chunk length longer than this + will not be considered for pipelining */ + CINIT(CHUNK_LENGTH_PENALTY_SIZE, OFF_T, 10), + + /* a list of site names(+port) that are blacklisted from + pipelining */ + CINIT(PIPELINING_SITE_BL, OBJECTPOINT, 11), + + /* a list of server types that are blacklisted from + pipelining */ + CINIT(PIPELINING_SERVER_BL, OBJECTPOINT, 12), + + /* maximum number of open connections in total */ + CINIT(MAX_TOTAL_CONNECTIONS, LONG, 13), + + /* This is the server push callback function pointer */ + CINIT(PUSHFUNCTION, FUNCTIONPOINT, 14), + + /* This is the argument passed to the server push callback */ + CINIT(PUSHDATA, OBJECTPOINT, 15), + + CURLMOPT_LASTENTRY /* the last unused */ +} CURLMoption; + + +/* + * Name: curl_multi_setopt() + * + * Desc: Sets options for the multi handle. + * + * Returns: CURLM error code. + */ +CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle, + CURLMoption option, ...); + + +/* + * Name: curl_multi_assign() + * + * Desc: This function sets an association in the multi handle between the + * given socket and a private pointer of the application. This is + * (only) useful for curl_multi_socket uses. + * + * Returns: CURLM error code. + */ +CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle, + curl_socket_t sockfd, void *sockp); + + +/* + * Name: curl_push_callback + * + * Desc: This callback gets called when a new stream is being pushed by the + * server. It approves or denies the new stream. + * + * Returns: CURL_PUSH_OK or CURL_PUSH_DENY. + */ +#define CURL_PUSH_OK 0 +#define CURL_PUSH_DENY 1 + +struct curl_pushheaders; /* forward declaration only */ + +CURL_EXTERN char *curl_pushheader_bynum(struct curl_pushheaders *h, + size_t num); +CURL_EXTERN char *curl_pushheader_byname(struct curl_pushheaders *h, + const char *name); -#endif /* HAVE_CURL_MULTI_SOCKET */ +typedef int (*curl_push_callback)(CURL *parent, + CURL *easy, + size_t num_headers, + struct curl_pushheaders *headers, + void *userp); #ifdef __cplusplus } /* end of extern "C" */ diff --git a/production/3rdparty/curl/include/curl/stdcheaders.h b/production/3rdparty/curl/include/curl/stdcheaders.h old mode 100644 new mode 100755 index 2c5bddc8..6f0f7f34 --- a/production/3rdparty/curl/include/curl/stdcheaders.h +++ b/production/3rdparty/curl/include/curl/stdcheaders.h @@ -1,18 +1,18 @@ #ifndef __STDC_HEADERS_H #define __STDC_HEADERS_H /*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2004, Daniel Stenberg, , et al. + * Copyright (C) 1998 - 2010, Daniel Stenberg, , et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * + * are also available at https://curl.haxx.se/docs/copyright.html. + * * You may opt to use, copy, modify, merge, publish, distribute and/or sell * copies of the Software, and permit persons to whom the Software is * furnished to do so, under the terms of the COPYING file. @@ -20,7 +20,6 @@ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY * KIND, either express or implied. * - * $Id: stdcheaders.h,v 1.1 2006/07/09 22:41:14 fred_t_hamster Exp $ ***************************************************************************/ #include @@ -31,4 +30,4 @@ size_t fwrite (const void *, size_t, size_t, FILE *); int strcasecmp(const char *, const char *); int strncasecmp(const char *, const char *, size_t); -#endif +#endif /* __STDC_HEADERS_H */ diff --git a/production/3rdparty/curl/include/curl/typecheck-gcc.h b/production/3rdparty/curl/include/curl/typecheck-gcc.h new file mode 100755 index 00000000..6ec8bcfd --- /dev/null +++ b/production/3rdparty/curl/include/curl/typecheck-gcc.h @@ -0,0 +1,622 @@ +#ifndef __CURL_TYPECHECK_GCC_H +#define __CURL_TYPECHECK_GCC_H +/*************************************************************************** + * _ _ ____ _ + * Project ___| | | | _ \| | + * / __| | | | |_) | | + * | (__| |_| | _ <| |___ + * \___|\___/|_| \_\_____| + * + * Copyright (C) 1998 - 2015, Daniel Stenberg, , et al. + * + * This software is licensed as described in the file COPYING, which + * you should have received as part of this distribution. The terms + * are also available at https://curl.haxx.se/docs/copyright.html. + * + * You may opt to use, copy, modify, merge, publish, distribute and/or sell + * copies of the Software, and permit persons to whom the Software is + * furnished to do so, under the terms of the COPYING file. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ***************************************************************************/ + +/* wraps curl_easy_setopt() with typechecking */ + +/* To add a new kind of warning, add an + * if(_curl_is_sometype_option(_curl_opt)) + * if(!_curl_is_sometype(value)) + * _curl_easy_setopt_err_sometype(); + * block and define _curl_is_sometype_option, _curl_is_sometype and + * _curl_easy_setopt_err_sometype below + * + * NOTE: We use two nested 'if' statements here instead of the && operator, in + * order to work around gcc bug #32061. It affects only gcc 4.3.x/4.4.x + * when compiling with -Wlogical-op. + * + * To add an option that uses the same type as an existing option, you'll just + * need to extend the appropriate _curl_*_option macro + */ +#define curl_easy_setopt(handle, option, value) \ +__extension__ ({ \ + __typeof__ (option) _curl_opt = option; \ + if(__builtin_constant_p(_curl_opt)) { \ + if(_curl_is_long_option(_curl_opt)) \ + if(!_curl_is_long(value)) \ + _curl_easy_setopt_err_long(); \ + if(_curl_is_off_t_option(_curl_opt)) \ + if(!_curl_is_off_t(value)) \ + _curl_easy_setopt_err_curl_off_t(); \ + if(_curl_is_string_option(_curl_opt)) \ + if(!_curl_is_string(value)) \ + _curl_easy_setopt_err_string(); \ + if(_curl_is_write_cb_option(_curl_opt)) \ + if(!_curl_is_write_cb(value)) \ + _curl_easy_setopt_err_write_callback(); \ + if((_curl_opt) == CURLOPT_READFUNCTION) \ + if(!_curl_is_read_cb(value)) \ + _curl_easy_setopt_err_read_cb(); \ + if((_curl_opt) == CURLOPT_IOCTLFUNCTION) \ + if(!_curl_is_ioctl_cb(value)) \ + _curl_easy_setopt_err_ioctl_cb(); \ + if((_curl_opt) == CURLOPT_SOCKOPTFUNCTION) \ + if(!_curl_is_sockopt_cb(value)) \ + _curl_easy_setopt_err_sockopt_cb(); \ + if((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION) \ + if(!_curl_is_opensocket_cb(value)) \ + _curl_easy_setopt_err_opensocket_cb(); \ + if((_curl_opt) == CURLOPT_PROGRESSFUNCTION) \ + if(!_curl_is_progress_cb(value)) \ + _curl_easy_setopt_err_progress_cb(); \ + if((_curl_opt) == CURLOPT_DEBUGFUNCTION) \ + if(!_curl_is_debug_cb(value)) \ + _curl_easy_setopt_err_debug_cb(); \ + if((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION) \ + if(!_curl_is_ssl_ctx_cb(value)) \ + _curl_easy_setopt_err_ssl_ctx_cb(); \ + if(_curl_is_conv_cb_option(_curl_opt)) \ + if(!_curl_is_conv_cb(value)) \ + _curl_easy_setopt_err_conv_cb(); \ + if((_curl_opt) == CURLOPT_SEEKFUNCTION) \ + if(!_curl_is_seek_cb(value)) \ + _curl_easy_setopt_err_seek_cb(); \ + if(_curl_is_cb_data_option(_curl_opt)) \ + if(!_curl_is_cb_data(value)) \ + _curl_easy_setopt_err_cb_data(); \ + if((_curl_opt) == CURLOPT_ERRORBUFFER) \ + if(!_curl_is_error_buffer(value)) \ + _curl_easy_setopt_err_error_buffer(); \ + if((_curl_opt) == CURLOPT_STDERR) \ + if(!_curl_is_FILE(value)) \ + _curl_easy_setopt_err_FILE(); \ + if(_curl_is_postfields_option(_curl_opt)) \ + if(!_curl_is_postfields(value)) \ + _curl_easy_setopt_err_postfields(); \ + if((_curl_opt) == CURLOPT_HTTPPOST) \ + if(!_curl_is_arr((value), struct curl_httppost)) \ + _curl_easy_setopt_err_curl_httpost(); \ + if(_curl_is_slist_option(_curl_opt)) \ + if(!_curl_is_arr((value), struct curl_slist)) \ + _curl_easy_setopt_err_curl_slist(); \ + if((_curl_opt) == CURLOPT_SHARE) \ + if(!_curl_is_ptr((value), CURLSH)) \ + _curl_easy_setopt_err_CURLSH(); \ + } \ + curl_easy_setopt(handle, _curl_opt, value); \ +}) + +/* wraps curl_easy_getinfo() with typechecking */ +/* FIXME: don't allow const pointers */ +#define curl_easy_getinfo(handle, info, arg) \ +__extension__ ({ \ + __typeof__ (info) _curl_info = info; \ + if(__builtin_constant_p(_curl_info)) { \ + if(_curl_is_string_info(_curl_info)) \ + if(!_curl_is_arr((arg), char *)) \ + _curl_easy_getinfo_err_string(); \ + if(_curl_is_long_info(_curl_info)) \ + if(!_curl_is_arr((arg), long)) \ + _curl_easy_getinfo_err_long(); \ + if(_curl_is_double_info(_curl_info)) \ + if(!_curl_is_arr((arg), double)) \ + _curl_easy_getinfo_err_double(); \ + if(_curl_is_slist_info(_curl_info)) \ + if(!_curl_is_arr((arg), struct curl_slist *)) \ + _curl_easy_getinfo_err_curl_slist(); \ + } \ + curl_easy_getinfo(handle, _curl_info, arg); \ +}) + +/* TODO: typechecking for curl_share_setopt() and curl_multi_setopt(), + * for now just make sure that the functions are called with three + * arguments + */ +#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param) +#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param) + + +/* the actual warnings, triggered by calling the _curl_easy_setopt_err* + * functions */ + +/* To define a new warning, use _CURL_WARNING(identifier, "message") */ +#define _CURL_WARNING(id, message) \ + static void __attribute__((__warning__(message))) \ + __attribute__((__unused__)) __attribute__((__noinline__)) \ + id(void) { __asm__(""); } + +_CURL_WARNING(_curl_easy_setopt_err_long, + "curl_easy_setopt expects a long argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_curl_off_t, + "curl_easy_setopt expects a curl_off_t argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_string, + "curl_easy_setopt expects a " + "string (char* or char[]) argument for this option" + ) +_CURL_WARNING(_curl_easy_setopt_err_write_callback, + "curl_easy_setopt expects a curl_write_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_read_cb, + "curl_easy_setopt expects a curl_read_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_ioctl_cb, + "curl_easy_setopt expects a curl_ioctl_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_sockopt_cb, + "curl_easy_setopt expects a curl_sockopt_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_opensocket_cb, + "curl_easy_setopt expects a " + "curl_opensocket_callback argument for this option" + ) +_CURL_WARNING(_curl_easy_setopt_err_progress_cb, + "curl_easy_setopt expects a curl_progress_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_debug_cb, + "curl_easy_setopt expects a curl_debug_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_ssl_ctx_cb, + "curl_easy_setopt expects a curl_ssl_ctx_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_conv_cb, + "curl_easy_setopt expects a curl_conv_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_seek_cb, + "curl_easy_setopt expects a curl_seek_callback argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_cb_data, + "curl_easy_setopt expects a " + "private data pointer as argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_error_buffer, + "curl_easy_setopt expects a " + "char buffer of CURL_ERROR_SIZE as argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_FILE, + "curl_easy_setopt expects a FILE* argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_postfields, + "curl_easy_setopt expects a void* or char* argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_curl_httpost, + "curl_easy_setopt expects a struct curl_httppost* argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_curl_slist, + "curl_easy_setopt expects a struct curl_slist* argument for this option") +_CURL_WARNING(_curl_easy_setopt_err_CURLSH, + "curl_easy_setopt expects a CURLSH* argument for this option") + +_CURL_WARNING(_curl_easy_getinfo_err_string, + "curl_easy_getinfo expects a pointer to char * for this info") +_CURL_WARNING(_curl_easy_getinfo_err_long, + "curl_easy_getinfo expects a pointer to long for this info") +_CURL_WARNING(_curl_easy_getinfo_err_double, + "curl_easy_getinfo expects a pointer to double for this info") +_CURL_WARNING(_curl_easy_getinfo_err_curl_slist, + "curl_easy_getinfo expects a pointer to struct curl_slist * for this info") + +/* groups of curl_easy_setops options that take the same type of argument */ + +/* To add a new option to one of the groups, just add + * (option) == CURLOPT_SOMETHING + * to the or-expression. If the option takes a long or curl_off_t, you don't + * have to do anything + */ + +/* evaluates to true if option takes a long argument */ +#define _curl_is_long_option(option) \ + (0 < (option) && (option) < CURLOPTTYPE_OBJECTPOINT) + +#define _curl_is_off_t_option(option) \ + ((option) > CURLOPTTYPE_OFF_T) + +/* evaluates to true if option takes a char* argument */ +#define _curl_is_string_option(option) \ + ((option) == CURLOPT_ACCEPT_ENCODING || \ + (option) == CURLOPT_CAINFO || \ + (option) == CURLOPT_CAPATH || \ + (option) == CURLOPT_COOKIE || \ + (option) == CURLOPT_COOKIEFILE || \ + (option) == CURLOPT_COOKIEJAR || \ + (option) == CURLOPT_COOKIELIST || \ + (option) == CURLOPT_CRLFILE || \ + (option) == CURLOPT_CUSTOMREQUEST || \ + (option) == CURLOPT_DEFAULT_PROTOCOL || \ + (option) == CURLOPT_DNS_INTERFACE || \ + (option) == CURLOPT_DNS_LOCAL_IP4 || \ + (option) == CURLOPT_DNS_LOCAL_IP6 || \ + (option) == CURLOPT_DNS_SERVERS || \ + (option) == CURLOPT_EGDSOCKET || \ + (option) == CURLOPT_FTPPORT || \ + (option) == CURLOPT_FTP_ACCOUNT || \ + (option) == CURLOPT_FTP_ALTERNATIVE_TO_USER || \ + (option) == CURLOPT_INTERFACE || \ + (option) == CURLOPT_ISSUERCERT || \ + (option) == CURLOPT_KEYPASSWD || \ + (option) == CURLOPT_KRBLEVEL || \ + (option) == CURLOPT_LOGIN_OPTIONS || \ + (option) == CURLOPT_MAIL_AUTH || \ + (option) == CURLOPT_MAIL_FROM || \ + (option) == CURLOPT_NETRC_FILE || \ + (option) == CURLOPT_NOPROXY || \ + (option) == CURLOPT_PASSWORD || \ + (option) == CURLOPT_PINNEDPUBLICKEY || \ + (option) == CURLOPT_PROXY || \ + (option) == CURLOPT_PROXYPASSWORD || \ + (option) == CURLOPT_PROXYUSERNAME || \ + (option) == CURLOPT_PROXYUSERPWD || \ + (option) == CURLOPT_PROXY_SERVICE_NAME || \ + (option) == CURLOPT_RANDOM_FILE || \ + (option) == CURLOPT_RANGE || \ + (option) == CURLOPT_REFERER || \ + (option) == CURLOPT_RTSP_SESSION_ID || \ + (option) == CURLOPT_RTSP_STREAM_URI || \ + (option) == CURLOPT_RTSP_TRANSPORT || \ + (option) == CURLOPT_SERVICE_NAME || \ + (option) == CURLOPT_SOCKS5_GSSAPI_SERVICE || \ + (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 || \ + (option) == CURLOPT_SSH_KNOWNHOSTS || \ + (option) == CURLOPT_SSH_PRIVATE_KEYFILE || \ + (option) == CURLOPT_SSH_PUBLIC_KEYFILE || \ + (option) == CURLOPT_SSLCERT || \ + (option) == CURLOPT_SSLCERTTYPE || \ + (option) == CURLOPT_SSLENGINE || \ + (option) == CURLOPT_SSLKEY || \ + (option) == CURLOPT_SSLKEYTYPE || \ + (option) == CURLOPT_SSL_CIPHER_LIST || \ + (option) == CURLOPT_TLSAUTH_PASSWORD || \ + (option) == CURLOPT_TLSAUTH_TYPE || \ + (option) == CURLOPT_TLSAUTH_USERNAME || \ + (option) == CURLOPT_UNIX_SOCKET_PATH || \ + (option) == CURLOPT_URL || \ + (option) == CURLOPT_USERAGENT || \ + (option) == CURLOPT_USERNAME || \ + (option) == CURLOPT_USERPWD || \ + (option) == CURLOPT_XOAUTH2_BEARER || \ + 0) + +/* evaluates to true if option takes a curl_write_callback argument */ +#define _curl_is_write_cb_option(option) \ + ((option) == CURLOPT_HEADERFUNCTION || \ + (option) == CURLOPT_WRITEFUNCTION) + +/* evaluates to true if option takes a curl_conv_callback argument */ +#define _curl_is_conv_cb_option(option) \ + ((option) == CURLOPT_CONV_TO_NETWORK_FUNCTION || \ + (option) == CURLOPT_CONV_FROM_NETWORK_FUNCTION || \ + (option) == CURLOPT_CONV_FROM_UTF8_FUNCTION) + +/* evaluates to true if option takes a data argument to pass to a callback */ +#define _curl_is_cb_data_option(option) \ + ((option) == CURLOPT_CHUNK_DATA || \ + (option) == CURLOPT_CLOSESOCKETDATA || \ + (option) == CURLOPT_DEBUGDATA || \ + (option) == CURLOPT_FNMATCH_DATA || \ + (option) == CURLOPT_HEADERDATA || \ + (option) == CURLOPT_INTERLEAVEDATA || \ + (option) == CURLOPT_IOCTLDATA || \ + (option) == CURLOPT_OPENSOCKETDATA || \ + (option) == CURLOPT_PRIVATE || \ + (option) == CURLOPT_PROGRESSDATA || \ + (option) == CURLOPT_READDATA || \ + (option) == CURLOPT_SEEKDATA || \ + (option) == CURLOPT_SOCKOPTDATA || \ + (option) == CURLOPT_SSH_KEYDATA || \ + (option) == CURLOPT_SSL_CTX_DATA || \ + (option) == CURLOPT_WRITEDATA || \ + 0) + +/* evaluates to true if option takes a POST data argument (void* or char*) */ +#define _curl_is_postfields_option(option) \ + ((option) == CURLOPT_POSTFIELDS || \ + (option) == CURLOPT_COPYPOSTFIELDS || \ + 0) + +/* evaluates to true if option takes a struct curl_slist * argument */ +#define _curl_is_slist_option(option) \ + ((option) == CURLOPT_HTTP200ALIASES || \ + (option) == CURLOPT_HTTPHEADER || \ + (option) == CURLOPT_MAIL_RCPT || \ + (option) == CURLOPT_POSTQUOTE || \ + (option) == CURLOPT_PREQUOTE || \ + (option) == CURLOPT_PROXYHEADER || \ + (option) == CURLOPT_QUOTE || \ + (option) == CURLOPT_RESOLVE || \ + (option) == CURLOPT_TELNETOPTIONS || \ + 0) + +/* groups of curl_easy_getinfo infos that take the same type of argument */ + +/* evaluates to true if info expects a pointer to char * argument */ +#define _curl_is_string_info(info) \ + (CURLINFO_STRING < (info) && (info) < CURLINFO_LONG) + +/* evaluates to true if info expects a pointer to long argument */ +#define _curl_is_long_info(info) \ + (CURLINFO_LONG < (info) && (info) < CURLINFO_DOUBLE) + +/* evaluates to true if info expects a pointer to double argument */ +#define _curl_is_double_info(info) \ + (CURLINFO_DOUBLE < (info) && (info) < CURLINFO_SLIST) + +/* true if info expects a pointer to struct curl_slist * argument */ +#define _curl_is_slist_info(info) \ + (CURLINFO_SLIST < (info)) + + +/* typecheck helpers -- check whether given expression has requested type*/ + +/* For pointers, you can use the _curl_is_ptr/_curl_is_arr macros, + * otherwise define a new macro. Search for __builtin_types_compatible_p + * in the GCC manual. + * NOTE: these macros MUST NOT EVALUATE their arguments! The argument is + * the actual expression passed to the curl_easy_setopt macro. This + * means that you can only apply the sizeof and __typeof__ operators, no + * == or whatsoever. + */ + +/* XXX: should evaluate to true iff expr is a pointer */ +#define _curl_is_any_ptr(expr) \ + (sizeof(expr) == sizeof(void*)) + +/* evaluates to true if expr is NULL */ +/* XXX: must not evaluate expr, so this check is not accurate */ +#define _curl_is_NULL(expr) \ + (__builtin_types_compatible_p(__typeof__(expr), __typeof__(NULL))) + +/* evaluates to true if expr is type*, const type* or NULL */ +#define _curl_is_ptr(expr, type) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), type *) || \ + __builtin_types_compatible_p(__typeof__(expr), const type *)) + +/* evaluates to true if expr is one of type[], type*, NULL or const type* */ +#define _curl_is_arr(expr, type) \ + (_curl_is_ptr((expr), type) || \ + __builtin_types_compatible_p(__typeof__(expr), type [])) + +/* evaluates to true if expr is a string */ +#define _curl_is_string(expr) \ + (_curl_is_arr((expr), char) || \ + _curl_is_arr((expr), signed char) || \ + _curl_is_arr((expr), unsigned char)) + +/* evaluates to true if expr is a long (no matter the signedness) + * XXX: for now, int is also accepted (and therefore short and char, which + * are promoted to int when passed to a variadic function) */ +#define _curl_is_long(expr) \ + (__builtin_types_compatible_p(__typeof__(expr), long) || \ + __builtin_types_compatible_p(__typeof__(expr), signed long) || \ + __builtin_types_compatible_p(__typeof__(expr), unsigned long) || \ + __builtin_types_compatible_p(__typeof__(expr), int) || \ + __builtin_types_compatible_p(__typeof__(expr), signed int) || \ + __builtin_types_compatible_p(__typeof__(expr), unsigned int) || \ + __builtin_types_compatible_p(__typeof__(expr), short) || \ + __builtin_types_compatible_p(__typeof__(expr), signed short) || \ + __builtin_types_compatible_p(__typeof__(expr), unsigned short) || \ + __builtin_types_compatible_p(__typeof__(expr), char) || \ + __builtin_types_compatible_p(__typeof__(expr), signed char) || \ + __builtin_types_compatible_p(__typeof__(expr), unsigned char)) + +/* evaluates to true if expr is of type curl_off_t */ +#define _curl_is_off_t(expr) \ + (__builtin_types_compatible_p(__typeof__(expr), curl_off_t)) + +/* evaluates to true if expr is abuffer suitable for CURLOPT_ERRORBUFFER */ +/* XXX: also check size of an char[] array? */ +#define _curl_is_error_buffer(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), char *) || \ + __builtin_types_compatible_p(__typeof__(expr), char[])) + +/* evaluates to true if expr is of type (const) void* or (const) FILE* */ +#if 0 +#define _curl_is_cb_data(expr) \ + (_curl_is_ptr((expr), void) || \ + _curl_is_ptr((expr), FILE)) +#else /* be less strict */ +#define _curl_is_cb_data(expr) \ + _curl_is_any_ptr(expr) +#endif + +/* evaluates to true if expr is of type FILE* */ +#define _curl_is_FILE(expr) \ + (__builtin_types_compatible_p(__typeof__(expr), FILE *)) + +/* evaluates to true if expr can be passed as POST data (void* or char*) */ +#define _curl_is_postfields(expr) \ + (_curl_is_ptr((expr), void) || \ + _curl_is_arr((expr), char)) + +/* FIXME: the whole callback checking is messy... + * The idea is to tolerate char vs. void and const vs. not const + * pointers in arguments at least + */ +/* helper: __builtin_types_compatible_p distinguishes between functions and + * function pointers, hide it */ +#define _curl_callback_compatible(func, type) \ + (__builtin_types_compatible_p(__typeof__(func), type) || \ + __builtin_types_compatible_p(__typeof__(func), type*)) + +/* evaluates to true if expr is of type curl_read_callback or "similar" */ +#define _curl_is_read_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), __typeof__(fread)) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_read_callback) || \ + _curl_callback_compatible((expr), _curl_read_callback1) || \ + _curl_callback_compatible((expr), _curl_read_callback2) || \ + _curl_callback_compatible((expr), _curl_read_callback3) || \ + _curl_callback_compatible((expr), _curl_read_callback4) || \ + _curl_callback_compatible((expr), _curl_read_callback5) || \ + _curl_callback_compatible((expr), _curl_read_callback6)) +typedef size_t (_curl_read_callback1)(char *, size_t, size_t, void*); +typedef size_t (_curl_read_callback2)(char *, size_t, size_t, const void*); +typedef size_t (_curl_read_callback3)(char *, size_t, size_t, FILE*); +typedef size_t (_curl_read_callback4)(void *, size_t, size_t, void*); +typedef size_t (_curl_read_callback5)(void *, size_t, size_t, const void*); +typedef size_t (_curl_read_callback6)(void *, size_t, size_t, FILE*); + +/* evaluates to true if expr is of type curl_write_callback or "similar" */ +#define _curl_is_write_cb(expr) \ + (_curl_is_read_cb(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), __typeof__(fwrite)) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_write_callback) || \ + _curl_callback_compatible((expr), _curl_write_callback1) || \ + _curl_callback_compatible((expr), _curl_write_callback2) || \ + _curl_callback_compatible((expr), _curl_write_callback3) || \ + _curl_callback_compatible((expr), _curl_write_callback4) || \ + _curl_callback_compatible((expr), _curl_write_callback5) || \ + _curl_callback_compatible((expr), _curl_write_callback6)) +typedef size_t (_curl_write_callback1)(const char *, size_t, size_t, void*); +typedef size_t (_curl_write_callback2)(const char *, size_t, size_t, + const void*); +typedef size_t (_curl_write_callback3)(const char *, size_t, size_t, FILE*); +typedef size_t (_curl_write_callback4)(const void *, size_t, size_t, void*); +typedef size_t (_curl_write_callback5)(const void *, size_t, size_t, + const void*); +typedef size_t (_curl_write_callback6)(const void *, size_t, size_t, FILE*); + +/* evaluates to true if expr is of type curl_ioctl_callback or "similar" */ +#define _curl_is_ioctl_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_ioctl_callback) || \ + _curl_callback_compatible((expr), _curl_ioctl_callback1) || \ + _curl_callback_compatible((expr), _curl_ioctl_callback2) || \ + _curl_callback_compatible((expr), _curl_ioctl_callback3) || \ + _curl_callback_compatible((expr), _curl_ioctl_callback4)) +typedef curlioerr (_curl_ioctl_callback1)(CURL *, int, void*); +typedef curlioerr (_curl_ioctl_callback2)(CURL *, int, const void*); +typedef curlioerr (_curl_ioctl_callback3)(CURL *, curliocmd, void*); +typedef curlioerr (_curl_ioctl_callback4)(CURL *, curliocmd, const void*); + +/* evaluates to true if expr is of type curl_sockopt_callback or "similar" */ +#define _curl_is_sockopt_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_sockopt_callback) || \ + _curl_callback_compatible((expr), _curl_sockopt_callback1) || \ + _curl_callback_compatible((expr), _curl_sockopt_callback2)) +typedef int (_curl_sockopt_callback1)(void *, curl_socket_t, curlsocktype); +typedef int (_curl_sockopt_callback2)(const void *, curl_socket_t, + curlsocktype); + +/* evaluates to true if expr is of type curl_opensocket_callback or + "similar" */ +#define _curl_is_opensocket_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_opensocket_callback) ||\ + _curl_callback_compatible((expr), _curl_opensocket_callback1) || \ + _curl_callback_compatible((expr), _curl_opensocket_callback2) || \ + _curl_callback_compatible((expr), _curl_opensocket_callback3) || \ + _curl_callback_compatible((expr), _curl_opensocket_callback4)) +typedef curl_socket_t (_curl_opensocket_callback1) + (void *, curlsocktype, struct curl_sockaddr *); +typedef curl_socket_t (_curl_opensocket_callback2) + (void *, curlsocktype, const struct curl_sockaddr *); +typedef curl_socket_t (_curl_opensocket_callback3) + (const void *, curlsocktype, struct curl_sockaddr *); +typedef curl_socket_t (_curl_opensocket_callback4) + (const void *, curlsocktype, const struct curl_sockaddr *); + +/* evaluates to true if expr is of type curl_progress_callback or "similar" */ +#define _curl_is_progress_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_progress_callback) || \ + _curl_callback_compatible((expr), _curl_progress_callback1) || \ + _curl_callback_compatible((expr), _curl_progress_callback2)) +typedef int (_curl_progress_callback1)(void *, + double, double, double, double); +typedef int (_curl_progress_callback2)(const void *, + double, double, double, double); + +/* evaluates to true if expr is of type curl_debug_callback or "similar" */ +#define _curl_is_debug_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_debug_callback) || \ + _curl_callback_compatible((expr), _curl_debug_callback1) || \ + _curl_callback_compatible((expr), _curl_debug_callback2) || \ + _curl_callback_compatible((expr), _curl_debug_callback3) || \ + _curl_callback_compatible((expr), _curl_debug_callback4) || \ + _curl_callback_compatible((expr), _curl_debug_callback5) || \ + _curl_callback_compatible((expr), _curl_debug_callback6) || \ + _curl_callback_compatible((expr), _curl_debug_callback7) || \ + _curl_callback_compatible((expr), _curl_debug_callback8)) +typedef int (_curl_debug_callback1) (CURL *, + curl_infotype, char *, size_t, void *); +typedef int (_curl_debug_callback2) (CURL *, + curl_infotype, char *, size_t, const void *); +typedef int (_curl_debug_callback3) (CURL *, + curl_infotype, const char *, size_t, void *); +typedef int (_curl_debug_callback4) (CURL *, + curl_infotype, const char *, size_t, const void *); +typedef int (_curl_debug_callback5) (CURL *, + curl_infotype, unsigned char *, size_t, void *); +typedef int (_curl_debug_callback6) (CURL *, + curl_infotype, unsigned char *, size_t, const void *); +typedef int (_curl_debug_callback7) (CURL *, + curl_infotype, const unsigned char *, size_t, void *); +typedef int (_curl_debug_callback8) (CURL *, + curl_infotype, const unsigned char *, size_t, const void *); + +/* evaluates to true if expr is of type curl_ssl_ctx_callback or "similar" */ +/* this is getting even messier... */ +#define _curl_is_ssl_ctx_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_ssl_ctx_callback) || \ + _curl_callback_compatible((expr), _curl_ssl_ctx_callback1) || \ + _curl_callback_compatible((expr), _curl_ssl_ctx_callback2) || \ + _curl_callback_compatible((expr), _curl_ssl_ctx_callback3) || \ + _curl_callback_compatible((expr), _curl_ssl_ctx_callback4) || \ + _curl_callback_compatible((expr), _curl_ssl_ctx_callback5) || \ + _curl_callback_compatible((expr), _curl_ssl_ctx_callback6) || \ + _curl_callback_compatible((expr), _curl_ssl_ctx_callback7) || \ + _curl_callback_compatible((expr), _curl_ssl_ctx_callback8)) +typedef CURLcode (_curl_ssl_ctx_callback1)(CURL *, void *, void *); +typedef CURLcode (_curl_ssl_ctx_callback2)(CURL *, void *, const void *); +typedef CURLcode (_curl_ssl_ctx_callback3)(CURL *, const void *, void *); +typedef CURLcode (_curl_ssl_ctx_callback4)(CURL *, const void *, const void *); +#ifdef HEADER_SSL_H +/* hack: if we included OpenSSL's ssl.h, we know about SSL_CTX + * this will of course break if we're included before OpenSSL headers... + */ +typedef CURLcode (_curl_ssl_ctx_callback5)(CURL *, SSL_CTX, void *); +typedef CURLcode (_curl_ssl_ctx_callback6)(CURL *, SSL_CTX, const void *); +typedef CURLcode (_curl_ssl_ctx_callback7)(CURL *, const SSL_CTX, void *); +typedef CURLcode (_curl_ssl_ctx_callback8)(CURL *, const SSL_CTX, + const void *); +#else +typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback5; +typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback6; +typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback7; +typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback8; +#endif + +/* evaluates to true if expr is of type curl_conv_callback or "similar" */ +#define _curl_is_conv_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_conv_callback) || \ + _curl_callback_compatible((expr), _curl_conv_callback1) || \ + _curl_callback_compatible((expr), _curl_conv_callback2) || \ + _curl_callback_compatible((expr), _curl_conv_callback3) || \ + _curl_callback_compatible((expr), _curl_conv_callback4)) +typedef CURLcode (*_curl_conv_callback1)(char *, size_t length); +typedef CURLcode (*_curl_conv_callback2)(const char *, size_t length); +typedef CURLcode (*_curl_conv_callback3)(void *, size_t length); +typedef CURLcode (*_curl_conv_callback4)(const void *, size_t length); + +/* evaluates to true if expr is of type curl_seek_callback or "similar" */ +#define _curl_is_seek_cb(expr) \ + (_curl_is_NULL(expr) || \ + __builtin_types_compatible_p(__typeof__(expr), curl_seek_callback) || \ + _curl_callback_compatible((expr), _curl_seek_callback1) || \ + _curl_callback_compatible((expr), _curl_seek_callback2)) +typedef CURLcode (*_curl_seek_callback1)(void *, curl_off_t, int); +typedef CURLcode (*_curl_seek_callback2)(const void *, curl_off_t, int); + + +#endif /* __CURL_TYPECHECK_GCC_H */ diff --git a/production/3rdparty/curl/include/curl/types.h b/production/3rdparty/curl/include/curl/types.h deleted file mode 100644 index d37d6ae9..00000000 --- a/production/3rdparty/curl/include/curl/types.h +++ /dev/null @@ -1 +0,0 @@ -/* not used */ diff --git a/production/3rdparty/curl/lib/libcurl-3.dll b/production/3rdparty/curl/lib/libcurl-3.dll deleted file mode 100644 index ce3ef581625c346e1143ebfe22e414ba2e971bd8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 181248 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

vy3eOVu0xXiD$x4)i?CoKyYE4= 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 z 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

A8FHA_CglVeLi06*c{^9GzyKeP&t)!iCO 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 z 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 oaT{EZKxf^K|61w_~Seb2pB)zwLK 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 diff --git a/production/3rdparty/curl/lib/libcurl.dll b/production/3rdparty/curl/lib/libcurl.dll new file mode 100755 index 0000000000000000000000000000000000000000..9f382b25ec3c0ce1e9004d9c928963bda656ab12 GIT binary patch literal 310784 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 npwg2pB?yb?!f;6{lZ^+ literal 0 HcmV?d00001 diff --git a/production/3rdparty/curl/lib/libcurl.dll.a b/production/3rdparty/curl/lib/libcurl.dll.a deleted file mode 100644 index b9102b4895e97fb595855c415f46c608708de10f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29366 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 P5*wt8| diff --git a/production/3rdparty/curl/lib/libcurl.exp b/production/3rdparty/curl/lib/libcurl.exp new file mode 100755 index 0000000000000000000000000000000000000000..54330fdd30ec7213ea27f9af9a79241f7ef29417 GIT binary patch literal 8353 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 literal 0 HcmV?d00001 diff --git a/production/3rdparty/curl/lib/libcurl.lib b/production/3rdparty/curl/lib/libcurl.lib new file mode 100755 index 0000000000000000000000000000000000000000..83bd578b6d2059d2b723087caaa34165dea361f5 GIT binary patch literal 14376 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