[ioquake3] 18/21: New upstream version 1.36+u20170803+dfsg1
Simon McVittie
smcv at debian.org
Fri Aug 4 20:39:14 UTC 2017
This is an automated email from the git hooks/post-receive script.
smcv pushed a commit to branch debian/master
in repository ioquake3.
commit 0e31de69643b6ff41d12c30cc0381a2f4c702f53
Merge: d199f3d 2955f8d
Author: Simon McVittie <smcv at debian.org>
Date: Fri Aug 4 18:34:04 2017 +0100
New upstream version 1.36+u20170803+dfsg1
code/curl-7.54.0/include/README | 55 -
code/curl-7.54.0/include/curl/curl.h | 2552 -------------------------
code/curl-7.54.0/include/curl/curlbuild.h | 586 ------
code/curl-7.54.0/include/curl/curlrules.h | 239 ---
code/curl-7.54.0/include/curl/curlver.h | 77 -
code/curl-7.54.0/include/curl/easy.h | 102 -
code/curl-7.54.0/include/curl/mprintf.h | 50 -
code/curl-7.54.0/include/curl/multi.h | 439 -----
code/curl-7.54.0/include/curl/stdcheaders.h | 33 -
code/curl-7.54.0/include/curl/system.h | 484 -----
code/curl-7.54.0/include/curl/typecheck-gcc.h | 624 ------
11 files changed, 5241 deletions(-)
diff --cc code/curl-7.54.0/include/README
index 6eb73b2,6eb73b2..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/README
+++ /dev/null
@@@ -1,55 -1,55 +1,0 @@@
-- _ _ ____ _
-- ___| | | | _ \| |
-- / __| | | | |_) | |
-- | (__| |_| | _ <| |___
-- \___|\___/|_| \_\_____|
--
--Include files for libcurl, external users.
--
--They're all placed in the curl subdirectory here for better fit in any kind
--of environment. You must include files from here using...
--
-- #include <curl/curl.h>
--
--... style and point the compiler's include path to the directory holding the
--curl subdirectory. It makes it more likely to survive future modifications.
--
--NOTE FOR LIBCURL HACKERS
--
--The following notes apply to libcurl version 7.19.0 and later.
--
--* The distributed curl/curlbuild.h file is only intended to be used on systems
-- which can not run the also distributed configure script.
--
--* The distributed curlbuild.h file is generated as a copy of curlbuild.h.dist
-- when the libcurl source code distribution archive file is originally created.
--
--* 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
-- before being able of compiling the library.
--
--* 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 intend to distribute an already compiled libcurl library you _MUST_
-- also distribute along with it the generated curl/curlbuild.h which has been
-- used to compile it. Otherwise the library will be of no use for the users of
-- the library that you have built. It is _your_ responsibility to provide this
-- file. No one at the curl project can know how you have built the library.
--
--* File curl/curlbuild.h includes platform and configuration dependent info,
-- and must not be modified by anyone. Configure script generates it for you.
--
--* We cannot assume anything else but very basic compiler features being
-- present. While libcurl requires an ANSI C compiler to build, some of the
-- earlier ANSI compilers clearly can't deal with some preprocessor operators.
--
--* Newlines must remain unix-style for older compilers' sake.
--
--* Comments must be written in the old-style /* unnested C-fashion */
--
--To figure out how to do good and portable checks for features, operating
--systems or specific hardwarare, a very good resource is Bjorn Reese's
--collection at http://predef.sf.net/
diff --cc code/curl-7.54.0/include/curl/curl.h
index 1030712,1030712..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/curl.h
+++ /dev/null
@@@ -1,2552 -1,2552 +1,0 @@@
--#ifndef __CURL_CURL_H
--#define __CURL_CURL_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel at haxx.se>, 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.
-- *
-- ***************************************************************************/
--
--/*
-- * 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" /* libcurl version defines */
--#include "system.h" /* determine things run-time */
--#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 <stdio.h>
--#include <limits.h>
--
--#if defined(__FreeBSD__) && (__FreeBSD__ >= 2)
--/* Needed for __FreeBSD_version symbol definition */
--#include <osreldate.h>
--#endif
--
--/* The include stuff here below is mainly for time_t! */
--#include <sys/types.h>
--#include <time.h>
--
--#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 <winsock2.h>
--#include <ws2tcpip.h>
--#endif
--#endif
--
--/* 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 <sys/select.h>
--#endif
--
--#if !defined(WIN32) && !defined(_WIN32_WCE)
--#include <sys/socket.h>
--#endif
--
--#if !defined(WIN32) && !defined(__WATCOMC__) && !defined(__VXWORKS__)
--#include <sys/time.h>
--#endif
--
--#ifdef __BEOS__
--#include <support/SupportDefs.h>
--#endif
--
--#ifdef __cplusplus
--extern "C" {
--#endif
--
--#if defined(BUILDING_LIBCURL) || defined(CURL_STRICTER)
--typedef struct Curl_easy CURL;
--typedef struct Curl_share CURLSH;
--#else
--typedef void CURL;
--typedef void CURLSH;
--#endif
--
--/*
-- * libcurl external API function linkage decorations.
-- */
--
--#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
--# define CURL_EXTERN
--#endif
--
--#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, see also
-- CURL_HTTPPOST_LARGE */
-- char *buffer; /* pointer to allocated buffer contents */
-- long bufferlength; /* length of buffer field */
-- char *contenttype; /* Content-Type */
-- struct curl_slist *contentheader; /* list of extra headers for this form */
-- struct curl_httppost *more; /* if one field name has more than one
-- file, this link should link to following
-- files */
-- long flags; /* as defined below */
--
--/* 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_READ_SIZE
-- /* The maximum receive buffer size configurable via CURLOPT_BUFFERSIZE. */
--#define CURL_MAX_READ_SIZE 524288
--#endif
--
--#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.
-- 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;
--};
--
--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 */
-- CURLIOE_UNKNOWNCMD, /* command was unknown to callback */
-- CURLIOE_FAILRESTART, /* failed to restart the read */
-- CURLIOE_LAST /* never use */
--} curlioerr;
--
--typedef enum {
-- CURLIOCMD_NOP, /* no operation */
-- CURLIOCMD_RESTARTREAD, /* restart the read stream from start */
-- CURLIOCMD_LAST /* never use */
--} curliocmd;
--
--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
-- * curl_global_init_mem() function to set user defined memory management
-- * callback routines.
-- */
--typedef void *(*curl_malloc_callback)(size_t size);
--typedef void (*curl_free_callback)(void *ptr);
--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,
-- CURLINFO_HEADER_IN, /* 1 */
-- CURLINFO_HEADER_OUT, /* 2 */
-- CURLINFO_DATA_IN, /* 3 */
-- CURLINFO_DATA_OUT, /* 4 */
-- CURLINFO_SSL_DATA_IN, /* 5 */
-- CURLINFO_SSL_DATA_OUT, /* 6 */
-- CURLINFO_END
--} curl_infotype;
--
--typedef int (*curl_debug_callback)
-- (CURL *handle, /* the handle/transfer this concerns */
-- curl_infotype type, /* what kind of data */
-- char *data, /* points to the data */
-- size_t size, /* size of the data pointed to */
-- void *userptr); /* whatever the user please */
--
--/* All possible error codes from all sorts of curl functions. Future versions
-- may return other values, stay prepared.
--
-- Always add new return codes last. Never *EVER* remove any. The return
-- codes must remain the same!
-- */
--
--typedef enum {
-- CURLE_OK = 0,
-- CURLE_UNSUPPORTED_PROTOCOL, /* 1 */
-- CURLE_FAILED_INIT, /* 2 */
-- CURLE_URL_MALFORMAT, /* 3 */
-- 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_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_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_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_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_OBSOLETE20, /* 20 - NOT USED */
-- CURLE_QUOTE_ERROR, /* 21 - quote command failure */
-- CURLE_HTTP_RETURNED_ERROR, /* 22 */
-- CURLE_WRITE_ERROR, /* 23 */
-- 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 */
-- /* 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_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_OBSOLETE40, /* 40 - NOT USED */
-- CURLE_FUNCTION_NOT_FOUND, /* 41 - NOT USED starting with 7.53.0 */
-- CURLE_ABORTED_BY_CALLBACK, /* 42 */
-- CURLE_BAD_FUNCTION_ARGUMENT, /* 43 */
-- CURLE_OBSOLETE44, /* 44 - NOT USED */
-- CURLE_INTERFACE_FAILED, /* 45 - CURLOPT_INTERFACE failed */
-- 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_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/bad encoding */
-- CURLE_LDAP_INVALID_URL, /* 62 - Invalid LDAP URL */
-- CURLE_FILESIZE_EXCEEDED, /* 63 - Maximum file size exceeded */
-- 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 */
-- CURLE_LOGIN_DENIED, /* 67 - user, password or similar was not
-- accepted and we failed to login */
-- CURLE_TFTP_NOTFOUND, /* 68 - file not found on server */
-- CURLE_TFTP_PERM, /* 69 - permission problem 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_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);
--
--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_HTTPS = 2, /* added in 7.52.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 */
--
--/*
-- * 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 {
-- 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! */
--
--/* Backwards compatibility with older names */
--/* These are scheduled to disappear by 2009 */
--
--#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_CCC option */
--typedef enum {
-- 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 {
-- CURLFTPAUTH_DEFAULT, /* let libcurl decide */
-- CURLFTPAUTH_SSL, /* use "AUTH SSL" */
-- CURLFTPAUTH_TLS, /* use "AUTH TLS" */
-- 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_<name>,
-- type is one of the defined CURLOPTTYPE_<type>
-- number is unique identifier */
--#ifdef CINIT
--#undef CINIT
--#endif
--
--#ifdef CURL_ISOCPP
--#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
--#endif
--
--/*
-- * This macro-mania below setups the CURLOPT_[what] enum, to be used with
-- * curl_easy_setopt(). The first argument in the CINIT() macro is the [what]
-- * word.
-- */
--
--typedef enum {
-- /* This is the FILE * or void * the regular output should be written to. */
-- CINIT(WRITEDATA, OBJECTPOINT, 1),
--
-- /* The full URL to get/put */
-- CINIT(URL, STRINGPOINT, 2),
--
-- /* Port number to connect to, if other than default. */
-- CINIT(PORT, LONG, 3),
--
-- /* Name of proxy to use. */
-- CINIT(PROXY, STRINGPOINT, 4),
--
-- /* "user:password;options" to use when fetching. */
-- CINIT(USERPWD, STRINGPOINT, 5),
--
-- /* "user:password" to use with proxy. */
-- CINIT(PROXYUSERPWD, STRINGPOINT, 6),
--
-- /* Range to get, specified as an ASCII string. */
-- CINIT(RANGE, STRINGPOINT, 7),
--
-- /* not used */
--
-- /* Specified file stream to upload from (use as input): */
-- 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: */
-- CINIT(ERRORBUFFER, OBJECTPOINT, 10),
--
-- /* Function that will be called to store the output (instead of fwrite). The
-- * parameters will use fwrite() syntax, make sure to follow them. */
-- CINIT(WRITEFUNCTION, FUNCTIONPOINT, 11),
--
-- /* Function that will be called to read the input (instead of fread). The
-- * parameters will use fread() syntax, make sure to follow them. */
-- CINIT(READFUNCTION, FUNCTIONPOINT, 12),
--
-- /* Time-out the read operation after this amount of seconds */
-- CINIT(TIMEOUT, LONG, 13),
--
-- /* 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 successful. -1 means
-- * unknown size.
-- *
-- * For large file support, there is also a _LARGE version of the key
-- * which takes an off_t type, allowing platforms with larger off_t
-- * sizes to handle larger files. See below for INFILESIZE_LARGE.
-- */
-- CINIT(INFILESIZE, LONG, 14),
--
-- /* POST static input fields. */
-- CINIT(POSTFIELDS, OBJECTPOINT, 15),
--
-- /* 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, STRINGPOINT, 17),
--
-- /* Set the User-Agent string (examined by some CGIs) */
-- CINIT(USERAGENT, STRINGPOINT, 18),
--
-- /* If the download receives less than "low speed limit" bytes/second
-- * during "low speed time" seconds, the operations is aborted.
-- * You could i.e if you have a pretty high speed connection, abort if
-- * it is less than 2000 bytes/sec during 20 seconds.
-- */
--
-- /* Set the "low speed limit" */
-- CINIT(LOW_SPEED_LIMIT, LONG, 19),
--
-- /* Set the "low speed time" */
-- CINIT(LOW_SPEED_TIME, LONG, 20),
--
-- /* Set the continuation offset.
-- *
-- * Note there is also a _LARGE version of this key which uses
-- * off_t types, allowing for large file offsets on platforms which
-- * use larger-than-32-bit off_t's. Look below for RESUME_FROM_LARGE.
-- */
-- CINIT(RESUME_FROM, LONG, 21),
--
-- /* Set cookie in request: */
-- CINIT(COOKIE, STRINGPOINT, 22),
--
-- /* 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 curl_httppost */
-- CINIT(HTTPPOST, OBJECTPOINT, 24),
--
-- /* name of the file keeping your private SSL-certificate */
-- CINIT(SSLCERT, STRINGPOINT, 25),
--
-- /* password for the SSL or SSH private key */
-- CINIT(KEYPASSWD, STRINGPOINT, 26),
--
-- /* send TYPE parameter? */
-- CINIT(CRLF, LONG, 27),
--
-- /* send linked-list of QUOTE commands */
-- CINIT(QUOTE, OBJECTPOINT, 28),
--
-- /* send FILE * or void * to store headers to, if you use a callback it
-- is simply passed to the callback unmodified */
-- CINIT(HEADERDATA, OBJECTPOINT, 29),
--
-- /* point to a file to read the initial cookies from, also enables
-- "cookie awareness" */
-- CINIT(COOKIEFILE, STRINGPOINT, 31),
--
-- /* What version to specifically try to use.
-- See CURL_SSLVERSION defines below. */
-- CINIT(SSLVERSION, LONG, 32),
--
-- /* What kind of HTTP time condition to use, see defines */
-- CINIT(TIMECONDITION, LONG, 33),
--
-- /* Time to use with the above condition. Specified in number of seconds
-- since 1 Jan 1970 */
-- CINIT(TIMEVALUE, LONG, 34),
--
-- /* 35 = OBSOLETE */
--
-- /* Custom request, for customizing the get command like
-- HTTP: DELETE, TRACE and others
-- FTP: to use a different list command
-- */
-- CINIT(CUSTOMREQUEST, STRINGPOINT, 36),
--
-- /* FILE handle to use instead of stderr */
-- CINIT(STDERR, OBJECTPOINT, 37),
--
-- /* 38 is not used */
--
-- /* send linked-list of post-transfer QUOTE commands */
-- CINIT(POSTQUOTE, OBJECTPOINT, 39),
--
-- 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 >= 400 */
-- CINIT(UPLOAD, LONG, 46), /* this is an upload */
-- CINIT(POST, LONG, 47), /* HTTP POST method */
-- CINIT(DIRLISTONLY, LONG, 48), /* bare names when listing directories */
--
-- 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. */
-- CINIT(NETRC, LONG, 51),
--
-- CINIT(FOLLOWLOCATION, LONG, 52), /* use Location: Luke! */
--
-- CINIT(TRANSFERTEXT, LONG, 53), /* transfer data in text/ASCII format */
-- CINIT(PUT, LONG, 54), /* HTTP PUT */
--
-- /* 55 = OBSOLETE */
--
-- /* 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 CURLOPT_PROGRESSFUNCTION and CURLOPT_XFERINFOFUNCTION
-- callbacks */
-- CINIT(PROGRESSDATA, OBJECTPOINT, 57),
--#define CURLOPT_XFERINFODATA CURLOPT_PROGRESSDATA
--
-- /* 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:
-- "[host]:[port]" */
-- CINIT(PROXYPORT, LONG, 59),
--
-- /* size of the POST input data, if strlen() is not good to use */
-- CINIT(POSTFIELDSIZE, LONG, 60),
--
-- /* tunnel non-http operations through a HTTP proxy */
-- CINIT(HTTPPROXYTUNNEL, LONG, 61),
--
-- /* Set the interface string to use as outgoing network interface */
-- CINIT(INTERFACE, STRINGPOINT, 62),
--
-- /* 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, STRINGPOINT, 65),
--
-- /* 66 = OBSOLETE */
-- /* 67 = OBSOLETE */
--
-- /* Maximum number of http redirects to follow */
-- CINIT(MAXREDIRS, LONG, 68),
--
-- /* Pass a long set to 1 to get the date of the requested document (if
-- possible)! Pass a zero to shut it off. */
-- CINIT(FILETIME, LONG, 69),
--
-- /* This points to a linked list of telnet options */
-- CINIT(TELNETOPTIONS, OBJECTPOINT, 70),
--
-- /* Max amount of cached alive connections */
-- CINIT(MAXCONNECTS, LONG, 71),
--
-- CINIT(OBSOLETE72, LONG, 72), /* OBSOLETE, do not use! */
--
-- /* 73 = OBSOLETE */
--
-- /* Set to explicitly use a new connection for the upcoming transfer.
-- Do not use this unless you're absolutely sure of this, as it makes the
-- operation slower and is less friendly for the network. */
-- CINIT(FRESH_CONNECT, LONG, 74),
--
-- /* Set to explicitly forbid the upcoming transfer's connection to be re-used
-- when done. Do not use this unless you're absolutely sure of this, as it
-- makes the operation slower and is less friendly for the network. */
-- CINIT(FORBID_REUSE, LONG, 75),
--
-- /* 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, STRINGPOINT, 76),
--
-- /* Set to the Entropy Gathering Daemon socket pathname */
-- 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. */
-- CINIT(CONNECTTIMEOUT, LONG, 78),
--
-- /* Function that will be called to store headers (instead of fwrite). The
-- * parameters will use fwrite() syntax, make sure to follow them. */
-- CINIT(HEADERFUNCTION, FUNCTIONPOINT, 79),
--
-- /* Set this to force the HTTP request to get back to GET. Only really usable
-- if POST, PUT or a custom request have been used first.
-- */
-- CINIT(HTTPGET, LONG, 80),
--
-- /* Set if we should verify the Common name from the peer certificate in ssl
-- * handshake, set 1 to check existence, 2 to ensure that it matches the
-- * provided hostname. */
-- CINIT(SSL_VERIFYHOST, LONG, 81),
--
-- /* 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, STRINGPOINT, 82),
--
-- /* Specify which SSL ciphers to use */
-- 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),
--
-- /* 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, STRINGPOINT, 86),
--
-- /* name of the file keeping your private SSL-key */
-- CINIT(SSLKEY, STRINGPOINT, 87),
--
-- /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */
-- CINIT(SSLKEYTYPE, STRINGPOINT, 88),
--
-- /* crypto engine for the SSL-sub system */
-- CINIT(SSLENGINE, STRINGPOINT, 89),
--
-- /* set the crypto engine for the SSL-sub system as default
-- the param has no meaning...
-- */
-- CINIT(SSLENGINE_DEFAULT, LONG, 90),
--
-- /* Non-zero value means to use the global dns cache */
-- 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 */
-- CINIT(PREQUOTE, OBJECTPOINT, 93),
--
-- /* set the debug function */
-- CINIT(DEBUGFUNCTION, FUNCTIONPOINT, 94),
--
-- /* set the data for the debug function */
-- CINIT(DEBUGDATA, OBJECTPOINT, 95),
--
-- /* mark this as start of a cookie session */
-- CINIT(COOKIESESSION, LONG, 96),
--
-- /* The CApath directory used to validate the peer certificate
-- this option is used only if SSL_VERIFYPEER is true */
-- CINIT(CAPATH, STRINGPOINT, 97),
--
-- /* Instruct libcurl to use a smaller receive buffer */
-- CINIT(BUFFERSIZE, LONG, 98),
--
-- /* Instruct libcurl to not use any signal/alarm handlers, even when using
-- timeouts. This option is useful for multi-threaded applications.
-- See libcurl-the-guide for more background information. */
-- CINIT(NOSIGNAL, LONG, 99),
--
-- /* Provide a CURLShare for mutexing non-ts data */
-- CINIT(SHARE, OBJECTPOINT, 100),
--
-- /* indicates type of proxy. accepted values are CURLPROXY_HTTP (default),
-- CURLPROXY_HTTPS, 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. Before 7.21.6, this was known as
-- CURLOPT_ENCODING */
-- CINIT(ACCEPT_ENCODING, STRINGPOINT, 102),
--
-- /* Set pointer to private data */
-- CINIT(PRIVATE, OBJECTPOINT, 103),
--
-- /* Set aliases for HTTP 200 in the HTTP Response header */
-- CINIT(HTTP200ALIASES, OBJECTPOINT, 104),
--
-- /* Continue to send authentication (user+password) when following locations,
-- even when hostname changed. This can potentially send off the name
-- and password to whatever host the server decides. */
-- CINIT(UNRESTRICTED_AUTH, LONG, 105),
--
-- /* 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),
--
-- /* Set this to a bitmask value to enable the particular authentications
-- methods you like. Use this in combination with CURLOPT_USERPWD.
-- Note that setting multiple bits may cause extra network round-trips. */
-- CINIT(HTTPAUTH, LONG, 107),
--
-- /* Set the ssl context callback function, currently only for OpenSSL ssl_ctx
-- in second argument. The function must be matching the
-- curl_ssl_ctx_callback proto. */
-- CINIT(SSL_CTX_FUNCTION, FUNCTIONPOINT, 108),
--
-- /* Set the userdata for the ssl context callback function's third
-- argument */
-- CINIT(SSL_CTX_DATA, OBJECTPOINT, 109),
--
-- /* 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
-- methods you like. Use this in combination with CURLOPT_PROXYUSERPWD.
-- Note that setting multiple bits may cause extra network round-trips. */
-- CINIT(PROXYAUTH, LONG, 111),
--
-- /* FTP option that changes the timeout, in seconds, associated with
-- 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),
--#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
-- affect on systems with support for more than one, i.e IPv4 _and_ IPv6. */
-- CINIT(IPRESOLVE, LONG, 113),
--
-- /* Set this option to limit the size of a file that will be downloaded from
-- an HTTP or FTP server.
--
-- Note there is also _LARGE version which adds large file support for
-- platforms which have larger off_t sizes. See MAXFILESIZE_LARGE below. */
-- CINIT(MAXFILESIZE, LONG, 114),
--
-- /* See the comment for INFILESIZE above, but in short, specifies
-- * the size of the file being uploaded. -1 means unknown.
-- */
-- CINIT(INFILESIZE_LARGE, OFF_T, 115),
--
-- /* Sets the continuation offset. There is also a LONG version of this;
-- * look above for RESUME_FROM.
-- */
-- CINIT(RESUME_FROM_LARGE, OFF_T, 116),
--
-- /* Sets the maximum size of data that will be downloaded from
-- * an HTTP or FTP server. See MAXFILESIZE above for the LONG version.
-- */
-- CINIT(MAXFILESIZE_LARGE, OFF_T, 117),
--
-- /* Set this option to the file name of your .netrc file you want libcurl
-- 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, STRINGPOINT, 118),
--
-- /* Enable SSL/TLS for FTP, pick one of:
-- 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(USE_SSL, LONG, 119),
--
-- /* The _LARGE version of the standard POSTFIELDSIZE option */
-- CINIT(POSTFIELDSIZE_LARGE, OFF_T, 120),
--
-- /* Enable/disable the TCP Nagle algorithm */
-- CINIT(TCP_NODELAY, LONG, 121),
--
-- /* 122 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-- /* 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 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.
--
-- Available parameters are:
-- CURLFTPAUTH_DEFAULT - let libcurl decide
-- CURLFTPAUTH_SSL - try "AUTH SSL" first, then TLS
-- CURLFTPAUTH_TLS - try "AUTH TLS" first, then SSL
-- */
-- CINIT(FTPSSLAUTH, LONG, 129),
--
-- CINIT(IOCTLFUNCTION, FUNCTIONPOINT, 130),
-- CINIT(IOCTLDATA, OBJECTPOINT, 131),
--
-- /* 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, STRINGPOINT, 134),
--
-- /* feed cookie into cookie engine */
-- CINIT(COOKIELIST, STRINGPOINT, 135),
--
-- /* ignore Content-Length */
-- CINIT(IGNORE_CONTENT_LENGTH, LONG, 136),
--
-- /* Set to non-zero to skip the IP address received in a 227 PASV FTP server
-- response. Typically used for FTP-SSL purposes but is not restricted to
-- that. libcurl will then instead use the same IP address it used for the
-- control connection. */
-- CINIT(FTP_SKIP_PASV_IP, LONG, 137),
--
-- /* Select "file method" to use when doing FTP, see the curl_ftpmethod
-- above. */
-- CINIT(FTP_FILEMETHOD, LONG, 138),
--
-- /* Local port number to bind the socket to */
-- CINIT(LOCALPORT, LONG, 139),
--
-- /* 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),
--
-- /* 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=<a|i>) 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 milliseconds. */
-- 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),
--
-- /* Continue to send data if the server responds early with an
-- * HTTP status code >= 300 */
-- CINIT(KEEP_SENDING_ON_ERROR, LONG, 245),
--
-- /* The CApath or CAfile used to validate the proxy certificate
-- this option is used only if PROXY_SSL_VERIFYPEER is true */
-- CINIT(PROXY_CAINFO, STRINGPOINT, 246),
--
-- /* The CApath directory used to validate the proxy certificate
-- this option is used only if PROXY_SSL_VERIFYPEER is true */
-- CINIT(PROXY_CAPATH, STRINGPOINT, 247),
--
-- /* Set if we should verify the proxy in ssl handshake,
-- set 1 to verify. */
-- CINIT(PROXY_SSL_VERIFYPEER, LONG, 248),
--
-- /* Set if we should verify the Common name from the proxy certificate in ssl
-- * handshake, set 1 to check existence, 2 to ensure that it matches
-- * the provided hostname. */
-- CINIT(PROXY_SSL_VERIFYHOST, LONG, 249),
--
-- /* What version to specifically try to use for proxy.
-- See CURL_SSLVERSION defines below. */
-- CINIT(PROXY_SSLVERSION, LONG, 250),
--
-- /* Set a username for authenticated TLS for proxy */
-- CINIT(PROXY_TLSAUTH_USERNAME, STRINGPOINT, 251),
--
-- /* Set a password for authenticated TLS for proxy */
-- CINIT(PROXY_TLSAUTH_PASSWORD, STRINGPOINT, 252),
--
-- /* Set authentication type for authenticated TLS for proxy */
-- CINIT(PROXY_TLSAUTH_TYPE, STRINGPOINT, 253),
--
-- /* name of the file keeping your private SSL-certificate for proxy */
-- CINIT(PROXY_SSLCERT, STRINGPOINT, 254),
--
-- /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") for
-- proxy */
-- CINIT(PROXY_SSLCERTTYPE, STRINGPOINT, 255),
--
-- /* name of the file keeping your private SSL-key for proxy */
-- CINIT(PROXY_SSLKEY, STRINGPOINT, 256),
--
-- /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") for
-- proxy */
-- CINIT(PROXY_SSLKEYTYPE, STRINGPOINT, 257),
--
-- /* password for the SSL private key for proxy */
-- CINIT(PROXY_KEYPASSWD, STRINGPOINT, 258),
--
-- /* Specify which SSL ciphers to use for proxy */
-- CINIT(PROXY_SSL_CIPHER_LIST, STRINGPOINT, 259),
--
-- /* CRL file for proxy */
-- CINIT(PROXY_CRLFILE, STRINGPOINT, 260),
--
-- /* Enable/disable specific SSL features with a bitmask for proxy, see
-- CURLSSLOPT_* */
-- CINIT(PROXY_SSL_OPTIONS, LONG, 261),
--
-- /* Name of pre proxy to use. */
-- CINIT(PRE_PROXY, STRINGPOINT, 262),
--
-- /* The public key in DER form used to validate the proxy public key
-- this option is used only if PROXY_SSL_VERIFYPEER is true */
-- CINIT(PROXY_PINNEDPUBLICKEY, STRINGPOINT, 263),
--
-- /* Path to an abstract Unix domain socket */
-- CINIT(ABSTRACT_UNIX_SOCKET, STRINGPOINT, 264),
--
-- /* Suppress proxy CONNECT response headers from user callbacks */
-- CINIT(SUPPRESS_CONNECT_HEADERS, LONG, 265),
--
-- CURLOPT_LASTENTRY /* the last unused */
--} CURLoption;
--
--#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
-- the obsolete stuff removed! */
--
--/* 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 */
--#undef CURLOPT_DNS_USE_GLOBAL_CACHE /* soon obsolete */
--#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
-- like the library to choose the best possible
-- 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.
-- * This is the default. */
-- CURL_NETRC_OPTIONAL, /* A user:password in the URL will be preferred
-- * to one in the .netrc. */
-- CURL_NETRC_REQUIRED, /* A user:password in the URL will be ignored.
-- * Unless one is set programmatically, the .netrc
-- * will be queried. */
-- CURL_NETRC_LAST
--};
--
--enum {
-- CURL_SSLVERSION_DEFAULT,
-- 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_TLSv1_3,
--
-- CURL_SSLVERSION_LAST /* never use, keep last */
--};
--
--enum {
-- CURL_SSLVERSION_MAX_NONE = 0,
-- CURL_SSLVERSION_MAX_DEFAULT = (CURL_SSLVERSION_TLSv1 << 16),
-- CURL_SSLVERSION_MAX_TLSv1_0 = (CURL_SSLVERSION_TLSv1_0 << 16),
-- CURL_SSLVERSION_MAX_TLSv1_1 = (CURL_SSLVERSION_TLSv1_1 << 16),
-- CURL_SSLVERSION_MAX_TLSv1_2 = (CURL_SSLVERSION_TLSv1_2 << 16),
-- CURL_SSLVERSION_MAX_TLSv1_3 = (CURL_SSLVERSION_TLSv1_3 << 16),
--
-- /* never use, keep last */
-- CURL_SSLVERSION_MAX_LAST = (CURL_SSLVERSION_LAST << 16)
--};
--
--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,
--
-- CURL_TIMECOND_IFMODSINCE,
-- CURL_TIMECOND_IFUNMODSINCE,
-- CURL_TIMECOND_LASTMOD,
--
-- CURL_TIMECOND_LAST
--} curl_TimeCond;
--
--
--/* curl_strequal() and curl_strnequal() are subject for removal in a future
-- libcurl, see lib/README.curlx for details
--
-- !checksrc! disable SPACEBEFOREPAREN 2
--*/
--CURL_EXTERN int (curl_strequal)(const char *s1, const char *s2);
--CURL_EXTERN int (curl_strnequal)(const char *s1, const char *s2, size_t n);
--
--/* name is uppercase CURLFORM_<name> */
--#ifdef CFINIT
--#undef CFINIT
--#endif
--
--#ifdef CURL_ISOCPP
--#define CFINIT(name) CURLFORM_ ## name
--#else
--/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */
--#define CFINIT(name) CURLFORM_/**/name
--#endif
--
--typedef enum {
-- CFINIT(NOTHING), /********* the first one is unused ************/
--
-- /* */
-- CFINIT(COPYNAME),
-- CFINIT(PTRNAME),
-- CFINIT(NAMELENGTH),
-- CFINIT(COPYCONTENTS),
-- CFINIT(PTRCONTENTS),
-- CFINIT(CONTENTSLENGTH),
-- CFINIT(FILECONTENT),
-- CFINIT(ARRAY),
-- CFINIT(OBSOLETE),
-- CFINIT(FILE),
--
-- CFINIT(BUFFER),
-- CFINIT(BUFFERPTR),
-- CFINIT(BUFFERLENGTH),
--
-- CFINIT(CONTENTTYPE),
-- CFINIT(CONTENTHEADER),
-- CFINIT(FILENAME),
-- CFINIT(END),
-- CFINIT(OBSOLETE2),
--
-- CFINIT(STREAM),
-- CFINIT(CONTENTLEN), /* added in 7.46.0, provide a curl_off_t length */
--
-- CURLFORM_LASTENTRY /* the last unused */
--} CURLformoption;
--
--#undef CFINIT /* done */
--
--/* structure to be used as parameter for CURLFORM_ARRAY */
--struct curl_forms {
-- CURLformoption option;
-- const char *value;
--};
--
--/* use this for multipart formpost building */
--/* Returns code for curl_formadd()
-- *
-- * Returns:
-- * CURL_FORMADD_OK on success
-- * CURL_FORMADD_MEMORY if the FormInfo allocation fails
-- * CURL_FORMADD_OPTION_TWICE if one option is given twice for one Form
-- * CURL_FORMADD_NULL if a null pointer was given for a char
-- * 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 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
-- *
-- ***************************************************************************/
--typedef enum {
-- CURL_FORMADD_OK, /* first, no error */
--
-- CURL_FORMADD_MEMORY,
-- CURL_FORMADD_OPTION_TWICE,
-- CURL_FORMADD_NULL,
-- CURL_FORMADD_UNKNOWN_OPTION,
-- CURL_FORMADD_INCOMPLETE,
-- CURL_FORMADD_ILLEGAL_ARRAY,
-- CURL_FORMADD_DISABLED, /* libcurl was built with this disabled */
--
-- CURL_FORMADD_LAST /* last */
--} CURLFORMcode;
--
--/*
-- * NAME curl_formadd()
-- *
-- * DESCRIPTION
-- *
-- * 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.
-- */
--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()
-- *
-- * DESCRIPTION
-- *
-- * Free a multipart formpost previously built with curl_formadd().
-- */
--CURL_EXTERN void curl_formfree(struct curl_httppost *form);
--
--/*
-- * NAME curl_getenv()
-- *
-- * DESCRIPTION
-- *
-- * Returns a malloc()'ed string that MUST be curl_free()ed after usage is
-- * complete. DEPRECATED - see lib/README.curlx
-- */
--CURL_EXTERN char *curl_getenv(const char *variable);
--
--/*
-- * NAME curl_version()
-- *
-- * DESCRIPTION
-- *
-- * Returns a static ascii string of the libcurl version.
-- */
--CURL_EXTERN char *curl_version(void);
--
--/*
-- * NAME curl_easy_escape()
-- *
-- * DESCRIPTION
-- *
-- * Escapes URL strings (converts all letters consider illegal in URLs to their
-- * %XX versions). This function returns a new allocated string or NULL if an
-- * error occurred.
-- */
--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_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_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()
-- *
-- * DESCRIPTION
-- *
-- * Provided for de-allocation in the same translation unit that did the
-- * allocation. Added in libcurl 7.10
-- */
--CURL_EXTERN void curl_free(void *p);
--
--/*
-- * NAME curl_global_init()
-- *
-- * DESCRIPTION
-- *
-- * curl_global_init() should be invoked exactly once for each application that
-- * uses libcurl and before any call of other libcurl functions.
-- *
-- * This function is not thread-safe!
-- */
--CURL_EXTERN CURLcode curl_global_init(long flags);
--
--/*
-- * NAME curl_global_init_mem()
-- *
-- * DESCRIPTION
-- *
-- * curl_global_init() or curl_global_init_mem() should be invoked exactly once
-- * for each application that uses libcurl. This function can be used to
-- * initialize libcurl and set user defined memory management callback
-- * functions. Users can implement memory management routines to check for
-- * memory leaks, check for mis-use of the curl library etc. User registered
-- * callback routines with be invoked by this library instead of the system
-- * memory management routines like malloc, free etc.
-- */
--CURL_EXTERN CURLcode curl_global_init_mem(long flags,
-- curl_malloc_callback m,
-- curl_free_callback f,
-- curl_realloc_callback r,
-- curl_strdup_callback s,
-- curl_calloc_callback c);
--
--/*
-- * NAME curl_global_cleanup()
-- *
-- * DESCRIPTION
-- *
-- * curl_global_cleanup() should be invoked exactly once for each application
-- * that uses libcurl
-- */
--CURL_EXTERN void curl_global_cleanup(void);
--
--/* linked-list structure for the CURLOPT_QUOTE option (and other) */
--struct curl_slist {
-- char *data;
-- struct curl_slist *next;
--};
--
--/*
-- * NAME curl_slist_append()
-- *
-- * DESCRIPTION
-- *
-- * Appends a string to a linked list. If no list exists, it will be created
-- * first. Returns the new list, after appending.
-- */
--CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *,
-- const char *);
--
--/*
-- * NAME curl_slist_free_all()
-- *
-- * DESCRIPTION
-- *
-- * free a previously built curl_slist.
-- */
--CURL_EXTERN void curl_slist_free_all(struct curl_slist *);
--
--/*
-- * NAME curl_getdate()
-- *
-- * DESCRIPTION
-- *
-- * Returns the time, in seconds since 1 Jan 1970 of the time string given in
-- * the first argument. The time argument in the second parameter is unused
-- * and should be set to NULL.
-- */
--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
--
--typedef enum {
-- CURLINFO_NONE, /* first, never use this */
-- CURLINFO_EFFECTIVE_URL = CURLINFO_STRING + 1,
-- CURLINFO_RESPONSE_CODE = CURLINFO_LONG + 2,
-- CURLINFO_TOTAL_TIME = CURLINFO_DOUBLE + 3,
-- CURLINFO_NAMELOOKUP_TIME = CURLINFO_DOUBLE + 4,
-- CURLINFO_CONNECT_TIME = CURLINFO_DOUBLE + 5,
-- CURLINFO_PRETRANSFER_TIME = CURLINFO_DOUBLE + 6,
-- CURLINFO_SIZE_UPLOAD = CURLINFO_DOUBLE + 7,
-- CURLINFO_SIZE_DOWNLOAD = CURLINFO_DOUBLE + 8,
-- CURLINFO_SPEED_DOWNLOAD = CURLINFO_DOUBLE + 9,
-- CURLINFO_SPEED_UPLOAD = CURLINFO_DOUBLE + 10,
-- CURLINFO_HEADER_SIZE = CURLINFO_LONG + 11,
-- CURLINFO_REQUEST_SIZE = CURLINFO_LONG + 12,
-- CURLINFO_SSL_VERIFYRESULT = CURLINFO_LONG + 13,
-- CURLINFO_FILETIME = CURLINFO_LONG + 14,
-- CURLINFO_CONTENT_LENGTH_DOWNLOAD = CURLINFO_DOUBLE + 15,
-- CURLINFO_CONTENT_LENGTH_UPLOAD = CURLINFO_DOUBLE + 16,
-- CURLINFO_STARTTRANSFER_TIME = CURLINFO_DOUBLE + 17,
-- CURLINFO_CONTENT_TYPE = CURLINFO_STRING + 18,
-- CURLINFO_REDIRECT_TIME = CURLINFO_DOUBLE + 19,
-- CURLINFO_REDIRECT_COUNT = CURLINFO_LONG + 20,
-- CURLINFO_PRIVATE = CURLINFO_STRING + 21,
-- CURLINFO_HTTP_CONNECTCODE = CURLINFO_LONG + 22,
-- CURLINFO_HTTPAUTH_AVAIL = CURLINFO_LONG + 23,
-- CURLINFO_PROXYAUTH_AVAIL = CURLINFO_LONG + 24,
-- CURLINFO_OS_ERRNO = CURLINFO_LONG + 25,
-- 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,
-- CURLINFO_PROXY_SSL_VERIFYRESULT = CURLINFO_LONG + 47,
-- CURLINFO_PROTOCOL = CURLINFO_LONG + 48,
-- CURLINFO_SCHEME = CURLINFO_STRING + 49,
-- /* Fill in new entries below here! */
--
-- CURLINFO_LASTONE = 49
--} CURLINFO;
--
--/* CURLINFO_RESPONSE_CODE is the new name for the option previously known as
-- CURLINFO_HTTP_CODE */
--#define CURLINFO_HTTP_CODE CURLINFO_RESPONSE_CODE
--
--typedef enum {
-- CURLCLOSEPOLICY_NONE, /* first, never use this */
--
-- CURLCLOSEPOLICY_OLDEST,
-- CURLCLOSEPOLICY_LEAST_RECENTLY_USED,
-- CURLCLOSEPOLICY_LEAST_TRAFFIC,
-- CURLCLOSEPOLICY_SLOWEST,
-- CURLCLOSEPOLICY_CALLBACK,
--
-- CURLCLOSEPOLICY_LAST /* last, never use this */
--} curl_closepolicy;
--
--#define CURL_GLOBAL_SSL (1<<0)
--#define CURL_GLOBAL_WIN32 (1<<1)
--#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)
--
--
--/*****************************************************************************
-- * Setup defines, protos etc for the sharing stuff.
-- */
--
--/* Different data locks for a single share */
--typedef enum {
-- CURL_LOCK_DATA_NONE = 0,
-- /* CURL_LOCK_DATA_SHARE is used internally to say that
-- * the locking is just made to change the internal state of the share
-- * itself.
-- */
-- CURL_LOCK_DATA_SHARE,
-- CURL_LOCK_DATA_COOKIE,
-- CURL_LOCK_DATA_DNS,
-- CURL_LOCK_DATA_SSL_SESSION,
-- CURL_LOCK_DATA_CONNECT,
-- CURL_LOCK_DATA_LAST
--} curl_lock_data;
--
--/* Different lock access types */
--typedef enum {
-- CURL_LOCK_ACCESS_NONE = 0, /* unspecified action */
-- CURL_LOCK_ACCESS_SHARED = 1, /* for read perhaps */
-- CURL_LOCK_ACCESS_SINGLE = 2, /* for write perhaps */
-- CURL_LOCK_ACCESS_LAST /* never use */
--} curl_lock_access;
--
--typedef void (*curl_lock_function)(CURL *handle,
-- curl_lock_data data,
-- curl_lock_access locktype,
-- void *userptr);
--typedef void (*curl_unlock_function)(CURL *handle,
-- curl_lock_data data,
-- void *userptr);
--
--
--typedef enum {
-- CURLSHE_OK, /* all is fine */
-- CURLSHE_BAD_OPTION, /* 1 */
-- CURLSHE_IN_USE, /* 2 */
-- CURLSHE_INVALID, /* 3 */
-- 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 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
-- callback functions */
-- CURLSHOPT_LAST /* never use */
--} CURLSHoption;
--
--CURL_EXTERN CURLSH *curl_share_init(void);
--CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *, CURLSHoption option, ...);
--CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *);
--
--/****************************************************************************
-- * Structures for querying information about the curl library at runtime.
-- */
--
--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
-- 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_FOURTH
--
--typedef struct {
-- CURLversion age; /* age of the returned struct */
-- const char *version; /* LIBCURL_VERSION */
-- unsigned int version_num; /* LIBCURL_VERSION_NUM */
-- const char *host; /* OS/host/cpu/machine when configured */
-- int features; /* bitmask, see defines below */
-- const char *ssl_version; /* human readable string */
-- long ssl_version_num; /* not used anymore, always 0 */
-- const char *libz_version; /* human readable string */
-- /* protocols is terminated by an entry with a NULL protoname */
-- const char * const *protocols;
--
-- /* The fields below this were added in CURLVERSION_SECOND */
-- const char *ares;
-- int ares_num;
--
-- /* This field was added in CURLVERSION_THIRD */
-- const char *libidn;
--
-- /* 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 supported */
--#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 */
--#define CURL_VERSION_HTTPS_PROXY (1<<21) /* HTTPS-proxy support built-in */
--
-- /*
-- * NAME curl_version_info()
-- *
-- * DESCRIPTION
-- *
-- * This function returns a pointer to a static copy of the version info
-- * struct. See above.
-- */
--CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion);
--
--/*
-- * NAME curl_easy_strerror()
-- *
-- * DESCRIPTION
-- *
-- * The curl_easy_strerror function may be used to turn a CURLcode value
-- * into the equivalent human readable error string. This is useful
-- * for printing meaningful error messages.
-- */
--CURL_EXTERN const char *curl_easy_strerror(CURLcode);
--
--/*
-- * NAME curl_share_strerror()
-- *
-- * DESCRIPTION
-- *
-- * The curl_share_strerror function may be used to turn a CURLSHcode value
-- * into the equivalent human readable error string. This is useful
-- * for printing meaningful error messages.
-- */
--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
--
--/* unfortunately, the easy.h and multi.h include files need options and info
-- stuff before they can be included! */
--#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 --cc code/curl-7.54.0/include/curl/curlbuild.h
index f596c60,f596c60..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/curlbuild.h
+++ /dev/null
@@@ -1,586 -1,586 +1,0 @@@
--#ifndef __CURL_CURLBUILD_H
--#define __CURL_CURLBUILD_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel at haxx.se>, 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(__powerpc__) || 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(__powerpc64__) || 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 <sys/types.h>
--#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 <sys/socket.h>
--#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 --cc code/curl-7.54.0/include/curl/curlrules.h
index 0abd9f7,0abd9f7..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/curlrules.h
+++ /dev/null
@@@ -1,239 -1,239 +1,0 @@@
--#ifndef __CURL_CURLRULES_H
--#define __CURL_CURLRULES_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel at haxx.se>, 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_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
--
--#endif /* __CURL_CURLRULES_H */
diff --cc code/curl-7.54.0/include/curl/curlver.h
index 95a2cbb,95a2cbb..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/curlver.h
+++ /dev/null
@@@ -1,77 -1,77 +1,0 @@@
--#ifndef __CURL_CURLVER_H
--#define __CURL_CURLVER_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel at haxx.se>, 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.
-- *
-- ***************************************************************************/
--
--/* 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 - 2017 Daniel Stenberg, <daniel at haxx.se>."
--
--/* This is the version number of the libcurl package from which this header
-- file origins: */
--#define LIBCURL_VERSION "7.54.0"
--
--/* The numeric version number is also available "in parts" by using these
-- defines: */
--#define LIBCURL_VERSION_MAJOR 7
--#define LIBCURL_VERSION_MINOR 54
--#define LIBCURL_VERSION_PATCH 0
--
--/* This is the numeric version of the libcurl version number, meant for easier
-- parsing and comparions by programs. The LIBCURL_VERSION_NUM define will
-- always follow this syntax:
--
-- 0xXXYYZZ
--
-- Where XX, YY and ZZ are the main version, release and patch numbers in
-- hexadecimal (using 8 bits each). All three numbers are always represented
-- using two digits. 1.2 would appear as "0x010200" while version 9.11.7
-- appears as "0x090b07".
--
-- 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 0x073600
--
--/*
-- * 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 Apr 19 05:43:55 UTC 2017"
--
--#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 --cc code/curl-7.54.0/include/curl/easy.h
index 752c504,752c504..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/easy.h
+++ /dev/null
@@@ -1,102 -1,102 +1,0 @@@
--#ifndef __CURL_EASY_H
--#define __CURL_EASY_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel at haxx.se>, 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.
-- *
-- ***************************************************************************/
--#ifdef __cplusplus
--extern "C" {
--#endif
--
--CURL_EXTERN CURL *curl_easy_init(void);
--CURL_EXTERN CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...);
--CURL_EXTERN CURLcode curl_easy_perform(CURL *curl);
--CURL_EXTERN void curl_easy_cleanup(CURL *curl);
--
--/*
-- * NAME curl_easy_getinfo()
-- *
-- * DESCRIPTION
-- *
-- * Request internal information from the curl session with this function. The
-- * third argument MUST be a pointer to a long, a pointer to a char * or a
-- * pointer to a double (as the documentation describes elsewhere). The data
-- * pointed to will be filled in accordingly and can be relied upon only if the
-- * function returns CURLE_OK. This function is intended to get used *AFTER* a
-- * performed transfer, all results from this function are undefined until the
-- * transfer is completed.
-- */
--CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...);
--
--
--/*
-- * NAME curl_easy_duphandle()
-- *
-- * DESCRIPTION
-- *
-- * 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 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.
-- */
--CURL_EXTERN CURL *curl_easy_duphandle(CURL *curl);
--
--/*
-- * NAME curl_easy_reset()
-- *
-- * DESCRIPTION
-- *
-- * Re-initializes a CURL handle to the default values. This puts back the
-- * handle to the same state as it was in when it was just created.
-- *
-- * It does keep: live connections, the Session ID cache, the DNS cache and the
-- * cookies.
-- */
--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
--
--#endif
diff --cc code/curl-7.54.0/include/curl/mprintf.h
index e20f546,e20f546..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/mprintf.h
+++ /dev/null
@@@ -1,50 -1,50 +1,0 @@@
--#ifndef __CURL_MPRINTF_H
--#define __CURL_MPRINTF_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel at haxx.se>, 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.
-- *
-- ***************************************************************************/
--
--#include <stdarg.h>
--#include <stdio.h> /* needed for FILE */
--#include "curl.h" /* for CURL_EXTERN */
--
--#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_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 char *curl_maprintf(const char *format, ...);
--CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args);
--
--#ifdef __cplusplus
--}
--#endif
--
--#endif /* __CURL_MPRINTF_H */
diff --cc code/curl-7.54.0/include/curl/multi.h
index f93e511,f93e511..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/multi.h
+++ /dev/null
@@@ -1,439 -1,439 +1,0 @@@
--#ifndef __CURL_MULTI_H
--#define __CURL_MULTI_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel at haxx.se>, 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.
-- *
-- ***************************************************************************/
--/*
-- This is an "external" header file. Don't give away any internals here!
--
-- GOALS
--
-- o Enable a "pull" interface. The application that uses libcurl decides where
-- and when to ask libcurl to get/send data.
--
-- o Enable multiple simultaneous transfers in the same thread without making it
-- complicated for the application.
--
-- o Enable the application to select() on its own file descriptors and curl's
-- file descriptors simultaneous easily.
--
--*/
--
--/*
-- * This header file should not really need to include "curl.h" since curl.h
-- * itself includes this file and we expect user applications to do #include
-- * <curl/curl.h> without the need for especially including multi.h.
-- *
-- * For some reason we added this include here at one point, and rather than to
-- * break existing (wrongly written) libcurl applications, we leave it as-is
-- * but with this warning attached.
-- */
--#include "curl.h"
--
--#ifdef __cplusplus
--extern "C" {
--#endif
--
--#if defined(BUILDING_LIBCURL) || defined(CURL_STRICTER)
--typedef struct Curl_multi CURLM;
--#else
--typedef void CURLM;
--#endif
--
--typedef enum {
-- 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
-- the CURLcode of the transfer */
-- CURLMSG_LAST /* last, not used */
--} CURLMSG;
--
--struct CURLMsg {
-- CURLMSG msg; /* what this message means */
-- CURL *easy_handle; /* the handle it concerns */
-- union {
-- void *whatever; /* message-specific data */
-- CURLcode result; /* return code for transfer */
-- } data;
--};
--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()
-- *
-- * Desc: inititalize multi-style curl usage
-- *
-- * Returns: a new CURLM handle to use in all 'curl_multi' functions.
-- */
--CURL_EXTERN CURLM *curl_multi_init(void);
--
--/*
-- * Name: curl_multi_add_handle()
-- *
-- * Desc: add a standard curl handle to the multi stack
-- *
-- * Returns: CURLMcode type, general multi error code.
-- */
--CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle,
-- CURL *curl_handle);
--
-- /*
-- * Name: curl_multi_remove_handle()
-- *
-- * Desc: removes a curl handle from the multi stack again
-- *
-- * Returns: CURLMcode type, general multi error code.
-- */
--CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
-- CURL *curl_handle);
--
-- /*
-- * Name: curl_multi_fdset()
-- *
-- * Desc: Ask curl for its fd_set sets. The app can use these to select() or
-- * poll() on. We want curl_multi_perform() called as soon as one of
-- * them are ready.
-- *
-- * Returns: CURLMcode type, general multi error code.
-- */
--CURL_EXTERN CURLMcode curl_multi_fdset(CURLM *multi_handle,
-- fd_set *read_fd_set,
-- fd_set *write_fd_set,
-- 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()
-- *
-- * Desc: When the app thinks there's data available for curl it calls this
-- * function to read/write whatever there is right now. This returns
-- * as soon as the reads and writes are done. This function does not
-- * require that there actually is data available for reading or that
-- * data can be written, it can be called just in case. It returns
-- * the number of handles that still transfer data in the second
-- * argument's integer-pointer.
-- *
-- * Returns: CURLMcode type, general multi error code. *NOTE* that this only
-- * returns errors etc regarding the whole multi stack. There might
-- * still have occurred problems on invidual transfers even when this
-- * returns OK.
-- */
--CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle,
-- int *running_handles);
--
-- /*
-- * Name: curl_multi_cleanup()
-- *
-- * Desc: Cleans up and removes a whole multi stack. It does not free or
-- * touch any individual easy handles in any way. We need to define
-- * in what state those handles will be if this function is called
-- * in the middle of a transfer.
-- *
-- * Returns: CURLMcode type, general multi error code.
-- */
--CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
--
--/*
-- * Name: curl_multi_info_read()
-- *
-- * Desc: Ask the multi handle if there's any messages/informationals from
-- * the individual transfers. Messages include informationals such as
-- * error code from the transfer or just the fact that a transfer is
-- * completed. More details on these should be written down as well.
-- *
-- * Repeated calls to this function will return a new struct each
-- * time, until a special "end of msgs" struct is returned as a signal
-- * that there is no more to get at this point.
-- *
-- * The data the returned pointer points to will not survive calling
-- * curl_multi_cleanup().
-- *
-- * The 'CURLMsg' struct is meant to be very simple and only contain
-- * very basic information. If more involved information is wanted,
-- * we will provide the particular "transfer handle" in that struct
-- * and that should/could/would be used in subsequent
-- * curl_easy_getinfo() calls (or similar). The point being that we
-- * must never expose complex structs to applications, as then we'll
-- * undoubtably get backwards compatibility problems in the future.
-- *
-- * Returns: A pointer to a filled-in struct, or NULL if it failed or ran out
-- * of structs. It also writes the number of messages left in the
-- * queue (after this read) in the integer the second argument points
-- * to.
-- */
--CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle,
-- int *msgs_in_queue);
--
--/*
-- * Name: curl_multi_strerror()
-- *
-- * Desc: The curl_multi_strerror function may be used to turn a CURLMcode
-- * value into the equivalent human readable error string. This is
-- * useful for printing meaningful error messages.
-- *
-- * Returns: A pointer to a zero-terminated error message.
-- */
--CURL_EXTERN const char *curl_multi_strerror(CURLMcode);
--
--/*
-- * 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.
-- * See man page for details.
-- */
--#define CURL_POLL_NONE 0
--#define CURL_POLL_IN 1
--#define CURL_POLL_OUT 2
--#define CURL_POLL_INOUT 3
--#define CURL_POLL_REMOVE 4
--
--#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 */
-- 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);
--
--CURL_EXTERN CURLMcode curl_multi_socket_action(CURLM *multi_handle,
-- curl_socket_t s,
-- int ev_bitmask,
-- int *running_handles);
--
--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()
-- *
-- * Desc: Returns 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: CURLM error code.
-- */
--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);
--
--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" */
--#endif
--
--#endif
diff --cc code/curl-7.54.0/include/curl/stdcheaders.h
index 027b6f4,027b6f4..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/stdcheaders.h
+++ /dev/null
@@@ -1,33 -1,33 +1,0 @@@
--#ifndef __STDC_HEADERS_H
--#define __STDC_HEADERS_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel at haxx.se>, 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.
-- *
-- ***************************************************************************/
--
--#include <sys/types.h>
--
--size_t fread(void *, size_t, size_t, FILE *);
--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 /* __STDC_HEADERS_H */
diff --cc code/curl-7.54.0/include/curl/system.h
index ed3a55c,ed3a55c..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/system.h
+++ /dev/null
@@@ -1,484 -1,484 +1,0 @@@
--#ifndef __CURL_SYSTEM_H
--#define __CURL_SYSTEM_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel at haxx.se>, 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.
-- *
-- ***************************************************************************/
--
--/*
-- * This header is supposed to eventually replace curlbuild.h. This little one
-- * is still learning. During the experimental phase, this header files
-- * defines symbols using the prefixes CURLSYS_ or curlsys_. When we feel
-- * confident enough, we replace curlbuild.h with this file and rename all
-- * prefixes to CURL_ and curl_.
-- */
--
--/*
-- * 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.
-- *
-- * curl_off_t
-- * ----------
-- *
-- * 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.
-- *
-- */
--
--#if defined(__DJGPP__) || defined(__GO32__)
--# if defined(__DJGPP__) && (__DJGPP__ > 1)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# else
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__SALFORDC__)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__BORLANDC__)
--# if (__BORLANDC__ < 0x520)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# else
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T __int64
--# define CURLSYS_FORMAT_CURL_OFF_T "I64d"
--# define CURLSYS_FORMAT_CURL_OFF_TU "I64u"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T i64
--# define CURLSYS_SUFFIX_CURL_OFF_TU ui64
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__TURBOC__)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__WATCOMC__)
--# if defined(__386__)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T __int64
--# define CURLSYS_FORMAT_CURL_OFF_T "I64d"
--# define CURLSYS_FORMAT_CURL_OFF_TU "I64u"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T i64
--# define CURLSYS_SUFFIX_CURL_OFF_TU ui64
--# else
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__POCC__)
--# if (__POCC__ < 280)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# elif defined(_MSC_VER)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T __int64
--# define CURLSYS_FORMAT_CURL_OFF_T "I64d"
--# define CURLSYS_FORMAT_CURL_OFF_TU "I64u"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T i64
--# define CURLSYS_SUFFIX_CURL_OFF_TU ui64
--# else
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__LCC__)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__SYMBIAN32__)
--# if defined(__EABI__) /* Treat all ARM compilers equally */
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# elif defined(__CW32__)
--# pragma longlong on
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# elif defined(__VC32__)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T __int64
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T unsigned int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__MWERKS__)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(_WIN32_WCE)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T __int64
--# define CURLSYS_FORMAT_CURL_OFF_T "I64d"
--# define CURLSYS_FORMAT_CURL_OFF_TU "I64u"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T i64
--# define CURLSYS_SUFFIX_CURL_OFF_TU ui64
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__MINGW32__)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "I64d"
--# define CURLSYS_FORMAT_CURL_OFF_TU "I64u"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T socklen_t
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--# define CURLSYS_PULL_SYS_TYPES_H 1
--# define CURLSYS_PULL_WS2TCPIP_H 1
--
--#elif defined(__VMS)
--# if defined(__VAX)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# else
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T unsigned int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__OS400__)
--# if defined(__ILEC400__)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T socklen_t
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--# define CURLSYS_PULL_SYS_TYPES_H 1
--# define CURLSYS_PULL_SYS_SOCKET_H 1
--# endif
--
--#elif defined(__MVS__)
--# if defined(__IBMC__) || defined(__IBMCPP__)
--# if defined(_ILP32)
--# define CURLSYS_SIZEOF_LONG 4
--# elif defined(_LP64)
--# define CURLSYS_SIZEOF_LONG 8
--# endif
--# if defined(_LONG_LONG)
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# elif defined(_LP64)
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# else
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T socklen_t
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--# define CURLSYS_PULL_SYS_TYPES_H 1
--# define CURLSYS_PULL_SYS_SOCKET_H 1
--# endif
--
--#elif defined(__370__)
--# if defined(__IBMC__) || defined(__IBMCPP__)
--# if defined(_ILP32)
--# define CURLSYS_SIZEOF_LONG 4
--# elif defined(_LP64)
--# define CURLSYS_SIZEOF_LONG 8
--# endif
--# if defined(_LONG_LONG)
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# elif defined(_LP64)
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# else
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T socklen_t
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--# define CURLSYS_PULL_SYS_TYPES_H 1
--# define CURLSYS_PULL_SYS_SOCKET_H 1
--# endif
--
--#elif defined(TPF)
--# define CURLSYS_SIZEOF_LONG 8
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--
--#elif defined(__TINYC__) /* also known as tcc */
--
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T socklen_t
--# define CURLSYS_PULL_SYS_TYPES_H 1
--# define CURLSYS_PULL_SYS_SOCKET_H 1
--
--/* ===================================== */
--/* KEEP MSVC THE PENULTIMATE ENTRY */
--/* ===================================== */
--
--#elif defined(_MSC_VER)
--# if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64)
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T __int64
--# define CURLSYS_FORMAT_CURL_OFF_T "I64d"
--# define CURLSYS_FORMAT_CURL_OFF_TU "I64u"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T i64
--# define CURLSYS_SUFFIX_CURL_OFF_TU ui64
--# else
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--# define CURLSYS_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 CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long long
--# define CURLSYS_FORMAT_CURL_OFF_T "lld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "llu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T LL
--# define CURLSYS_SUFFIX_CURL_OFF_TU ULL
--# elif defined(__LP64__) || \
-- defined(__x86_64__) || defined(__ppc64__) || defined(__sparc64__)
--# define CURLSYS_SIZEOF_LONG 8
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SIZEOF_CURL_OFF_T 8
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# endif
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T socklen_t
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--# define CURLSYS_PULL_SYS_TYPES_H 1
--# define CURLSYS_PULL_SYS_SOCKET_H 1
--
--#else
--/* generic "safe guess" on old 32 bit style */
--# define CURLSYS_SIZEOF_LONG 4
--# define CURLSYS_SIZEOF_CURL_SOCKLEN_T 4
--# define CURLSYS_SIZEOF_CURL_OFF_T 4
--# define CURLSYS_TYPEOF_CURL_OFF_T long
--# define CURLSYS_FORMAT_CURL_OFF_T "ld"
--# define CURLSYS_FORMAT_CURL_OFF_TU "lu"
--# define CURLSYS_SUFFIX_CURL_OFF_T L
--# define CURLSYS_SUFFIX_CURL_OFF_TU UL
--# define CURLSYS_TYPEOF_CURL_SOCKLEN_T int
--#endif
--
--/* CURLSYS_PULL_WS2TCPIP_H is defined above when inclusion of header file */
--/* ws2tcpip.h is required here to properly make type definitions below. */
--#ifdef CURLSYS_PULL_WS2TCPIP_H
--# ifndef WIN32_LEAN_AND_MEAN
--# define WIN32_LEAN_AND_MEAN
--# endif
--# include <windows.h>
--# include <winsock2.h>
--# include <ws2tcpip.h>
--#endif
--
--/* CURLSYS_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 CURLSYS_PULL_SYS_TYPES_H
--# include <sys/types.h>
--#endif
--
--/* CURLSYS_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 CURLSYS_PULL_SYS_SOCKET_H
--# include <sys/socket.h>
--#endif
--
--/* Data type definition of curl_socklen_t. */
--#ifdef CURLSYS_TYPEOF_CURL_SOCKLEN_T
-- typedef CURLSYS_TYPEOF_CURL_SOCKLEN_T curlsys_socklen_t;
--#endif
--
--/* Data type definition of curl_off_t. */
--
--#ifdef CURLSYS_TYPEOF_CURL_OFF_T
-- typedef CURLSYS_TYPEOF_CURL_OFF_T curlsys_off_t;
--#endif
--
--#endif /* __CURL_SYSTEM_H */
--
diff --cc code/curl-7.54.0/include/curl/typecheck-gcc.h
index 3d68315,3d68315..0000000
deleted file mode 100644,100644
--- a/code/curl-7.54.0/include/curl/typecheck-gcc.h
+++ /dev/null
@@@ -1,624 -1,624 +1,0 @@@
--#ifndef __CURL_TYPECHECK_GCC_H
--#define __CURL_TYPECHECK_GCC_H
--/***************************************************************************
-- * _ _ ____ _
-- * Project ___| | | | _ \| |
-- * / __| | | | |_) | |
-- * | (__| |_| | _ <| |___
-- * \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel at haxx.se>, 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_ABSTRACT_UNIX_SOCKET || \
-- (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 */
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/ioquake3.git
More information about the Pkg-games-commits
mailing list