summaryrefslogtreecommitdiffstats
path: root/Utilities/cmcurl/include/curl
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2017-05-11 14:55:44 (GMT)
committerBrad King <brad.king@kitware.com>2017-05-11 15:27:21 (GMT)
commit299975908ada992800791fac7f3739050e0ae2a9 (patch)
tree38cd8fb04ce84196dfa04d514eb92649900a1bc5 /Utilities/cmcurl/include/curl
parent5af9c8e2451afd8e63d6b05e69cd141af543a164 (diff)
parentfd7d521c9d70655618db8232d45e5aaf81700f91 (diff)
downloadCMake-299975908ada992800791fac7f3739050e0ae2a9.zip
CMake-299975908ada992800791fac7f3739050e0ae2a9.tar.gz
CMake-299975908ada992800791fac7f3739050e0ae2a9.tar.bz2
Merge branch 'upstream-curl' into update-curl
* upstream-curl: curl 2017-04-19 (d957e218) Resolve conflicts in `CMakeLists.txt` in favor of the upstream version. We will re-apply our logic as needed in following commits.
Diffstat (limited to 'Utilities/cmcurl/include/curl')
-rw-r--r--Utilities/cmcurl/include/curl/curl.h32
-rw-r--r--Utilities/cmcurl/include/curl/curlrules.h25
-rw-r--r--Utilities/cmcurl/include/curl/curlver.h12
-rw-r--r--Utilities/cmcurl/include/curl/system.h484
-rw-r--r--Utilities/cmcurl/include/curl/typecheck-gcc.h3
5 files changed, 521 insertions, 35 deletions
diff --git a/Utilities/cmcurl/include/curl/curl.h b/Utilities/cmcurl/include/curl/curl.h
index daca8d1..b19dd42 100644
--- a/Utilities/cmcurl/include/curl/curl.h
+++ b/Utilities/cmcurl/include/curl/curl.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@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
@@ -35,6 +35,7 @@
#endif
#include "curlver.h" /* libcurl version defines */
+#include "system.h" /* determine things run-time */
#include "cmcurl/include/curl/curlbuild.h" /* libcurl build definitions */
#include "curlrules.h" /* libcurl rules enforcement */
@@ -193,6 +194,11 @@ typedef int (*curl_xferinfo_callback)(void *clientp,
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.
@@ -479,7 +485,7 @@ typedef enum {
CURLE_LDAP_CANNOT_BIND, /* 38 */
CURLE_LDAP_SEARCH_FAILED, /* 39 */
CURLE_OBSOLETE40, /* 40 - NOT USED */
- CURLE_FUNCTION_NOT_FOUND, /* 41 */
+ 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 */
@@ -1595,7 +1601,7 @@ typedef enum {
CINIT(DNS_SERVERS, STRINGPOINT, 211),
/* Time-out accept operations (currently for FTP only) after this amount
- of miliseconds. */
+ of milliseconds. */
CINIT(ACCEPTTIMEOUT_MS, LONG, 212),
/* Set TCP keepalive */
@@ -1770,6 +1776,12 @@ typedef enum {
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;
@@ -1876,6 +1888,18 @@ enum {
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,
@@ -2438,7 +2462,7 @@ typedef struct {
#define CURL_VERSION_CURLDEBUG (1<<13) /* Debug memory tracking supported */
#define CURL_VERSION_TLSAUTH_SRP (1<<14) /* TLS-SRP auth is supported */
#define CURL_VERSION_NTLM_WB (1<<15) /* NTLM delegation to winbind helper
- is suported */
+ 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 */
diff --git a/Utilities/cmcurl/include/curl/curlrules.h b/Utilities/cmcurl/include/curl/curlrules.h
index 55d21f6..0abd9f7 100644
--- a/Utilities/cmcurl/include/curl/curlrules.h
+++ b/Utilities/cmcurl/include/curl/curlrules.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@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
@@ -105,11 +105,6 @@
Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_is_missing
#endif
-#ifndef CURL_FORMAT_OFF_T
-# error "CURL_FORMAT_OFF_T definition is missing!"
- Error Compilation_aborted_CURL_FORMAT_OFF_T_is_missing
-#endif
-
#ifndef CURL_SIZEOF_CURL_OFF_T
# error "CURL_SIZEOF_CURL_OFF_T definition is missing!"
Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_is_missing
@@ -241,22 +236,4 @@ typedef char
#undef CurlchkszEQ
#undef CurlchkszGE
-/*
- * Get rid of macros not intended to exist beyond this point.
- */
-
-#undef CURL_PULL_WS2TCPIP_H
-#undef CURL_PULL_SYS_TYPES_H
-#undef CURL_PULL_SYS_SOCKET_H
-#undef CURL_PULL_SYS_POLL_H
-#undef CURL_PULL_STDINT_H
-#undef CURL_PULL_INTTYPES_H
-
-#undef CURL_TYPEOF_CURL_SOCKLEN_T
-#undef CURL_TYPEOF_CURL_OFF_T
-
-#ifdef CURL_NO_OLDIES
-#undef CURL_FORMAT_OFF_T /* not required since 7.19.0 - obsoleted in 7.20.0 */
-#endif
-
#endif /* __CURL_CURLRULES_H */
diff --git a/Utilities/cmcurl/include/curl/curlver.h b/Utilities/cmcurl/include/curl/curlver.h
index 3967ad2..7f0e3b8 100644
--- a/Utilities/cmcurl/include/curl/curlver.h
+++ b/Utilities/cmcurl/include/curl/curlver.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@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
@@ -26,17 +26,17 @@
a script at release-time. This was made its own header file in 7.11.2 */
/* This is the global package copyright */
-#define LIBCURL_COPYRIGHT "1996 - 2016 Daniel Stenberg, <daniel@haxx.se>."
+#define LIBCURL_COPYRIGHT "1996 - 2017 Daniel Stenberg, <daniel@haxx.se>."
/* This is the version number of the libcurl package from which this header
file origins: */
-#define LIBCURL_VERSION "7.52.1"
+#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 52
-#define LIBCURL_VERSION_PATCH 1
+#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
@@ -57,7 +57,7 @@
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 0x073401
+#define LIBCURL_VERSION_NUM 0x073600
/*
* This is the date and time when the full source package was created. The
diff --git a/Utilities/cmcurl/include/curl/system.h b/Utilities/cmcurl/include/curl/system.h
new file mode 100644
index 0000000..ed3a55c
--- /dev/null
+++ b/Utilities/cmcurl/include/curl/system.h
@@ -0,0 +1,484 @@
+#ifndef __CURL_SYSTEM_H
+#define __CURL_SYSTEM_H
+/***************************************************************************
+ * _ _ ____ _
+ * Project ___| | | | _ \| |
+ * / __| | | | |_) | |
+ * | (__| |_| | _ <| |___
+ * \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@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 --git a/Utilities/cmcurl/include/curl/typecheck-gcc.h b/Utilities/cmcurl/include/curl/typecheck-gcc.h
index 4eb896e..3d68315 100644
--- a/Utilities/cmcurl/include/curl/typecheck-gcc.h
+++ b/Utilities/cmcurl/include/curl/typecheck-gcc.h
@@ -219,7 +219,8 @@ _CURL_WARNING(_curl_easy_getinfo_err_curl_slist,
/* evaluates to true if option takes a char* argument */
#define _curl_is_string_option(option) \
- ((option) == CURLOPT_ACCEPT_ENCODING || \
+ ((option) == CURLOPT_ABSTRACT_UNIX_SOCKET || \
+ (option) == CURLOPT_ACCEPT_ENCODING || \
(option) == CURLOPT_CAINFO || \
(option) == CURLOPT_CAPATH || \
(option) == CURLOPT_COOKIE || \