public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/zpaqfranz] rawhide: 65.1 bump
@ 2026-09-21 12:19 
  0 siblings, 0 replies; only message in thread
From:  @ 2026-09-21 12:19 UTC (permalink / raw)
  To: git-commits

A new commit has been pushed.

Repo   : rpms/zpaqfranz
Branch : rawhide
Commit : c66bc0b558b24722988234782fa0c796bf9550a5
Author : Petr Písař <ppisar@redhat.com>
Date   : 2026-09-21T14:17:42+02:00
Stats  : +2669/-2643 in 5 file(s)
URL    : https://src.fedoraproject.org/rpms/zpaqfranz/c/c66bc0b558b24722988234782fa0c796bf9550a5?branch=rawhide

Log:
65.1 bump

---
diff --git a/.gitignore b/.gitignore
index 4e82cad..a9771db 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,3 +21,4 @@
 /zpaqfranz-64.6.tar.gz
 /zpaqfranz-64.7.tar.gz
 /zpaqfranz-64.8.tar.gz
+/zpaqfranz-65.1.tar.gz

diff --git a/sources b/sources
index b4f289c..d8bca7c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (zpaqfranz-64.8.tar.gz) = 99084cf75e3c28167a56b0100a498f96fb68370cd168b96f27e7b944482870cb68f68436e97400420216de4e5ba46df7697f8b631ce412d69ae1ac96a6337ed6
+SHA512 (zpaqfranz-65.1.tar.gz) = eb4bc71e93d1c4748c5917d0b9490e9915cea5c193119c866568cb8156f2d9a59d25c2e2c3768b7a04f220895b7a3afbd00522c70865260d968943ec2cc7165c

diff --git a/zpaqfranz-64.6-Unbundle-curl.h-and-load-curl-DSO-by-a-bare-file-nam.patch b/zpaqfranz-64.6-Unbundle-curl.h-and-load-curl-DSO-by-a-bare-file-nam.patch
deleted file mode 100644
index c2188a1..0000000
--- a/zpaqfranz-64.6-Unbundle-curl.h-and-load-curl-DSO-by-a-bare-file-nam.patch
+++ /dev/null
@@ -1,2638 +0,0 @@
-From 0b787b62a8193af62e551ea68f08ad171dce5509 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
-Date: Mon, 9 Mar 2026 16:38:57 +0100
-Subject: [PATCH] Unbundle curl.h and load curl DSO by a bare file name
-
-Fedora packages run-time curl library under libcurl.so.4 file name.
----
- zpaqfranz.cpp | 2570 +------------------------------------------------
- 1 file changed, 7 insertions(+), 2563 deletions(-)
-
-diff --git a/zpaqfranz.cpp b/zpaqfranz.cpp
-index 372ac5d..1c27f11 100644
---- a/zpaqfranz.cpp
-+++ b/zpaqfranz.cpp
-@@ -1148,23 +1148,6 @@ furnished to do so, subject to the following conditions:
-    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-    SOFTWARE.
- 
--24 [MIT-like]           curl command line tool and library        https://curl.se/
-- /// LICENSE_START.24
-- /// LICENSE_END.24
--COPYRIGHT AND PERMISSION NOTICE
--Copyright (c) 1996 - 2025, Daniel Stenberg, daniel@haxx.se, and many contributors, see the THANKS file.
--All rights reserved.
--Permission to use, copy, modify, and distribute this software for any purpose with or without fee 
--is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
--THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 
--TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. 
--IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
--WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE 
--OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--Except as contained in this notice, the name of a copyright holder shall not be used in advertising or 
--otherwise to promote the sale, use or other dealings in this Software without prior written 
--authorization of the copyright holder.
--
- 
-    _____ _____  ______ ______ _______ _____ _   _  _____  _____ 
-   / ____|  __ \|  ____|  ____|__   __|_   _| \ | |/ ____|/ ____|
-@@ -1534,10 +1517,10 @@ If you define -DSFTP during compilation, the program will dynamically use the
- libcurl library, if it is available. 
- On Windows systems, this refers to the libcurl-x64.dll/libcurl.dll. 
- This DLL can be downloaded from the author's website simply by running zpaqfranz sftp. 
--For *nix systems, it is typically named libcurl.so (or something similar) and must be 
-+For *nix systems, it is typically named libcurl.so.4 (or something similar) and must be 
- installed manually, for example, using pkg add libcurl (on FreeBSD) or equivalent commands. 
- If it cannot be made to work, zpaqfranz will return an error.
--On *nix systems, the location of libcurl.so might not be known: there are many different systems, 
-+On *nix systems, the location of libcurl.so.4 might not be known: there are many different systems, 
- and it can be found almost anywhere. 
- Therefore, you need to ensure it is in the current path
- 
-@@ -1778,7 +1761,7 @@ g++ -O3 zpaqfranz.cpp -o zpaqfranz -pthread
- 
- #ifdef ZPAQFULL ///NOSFTPSTART
- Debian with SFTP and libcurl
--This gets a DYNAMIC LOADING of curl library: you must have (somewhere) a libcurl.so!
-+This gets a DYNAMIC LOADING of curl library: you must have (somewhere) a libcurl.so.4!
- g++ -O3 -DSFTP -DHWSHA2 zpaqfranz.cpp -o zpaqfranz  -pthread -s -ldl -Wall -Wpedantic
- 
- Making DLL on Windows (highly experimental)
-@@ -2059,2546 +2042,7 @@ g++ -g -Wall -Wextra -Wpedantic -fsanitize=address,undefined -O3 zpaqfranz.cpp -
- /// LICENSE_START.24
- 
- #ifdef SFTP
--/***************************************************************************
-- *                                  _   _ ____  _
-- *  Project                     ___| | | |  _ \| |
-- *                             / __| | | | |_) | |
-- *                            | (__| |_| |  _ <| |___
-- *                             \___|\___/|_| \_\_____|
-- *
-- * Copyright (C) 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.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.
-- *
-- * SPDX-License-Identifier: curl
-- *
-- ***************************************************************************/
--
--/*
-- * If you have libcurl problems, all docs and details are found here:
-- *   https://curl.se/libcurl/
-- */
-- 
--/// This is a bit reworked header
--
--#if (defined(__GNUC__) &&                                              \
--  ((__GNUC__ > 12) || ((__GNUC__ == 12) && (__GNUC_MINOR__ >= 1))) ||  \
--  (defined(__clang__) && __clang_major__ >= 3) ||                      \
--  defined(__IAR_SYSTEMS_ICC__)) &&                                     \
--  !defined(__INTEL_COMPILER) &&                                        \
--  !defined(CURL_DISABLE_DEPRECATION) && !defined(BUILDING_LIBCURL)
--#define CURL_DEPRECATED(version, message)                       \
--  __attribute__((deprecated("since " # version ". " message)))
--#if defined(__IAR_SYSTEMS_ICC__)
--#define CURL_IGNORE_DEPRECATION(statements) \
--      _Pragma("diag_suppress=Pe1444") \
--      statements \
--      _Pragma("diag_default=Pe1444")
--#else
--#define CURL_IGNORE_DEPRECATION(statements) \
--      _Pragma("GCC diagnostic push") \
--      _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") \
--      statements \
--      _Pragma("GCC diagnostic pop")
--#endif
--#else
--#define CURL_DEPRECATED(version, message)
--#define CURL_IGNORE_DEPRECATION(statements)     statements
--#endif
--#ifndef CURLINC_SYSTEM_H
--#define CURLINC_SYSTEM_H
--#if defined(__DJGPP__) || defined(__GO32__)
--#  if defined(__DJGPP__) && (__DJGPP__ > 1)
--#    define CURL_TYPEOF_CURL_OFF_T     long long
--#    define CURL_FORMAT_CURL_OFF_T     "lld"
--#    define CURL_FORMAT_CURL_OFF_TU    "llu"
--#    define CURL_SUFFIX_CURL_OFF_T     LL
--#    define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  else
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    define CURL_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#  endif
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#elif defined(__SALFORDC__)
--#  define CURL_TYPEOF_CURL_OFF_T     long
--#  define CURL_FORMAT_CURL_OFF_T     "ld"
--#  define CURL_FORMAT_CURL_OFF_TU    "lu"
--#  define CURL_SUFFIX_CURL_OFF_T     L
--#  define CURL_SUFFIX_CURL_OFF_TU    UL
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#elif defined(__BORLANDC__)
--#  if (__BORLANDC__ < 0x520)
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    define CURL_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#  else
--#    define CURL_TYPEOF_CURL_OFF_T     __int64
--#    define CURL_FORMAT_CURL_OFF_T     "I64d"
--#    define CURL_FORMAT_CURL_OFF_TU    "I64u"
--#    define CURL_SUFFIX_CURL_OFF_T     i64
--#    define CURL_SUFFIX_CURL_OFF_TU    ui64
--#  endif
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#elif defined(__TURBOC__)
--#  define CURL_TYPEOF_CURL_OFF_T     long
--#  define CURL_FORMAT_CURL_OFF_T     "ld"
--#  define CURL_FORMAT_CURL_OFF_TU    "lu"
--#  define CURL_SUFFIX_CURL_OFF_T     L
--#  define CURL_SUFFIX_CURL_OFF_TU    UL
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#elif defined(__POCC__)
--#  if (__POCC__ < 280)
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    define CURL_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#  elif defined(_MSC_VER)
--#    define CURL_TYPEOF_CURL_OFF_T     __int64
--#    define CURL_FORMAT_CURL_OFF_T     "I64d"
--#    define CURL_FORMAT_CURL_OFF_TU    "I64u"
--#    define CURL_SUFFIX_CURL_OFF_T     i64
--#    define CURL_SUFFIX_CURL_OFF_TU    ui64
--#  else
--#    define CURL_TYPEOF_CURL_OFF_T     long long
--#    define CURL_FORMAT_CURL_OFF_T     "lld"
--#    define CURL_FORMAT_CURL_OFF_TU    "llu"
--#    define CURL_SUFFIX_CURL_OFF_T     LL
--#    define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  endif
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#elif defined(__LCC__)
--#  if defined(__MCST__) 
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    define CURL_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#    define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
--#    define CURL_PULL_SYS_TYPES_H      1
--#    define CURL_PULL_SYS_SOCKET_H     1
--#  else                
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    define CURL_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#    define CURL_TYPEOF_CURL_SOCKLEN_T int
--#  endif
--#elif defined(macintosh)
--#  include <ConditionalMacros.h>
--#  if TYPE_LONGLONG
--#    define CURL_TYPEOF_CURL_OFF_T     long long
--#    define CURL_FORMAT_CURL_OFF_T     "lld"
--#    define CURL_FORMAT_CURL_OFF_TU    "llu"
--#    define CURL_SUFFIX_CURL_OFF_T     LL
--#    define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  else
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    define CURL_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#  endif
--#  define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
--#elif defined(__TANDEM)
--# if ! defined(__LP64)
--#  define CURL_TYPEOF_CURL_OFF_T     long long
--#  define CURL_FORMAT_CURL_OFF_T     "lld"
--#  define CURL_FORMAT_CURL_OFF_TU    "llu"
--#  define CURL_SUFFIX_CURL_OFF_T     LL
--#  define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--# endif
--#elif defined(_WIN32_WCE)
--#  define CURL_TYPEOF_CURL_OFF_T     __int64
--#  define CURL_FORMAT_CURL_OFF_T     "I64d"
--#  define CURL_FORMAT_CURL_OFF_TU    "I64u"
--#  define CURL_SUFFIX_CURL_OFF_T     i64
--#  define CURL_SUFFIX_CURL_OFF_TU    ui64
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#elif defined(__MINGW32__)
--#  include <inttypes.h>
--#  define CURL_TYPEOF_CURL_OFF_T     long long
--#  define CURL_FORMAT_CURL_OFF_T     PRId64
--#  define CURL_FORMAT_CURL_OFF_TU    PRIu64
--#  define CURL_SUFFIX_CURL_OFF_T     LL
--#  define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#  define CURL_PULL_SYS_TYPES_H      1
--#elif defined(__VMS)
--#  if defined(__VAX)
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    define CURL_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#  else
--#    define CURL_TYPEOF_CURL_OFF_T     long long
--#    define CURL_FORMAT_CURL_OFF_T     "lld"
--#    define CURL_FORMAT_CURL_OFF_TU    "llu"
--#    define CURL_SUFFIX_CURL_OFF_T     LL
--#    define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  endif
--#  define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
--#elif defined(__OS400__)
--#  define CURL_TYPEOF_CURL_OFF_T     long long
--#  define CURL_FORMAT_CURL_OFF_T     "lld"
--#  define CURL_FORMAT_CURL_OFF_TU    "llu"
--#  define CURL_SUFFIX_CURL_OFF_T     LL
--#  define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
--#  define CURL_PULL_SYS_TYPES_H      1
--#  define CURL_PULL_SYS_SOCKET_H     1
--#elif defined(__MVS__)
--#  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_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_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_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#  endif
--#  define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
--#  define CURL_PULL_SYS_TYPES_H      1
--#  define CURL_PULL_SYS_SOCKET_H     1
--#elif defined(__370__)
--#  if defined(__IBMC__) || defined(__IBMCPP__)
--#    if defined(_ILP32)
--#    elif defined(_LP64)
--#    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_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_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_SUFFIX_CURL_OFF_T     L
--#      define CURL_SUFFIX_CURL_OFF_TU    UL
--#    endif
--#    define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
--#    define CURL_PULL_SYS_TYPES_H      1
--#    define CURL_PULL_SYS_SOCKET_H     1
--#  endif
--#elif defined(TPF)
--#  define CURL_TYPEOF_CURL_OFF_T     long
--#  define CURL_FORMAT_CURL_OFF_T     "ld"
--#  define CURL_FORMAT_CURL_OFF_TU    "lu"
--#  define CURL_SUFFIX_CURL_OFF_T     L
--#  define CURL_SUFFIX_CURL_OFF_TU    UL
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#elif defined(__TINYC__) 
--#  define CURL_TYPEOF_CURL_OFF_T     long long
--#  define CURL_FORMAT_CURL_OFF_T     "lld"
--#  define CURL_FORMAT_CURL_OFF_TU    "llu"
--#  define CURL_SUFFIX_CURL_OFF_T     LL
--#  define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
--#  define CURL_PULL_SYS_TYPES_H      1
--#  define CURL_PULL_SYS_SOCKET_H     1
--#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) 
--#  if !defined(__LP64) && (defined(__ILP32) ||                          \
--                           defined(__i386) ||                           \
--                           defined(__sparcv8) ||                        \
--                           defined(__sparcv8plus))
--#    define CURL_TYPEOF_CURL_OFF_T     long long
--#    define CURL_FORMAT_CURL_OFF_T     "lld"
--#    define CURL_FORMAT_CURL_OFF_TU    "llu"
--#    define CURL_SUFFIX_CURL_OFF_T     LL
--#    define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  elif defined(__LP64) || \
--        defined(__amd64) || defined(__sparcv9)
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    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_PULL_SYS_TYPES_H      1
--#  define CURL_PULL_SYS_SOCKET_H     1
--#elif defined(__xlc__) 
--#  if !defined(_LP64)
--#    define CURL_TYPEOF_CURL_OFF_T     long long
--#    define CURL_FORMAT_CURL_OFF_T     "lld"
--#    define CURL_FORMAT_CURL_OFF_TU    "llu"
--#    define CURL_SUFFIX_CURL_OFF_T     LL
--#    define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  else
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    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_PULL_SYS_TYPES_H      1
--#  define CURL_PULL_SYS_SOCKET_H     1
--#elif defined(__hpux) 
--#  if !defined(_LP64)
--#    define CURL_TYPEOF_CURL_OFF_T     long long
--#    define CURL_FORMAT_CURL_OFF_T     "lld"
--#    define CURL_FORMAT_CURL_OFF_TU    "llu"
--#    define CURL_SUFFIX_CURL_OFF_T     LL
--#    define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  else
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    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_PULL_SYS_TYPES_H      1
--#  define CURL_PULL_SYS_SOCKET_H     1
--#elif defined(_MSC_VER)
--#  if (_MSC_VER >= 1800)
--#    include <inttypes.h>
--#    define CURL_TYPEOF_CURL_OFF_T     __int64
--#    define CURL_FORMAT_CURL_OFF_T     PRId64
--#    define CURL_FORMAT_CURL_OFF_TU    PRIu64
--#    define CURL_SUFFIX_CURL_OFF_T     i64
--#    define CURL_SUFFIX_CURL_OFF_TU    ui64
--#  elif (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64)
--#    define CURL_TYPEOF_CURL_OFF_T     __int64
--#    define CURL_FORMAT_CURL_OFF_T     "I64d"
--#    define CURL_FORMAT_CURL_OFF_TU    "I64u"
--#    define CURL_SUFFIX_CURL_OFF_T     i64
--#    define CURL_SUFFIX_CURL_OFF_TU    ui64
--#  else
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    define CURL_SUFFIX_CURL_OFF_T     L
--#    define CURL_SUFFIX_CURL_OFF_TU    UL
--#  endif
--#  define CURL_TYPEOF_CURL_SOCKLEN_T int
--#elif defined(__GNUC__) && !defined(_SCO_DS)
--#  if !defined(__LP64__) &&                                             \
--  (defined(__ILP32__) || defined(__i386__) || defined(__hppa__) ||      \
--   defined(__ppc__) || defined(__powerpc__) || defined(__arm__) ||      \
--   defined(__sparc__) || defined(__mips__) || defined(__sh__) ||        \
--   defined(__XTENSA__) ||                                               \
--   (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 4)  ||               \
--   (defined(__LONG_MAX__) && __LONG_MAX__ == 2147483647L))
--#    define CURL_TYPEOF_CURL_OFF_T     long long
--#    define CURL_FORMAT_CURL_OFF_T     "lld"
--#    define CURL_FORMAT_CURL_OFF_TU    "llu"
--#    define CURL_SUFFIX_CURL_OFF_T     LL
--#    define CURL_SUFFIX_CURL_OFF_TU    ULL
--#  elif defined(__LP64__) || \
--        defined(__x86_64__) || defined(__ppc64__) || defined(__sparc64__) || \
--        defined(__e2k__) || \
--        (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 8) || \
--        (defined(__LONG_MAX__) && __LONG_MAX__ == 9223372036854775807L)
--#    define CURL_TYPEOF_CURL_OFF_T     long
--#    define CURL_FORMAT_CURL_OFF_T     "ld"
--#    define CURL_FORMAT_CURL_OFF_TU    "lu"
--#    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_PULL_SYS_TYPES_H      1
--#  define CURL_PULL_SYS_SOCKET_H     1
--#else
--# define CURL_TYPEOF_CURL_OFF_T     long
--# define CURL_FORMAT_CURL_OFF_T     "ld"
--# define CURL_FORMAT_CURL_OFF_TU    "lu"
--# define CURL_SUFFIX_CURL_OFF_T     L
--# define CURL_SUFFIX_CURL_OFF_TU    UL
--# define CURL_TYPEOF_CURL_SOCKLEN_T int
--#endif
--#ifdef _AIX
--#define CURL_PULL_SYS_POLL_H
--#endif
--#ifdef CURL_PULL_SYS_TYPES_H
--#  include <sys/types.h>
--#endif
--#ifdef CURL_PULL_SYS_SOCKET_H
--#  include <sys/socket.h>
--#endif
--#ifdef CURL_PULL_SYS_POLL_H
--#  include <sys/poll.h>
--#endif
--#ifdef CURL_TYPEOF_CURL_SOCKLEN_T
--  typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;
--#endif
--#ifdef CURL_TYPEOF_CURL_OFF_T
--  typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;
--#endif
--#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \
--  defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) || \
--  defined(__POCC__) || defined(__SALFORDC__) || defined(__HIGHC__) || \
--  defined(__ILEC400__)
--#define CURL_ISOCPP
--#else
--#undef CURL_ISOCPP
--#endif
--#if defined(__BORLANDC__) && (__BORLANDC__ == 0x0551)
--#  define CURLINC_OFF_T_C_HLPR2(x) x
--#  define CURLINC_OFF_T_C_HLPR1(x) CURLINC_OFF_T_C_HLPR2(x)
--#  define CURL_OFF_T_C(Val)  CURLINC_OFF_T_C_HLPR1(Val) ## \
--                             CURLINC_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_T)
--#  define CURL_OFF_TU_C(Val) CURLINC_OFF_T_C_HLPR1(Val) ## \
--                             CURLINC_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_TU)
--#else
--#  ifdef CURL_ISOCPP
--#    define CURLINC_OFF_T_C_HLPR2(Val,Suffix) Val ## Suffix
--#  else
--#    define CURLINC_OFF_T_C_HLPR2(Val,Suffix) ValSuffix
--#  endif
--#  define CURLINC_OFF_T_C_HLPR1(Val,Suffix) CURLINC_OFF_T_C_HLPR2(Val,Suffix)
--#  define CURL_OFF_T_C(Val)  CURLINC_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_T)
--#  define CURL_OFF_TU_C(Val) CURLINC_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_TU)
--#endif
--#endif 
--#include <stdio.h>
--#include <limits.h>
--#if defined(__FreeBSD__) || defined(__MidnightBSD__)
--#include <sys/param.h>
--#endif
--#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))
--#include <winsock2.h>
--#include <ws2tcpip.h>
--#endif
--#endif
--#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \
--    defined(__minix) || defined(__INTEGRITY) || \
--    defined(ANDROID) || defined(__ANDROID__) || defined(__OpenBSD__) || \
--    defined(__CYGWIN__) || defined(AMIGA) || defined(__NuttX__) || \
--   (defined(__FreeBSD_version) && (__FreeBSD_version < 800000)) || \
--   (defined(__MidnightBSD_version) && (__MidnightBSD_version < 100000)) || \
--    defined(__sun__) || defined(__serenity__) || defined(__vxworks__)
--#include <sys/select.h>
--#endif
--#if !defined(_WIN32) && !defined(_WIN32_WCE)
--#include <sys/socket.h>
--#endif
--#if !defined(_WIN32)
--#include <sys/time.h>
--#endif
--#ifndef __has_declspec_attribute
--#  define __has_declspec_attribute(x) 0
--#endif
--typedef void CURL;
--typedef void CURLSH;
--#ifdef CURL_STATICLIB
--#  define CURL_EXTERN
--#elif defined(_WIN32) || \
--     (__has_declspec_attribute(dllexport) && \
--      __has_declspec_attribute(dllimport))
--#  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
--#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 
--typedef enum {
--  CURLSSLBACKEND_NONE = 0,
--  CURLSSLBACKEND_OPENSSL = 1,
--  CURLSSLBACKEND_GNUTLS = 2,
--  CURLSSLBACKEND_NSS                    CURL_DEPRECATED(8.3.0, "") = 3,
--  CURLSSLBACKEND_OBSOLETE4 = 4,  
--  CURLSSLBACKEND_GSKIT                  CURL_DEPRECATED(8.3.0, "") = 5,
--  CURLSSLBACKEND_POLARSSL               CURL_DEPRECATED(7.69.0, "") = 6,
--  CURLSSLBACKEND_WOLFSSL = 7,
--  CURLSSLBACKEND_SCHANNEL = 8,
--  CURLSSLBACKEND_SECURETRANSPORT = 9,
--  CURLSSLBACKEND_AXTLS                  CURL_DEPRECATED(7.61.0, "") = 10,
--  CURLSSLBACKEND_MBEDTLS = 11,
--  CURLSSLBACKEND_MESALINK               CURL_DEPRECATED(7.82.0, "") = 12,
--  CURLSSLBACKEND_BEARSSL = 13,
--  CURLSSLBACKEND_RUSTLS = 14
--} curl_sslbackend;
--struct curl_httppost {
--  struct curl_httppost *next;       
--  char *name;                       
--  long namelength;                  
--  char *contents;                   
--  long contentslength;              
--  char *buffer;                     
--  long bufferlength;                
--  char *contenttype;                
--  struct curl_slist *contentheader; 
--  struct curl_httppost *more;       
--  long flags;                       
--  char *showfilename;               
--  void *userp;                      
--  curl_off_t contentlen;            
--};
--typedef int (*curl_progress_callback)(void *clientp,
--                                      double dltotal,
--                                      double dlnow,
--                                      double ultotal,
--                                      double ulnow);
--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
--#define CURL_MAX_READ_SIZE (10*1024*1024)
--#endif
--#ifndef CURL_MAX_WRITE_SIZE
--#define CURL_MAX_WRITE_SIZE 16384
--#endif
--#ifndef CURL_MAX_HTTP_HEADER
--#define CURL_MAX_HTTP_HEADER (100*1024)
--#endif
--typedef size_t (*curl_write_callback)(char *buffer,
--                                      size_t size,
--                                      size_t nitems,
--                                      void *outstream);
--typedef int (*curl_resolver_start_callback)(void *resolver_state,
--                                            void *reserved, void *userdata);
--typedef enum {
--  CURLFILETYPE_FILE = 0,
--  CURLFILETYPE_DIRECTORY,
--  CURLFILETYPE_SYMLINK,
--  CURLFILETYPE_DEVICE_BLOCK,
--  CURLFILETYPE_DEVICE_CHAR,
--  CURLFILETYPE_NAMEDPIPE,
--  CURLFILETYPE_SOCKET,
--  CURLFILETYPE_DOOR, 
--  CURLFILETYPE_UNKNOWN 
--} curlfiletype;
--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 {
--    char *time;
--    char *perm;
--    char *user;
--    char *group;
--    char *target; 
--  } strings;
--  unsigned int flags;
--  char *b_data;
--  size_t b_size;
--  size_t b_used;
--};
--typedef long (*curl_chunk_bgn_callback)(const void *transfer_info,
--                                        void *ptr,
--                                        int remains);
--typedef long (*curl_chunk_end_callback)(void *ptr);
--typedef int (*curl_fnmatch_callback)(void *ptr,
--                                     const char *pattern,
--                                     const char *string);
--typedef int (*curl_seek_callback)(void *instream,
--                                  curl_off_t offset,
--                                  int origin); 
--typedef size_t (*curl_read_callback)(char *buffer,
--                                      size_t size,
--                                      size_t nitems,
--                                      void *instream);
--typedef int (*curl_trailer_callback)(struct curl_slist **list,
--                                      void *userdata);
--typedef enum {
--  CURLSOCKTYPE_IPCXN,  
--  CURLSOCKTYPE_ACCEPT, 
--  CURLSOCKTYPE_LAST    
--} curlsocktype;
--#define CURL_SOCKOPT_OK 0
--#define CURL_SOCKOPT_ERROR 1 
--#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; 
--  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,            
--  CURLIOE_UNKNOWNCMD,    
--  CURLIOE_FAILRESTART,   
--  CURLIOE_LAST           
--} curlioerr;
--typedef enum {
--  CURLIOCMD_NOP,         
--  CURLIOCMD_RESTARTREAD, 
--  CURLIOCMD_LAST         
--} curliocmd;
--typedef curlioerr (*curl_ioctl_callback)(CURL *handle,
--                                         int cmd,
--                                         void *clientp);
--#ifndef CURL_DID_MEMORY_FUNC_TYPEDEFS
--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
--typedef enum {
--  CURLINFO_TEXT = 0,
--  CURLINFO_HEADER_IN,    
--  CURLINFO_HEADER_OUT,   
--  CURLINFO_DATA_IN,      
--  CURLINFO_DATA_OUT,     
--  CURLINFO_SSL_DATA_IN,  
--  CURLINFO_SSL_DATA_OUT, 
--  CURLINFO_END
--} curl_infotype;
--typedef int (*curl_debug_callback)
--       (CURL *handle,      
--        curl_infotype type, 
--        char *data,        
--        size_t size,       
--        void *userptr);    
--typedef int (*curl_prereq_callback)(void *clientp,
--                                    char *conn_primary_ip,
--                                    char *conn_local_ip,
--                                    int conn_primary_port,
--                                    int conn_local_port);
--typedef enum {
--  CURLE_OK = 0,
--  CURLE_UNSUPPORTED_PROTOCOL,    
--  CURLE_FAILED_INIT,             
--  CURLE_URL_MALFORMAT,           
--  CURLE_NOT_BUILT_IN,            
--  CURLE_COULDNT_RESOLVE_PROXY,   
--  CURLE_COULDNT_RESOLVE_HOST,    
--  CURLE_COULDNT_CONNECT,         
--  CURLE_WEIRD_SERVER_REPLY,      
--  CURLE_REMOTE_ACCESS_DENIED,    
--  CURLE_FTP_ACCEPT_FAILED,       
--  CURLE_FTP_WEIRD_PASS_REPLY,    
--  CURLE_FTP_ACCEPT_TIMEOUT,      
--  CURLE_FTP_WEIRD_PASV_REPLY,    
--  CURLE_FTP_WEIRD_227_FORMAT,    
--  CURLE_FTP_CANT_GET_HOST,       
--  CURLE_HTTP2,                   
--  CURLE_FTP_COULDNT_SET_TYPE,    
--  CURLE_PARTIAL_FILE,            
--  CURLE_FTP_COULDNT_RETR_FILE,   
--  CURLE_OBSOLETE20,              
--  CURLE_QUOTE_ERROR,             
--  CURLE_HTTP_RETURNED_ERROR,     
--  CURLE_WRITE_ERROR,             
--  CURLE_OBSOLETE24,              
--  CURLE_UPLOAD_FAILED,           
--  CURLE_READ_ERROR,              
--  CURLE_OUT_OF_MEMORY,           
--  CURLE_OPERATION_TIMEDOUT,      
--  CURLE_OBSOLETE29,              
--  CURLE_FTP_PORT_FAILED,         
--  CURLE_FTP_COULDNT_USE_REST,    
--  CURLE_OBSOLETE32,              
--  CURLE_RANGE_ERROR,             
--  CURLE_OBSOLETE34,              
--  CURLE_SSL_CONNECT_ERROR,       
--  CURLE_BAD_DOWNLOAD_RESUME,     
--  CURLE_FILE_COULDNT_READ_FILE,  
--  CURLE_LDAP_CANNOT_BIND,        
--  CURLE_LDAP_SEARCH_FAILED,      
--  CURLE_OBSOLETE40,              
--  CURLE_OBSOLETE41,              
--  CURLE_ABORTED_BY_CALLBACK,     
--  CURLE_BAD_FUNCTION_ARGUMENT,   
--  CURLE_OBSOLETE44,              
--  CURLE_INTERFACE_FAILED,        
--  CURLE_OBSOLETE46,              
--  CURLE_TOO_MANY_REDIRECTS,      
--  CURLE_UNKNOWN_OPTION,          
--  CURLE_SETOPT_OPTION_SYNTAX,    
--  CURLE_OBSOLETE50,              
--  CURLE_OBSOLETE51,              
--  CURLE_GOT_NOTHING,             
--  CURLE_SSL_ENGINE_NOTFOUND,     
--  CURLE_SSL_ENGINE_SETFAILED,    
--  CURLE_SEND_ERROR,              
--  CURLE_RECV_ERROR,              
--  CURLE_OBSOLETE57,              
--  CURLE_SSL_CERTPROBLEM,         
--  CURLE_SSL_CIPHER,              
--  CURLE_PEER_FAILED_VERIFICATION, 
--  CURLE_BAD_CONTENT_ENCODING,    
--  CURLE_OBSOLETE62,              
--  CURLE_FILESIZE_EXCEEDED,       
--  CURLE_USE_SSL_FAILED,          
--  CURLE_SEND_FAIL_REWIND,        
--  CURLE_SSL_ENGINE_INITFAILED,   
--  CURLE_LOGIN_DENIED,            
--  CURLE_TFTP_NOTFOUND,           
--  CURLE_TFTP_PERM,               
--  CURLE_REMOTE_DISK_FULL,        
--  CURLE_TFTP_ILLEGAL,            
--  CURLE_TFTP_UNKNOWNID,          
--  CURLE_REMOTE_FILE_EXISTS,      
--  CURLE_TFTP_NOSUCHUSER,         
--  CURLE_OBSOLETE75,              
--  CURLE_OBSOLETE76,              
--  CURLE_SSL_CACERT_BADFILE,      
--  CURLE_REMOTE_FILE_NOT_FOUND,   
--  CURLE_SSH,                     
--  CURLE_SSL_SHUTDOWN_FAILED,     
--  CURLE_AGAIN,                   
--  CURLE_SSL_CRL_BADFILE,         
--  CURLE_SSL_ISSUER_ERROR,        
--  CURLE_FTP_PRET_FAILED,         
--  CURLE_RTSP_CSEQ_ERROR,         
--  CURLE_RTSP_SESSION_ERROR,      
--  CURLE_FTP_BAD_FILE_LIST,       
--  CURLE_CHUNK_FAILED,            
--  CURLE_NO_CONNECTION_AVAILABLE, 
--  CURLE_SSL_PINNEDPUBKEYNOTMATCH, 
--  CURLE_SSL_INVALIDCERTSTATUS,   
--  CURLE_HTTP2_STREAM,            
--  CURLE_RECURSIVE_API_CALL,      
--  CURLE_AUTH_ERROR,              
--  CURLE_HTTP3,                   
--  CURLE_QUIC_CONNECT_ERROR,      
--  CURLE_PROXY,                   
--  CURLE_SSL_CLIENTCERT,          
--  CURLE_UNRECOVERABLE_POLL,      
--  CURLE_TOO_LARGE,               
--  CURLE_ECH_REQUIRED,            
--  CURL_LAST 
--} CURLcode;
--typedef enum {
--  CURLPX_OK,
--  CURLPX_BAD_ADDRESS_TYPE,
--  CURLPX_BAD_VERSION,
--  CURLPX_CLOSED,
--  CURLPX_GSSAPI,
--  CURLPX_GSSAPI_PERMSG,
--  CURLPX_GSSAPI_PROTECTION,
--  CURLPX_IDENTD,
--  CURLPX_IDENTD_DIFFER,
--  CURLPX_LONG_HOSTNAME,
--  CURLPX_LONG_PASSWD,
--  CURLPX_LONG_USER,
--  CURLPX_NO_AUTH,
--  CURLPX_RECV_ADDRESS,
--  CURLPX_RECV_AUTH,
--  CURLPX_RECV_CONNECT,
--  CURLPX_RECV_REQACK,
--  CURLPX_REPLY_ADDRESS_TYPE_NOT_SUPPORTED,
--  CURLPX_REPLY_COMMAND_NOT_SUPPORTED,
--  CURLPX_REPLY_CONNECTION_REFUSED,
--  CURLPX_REPLY_GENERAL_SERVER_FAILURE,
--  CURLPX_REPLY_HOST_UNREACHABLE,
--  CURLPX_REPLY_NETWORK_UNREACHABLE,
--  CURLPX_REPLY_NOT_ALLOWED,
--  CURLPX_REPLY_TTL_EXPIRED,
--  CURLPX_REPLY_UNASSIGNED,
--  CURLPX_REQUEST_FAILED,
--  CURLPX_RESOLVE_HOST,
--  CURLPX_SEND_AUTH,
--  CURLPX_SEND_CONNECT,
--  CURLPX_SEND_REQUEST,
--  CURLPX_UNKNOWN_FAIL,
--  CURLPX_UNKNOWN_MODE,
--  CURLPX_USER_REJECTED,
--  CURLPX_LAST 
--} CURLproxycode;
--typedef CURLcode (*curl_conv_callback)(char *buffer, size_t length);
--typedef CURLcode (*curl_ssl_ctx_callback)(CURL *curl,    
--                                          void *ssl_ctx, 
--                                          void *userptr);
--typedef enum {
--  CURLPROXY_HTTP = 0,   
--  CURLPROXY_HTTP_1_0 = 1,   
--  CURLPROXY_HTTPS = 2,  
--  CURLPROXY_HTTPS2 = 3, 
--  CURLPROXY_SOCKS4 = 4, 
--  CURLPROXY_SOCKS5 = 5, 
--  CURLPROXY_SOCKS4A = 6, 
--  CURLPROXY_SOCKS5_HOSTNAME = 7 
--} curl_proxytype;  
--#define CURLSSH_AUTH_ANY       ~0     
--#define CURLSSH_AUTH_NONE      0      
--#define CURLSSH_AUTH_PUBLICKEY (1<<0) 
--#define CURLSSH_AUTH_PASSWORD  (1<<1) 
--#define CURLSSH_AUTH_HOST      (1<<2) 
--#define CURLSSH_AUTH_KEYBOARD  (1<<3) 
--#define CURLSSH_AUTH_AGENT     (1<<4) 
--#define CURLSSH_AUTH_GSSAPI    (1<<5) 
--#define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY
--#define CURL_ERROR_SIZE 256
--enum curl_khtype {
--  CURLKHTYPE_UNKNOWN,
--  CURLKHTYPE_RSA1,
--  CURLKHTYPE_RSA,
--  CURLKHTYPE_DSS,
--  CURLKHTYPE_ECDSA,
--  CURLKHTYPE_ED25519
--};
--struct curl_khkey {
--  const char *key; 
--  size_t len;
--  enum curl_khtype keytype;
--};
--enum curl_khstat {
--  CURLKHSTAT_FINE_ADD_TO_FILE,
--  CURLKHSTAT_FINE,
--  CURLKHSTAT_REJECT, 
--  CURLKHSTAT_DEFER,  
--  CURLKHSTAT_FINE_REPLACE, 
--  CURLKHSTAT_LAST    
--};
--enum curl_khmatch {
--  CURLKHMATCH_OK,       
--  CURLKHMATCH_MISMATCH, 
--  CURLKHMATCH_MISSING,  
--  CURLKHMATCH_LAST      
--};
--typedef int
--  (*curl_sshkeycallback) (CURL *easy,     
--                          const struct curl_khkey *knownkey, 
--                          const struct curl_khkey *foundkey, 
--                          enum curl_khmatch, 
--                          void *clientp); 
--typedef int
--  (*curl_sshhostkeycallback) (void *clientp,
--                          int keytype, 
--                          const char *key, 
--                          size_t keylen); 
--typedef enum {
--  CURLUSESSL_NONE,    
--  CURLUSESSL_TRY,     
--  CURLUSESSL_CONTROL, 
--  CURLUSESSL_ALL,     
--  CURLUSESSL_LAST     
--} curl_usessl;
--typedef enum {
--  CURLFTPSSL_CCC_NONE,    
--  CURLFTPSSL_CCC_PASSIVE, 
--  CURLFTPSSL_CCC_ACTIVE,  
--  CURLFTPSSL_CCC_LAST     
--} curl_ftpccc;
--typedef enum {
--  CURLFTPAUTH_DEFAULT, 
--  CURLFTPAUTH_SSL,     
--  CURLFTPAUTH_TLS,     
--  CURLFTPAUTH_LAST 
--} curl_ftpauth;
--typedef enum {
--  CURLFTP_CREATE_DIR_NONE,  
--  CURLFTP_CREATE_DIR,       
--  CURLFTP_CREATE_DIR_RETRY, 
--  CURLFTP_CREATE_DIR_LAST   
--} curl_ftpcreatedir;
--typedef enum {
--  CURLFTPMETHOD_DEFAULT,   
--  CURLFTPMETHOD_MULTICWD,  
--  CURLFTPMETHOD_NOCWD,     
--  CURLFTPMETHOD_SINGLECWD, 
--  CURLFTPMETHOD_LAST       
--} curl_ftpmethod;
--struct curl_hstsentry {
--  char *name;
--  size_t namelen;
--  unsigned int includeSubDomains:1;
--  char expire[18]; 
--};
--struct curl_index {
--  size_t index; 
--  size_t total; 
--};
--typedef enum {
--  CURLSTS_OK,
--  CURLSTS_DONE,
--  CURLSTS_FAIL
--} CURLSTScode;
--typedef CURLSTScode (*curl_hstsread_callback)(CURL *easy,
--                                              struct curl_hstsentry *e,
--                                              void *userp);
--typedef CURLSTScode (*curl_hstswrite_callback)(CURL *easy,
--                                               struct curl_hstsentry *e,
--                                               struct curl_index *i,
--                                               void *userp);
--#define CURLOPTTYPE_LONG          0
--#define CURLOPTTYPE_OBJECTPOINT   10000
--#define CURLOPTTYPE_FUNCTIONPOINT 20000
--#define CURLOPTTYPE_OFF_T         30000
--#define CURLOPTTYPE_BLOB          40000
--#define CURLOPT(na,t,nu) na = t + nu
--#define CURLOPTDEPRECATED(na,t,nu,v,m) na CURL_DEPRECATED(v,m) = t + nu
--#define CURLOPTTYPE_STRINGPOINT CURLOPTTYPE_OBJECTPOINT
--#define CURLOPTTYPE_SLISTPOINT  CURLOPTTYPE_OBJECTPOINT
--#define CURLOPTTYPE_CBPOINT     CURLOPTTYPE_OBJECTPOINT
--#define CURLOPTTYPE_VALUES      CURLOPTTYPE_LONG
--typedef enum {
--  CURLOPT(CURLOPT_WRITEDATA, CURLOPTTYPE_CBPOINT, 1),
--  CURLOPT(CURLOPT_URL, CURLOPTTYPE_STRINGPOINT, 2),
--  CURLOPT(CURLOPT_PORT, CURLOPTTYPE_LONG, 3),
--  CURLOPT(CURLOPT_PROXY, CURLOPTTYPE_STRINGPOINT, 4),
--  CURLOPT(CURLOPT_USERPWD, CURLOPTTYPE_STRINGPOINT, 5),
--  CURLOPT(CURLOPT_PROXYUSERPWD, CURLOPTTYPE_STRINGPOINT, 6),
--  CURLOPT(CURLOPT_RANGE, CURLOPTTYPE_STRINGPOINT, 7),
--  CURLOPT(CURLOPT_READDATA, CURLOPTTYPE_CBPOINT, 9),
--  CURLOPT(CURLOPT_ERRORBUFFER, CURLOPTTYPE_OBJECTPOINT, 10),
--  CURLOPT(CURLOPT_WRITEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 11),
--  CURLOPT(CURLOPT_READFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 12),
--  CURLOPT(CURLOPT_TIMEOUT, CURLOPTTYPE_LONG, 13),
--  CURLOPT(CURLOPT_INFILESIZE, CURLOPTTYPE_LONG, 14),
--  CURLOPT(CURLOPT_POSTFIELDS, CURLOPTTYPE_OBJECTPOINT, 15),
--  CURLOPT(CURLOPT_REFERER, CURLOPTTYPE_STRINGPOINT, 16),
--  CURLOPT(CURLOPT_FTPPORT, CURLOPTTYPE_STRINGPOINT, 17),
--  CURLOPT(CURLOPT_USERAGENT, CURLOPTTYPE_STRINGPOINT, 18),
--  CURLOPT(CURLOPT_LOW_SPEED_LIMIT, CURLOPTTYPE_LONG, 19),
--  CURLOPT(CURLOPT_LOW_SPEED_TIME, CURLOPTTYPE_LONG, 20),
--  CURLOPT(CURLOPT_RESUME_FROM, CURLOPTTYPE_LONG, 21),
--  CURLOPT(CURLOPT_COOKIE, CURLOPTTYPE_STRINGPOINT, 22),
--  CURLOPT(CURLOPT_HTTPHEADER, CURLOPTTYPE_SLISTPOINT, 23),
--  CURLOPTDEPRECATED(CURLOPT_HTTPPOST, CURLOPTTYPE_OBJECTPOINT, 24,
--                    7.56.0, "Use CURLOPT_MIMEPOST"),
--  CURLOPT(CURLOPT_SSLCERT, CURLOPTTYPE_STRINGPOINT, 25),
--  CURLOPT(CURLOPT_KEYPASSWD, CURLOPTTYPE_STRINGPOINT, 26),
--  CURLOPT(CURLOPT_CRLF, CURLOPTTYPE_LONG, 27),
--  CURLOPT(CURLOPT_QUOTE, CURLOPTTYPE_SLISTPOINT, 28),
--  CURLOPT(CURLOPT_HEADERDATA, CURLOPTTYPE_CBPOINT, 29),
--  CURLOPT(CURLOPT_COOKIEFILE, CURLOPTTYPE_STRINGPOINT, 31),
--  CURLOPT(CURLOPT_SSLVERSION, CURLOPTTYPE_VALUES, 32),
--  CURLOPT(CURLOPT_TIMECONDITION, CURLOPTTYPE_VALUES, 33),
--  CURLOPT(CURLOPT_TIMEVALUE, CURLOPTTYPE_LONG, 34),
--  CURLOPT(CURLOPT_CUSTOMREQUEST, CURLOPTTYPE_STRINGPOINT, 36),
--  CURLOPT(CURLOPT_STDERR, CURLOPTTYPE_OBJECTPOINT, 37),
--  CURLOPT(CURLOPT_POSTQUOTE, CURLOPTTYPE_SLISTPOINT, 39),
--  CURLOPT(CURLOPT_VERBOSE, CURLOPTTYPE_LONG, 41),
--  CURLOPT(CURLOPT_HEADER, CURLOPTTYPE_LONG, 42),
--  CURLOPT(CURLOPT_NOPROGRESS, CURLOPTTYPE_LONG, 43),
--  CURLOPT(CURLOPT_NOBODY, CURLOPTTYPE_LONG, 44),
--  CURLOPT(CURLOPT_FAILONERROR, CURLOPTTYPE_LONG, 45),
--  CURLOPT(CURLOPT_UPLOAD, CURLOPTTYPE_LONG, 46),
--  CURLOPT(CURLOPT_POST, CURLOPTTYPE_LONG, 47),
--  CURLOPT(CURLOPT_DIRLISTONLY, CURLOPTTYPE_LONG, 48),
--  CURLOPT(CURLOPT_APPEND, CURLOPTTYPE_LONG, 50),
--  CURLOPT(CURLOPT_NETRC, CURLOPTTYPE_VALUES, 51),
--  CURLOPT(CURLOPT_FOLLOWLOCATION, CURLOPTTYPE_LONG, 52),
--  CURLOPT(CURLOPT_TRANSFERTEXT, CURLOPTTYPE_LONG, 53),
--  CURLOPTDEPRECATED(CURLOPT_PUT, CURLOPTTYPE_LONG, 54,
--                    7.12.1, "Use CURLOPT_UPLOAD"),
--  CURLOPTDEPRECATED(CURLOPT_PROGRESSFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 56,
--                    7.32.0, "Use CURLOPT_XFERINFOFUNCTION"),
--  CURLOPT(CURLOPT_XFERINFODATA, CURLOPTTYPE_CBPOINT, 57),
--#define CURLOPT_PROGRESSDATA CURLOPT_XFERINFODATA
--  CURLOPT(CURLOPT_AUTOREFERER, CURLOPTTYPE_LONG, 58),
--  CURLOPT(CURLOPT_PROXYPORT, CURLOPTTYPE_LONG, 59),
--  CURLOPT(CURLOPT_POSTFIELDSIZE, CURLOPTTYPE_LONG, 60),
--  CURLOPT(CURLOPT_HTTPPROXYTUNNEL, CURLOPTTYPE_LONG, 61),
--  CURLOPT(CURLOPT_INTERFACE, CURLOPTTYPE_STRINGPOINT, 62),
--  CURLOPT(CURLOPT_KRBLEVEL, CURLOPTTYPE_STRINGPOINT, 63),
--  CURLOPT(CURLOPT_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 64),
--  CURLOPT(CURLOPT_CAINFO, CURLOPTTYPE_STRINGPOINT, 65),
--  CURLOPT(CURLOPT_MAXREDIRS, CURLOPTTYPE_LONG, 68),
--  CURLOPT(CURLOPT_FILETIME, CURLOPTTYPE_LONG, 69),
--  CURLOPT(CURLOPT_TELNETOPTIONS, CURLOPTTYPE_SLISTPOINT, 70),
--  CURLOPT(CURLOPT_MAXCONNECTS, CURLOPTTYPE_LONG, 71),
--  CURLOPT(CURLOPT_FRESH_CONNECT, CURLOPTTYPE_LONG, 74),
--  CURLOPT(CURLOPT_FORBID_REUSE, CURLOPTTYPE_LONG, 75),
--  CURLOPTDEPRECATED(CURLOPT_RANDOM_FILE, CURLOPTTYPE_STRINGPOINT, 76,
--                    7.84.0, "Serves no purpose anymore"),
--  CURLOPTDEPRECATED(CURLOPT_EGDSOCKET, CURLOPTTYPE_STRINGPOINT, 77,
--                    7.84.0, "Serves no purpose anymore"),
--  CURLOPT(CURLOPT_CONNECTTIMEOUT, CURLOPTTYPE_LONG, 78),
--  CURLOPT(CURLOPT_HEADERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 79),
--  CURLOPT(CURLOPT_HTTPGET, CURLOPTTYPE_LONG, 80),
--  CURLOPT(CURLOPT_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 81),
--  CURLOPT(CURLOPT_COOKIEJAR, CURLOPTTYPE_STRINGPOINT, 82),
--  CURLOPT(CURLOPT_SSL_CIPHER_LIST, CURLOPTTYPE_STRINGPOINT, 83),
--  CURLOPT(CURLOPT_HTTP_VERSION, CURLOPTTYPE_VALUES, 84),
--  CURLOPT(CURLOPT_FTP_USE_EPSV, CURLOPTTYPE_LONG, 85),
--  CURLOPT(CURLOPT_SSLCERTTYPE, CURLOPTTYPE_STRINGPOINT, 86),
--  CURLOPT(CURLOPT_SSLKEY, CURLOPTTYPE_STRINGPOINT, 87),
--  CURLOPT(CURLOPT_SSLKEYTYPE, CURLOPTTYPE_STRINGPOINT, 88),
--  CURLOPT(CURLOPT_SSLENGINE, CURLOPTTYPE_STRINGPOINT, 89),
--  CURLOPT(CURLOPT_SSLENGINE_DEFAULT, CURLOPTTYPE_LONG, 90),
--  CURLOPTDEPRECATED(CURLOPT_DNS_USE_GLOBAL_CACHE, CURLOPTTYPE_LONG, 91,
--                    7.11.1, "Use CURLOPT_SHARE"),
--  CURLOPT(CURLOPT_DNS_CACHE_TIMEOUT, CURLOPTTYPE_LONG, 92),
--  CURLOPT(CURLOPT_PREQUOTE, CURLOPTTYPE_SLISTPOINT, 93),
--  CURLOPT(CURLOPT_DEBUGFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 94),
--  CURLOPT(CURLOPT_DEBUGDATA, CURLOPTTYPE_CBPOINT, 95),
--  CURLOPT(CURLOPT_COOKIESESSION, CURLOPTTYPE_LONG, 96),
--  CURLOPT(CURLOPT_CAPATH, CURLOPTTYPE_STRINGPOINT, 97),
--  CURLOPT(CURLOPT_BUFFERSIZE, CURLOPTTYPE_LONG, 98),
--  CURLOPT(CURLOPT_NOSIGNAL, CURLOPTTYPE_LONG, 99),
--  CURLOPT(CURLOPT_SHARE, CURLOPTTYPE_OBJECTPOINT, 100),
--  CURLOPT(CURLOPT_PROXYTYPE, CURLOPTTYPE_VALUES, 101),
--  CURLOPT(CURLOPT_ACCEPT_ENCODING, CURLOPTTYPE_STRINGPOINT, 102),
--  CURLOPT(CURLOPT_PRIVATE, CURLOPTTYPE_OBJECTPOINT, 103),
--  CURLOPT(CURLOPT_HTTP200ALIASES, CURLOPTTYPE_SLISTPOINT, 104),
--  CURLOPT(CURLOPT_UNRESTRICTED_AUTH, CURLOPTTYPE_LONG, 105),
--  CURLOPT(CURLOPT_FTP_USE_EPRT, CURLOPTTYPE_LONG, 106),
--  CURLOPT(CURLOPT_HTTPAUTH, CURLOPTTYPE_VALUES, 107),
--  CURLOPT(CURLOPT_SSL_CTX_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 108),
--  CURLOPT(CURLOPT_SSL_CTX_DATA, CURLOPTTYPE_CBPOINT, 109),
--  CURLOPT(CURLOPT_FTP_CREATE_MISSING_DIRS, CURLOPTTYPE_LONG, 110),
--  CURLOPT(CURLOPT_PROXYAUTH, CURLOPTTYPE_VALUES, 111),
--  CURLOPT(CURLOPT_SERVER_RESPONSE_TIMEOUT, CURLOPTTYPE_LONG, 112),
--  CURLOPT(CURLOPT_IPRESOLVE, CURLOPTTYPE_VALUES, 113),
--  CURLOPT(CURLOPT_MAXFILESIZE, CURLOPTTYPE_LONG, 114),
--  CURLOPT(CURLOPT_INFILESIZE_LARGE, CURLOPTTYPE_OFF_T, 115),
--  CURLOPT(CURLOPT_RESUME_FROM_LARGE, CURLOPTTYPE_OFF_T, 116),
--  CURLOPT(CURLOPT_MAXFILESIZE_LARGE, CURLOPTTYPE_OFF_T, 117),
--  CURLOPT(CURLOPT_NETRC_FILE, CURLOPTTYPE_STRINGPOINT, 118),
--  CURLOPT(CURLOPT_USE_SSL, CURLOPTTYPE_VALUES, 119),
--  CURLOPT(CURLOPT_POSTFIELDSIZE_LARGE, CURLOPTTYPE_OFF_T, 120),
--  CURLOPT(CURLOPT_TCP_NODELAY, CURLOPTTYPE_LONG, 121),
--  CURLOPT(CURLOPT_FTPSSLAUTH, CURLOPTTYPE_VALUES, 129),
--  CURLOPTDEPRECATED(CURLOPT_IOCTLFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 130,
--                    7.18.0, "Use CURLOPT_SEEKFUNCTION"),
--  CURLOPTDEPRECATED(CURLOPT_IOCTLDATA, CURLOPTTYPE_CBPOINT, 131,
--                    7.18.0, "Use CURLOPT_SEEKDATA"),
--  CURLOPT(CURLOPT_FTP_ACCOUNT, CURLOPTTYPE_STRINGPOINT, 134),
--  CURLOPT(CURLOPT_COOKIELIST, CURLOPTTYPE_STRINGPOINT, 135),
--  CURLOPT(CURLOPT_IGNORE_CONTENT_LENGTH, CURLOPTTYPE_LONG, 136),
--  CURLOPT(CURLOPT_FTP_SKIP_PASV_IP, CURLOPTTYPE_LONG, 137),
--  CURLOPT(CURLOPT_FTP_FILEMETHOD, CURLOPTTYPE_VALUES, 138),
--  CURLOPT(CURLOPT_LOCALPORT, CURLOPTTYPE_LONG, 139),
--  CURLOPT(CURLOPT_LOCALPORTRANGE, CURLOPTTYPE_LONG, 140),
--  CURLOPT(CURLOPT_CONNECT_ONLY, CURLOPTTYPE_LONG, 141),
--  CURLOPTDEPRECATED(CURLOPT_CONV_FROM_NETWORK_FUNCTION,
--                    CURLOPTTYPE_FUNCTIONPOINT, 142,
--                    7.82.0, "Serves no purpose anymore"),
--  CURLOPTDEPRECATED(CURLOPT_CONV_TO_NETWORK_FUNCTION,
--                    CURLOPTTYPE_FUNCTIONPOINT, 143,
--                    7.82.0, "Serves no purpose anymore"),
--  CURLOPTDEPRECATED(CURLOPT_CONV_FROM_UTF8_FUNCTION,
--                    CURLOPTTYPE_FUNCTIONPOINT, 144,
--                    7.82.0, "Serves no purpose anymore"),
--  CURLOPT(CURLOPT_MAX_SEND_SPEED_LARGE, CURLOPTTYPE_OFF_T, 145),
--  CURLOPT(CURLOPT_MAX_RECV_SPEED_LARGE, CURLOPTTYPE_OFF_T, 146),
--  CURLOPT(CURLOPT_FTP_ALTERNATIVE_TO_USER, CURLOPTTYPE_STRINGPOINT, 147),
--  CURLOPT(CURLOPT_SOCKOPTFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 148),
--  CURLOPT(CURLOPT_SOCKOPTDATA, CURLOPTTYPE_CBPOINT, 149),
--  CURLOPT(CURLOPT_SSL_SESSIONID_CACHE, CURLOPTTYPE_LONG, 150),
--  CURLOPT(CURLOPT_SSH_AUTH_TYPES, CURLOPTTYPE_VALUES, 151),
--  CURLOPT(CURLOPT_SSH_PUBLIC_KEYFILE, CURLOPTTYPE_STRINGPOINT, 152),
--  CURLOPT(CURLOPT_SSH_PRIVATE_KEYFILE, CURLOPTTYPE_STRINGPOINT, 153),
--  CURLOPT(CURLOPT_FTP_SSL_CCC, CURLOPTTYPE_LONG, 154),
--  CURLOPT(CURLOPT_TIMEOUT_MS, CURLOPTTYPE_LONG, 155),
--  CURLOPT(CURLOPT_CONNECTTIMEOUT_MS, CURLOPTTYPE_LONG, 156),
--  CURLOPT(CURLOPT_HTTP_TRANSFER_DECODING, CURLOPTTYPE_LONG, 157),
--  CURLOPT(CURLOPT_HTTP_CONTENT_DECODING, CURLOPTTYPE_LONG, 158),
--  CURLOPT(CURLOPT_NEW_FILE_PERMS, CURLOPTTYPE_LONG, 159),
--  CURLOPT(CURLOPT_NEW_DIRECTORY_PERMS, CURLOPTTYPE_LONG, 160),
--  CURLOPT(CURLOPT_POSTREDIR, CURLOPTTYPE_VALUES, 161),
--  CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_MD5, CURLOPTTYPE_STRINGPOINT, 162),
--  CURLOPT(CURLOPT_OPENSOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 163),
--  CURLOPT(CURLOPT_OPENSOCKETDATA, CURLOPTTYPE_CBPOINT, 164),
--  CURLOPT(CURLOPT_COPYPOSTFIELDS, CURLOPTTYPE_OBJECTPOINT, 165),
--  CURLOPT(CURLOPT_PROXY_TRANSFER_MODE, CURLOPTTYPE_LONG, 166),
--  CURLOPT(CURLOPT_SEEKFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 167),
--  CURLOPT(CURLOPT_SEEKDATA, CURLOPTTYPE_CBPOINT, 168),
--  CURLOPT(CURLOPT_CRLFILE, CURLOPTTYPE_STRINGPOINT, 169),
--  CURLOPT(CURLOPT_ISSUERCERT, CURLOPTTYPE_STRINGPOINT, 170),
--  CURLOPT(CURLOPT_ADDRESS_SCOPE, CURLOPTTYPE_LONG, 171),
--  CURLOPT(CURLOPT_CERTINFO, CURLOPTTYPE_LONG, 172),
--  CURLOPT(CURLOPT_USERNAME, CURLOPTTYPE_STRINGPOINT, 173),
--  CURLOPT(CURLOPT_PASSWORD, CURLOPTTYPE_STRINGPOINT, 174),
--  CURLOPT(CURLOPT_PROXYUSERNAME, CURLOPTTYPE_STRINGPOINT, 175),
--  CURLOPT(CURLOPT_PROXYPASSWORD, CURLOPTTYPE_STRINGPOINT, 176),
--  CURLOPT(CURLOPT_NOPROXY, CURLOPTTYPE_STRINGPOINT, 177),
--  CURLOPT(CURLOPT_TFTP_BLKSIZE, CURLOPTTYPE_LONG, 178),
--  CURLOPTDEPRECATED(CURLOPT_SOCKS5_GSSAPI_SERVICE,
--                    CURLOPTTYPE_STRINGPOINT, 179,
--                    7.49.0, "Use CURLOPT_PROXY_SERVICE_NAME"),
--  CURLOPT(CURLOPT_SOCKS5_GSSAPI_NEC, CURLOPTTYPE_LONG, 180),
--  CURLOPTDEPRECATED(CURLOPT_PROTOCOLS, CURLOPTTYPE_LONG, 181,
--                    7.85.0, "Use CURLOPT_PROTOCOLS_STR"),
--  CURLOPTDEPRECATED(CURLOPT_REDIR_PROTOCOLS, CURLOPTTYPE_LONG, 182,
--                    7.85.0, "Use CURLOPT_REDIR_PROTOCOLS_STR"),
--  CURLOPT(CURLOPT_SSH_KNOWNHOSTS, CURLOPTTYPE_STRINGPOINT, 183),
--  CURLOPT(CURLOPT_SSH_KEYFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 184),
--  CURLOPT(CURLOPT_SSH_KEYDATA, CURLOPTTYPE_CBPOINT, 185),
--  CURLOPT(CURLOPT_MAIL_FROM, CURLOPTTYPE_STRINGPOINT, 186),
--  CURLOPT(CURLOPT_MAIL_RCPT, CURLOPTTYPE_SLISTPOINT, 187),
--  CURLOPT(CURLOPT_FTP_USE_PRET, CURLOPTTYPE_LONG, 188),
--  CURLOPT(CURLOPT_RTSP_REQUEST, CURLOPTTYPE_VALUES, 189),
--  CURLOPT(CURLOPT_RTSP_SESSION_ID, CURLOPTTYPE_STRINGPOINT, 190),
--  CURLOPT(CURLOPT_RTSP_STREAM_URI, CURLOPTTYPE_STRINGPOINT, 191),
--  CURLOPT(CURLOPT_RTSP_TRANSPORT, CURLOPTTYPE_STRINGPOINT, 192),
--  CURLOPT(CURLOPT_RTSP_CLIENT_CSEQ, CURLOPTTYPE_LONG, 193),
--  CURLOPT(CURLOPT_RTSP_SERVER_CSEQ, CURLOPTTYPE_LONG, 194),
--  CURLOPT(CURLOPT_INTERLEAVEDATA, CURLOPTTYPE_CBPOINT, 195),
--  CURLOPT(CURLOPT_INTERLEAVEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 196),
--  CURLOPT(CURLOPT_WILDCARDMATCH, CURLOPTTYPE_LONG, 197),
--  CURLOPT(CURLOPT_CHUNK_BGN_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 198),
--  CURLOPT(CURLOPT_CHUNK_END_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 199),
--  CURLOPT(CURLOPT_FNMATCH_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 200),
--  CURLOPT(CURLOPT_CHUNK_DATA, CURLOPTTYPE_CBPOINT, 201),
--  CURLOPT(CURLOPT_FNMATCH_DATA, CURLOPTTYPE_CBPOINT, 202),
--  CURLOPT(CURLOPT_RESOLVE, CURLOPTTYPE_SLISTPOINT, 203),
--  CURLOPT(CURLOPT_TLSAUTH_USERNAME, CURLOPTTYPE_STRINGPOINT, 204),
--  CURLOPT(CURLOPT_TLSAUTH_PASSWORD, CURLOPTTYPE_STRINGPOINT, 205),
--  CURLOPT(CURLOPT_TLSAUTH_TYPE, CURLOPTTYPE_STRINGPOINT, 206),
--  CURLOPT(CURLOPT_TRANSFER_ENCODING, CURLOPTTYPE_LONG, 207),
--  CURLOPT(CURLOPT_CLOSESOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 208),
--  CURLOPT(CURLOPT_CLOSESOCKETDATA, CURLOPTTYPE_CBPOINT, 209),
--  CURLOPT(CURLOPT_GSSAPI_DELEGATION, CURLOPTTYPE_VALUES, 210),
--  CURLOPT(CURLOPT_DNS_SERVERS, CURLOPTTYPE_STRINGPOINT, 211),
--  CURLOPT(CURLOPT_ACCEPTTIMEOUT_MS, CURLOPTTYPE_LONG, 212),
--  CURLOPT(CURLOPT_TCP_KEEPALIVE, CURLOPTTYPE_LONG, 213),
--  CURLOPT(CURLOPT_TCP_KEEPIDLE, CURLOPTTYPE_LONG, 214),
--  CURLOPT(CURLOPT_TCP_KEEPINTVL, CURLOPTTYPE_LONG, 215),
--  CURLOPT(CURLOPT_SSL_OPTIONS, CURLOPTTYPE_VALUES, 216),
--  CURLOPT(CURLOPT_MAIL_AUTH, CURLOPTTYPE_STRINGPOINT, 217),
--  CURLOPT(CURLOPT_SASL_IR, CURLOPTTYPE_LONG, 218),
--  CURLOPT(CURLOPT_XFERINFOFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 219),
--  CURLOPT(CURLOPT_XOAUTH2_BEARER, CURLOPTTYPE_STRINGPOINT, 220),
--  CURLOPT(CURLOPT_DNS_INTERFACE, CURLOPTTYPE_STRINGPOINT, 221),
--  CURLOPT(CURLOPT_DNS_LOCAL_IP4, CURLOPTTYPE_STRINGPOINT, 222),
--  CURLOPT(CURLOPT_DNS_LOCAL_IP6, CURLOPTTYPE_STRINGPOINT, 223),
--  CURLOPT(CURLOPT_LOGIN_OPTIONS, CURLOPTTYPE_STRINGPOINT, 224),
--  CURLOPTDEPRECATED(CURLOPT_SSL_ENABLE_NPN, CURLOPTTYPE_LONG, 225,
--                    7.86.0, "Has no function"),
--  CURLOPT(CURLOPT_SSL_ENABLE_ALPN, CURLOPTTYPE_LONG, 226),
--  CURLOPT(CURLOPT_EXPECT_100_TIMEOUT_MS, CURLOPTTYPE_LONG, 227),
--  CURLOPT(CURLOPT_PROXYHEADER, CURLOPTTYPE_SLISTPOINT, 228),
--  CURLOPT(CURLOPT_HEADEROPT, CURLOPTTYPE_VALUES, 229),
--  CURLOPT(CURLOPT_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 230),
--  CURLOPT(CURLOPT_UNIX_SOCKET_PATH, CURLOPTTYPE_STRINGPOINT, 231),
--  CURLOPT(CURLOPT_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 232),
--  CURLOPT(CURLOPT_SSL_FALSESTART, CURLOPTTYPE_LONG, 233),
--  CURLOPT(CURLOPT_PATH_AS_IS, CURLOPTTYPE_LONG, 234),
--  CURLOPT(CURLOPT_PROXY_SERVICE_NAME, CURLOPTTYPE_STRINGPOINT, 235),
--  CURLOPT(CURLOPT_SERVICE_NAME, CURLOPTTYPE_STRINGPOINT, 236),
--  CURLOPT(CURLOPT_PIPEWAIT, CURLOPTTYPE_LONG, 237),
--  CURLOPT(CURLOPT_DEFAULT_PROTOCOL, CURLOPTTYPE_STRINGPOINT, 238),
--  CURLOPT(CURLOPT_STREAM_WEIGHT, CURLOPTTYPE_LONG, 239),
--  CURLOPT(CURLOPT_STREAM_DEPENDS, CURLOPTTYPE_OBJECTPOINT, 240),
--  CURLOPT(CURLOPT_STREAM_DEPENDS_E, CURLOPTTYPE_OBJECTPOINT, 241),
--  CURLOPT(CURLOPT_TFTP_NO_OPTIONS, CURLOPTTYPE_LONG, 242),
--  CURLOPT(CURLOPT_CONNECT_TO, CURLOPTTYPE_SLISTPOINT, 243),
--  CURLOPT(CURLOPT_TCP_FASTOPEN, CURLOPTTYPE_LONG, 244),
--  CURLOPT(CURLOPT_KEEP_SENDING_ON_ERROR, CURLOPTTYPE_LONG, 245),
--  CURLOPT(CURLOPT_PROXY_CAINFO, CURLOPTTYPE_STRINGPOINT, 246),
--  CURLOPT(CURLOPT_PROXY_CAPATH, CURLOPTTYPE_STRINGPOINT, 247),
--  CURLOPT(CURLOPT_PROXY_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 248),
--  CURLOPT(CURLOPT_PROXY_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 249),
--  CURLOPT(CURLOPT_PROXY_SSLVERSION, CURLOPTTYPE_VALUES, 250),
--  CURLOPT(CURLOPT_PROXY_TLSAUTH_USERNAME, CURLOPTTYPE_STRINGPOINT, 251),
--  CURLOPT(CURLOPT_PROXY_TLSAUTH_PASSWORD, CURLOPTTYPE_STRINGPOINT, 252),
--  CURLOPT(CURLOPT_PROXY_TLSAUTH_TYPE, CURLOPTTYPE_STRINGPOINT, 253),
--  CURLOPT(CURLOPT_PROXY_SSLCERT, CURLOPTTYPE_STRINGPOINT, 254),
--  CURLOPT(CURLOPT_PROXY_SSLCERTTYPE, CURLOPTTYPE_STRINGPOINT, 255),
--  CURLOPT(CURLOPT_PROXY_SSLKEY, CURLOPTTYPE_STRINGPOINT, 256),
--  CURLOPT(CURLOPT_PROXY_SSLKEYTYPE, CURLOPTTYPE_STRINGPOINT, 257),
--  CURLOPT(CURLOPT_PROXY_KEYPASSWD, CURLOPTTYPE_STRINGPOINT, 258),
--  CURLOPT(CURLOPT_PROXY_SSL_CIPHER_LIST, CURLOPTTYPE_STRINGPOINT, 259),
--  CURLOPT(CURLOPT_PROXY_CRLFILE, CURLOPTTYPE_STRINGPOINT, 260),
--  CURLOPT(CURLOPT_PROXY_SSL_OPTIONS, CURLOPTTYPE_LONG, 261),
--  CURLOPT(CURLOPT_PRE_PROXY, CURLOPTTYPE_STRINGPOINT, 262),
--  CURLOPT(CURLOPT_PROXY_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 263),
--  CURLOPT(CURLOPT_ABSTRACT_UNIX_SOCKET, CURLOPTTYPE_STRINGPOINT, 264),
--  CURLOPT(CURLOPT_SUPPRESS_CONNECT_HEADERS, CURLOPTTYPE_LONG, 265),
--  CURLOPT(CURLOPT_REQUEST_TARGET, CURLOPTTYPE_STRINGPOINT, 266),
--  CURLOPT(CURLOPT_SOCKS5_AUTH, CURLOPTTYPE_LONG, 267),
--  CURLOPT(CURLOPT_SSH_COMPRESSION, CURLOPTTYPE_LONG, 268),
--  CURLOPT(CURLOPT_MIMEPOST, CURLOPTTYPE_OBJECTPOINT, 269),
--  CURLOPT(CURLOPT_TIMEVALUE_LARGE, CURLOPTTYPE_OFF_T, 270),
--  CURLOPT(CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS, CURLOPTTYPE_LONG, 271),
--  CURLOPT(CURLOPT_RESOLVER_START_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 272),
--  CURLOPT(CURLOPT_RESOLVER_START_DATA, CURLOPTTYPE_CBPOINT, 273),
--  CURLOPT(CURLOPT_HAPROXYPROTOCOL, CURLOPTTYPE_LONG, 274),
--  CURLOPT(CURLOPT_DNS_SHUFFLE_ADDRESSES, CURLOPTTYPE_LONG, 275),
--  CURLOPT(CURLOPT_TLS13_CIPHERS, CURLOPTTYPE_STRINGPOINT, 276),
--  CURLOPT(CURLOPT_PROXY_TLS13_CIPHERS, CURLOPTTYPE_STRINGPOINT, 277),
--  CURLOPT(CURLOPT_DISALLOW_USERNAME_IN_URL, CURLOPTTYPE_LONG, 278),
--  CURLOPT(CURLOPT_DOH_URL, CURLOPTTYPE_STRINGPOINT, 279),
--  CURLOPT(CURLOPT_UPLOAD_BUFFERSIZE, CURLOPTTYPE_LONG, 280),
--  CURLOPT(CURLOPT_UPKEEP_INTERVAL_MS, CURLOPTTYPE_LONG, 281),
--  CURLOPT(CURLOPT_CURLU, CURLOPTTYPE_OBJECTPOINT, 282),
--  CURLOPT(CURLOPT_TRAILERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 283),
--  CURLOPT(CURLOPT_TRAILERDATA, CURLOPTTYPE_CBPOINT, 284),
--  CURLOPT(CURLOPT_HTTP09_ALLOWED, CURLOPTTYPE_LONG, 285),
--  CURLOPT(CURLOPT_ALTSVC_CTRL, CURLOPTTYPE_LONG, 286),
--  CURLOPT(CURLOPT_ALTSVC, CURLOPTTYPE_STRINGPOINT, 287),
--  CURLOPT(CURLOPT_MAXAGE_CONN, CURLOPTTYPE_LONG, 288),
--  CURLOPT(CURLOPT_SASL_AUTHZID, CURLOPTTYPE_STRINGPOINT, 289),
--  CURLOPT(CURLOPT_MAIL_RCPT_ALLOWFAILS, CURLOPTTYPE_LONG, 290),
--  CURLOPT(CURLOPT_SSLCERT_BLOB, CURLOPTTYPE_BLOB, 291),
--  CURLOPT(CURLOPT_SSLKEY_BLOB, CURLOPTTYPE_BLOB, 292),
--  CURLOPT(CURLOPT_PROXY_SSLCERT_BLOB, CURLOPTTYPE_BLOB, 293),
--  CURLOPT(CURLOPT_PROXY_SSLKEY_BLOB, CURLOPTTYPE_BLOB, 294),
--  CURLOPT(CURLOPT_ISSUERCERT_BLOB, CURLOPTTYPE_BLOB, 295),
--  CURLOPT(CURLOPT_PROXY_ISSUERCERT, CURLOPTTYPE_STRINGPOINT, 296),
--  CURLOPT(CURLOPT_PROXY_ISSUERCERT_BLOB, CURLOPTTYPE_BLOB, 297),
--  CURLOPT(CURLOPT_SSL_EC_CURVES, CURLOPTTYPE_STRINGPOINT, 298),
--  CURLOPT(CURLOPT_HSTS_CTRL, CURLOPTTYPE_LONG, 299),
--  CURLOPT(CURLOPT_HSTS, CURLOPTTYPE_STRINGPOINT, 300),
--  CURLOPT(CURLOPT_HSTSREADFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 301),
--  CURLOPT(CURLOPT_HSTSREADDATA, CURLOPTTYPE_CBPOINT, 302),
--  CURLOPT(CURLOPT_HSTSWRITEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 303),
--  CURLOPT(CURLOPT_HSTSWRITEDATA, CURLOPTTYPE_CBPOINT, 304),
--  CURLOPT(CURLOPT_AWS_SIGV4, CURLOPTTYPE_STRINGPOINT, 305),
--  CURLOPT(CURLOPT_DOH_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 306),
--  CURLOPT(CURLOPT_DOH_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 307),
--  CURLOPT(CURLOPT_DOH_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 308),
--  CURLOPT(CURLOPT_CAINFO_BLOB, CURLOPTTYPE_BLOB, 309),
--  CURLOPT(CURLOPT_PROXY_CAINFO_BLOB, CURLOPTTYPE_BLOB, 310),
--  CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256, CURLOPTTYPE_STRINGPOINT, 311),
--  CURLOPT(CURLOPT_PREREQFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 312),
--  CURLOPT(CURLOPT_PREREQDATA, CURLOPTTYPE_CBPOINT, 313),
--  CURLOPT(CURLOPT_MAXLIFETIME_CONN, CURLOPTTYPE_LONG, 314),
--  CURLOPT(CURLOPT_MIME_OPTIONS, CURLOPTTYPE_LONG, 315),
--  CURLOPT(CURLOPT_SSH_HOSTKEYFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 316),
--  CURLOPT(CURLOPT_SSH_HOSTKEYDATA, CURLOPTTYPE_CBPOINT, 317),
--  CURLOPT(CURLOPT_PROTOCOLS_STR, CURLOPTTYPE_STRINGPOINT, 318),
--  CURLOPT(CURLOPT_REDIR_PROTOCOLS_STR, CURLOPTTYPE_STRINGPOINT, 319),
--  CURLOPT(CURLOPT_WS_OPTIONS, CURLOPTTYPE_LONG, 320),
--  CURLOPT(CURLOPT_CA_CACHE_TIMEOUT, CURLOPTTYPE_LONG, 321),
--  CURLOPT(CURLOPT_QUICK_EXIT, CURLOPTTYPE_LONG, 322),
--  CURLOPT(CURLOPT_HAPROXY_CLIENT_IP, CURLOPTTYPE_STRINGPOINT, 323),
--  CURLOPT(CURLOPT_SERVER_RESPONSE_TIMEOUT_MS, CURLOPTTYPE_LONG, 324),
--  CURLOPT(CURLOPT_ECH, CURLOPTTYPE_STRINGPOINT, 325),
--  CURLOPT(CURLOPT_TCP_KEEPCNT, CURLOPTTYPE_LONG, 326),
--  CURLOPT_LASTENTRY 
--} CURLoption;
--enum {
--  CURL_HTTP_VERSION_NONE, 
--  CURL_HTTP_VERSION_1_0,  
--  CURL_HTTP_VERSION_1_1,  
--  CURL_HTTP_VERSION_2_0,  
--  CURL_HTTP_VERSION_2TLS, 
--  CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE,  
--  CURL_HTTP_VERSION_3 = 30, 
--  CURL_HTTP_VERSION_3ONLY = 31, 
--  CURL_HTTP_VERSION_LAST 
--};
--enum {
--    CURL_RTSPREQ_NONE, 
--    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 
--};
--enum CURL_NETRC_OPTION {
--  CURL_NETRC_IGNORED,     
--  CURL_NETRC_OPTIONAL,    
--  CURL_NETRC_REQUIRED,    
--  CURL_NETRC_LAST
--};
--enum CURL_TLSAUTH {
--  CURL_TLSAUTH_NONE,
--  CURL_TLSAUTH_SRP,
--  CURL_TLSAUTH_LAST 
--};
--typedef enum {
--  CURL_TIMECOND_NONE,
--  CURL_TIMECOND_IFMODSINCE,
--  CURL_TIMECOND_IFUNMODSINCE,
--  CURL_TIMECOND_LASTMOD,
--  CURL_TIMECOND_LAST
--} curl_TimeCond;
--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);
--typedef struct curl_mime      curl_mime;      
--typedef struct curl_mimepart  curl_mimepart;  
--CURL_EXTERN curl_mime *curl_mime_init(CURL *easy);
--CURL_EXTERN void curl_mime_free(curl_mime *mime);
--CURL_EXTERN curl_mimepart *curl_mime_addpart(curl_mime *mime);
--CURL_EXTERN CURLcode curl_mime_name(curl_mimepart *part, const char *name);
--CURL_EXTERN CURLcode curl_mime_filename(curl_mimepart *part,
--                                        const char *filename);
--CURL_EXTERN CURLcode curl_mime_type(curl_mimepart *part, const char *mimetype);
--CURL_EXTERN CURLcode curl_mime_encoder(curl_mimepart *part,
--                                       const char *encoding);
--CURL_EXTERN CURLcode curl_mime_data(curl_mimepart *part,
--                                    const char *data, size_t datasize);
--CURL_EXTERN CURLcode curl_mime_filedata(curl_mimepart *part,
--                                        const char *filename);
--CURL_EXTERN CURLcode curl_mime_data_cb(curl_mimepart *part,
--                                       curl_off_t datasize,
--                                       curl_read_callback readfunc,
--                                       curl_seek_callback seekfunc,
--                                       curl_free_callback freefunc,
--                                       void *arg);
--CURL_EXTERN CURLcode curl_mime_subparts(curl_mimepart *part,
--                                        curl_mime *subparts);
--CURL_EXTERN CURLcode curl_mime_headers(curl_mimepart *part,
--                                       struct curl_slist *headers,
--                                       int take_ownership);
--typedef enum {
--  CURLFORM_NOTHING         CURL_DEPRECATED(7.56.0, ""),
--  CURLFORM_COPYNAME        CURL_DEPRECATED(7.56.0, "Use curl_mime_name()"),
--  CURLFORM_PTRNAME         CURL_DEPRECATED(7.56.0, "Use curl_mime_name()"),
--  CURLFORM_NAMELENGTH      CURL_DEPRECATED(7.56.0, ""),
--  CURLFORM_COPYCONTENTS    CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
--  CURLFORM_PTRCONTENTS     CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
--  CURLFORM_CONTENTSLENGTH  CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
--  CURLFORM_FILECONTENT     CURL_DEPRECATED(7.56.0, "Use curl_mime_data_cb()"),
--  CURLFORM_ARRAY           CURL_DEPRECATED(7.56.0, ""),
--  CURLFORM_OBSOLETE,
--  CURLFORM_FILE            CURL_DEPRECATED(7.56.0, "Use curl_mime_filedata()"),
--  CURLFORM_BUFFER          CURL_DEPRECATED(7.56.0, "Use curl_mime_filename()"),
--  CURLFORM_BUFFERPTR       CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
--  CURLFORM_BUFFERLENGTH    CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
--  CURLFORM_CONTENTTYPE     CURL_DEPRECATED(7.56.0, "Use curl_mime_type()"),
--  CURLFORM_CONTENTHEADER   CURL_DEPRECATED(7.56.0, "Use curl_mime_headers()"),
--  CURLFORM_FILENAME        CURL_DEPRECATED(7.56.0, "Use curl_mime_filename()"),
--  CURLFORM_END,
--  CURLFORM_OBSOLETE2,
--  CURLFORM_STREAM          CURL_DEPRECATED(7.56.0, "Use curl_mime_data_cb()"),
--  CURLFORM_CONTENTLEN  
--                           CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
--  CURLFORM_LASTENTRY 
--} CURLformoption;
--struct curl_forms {
--  CURLformoption option;
--  const char     *value;
--};
--typedef enum {
--  CURL_FORMADD_OK             CURL_DEPRECATED(7.56.0, ""), 
--  CURL_FORMADD_MEMORY         CURL_DEPRECATED(7.56.0, ""),
--  CURL_FORMADD_OPTION_TWICE   CURL_DEPRECATED(7.56.0, ""),
--  CURL_FORMADD_NULL           CURL_DEPRECATED(7.56.0, ""),
--  CURL_FORMADD_UNKNOWN_OPTION CURL_DEPRECATED(7.56.0, ""),
--  CURL_FORMADD_INCOMPLETE     CURL_DEPRECATED(7.56.0, ""),
--  CURL_FORMADD_ILLEGAL_ARRAY  CURL_DEPRECATED(7.56.0, ""),
--  CURL_FORMADD_DISABLED       CURL_DEPRECATED(7.56.0, ""),
--  CURL_FORMADD_LAST 
--} CURLFORMcode;
--CURL_EXTERN CURLFORMcode CURL_DEPRECATED(7.56.0, "Use curl_mime_init()")
--curl_formadd(struct curl_httppost **httppost,
--             struct curl_httppost **last_post,
--             ...);
--typedef size_t (*curl_formget_callback)(void *arg, const char *buf,
--                                        size_t len);
--CURL_EXTERN int CURL_DEPRECATED(7.56.0, "")
--curl_formget(struct curl_httppost *form, void *arg,
--             curl_formget_callback append);
--CURL_EXTERN void CURL_DEPRECATED(7.56.0, "Use curl_mime_free()")
--curl_formfree(struct curl_httppost *form);
--CURL_EXTERN char *curl_getenv(const char *variable);
--CURL_EXTERN char *curl_version(void);
--CURL_EXTERN char *curl_easy_escape(CURL *handle,
--                                   const char *string,
--                                   int length);
--CURL_EXTERN char *curl_escape(const char *string,
--                              int length);
--CURL_EXTERN char *curl_easy_unescape(CURL *handle,
--                                     const char *string,
--                                     int length,
--                                     int *outlength);
--CURL_EXTERN char *curl_unescape(const char *string,
--                                int length);
--CURL_EXTERN void curl_free(void *p);
--CURL_EXTERN CURLcode curl_global_init(long flags);
--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);
--CURL_EXTERN void curl_global_cleanup(void);
--CURL_EXTERN CURLcode curl_global_trace(const char *config);
--struct curl_slist {
--  char *data;
--  struct curl_slist *next;
--};
--struct curl_ssl_backend {
--  curl_sslbackend id;
--  const char *name;
--};
--typedef struct curl_ssl_backend curl_ssl_backend;
--typedef enum {
--  CURLSSLSET_OK = 0,
--  CURLSSLSET_UNKNOWN_BACKEND,
--  CURLSSLSET_TOO_LATE,
--  CURLSSLSET_NO_BACKENDS 
--} CURLsslset;
--CURL_EXTERN CURLsslset curl_global_sslset(curl_sslbackend id, const char *name,
--                                          const curl_ssl_backend ***avail);
--CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *list,
--                                                 const char *data);
--CURL_EXTERN void curl_slist_free_all(struct curl_slist *list);
--CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused);
--struct curl_certinfo {
--  int num_of_certs;             
--  struct curl_slist **certinfo; 
--};
--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_PTR      0x400000 
--#define CURLINFO_SOCKET   0x500000
--#define CURLINFO_OFF_T    0x600000
--typedef enum {
--  CURLINFO_NONE, 
--  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 CURL_DEPRECATED(7.55.0, "Use CURLINFO_SIZE_UPLOAD_T")
--                            = CURLINFO_DOUBLE + 7,
--  CURLINFO_SIZE_UPLOAD_T    = CURLINFO_OFF_T  + 7,
--  CURLINFO_SIZE_DOWNLOAD
--                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SIZE_DOWNLOAD_T")
--                            = CURLINFO_DOUBLE + 8,
--  CURLINFO_SIZE_DOWNLOAD_T  = CURLINFO_OFF_T  + 8,
--  CURLINFO_SPEED_DOWNLOAD
--                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SPEED_DOWNLOAD_T")
--                            = CURLINFO_DOUBLE + 9,
--  CURLINFO_SPEED_DOWNLOAD_T = CURLINFO_OFF_T  + 9,
--  CURLINFO_SPEED_UPLOAD
--                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SPEED_UPLOAD_T")
--                            = CURLINFO_DOUBLE + 10,
--  CURLINFO_SPEED_UPLOAD_T   = CURLINFO_OFF_T  + 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_FILETIME_T       = CURLINFO_OFF_T  + 14,
--  CURLINFO_CONTENT_LENGTH_DOWNLOAD
--                       CURL_DEPRECATED(7.55.0,
--                                      "Use CURLINFO_CONTENT_LENGTH_DOWNLOAD_T")
--                            = CURLINFO_DOUBLE + 15,
--  CURLINFO_CONTENT_LENGTH_DOWNLOAD_T = CURLINFO_OFF_T  + 15,
--  CURLINFO_CONTENT_LENGTH_UPLOAD
--                       CURL_DEPRECATED(7.55.0,
--                                       "Use CURLINFO_CONTENT_LENGTH_UPLOAD_T")
--                            = CURLINFO_DOUBLE + 16,
--  CURLINFO_CONTENT_LENGTH_UPLOAD_T   = CURLINFO_OFF_T  + 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  CURL_DEPRECATED(7.45.0, "Use CURLINFO_ACTIVESOCKET")
--                            = 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_PTR    + 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 CURL_DEPRECATED(7.48.0, "Use CURLINFO_TLS_SSL_PTR")
--                            = CURLINFO_PTR    + 43,
--  CURLINFO_ACTIVESOCKET     = CURLINFO_SOCKET + 44,
--  CURLINFO_TLS_SSL_PTR      = CURLINFO_PTR    + 45,
--  CURLINFO_HTTP_VERSION     = CURLINFO_LONG   + 46,
--  CURLINFO_PROXY_SSL_VERIFYRESULT = CURLINFO_LONG + 47,
--  CURLINFO_PROTOCOL    CURL_DEPRECATED(7.85.0, "Use CURLINFO_SCHEME")
--                            = CURLINFO_LONG   + 48,
--  CURLINFO_SCHEME           = CURLINFO_STRING + 49,
--  CURLINFO_TOTAL_TIME_T     = CURLINFO_OFF_T + 50,
--  CURLINFO_NAMELOOKUP_TIME_T = CURLINFO_OFF_T + 51,
--  CURLINFO_CONNECT_TIME_T   = CURLINFO_OFF_T + 52,
--  CURLINFO_PRETRANSFER_TIME_T = CURLINFO_OFF_T + 53,
--  CURLINFO_STARTTRANSFER_TIME_T = CURLINFO_OFF_T + 54,
--  CURLINFO_REDIRECT_TIME_T  = CURLINFO_OFF_T + 55,
--  CURLINFO_APPCONNECT_TIME_T = CURLINFO_OFF_T + 56,
--  CURLINFO_RETRY_AFTER      = CURLINFO_OFF_T + 57,
--  CURLINFO_EFFECTIVE_METHOD = CURLINFO_STRING + 58,
--  CURLINFO_PROXY_ERROR      = CURLINFO_LONG + 59,
--  CURLINFO_REFERER          = CURLINFO_STRING + 60,
--  CURLINFO_CAINFO           = CURLINFO_STRING + 61,
--  CURLINFO_CAPATH           = CURLINFO_STRING + 62,
--  CURLINFO_XFER_ID          = CURLINFO_OFF_T + 63,
--  CURLINFO_CONN_ID          = CURLINFO_OFF_T + 64,
--  CURLINFO_QUEUE_TIME_T     = CURLINFO_OFF_T + 65,
--  CURLINFO_USED_PROXY       = CURLINFO_LONG + 66,
--  CURLINFO_POSTTRANSFER_TIME_T = CURLINFO_OFF_T + 67,
--  CURLINFO_EARLYDATA_SENT_T = CURLINFO_OFF_T + 68,
--  CURLINFO_LASTONE          = 68
--} CURLINFO;
--typedef enum {
--  CURLCLOSEPOLICY_NONE, 
--  CURLCLOSEPOLICY_OLDEST,
--  CURLCLOSEPOLICY_LEAST_RECENTLY_USED,
--  CURLCLOSEPOLICY_LEAST_TRAFFIC,
--  CURLCLOSEPOLICY_SLOWEST,
--  CURLCLOSEPOLICY_CALLBACK,
--  CURLCLOSEPOLICY_LAST 
--} 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_DEFAULT CURL_GLOBAL_ALL
--typedef enum {
--  CURL_LOCK_DATA_NONE = 0,
--  CURL_LOCK_DATA_SHARE,
--  CURL_LOCK_DATA_COOKIE,
--  CURL_LOCK_DATA_DNS,
--  CURL_LOCK_DATA_SSL_SESSION,
--  CURL_LOCK_DATA_CONNECT,
--  CURL_LOCK_DATA_PSL,
--  CURL_LOCK_DATA_HSTS,
--  CURL_LOCK_DATA_LAST
--} curl_lock_data;
--typedef enum {
--  CURL_LOCK_ACCESS_NONE = 0,   
--  CURL_LOCK_ACCESS_SHARED = 1, 
--  CURL_LOCK_ACCESS_SINGLE = 2, 
--  CURL_LOCK_ACCESS_LAST        
--} 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,  
--  CURLSHE_BAD_OPTION, 
--  CURLSHE_IN_USE,     
--  CURLSHE_INVALID,    
--  CURLSHE_NOMEM,      
--  CURLSHE_NOT_BUILT_IN, 
--  CURLSHE_LAST        
--} CURLSHcode;
--typedef enum {
--  CURLSHOPT_NONE,  
--  CURLSHOPT_SHARE,   
--  CURLSHOPT_UNSHARE, 
--  CURLSHOPT_LOCKFUNC,   
--  CURLSHOPT_UNLOCKFUNC, 
--  CURLSHOPT_USERDATA,   
--  CURLSHOPT_LAST  
--} CURLSHoption;
--CURL_EXTERN CURLSH *curl_share_init(void);
--CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *share, CURLSHoption option,
--                                         ...);
--CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *share);
--typedef enum {
--  CURLVERSION_FIRST,    
--  CURLVERSION_SECOND,   
--  CURLVERSION_THIRD,    
--  CURLVERSION_FOURTH,   
--  CURLVERSION_FIFTH,    
--  CURLVERSION_SIXTH,    
--  CURLVERSION_SEVENTH,  
--  CURLVERSION_EIGHTH,   
--  CURLVERSION_NINTH,    
--  CURLVERSION_TENTH,    
--  CURLVERSION_ELEVENTH, 
--  CURLVERSION_TWELFTH,  
--  CURLVERSION_LAST 
--} CURLversion;
--#define CURLVERSION_NOW CURLVERSION_TWELFTH
--struct curl_version_info_data {
--  CURLversion age;          
--  const char *version;      
--  unsigned int version_num; 
--  const char *host;         
--  int features;             
--  const char *ssl_version;  
--  long ssl_version_num;     
--  const char *libz_version; 
--  const char * const *protocols;
--  const char *ares;
--  int ares_num;
--  const char *libidn;
--  int iconv_ver_num;
--  const char *libssh_version; 
--  unsigned int brotli_ver_num; 
--  const char *brotli_version; 
--  unsigned int nghttp2_ver_num; 
--  const char *nghttp2_version; 
--  const char *quic_version;    
--  const char *cainfo;          
--  const char *capath;          
--  unsigned int zstd_ver_num; 
--  const char *zstd_version; 
--  const char *hyper_version; 
--  const char *gsasl_version; 
--  const char * const *feature_names;
--  const char *rtmp_version; 
--};
--typedef struct curl_version_info_data curl_version_info_data;
--
--CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion);
--CURL_EXTERN const char *curl_easy_strerror(CURLcode);
--CURL_EXTERN const char *curl_share_strerror(CURLSHcode);
--CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask);
--#ifndef CURLINC_EASY_H
--#define CURLINC_EASY_H
--struct curl_blob {
--  void *data;
--  size_t len;
--  unsigned int flags; 
--};
--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);
--CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...);
--CURL_EXTERN CURL *curl_easy_duphandle(CURL *curl);
--CURL_EXTERN void curl_easy_reset(CURL *curl);
--CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen,
--                                    size_t *n);
--CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer,
--                                    size_t buflen, size_t *n);
--CURL_EXTERN CURLcode curl_easy_upkeep(CURL *curl);
--#endif
--#ifndef CURLINC_MULTI_H
--#define CURLINC_MULTI_H
--typedef void CURLM;
--typedef enum {
--  CURLM_CALL_MULTI_PERFORM = -1, 
--  CURLM_OK,
--  CURLM_BAD_HANDLE,      
--  CURLM_BAD_EASY_HANDLE, 
--  CURLM_OUT_OF_MEMORY,   
--  CURLM_INTERNAL_ERROR,  
--  CURLM_BAD_SOCKET,      
--  CURLM_UNKNOWN_OPTION,  
--  CURLM_ADDED_ALREADY,   
--  CURLM_RECURSIVE_API_CALL, 
--  CURLM_WAKEUP_FAILURE,  
--  CURLM_BAD_FUNCTION_ARGUMENT, 
--  CURLM_ABORTED_BY_CALLBACK,
--  CURLM_UNRECOVERABLE_POLL,
--  CURLM_LAST
--} CURLMcode;
--typedef enum {
--  CURLMSG_NONE, 
--  CURLMSG_DONE, 
--  CURLMSG_LAST 
--} CURLMSG;
--struct CURLMsg {
--  CURLMSG msg;       
--  CURL *easy_handle; 
--  union {
--    void *whatever;    
--    CURLcode result;   
--  } data;
--};
--typedef struct CURLMsg CURLMsg;
--struct curl_waitfd {
--  curl_socket_t fd;
--  short events;
--  short revents;
--};
--CURL_EXTERN CURLM *curl_multi_init(void);
--CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle,
--                                            CURL *curl_handle);
--CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
--                                               CURL *curl_handle);
--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);
--CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle,
--                                      struct curl_waitfd extra_fds[],
--                                      unsigned int extra_nfds,
--                                      int timeout_ms,
--                                      int *ret);
--CURL_EXTERN CURLMcode curl_multi_poll(CURLM *multi_handle,
--                                      struct curl_waitfd extra_fds[],
--                                      unsigned int extra_nfds,
--                                      int timeout_ms,
--                                      int *ret);
--CURL_EXTERN CURLMcode curl_multi_wakeup(CURLM *multi_handle);
--CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle,
--                                         int *running_handles);
--CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
--CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle,
--                                          int *msgs_in_queue);
--CURL_EXTERN const char *curl_multi_strerror(CURLMcode);
--#define CURL_SOCKET_TIMEOUT CURL_SOCKET_BAD
--typedef int (*curl_socket_callback)(CURL *easy,      
--                                    curl_socket_t s, 
--                                    int what,        
--                                    void *userp,     
--                                    void *socketp);  
--typedef int (*curl_multi_timer_callback)(CURLM *multi,    
--                                         long timeout_ms, 
--                                         void *userp);    
--CURL_EXTERN CURLMcode CURL_DEPRECATED(7.19.5, "Use curl_multi_socket_action()")
--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_DEPRECATED(7.19.5, "Use curl_multi_socket_action()")
--curl_multi_socket_all(CURLM *multi_handle, int *running_handles);
--#ifndef CURL_ALLOW_OLD_MULTI_SOCKET
--#define curl_multi_socket(x,y,z) curl_multi_socket_action(x,y,0,z)
--#endif
--CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle,
--                                         long *milliseconds);
--typedef enum {
--  CURLOPT(CURLMOPT_SOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 1),
--  CURLOPT(CURLMOPT_SOCKETDATA, CURLOPTTYPE_OBJECTPOINT, 2),
--  CURLOPT(CURLMOPT_PIPELINING, CURLOPTTYPE_LONG, 3),
--  CURLOPT(CURLMOPT_TIMERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 4),
--  CURLOPT(CURLMOPT_TIMERDATA, CURLOPTTYPE_OBJECTPOINT, 5),
--  CURLOPT(CURLMOPT_MAXCONNECTS, CURLOPTTYPE_LONG, 6),
--  CURLOPT(CURLMOPT_MAX_HOST_CONNECTIONS, CURLOPTTYPE_LONG, 7),
--  CURLOPT(CURLMOPT_MAX_PIPELINE_LENGTH, CURLOPTTYPE_LONG, 8),
--  CURLOPT(CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 9),
--  CURLOPT(CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 10),
--  CURLOPT(CURLMOPT_PIPELINING_SITE_BL, CURLOPTTYPE_OBJECTPOINT, 11),
--  CURLOPT(CURLMOPT_PIPELINING_SERVER_BL, CURLOPTTYPE_OBJECTPOINT, 12),
--  CURLOPT(CURLMOPT_MAX_TOTAL_CONNECTIONS, CURLOPTTYPE_LONG, 13),
--  CURLOPT(CURLMOPT_PUSHFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 14),
--  CURLOPT(CURLMOPT_PUSHDATA, CURLOPTTYPE_OBJECTPOINT, 15),
--  CURLOPT(CURLMOPT_MAX_CONCURRENT_STREAMS, CURLOPTTYPE_LONG, 16),
--  CURLMOPT_LASTENTRY 
--} CURLMoption;
--CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle,
--                                        CURLMoption option, ...);
--CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle,
--                                        curl_socket_t sockfd, void *sockp);
--CURL_EXTERN CURL **curl_multi_get_handles(CURLM *multi_handle);
--struct curl_pushheaders;  
--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);
--CURL_EXTERN CURLMcode curl_multi_waitfds(CURLM *multi,
--                                         struct curl_waitfd *ufds,
--                                         unsigned int size,
--                                         unsigned int *fd_count);
--#endif
--#ifndef CURLINC_URLAPI_H
--#define CURLINC_URLAPI_H
--typedef enum {
--  CURLUE_OK,
--  CURLUE_BAD_HANDLE,          
--  CURLUE_BAD_PARTPOINTER,     
--  CURLUE_MALFORMED_INPUT,     
--  CURLUE_BAD_PORT_NUMBER,     
--  CURLUE_UNSUPPORTED_SCHEME,  
--  CURLUE_URLDECODE,           
--  CURLUE_OUT_OF_MEMORY,       
--  CURLUE_USER_NOT_ALLOWED,    
--  CURLUE_UNKNOWN_PART,        
--  CURLUE_NO_SCHEME,           
--  CURLUE_NO_USER,             
--  CURLUE_NO_PASSWORD,         
--  CURLUE_NO_OPTIONS,          
--  CURLUE_NO_HOST,             
--  CURLUE_NO_PORT,             
--  CURLUE_NO_QUERY,            
--  CURLUE_NO_FRAGMENT,         
--  CURLUE_NO_ZONEID,           
--  CURLUE_BAD_FILE_URL,        
--  CURLUE_BAD_FRAGMENT,        
--  CURLUE_BAD_HOSTNAME,        
--  CURLUE_BAD_IPV6,            
--  CURLUE_BAD_LOGIN,           
--  CURLUE_BAD_PASSWORD,        
--  CURLUE_BAD_PATH,            
--  CURLUE_BAD_QUERY,           
--  CURLUE_BAD_SCHEME,          
--  CURLUE_BAD_SLASHES,         
--  CURLUE_BAD_USER,            
--  CURLUE_LACKS_IDN,           
--  CURLUE_TOO_LARGE,           
--  CURLUE_LAST
--} CURLUcode;
--typedef enum {
--  CURLUPART_URL,
--  CURLUPART_SCHEME,
--  CURLUPART_USER,
--  CURLUPART_PASSWORD,
--  CURLUPART_OPTIONS,
--  CURLUPART_HOST,
--  CURLUPART_PORT,
--  CURLUPART_PATH,
--  CURLUPART_QUERY,
--  CURLUPART_FRAGMENT,
--  CURLUPART_ZONEID 
--} CURLUPart;
--typedef struct Curl_URL CURLU;
--CURL_EXTERN CURLU *curl_url(void);
--CURL_EXTERN void curl_url_cleanup(CURLU *handle);
--CURL_EXTERN CURLU *curl_url_dup(const CURLU *in);
--CURL_EXTERN CURLUcode curl_url_get(const CURLU *handle, CURLUPart what,
--                                   char **part, unsigned int flags);
--CURL_EXTERN CURLUcode curl_url_set(CURLU *handle, CURLUPart what,
--                                   const char *part, unsigned int flags);
--CURL_EXTERN const char *curl_url_strerror(CURLUcode);
--#endif 
--#ifndef CURLINC_OPTIONS_H
--#define CURLINC_OPTIONS_H
--typedef enum {
--  CURLOT_LONG,    
--  CURLOT_VALUES,  
--  CURLOT_OFF_T,   
--  CURLOT_OBJECT,  
--  CURLOT_STRING,  
--  CURLOT_SLIST,   
--  CURLOT_CBPTR,   
--  CURLOT_BLOB,    
--  CURLOT_FUNCTION 
--} curl_easytype;
--struct curl_easyoption {
--  const char *name;
--  CURLoption id;
--  curl_easytype type;
--  unsigned int flags;
--};
--CURL_EXTERN const struct curl_easyoption *
--curl_easy_option_by_name(const char *name);
--CURL_EXTERN const struct curl_easyoption *
--curl_easy_option_by_id(CURLoption id);
--CURL_EXTERN const struct curl_easyoption *
--curl_easy_option_next(const struct curl_easyoption *prev);
--#endif 
--#ifndef CURLINC_HEADER_H
--#define CURLINC_HEADER_H
--struct curl_header {
--  char *name;    
--  char *value;
--  size_t amount; 
--  size_t index;  
--  unsigned int origin; 
--  void *anchor; 
--};
--typedef enum {
--  CURLHE_OK,
--  CURLHE_BADINDEX,      
--  CURLHE_MISSING,       
--  CURLHE_NOHEADERS,     
--  CURLHE_NOREQUEST,     
--  CURLHE_OUT_OF_MEMORY, 
--  CURLHE_BAD_ARGUMENT,  
--  CURLHE_NOT_BUILT_IN   
--} CURLHcode;
--CURL_EXTERN CURLHcode curl_easy_header(CURL *easy,
--                                       const char *name,
--                                       size_t index,
--                                       unsigned int origin,
--                                       int request,
--                                       struct curl_header **hout);
--CURL_EXTERN struct curl_header *curl_easy_nextheader(CURL *easy,
--                                                     unsigned int origin,
--                                                     int request,
--                                                     struct curl_header *prev);
--#endif 
--#ifndef CURLINC_WEBSOCKETS_H
--#define CURLINC_WEBSOCKETS_H
--struct curl_ws_frame {
--  int age;              
--  int flags;            
--  curl_off_t offset;    
--  curl_off_t bytesleft; 
--  size_t len;           
--};
--CURL_EXTERN CURLcode curl_ws_recv(CURL *curl, void *buffer, size_t buflen,
--                                  size_t *recv,
--                                  const struct curl_ws_frame **metap);
--CURL_EXTERN CURLcode curl_ws_send(CURL *curl, const void *buffer,
--                                  size_t buflen, size_t *sent,
--                                  curl_off_t fragsize,
--                                  unsigned int flags);
--CURL_EXTERN const struct curl_ws_frame *curl_ws_meta(CURL *curl);
--#endif 
--#ifndef CURL_SKIP_INCLUDE_MPRINTF
--#ifndef CURLINC_MPRINTF_H
--#define CURLINC_MPRINTF_H
--#include <condition_variable>
--#ifndef CURL_TEMP_PRINTF
--#if (defined(__GNUC__) || defined(__clang__) ||                         \
--  defined(__IAR_SYSTEMS_ICC__)) &&                                      \
--  defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) &&         \
--  !defined(CURL_NO_FMT_CHECKS)
--#if defined(__MINGW32__) && !defined(__clang__)
--#if defined(__MINGW_PRINTF_FORMAT)  
--#define CURL_TEMP_PRINTF(fmt, arg) \
--  __attribute__((format(__MINGW_PRINTF_FORMAT, fmt, arg)))
--#else
--#define CURL_TEMP_PRINTF(fmt, arg)
--#endif
--#else
--#define CURL_TEMP_PRINTF(fmt, arg) \
--  __attribute__((format(printf, fmt, arg)))
--#endif
--#else
--#define CURL_TEMP_PRINTF(fmt, arg)
--#endif
--#endif
--CURL_EXTERN int curl_mprintf(const char *format, ...)
--  CURL_TEMP_PRINTF(1, 2);
--CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...)
--  CURL_TEMP_PRINTF(2, 3);
--CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...)
--  CURL_TEMP_PRINTF(2, 3);
--CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength,
--                               const char *format, ...)
--  CURL_TEMP_PRINTF(3, 4);
--CURL_EXTERN int curl_mvprintf(const char *format, va_list args)
--  CURL_TEMP_PRINTF(1, 0);
--CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args)
--  CURL_TEMP_PRINTF(2, 0);
--CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args)
--  CURL_TEMP_PRINTF(2, 0);
--CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength,
--                                const char *format, va_list args)
--  CURL_TEMP_PRINTF(3, 0);
--CURL_EXTERN char *curl_maprintf(const char *format, ...)
--  CURL_TEMP_PRINTF(1, 2);
--CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args)
--  CURL_TEMP_PRINTF(1, 0);
--#undef CURL_TEMP_PRINTF
--#endif 
--#endif
--#if defined(__GNUC__) && defined(__GNUC_MINOR__) && \
--    ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \
--    !defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK)
--#ifndef CURLINC_TYPECHECK_GCC_H
--#define CURLINC_TYPECHECK_GCC_H
--#define curl_easy_setopt(handle, option, value)                         \
--  __extension__({                                                       \
--      CURLoption _curl_opt = (option);                                  \
--      if(__builtin_constant_p(_curl_opt)) {                             \
--        CURL_IGNORE_DEPRECATION(                                        \
--          if(curlcheck_long_option(_curl_opt))                          \
--            if(!curlcheck_long(value))                                  \
--              _curl_easy_setopt_err_long();                             \
--          if(curlcheck_off_t_option(_curl_opt))                         \
--            if(!curlcheck_off_t(value))                                 \
--              _curl_easy_setopt_err_curl_off_t();                       \
--          if(curlcheck_string_option(_curl_opt))                        \
--            if(!curlcheck_string(value))                                \
--              _curl_easy_setopt_err_string();                           \
--          if(curlcheck_write_cb_option(_curl_opt))                      \
--            if(!curlcheck_write_cb(value))                              \
--              _curl_easy_setopt_err_write_callback();                   \
--          if((_curl_opt) == CURLOPT_RESOLVER_START_FUNCTION)            \
--            if(!curlcheck_resolver_start_callback(value))               \
--              _curl_easy_setopt_err_resolver_start_callback();          \
--          if((_curl_opt) == CURLOPT_READFUNCTION)                       \
--            if(!curlcheck_read_cb(value))                               \
--              _curl_easy_setopt_err_read_cb();                          \
--          if((_curl_opt) == CURLOPT_IOCTLFUNCTION)                      \
--            if(!curlcheck_ioctl_cb(value))                              \
--              _curl_easy_setopt_err_ioctl_cb();                         \
--          if((_curl_opt) == CURLOPT_SOCKOPTFUNCTION)                    \
--            if(!curlcheck_sockopt_cb(value))                            \
--              _curl_easy_setopt_err_sockopt_cb();                       \
--          if((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION)                 \
--            if(!curlcheck_opensocket_cb(value))                         \
--              _curl_easy_setopt_err_opensocket_cb();                    \
--          if((_curl_opt) == CURLOPT_PROGRESSFUNCTION)                   \
--            if(!curlcheck_progress_cb(value))                           \
--              _curl_easy_setopt_err_progress_cb();                      \
--          if((_curl_opt) == CURLOPT_DEBUGFUNCTION)                      \
--            if(!curlcheck_debug_cb(value))                              \
--              _curl_easy_setopt_err_debug_cb();                         \
--          if((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION)                   \
--            if(!curlcheck_ssl_ctx_cb(value))                            \
--              _curl_easy_setopt_err_ssl_ctx_cb();                       \
--          if(curlcheck_conv_cb_option(_curl_opt))                       \
--            if(!curlcheck_conv_cb(value))                               \
--              _curl_easy_setopt_err_conv_cb();                          \
--          if((_curl_opt) == CURLOPT_SEEKFUNCTION)                       \
--            if(!curlcheck_seek_cb(value))                               \
--              _curl_easy_setopt_err_seek_cb();                          \
--          if(curlcheck_cb_data_option(_curl_opt))                       \
--            if(!curlcheck_cb_data(value))                               \
--              _curl_easy_setopt_err_cb_data();                          \
--          if((_curl_opt) == CURLOPT_ERRORBUFFER)                        \
--            if(!curlcheck_error_buffer(value))                          \
--              _curl_easy_setopt_err_error_buffer();                     \
--          if((_curl_opt) == CURLOPT_STDERR)                             \
--            if(!curlcheck_FILE(value))                                  \
--              _curl_easy_setopt_err_FILE();                             \
--          if(curlcheck_postfields_option(_curl_opt))                    \
--            if(!curlcheck_postfields(value))                            \
--              _curl_easy_setopt_err_postfields();                       \
--          if((_curl_opt) == CURLOPT_HTTPPOST)                           \
--            if(!curlcheck_arr((value), struct curl_httppost))           \
--              _curl_easy_setopt_err_curl_httpost();                     \
--          if((_curl_opt) == CURLOPT_MIMEPOST)                           \
--            if(!curlcheck_ptr((value), curl_mime))                      \
--              _curl_easy_setopt_err_curl_mimepost();                    \
--          if(curlcheck_slist_option(_curl_opt))                         \
--            if(!curlcheck_arr((value), struct curl_slist))              \
--              _curl_easy_setopt_err_curl_slist();                       \
--          if((_curl_opt) == CURLOPT_SHARE)                              \
--            if(!curlcheck_ptr((value), CURLSH))                         \
--              _curl_easy_setopt_err_CURLSH();                           \
--        )                                                               \
--      }                                                                 \
--      curl_easy_setopt(handle, _curl_opt, value);                       \
--    })
--#define curl_easy_getinfo(handle, info, arg)                            \
--  __extension__({                                                       \
--      CURLINFO _curl_info = (info);                                     \
--      if(__builtin_constant_p(_curl_info)) {                            \
--        CURL_IGNORE_DEPRECATION(                                        \
--          if(curlcheck_string_info(_curl_info))                         \
--            if(!curlcheck_arr((arg), char *))                           \
--              _curl_easy_getinfo_err_string();                          \
--          if(curlcheck_long_info(_curl_info))                           \
--            if(!curlcheck_arr((arg), long))                             \
--              _curl_easy_getinfo_err_long();                            \
--          if(curlcheck_double_info(_curl_info))                         \
--            if(!curlcheck_arr((arg), double))                           \
--              _curl_easy_getinfo_err_double();                          \
--          if(curlcheck_slist_info(_curl_info))                          \
--            if(!curlcheck_arr((arg), struct curl_slist *))              \
--              _curl_easy_getinfo_err_curl_slist();                      \
--          if(curlcheck_tlssessioninfo_info(_curl_info))                 \
--            if(!curlcheck_arr((arg), struct curl_tlssessioninfo *))     \
--              _curl_easy_getinfo_err_curl_tlssesssioninfo();            \
--          if(curlcheck_certinfo_info(_curl_info))                       \
--            if(!curlcheck_arr((arg), struct curl_certinfo *))           \
--              _curl_easy_getinfo_err_curl_certinfo();                   \
--          if(curlcheck_socket_info(_curl_info))                         \
--            if(!curlcheck_arr((arg), curl_socket_t))                    \
--              _curl_easy_getinfo_err_curl_socket();                     \
--          if(curlcheck_off_t_info(_curl_info))                          \
--            if(!curlcheck_arr((arg), curl_off_t))                       \
--              _curl_easy_getinfo_err_curl_off_t();                      \
--        )                                                               \
--      }                                                                 \
--      curl_easy_getinfo(handle, _curl_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)
--#define CURLWARNING(id, message)                                        \
--  static void __attribute__((__warning__(message)))                     \
--  __attribute__((__unused__)) __attribute__((__noinline__))             \
--  id(void) { __asm__(""); }
--CURLWARNING(_curl_easy_setopt_err_long,
--  "curl_easy_setopt expects a long argument for this option")
--CURLWARNING(_curl_easy_setopt_err_curl_off_t,
--  "curl_easy_setopt expects a curl_off_t argument for this option")
--CURLWARNING(_curl_easy_setopt_err_string,
--              "curl_easy_setopt expects a "
--              "string ('char *' or char[]) argument for this option"
--  )
--CURLWARNING(_curl_easy_setopt_err_write_callback,
--  "curl_easy_setopt expects a curl_write_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_resolver_start_callback,
--              "curl_easy_setopt expects a "
--              "curl_resolver_start_callback argument for this option"
--  )
--CURLWARNING(_curl_easy_setopt_err_read_cb,
--  "curl_easy_setopt expects a curl_read_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_ioctl_cb,
--  "curl_easy_setopt expects a curl_ioctl_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_sockopt_cb,
--  "curl_easy_setopt expects a curl_sockopt_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_opensocket_cb,
--              "curl_easy_setopt expects a "
--              "curl_opensocket_callback argument for this option"
--  )
--CURLWARNING(_curl_easy_setopt_err_progress_cb,
--  "curl_easy_setopt expects a curl_progress_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_debug_cb,
--  "curl_easy_setopt expects a curl_debug_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_ssl_ctx_cb,
--  "curl_easy_setopt expects a curl_ssl_ctx_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_conv_cb,
--  "curl_easy_setopt expects a curl_conv_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_seek_cb,
--  "curl_easy_setopt expects a curl_seek_callback argument for this option")
--CURLWARNING(_curl_easy_setopt_err_cb_data,
--              "curl_easy_setopt expects a "
--              "private data pointer as argument for this option")
--CURLWARNING(_curl_easy_setopt_err_error_buffer,
--              "curl_easy_setopt expects a "
--              "char buffer of CURL_ERROR_SIZE as argument for this option")
--CURLWARNING(_curl_easy_setopt_err_FILE,
--  "curl_easy_setopt expects a 'FILE *' argument for this option")
--CURLWARNING(_curl_easy_setopt_err_postfields,
--  "curl_easy_setopt expects a 'void *' or 'char *' argument for this option")
--CURLWARNING(_curl_easy_setopt_err_curl_httpost,
--              "curl_easy_setopt expects a 'struct curl_httppost *' "
--              "argument for this option")
--CURLWARNING(_curl_easy_setopt_err_curl_mimepost,
--              "curl_easy_setopt expects a 'curl_mime *' "
--              "argument for this option")
--CURLWARNING(_curl_easy_setopt_err_curl_slist,
--  "curl_easy_setopt expects a 'struct curl_slist *' argument for this option")
--CURLWARNING(_curl_easy_setopt_err_CURLSH,
--  "curl_easy_setopt expects a CURLSH* argument for this option")
--CURLWARNING(_curl_easy_getinfo_err_string,
--  "curl_easy_getinfo expects a pointer to 'char *' for this info")
--CURLWARNING(_curl_easy_getinfo_err_long,
--  "curl_easy_getinfo expects a pointer to long for this info")
--CURLWARNING(_curl_easy_getinfo_err_double,
--  "curl_easy_getinfo expects a pointer to double for this info")
--CURLWARNING(_curl_easy_getinfo_err_curl_slist,
--  "curl_easy_getinfo expects a pointer to 'struct curl_slist *' for this info")
--CURLWARNING(_curl_easy_getinfo_err_curl_tlssesssioninfo,
--              "curl_easy_getinfo expects a pointer to "
--              "'struct curl_tlssessioninfo *' for this info")
--CURLWARNING(_curl_easy_getinfo_err_curl_certinfo,
--              "curl_easy_getinfo expects a pointer to "
--              "'struct curl_certinfo *' for this info")
--CURLWARNING(_curl_easy_getinfo_err_curl_socket,
--  "curl_easy_getinfo expects a pointer to curl_socket_t for this info")
--CURLWARNING(_curl_easy_getinfo_err_curl_off_t,
--  "curl_easy_getinfo expects a pointer to curl_off_t for this info")
--#define curlcheck_long_option(option)                   \
--  (0 < (option) && (option) < CURLOPTTYPE_OBJECTPOINT)
--#define curlcheck_off_t_option(option)          \
--  (((option) > CURLOPTTYPE_OFF_T) && ((option) < CURLOPTTYPE_BLOB))
--#define curlcheck_string_option(option)                                       \
--  ((option) == CURLOPT_ABSTRACT_UNIX_SOCKET ||                                \
--   (option) == CURLOPT_ACCEPT_ENCODING ||                                     \
--   (option) == CURLOPT_ALTSVC ||                                              \
--   (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_DOH_URL ||                                             \
--   (option) == CURLOPT_ECH        ||                                          \
--   (option) == CURLOPT_EGDSOCKET ||                                           \
--   (option) == CURLOPT_FTP_ACCOUNT ||                                         \
--   (option) == CURLOPT_FTP_ALTERNATIVE_TO_USER ||                             \
--   (option) == CURLOPT_FTPPORT ||                                             \
--   (option) == CURLOPT_HSTS ||                                                \
--   (option) == CURLOPT_HAPROXY_CLIENT_IP ||                                   \
--   (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_PRE_PROXY ||                                           \
--   (option) == CURLOPT_PROTOCOLS_STR ||                                       \
--   (option) == CURLOPT_PROXY ||                                               \
--   (option) == CURLOPT_PROXY_CAINFO ||                                        \
--   (option) == CURLOPT_PROXY_CAPATH ||                                        \
--   (option) == CURLOPT_PROXY_CRLFILE ||                                       \
--   (option) == CURLOPT_PROXY_ISSUERCERT ||                                    \
--   (option) == CURLOPT_PROXY_KEYPASSWD ||                                     \
--   (option) == CURLOPT_PROXY_PINNEDPUBLICKEY ||                               \
--   (option) == CURLOPT_PROXY_SERVICE_NAME ||                                  \
--   (option) == CURLOPT_PROXY_SSL_CIPHER_LIST ||                               \
--   (option) == CURLOPT_PROXY_SSLCERT ||                                       \
--   (option) == CURLOPT_PROXY_SSLCERTTYPE ||                                   \
--   (option) == CURLOPT_PROXY_SSLKEY ||                                        \
--   (option) == CURLOPT_PROXY_SSLKEYTYPE ||                                    \
--   (option) == CURLOPT_PROXY_TLS13_CIPHERS ||                                 \
--   (option) == CURLOPT_PROXY_TLSAUTH_PASSWORD ||                              \
--   (option) == CURLOPT_PROXY_TLSAUTH_TYPE ||                                  \
--   (option) == CURLOPT_PROXY_TLSAUTH_USERNAME ||                              \
--   (option) == CURLOPT_PROXYPASSWORD ||                                       \
--   (option) == CURLOPT_PROXYUSERNAME ||                                       \
--   (option) == CURLOPT_PROXYUSERPWD ||                                        \
--   (option) == CURLOPT_RANDOM_FILE ||                                         \
--   (option) == CURLOPT_RANGE ||                                               \
--   (option) == CURLOPT_REDIR_PROTOCOLS_STR ||                                 \
--   (option) == CURLOPT_REFERER ||                                             \
--   (option) == CURLOPT_REQUEST_TARGET ||                                      \
--   (option) == CURLOPT_RTSP_SESSION_ID ||                                     \
--   (option) == CURLOPT_RTSP_STREAM_URI ||                                     \
--   (option) == CURLOPT_RTSP_TRANSPORT ||                                      \
--   (option) == CURLOPT_SASL_AUTHZID ||                                        \
--   (option) == CURLOPT_SERVICE_NAME ||                                        \
--   (option) == CURLOPT_SOCKS5_GSSAPI_SERVICE ||                               \
--   (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 ||                             \
--   (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 ||                          \
--   (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_TLS13_CIPHERS ||                                       \
--   (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_AWS_SIGV4 ||                                           \
--   (option) == CURLOPT_USERPWD ||                                             \
--   (option) == CURLOPT_XOAUTH2_BEARER ||                                      \
--   (option) == CURLOPT_SSL_EC_CURVES ||                                       \
--   0)
--#define curlcheck_write_cb_option(option)                               \
--  ((option) == CURLOPT_HEADERFUNCTION ||                                \
--   (option) == CURLOPT_WRITEFUNCTION)
--#define curlcheck_conv_cb_option(option)                                \
--  ((option) == CURLOPT_CONV_TO_NETWORK_FUNCTION ||                      \
--   (option) == CURLOPT_CONV_FROM_NETWORK_FUNCTION ||                    \
--   (option) == CURLOPT_CONV_FROM_UTF8_FUNCTION)
--#define curlcheck_cb_data_option(option)                                      \
--  ((option) == CURLOPT_CHUNK_DATA ||                                          \
--   (option) == CURLOPT_CLOSESOCKETDATA ||                                     \
--   (option) == CURLOPT_DEBUGDATA ||                                           \
--   (option) == CURLOPT_FNMATCH_DATA ||                                        \
--   (option) == CURLOPT_HEADERDATA ||                                          \
--   (option) == CURLOPT_HSTSREADDATA ||                                        \
--   (option) == CURLOPT_HSTSWRITEDATA ||                                       \
--   (option) == CURLOPT_INTERLEAVEDATA ||                                      \
--   (option) == CURLOPT_IOCTLDATA ||                                           \
--   (option) == CURLOPT_OPENSOCKETDATA ||                                      \
--   (option) == CURLOPT_PREREQDATA ||                                          \
--   (option) == CURLOPT_PROGRESSDATA ||                                        \
--   (option) == CURLOPT_READDATA ||                                            \
--   (option) == CURLOPT_SEEKDATA ||                                            \
--   (option) == CURLOPT_SOCKOPTDATA ||                                         \
--   (option) == CURLOPT_SSH_KEYDATA ||                                         \
--   (option) == CURLOPT_SSL_CTX_DATA ||                                        \
--   (option) == CURLOPT_WRITEDATA ||                                           \
--   (option) == CURLOPT_RESOLVER_START_DATA ||                                 \
--   (option) == CURLOPT_TRAILERDATA ||                                         \
--   (option) == CURLOPT_SSH_HOSTKEYDATA ||                                     \
--   0)
--#define curlcheck_postfields_option(option)                                   \
--  ((option) == CURLOPT_POSTFIELDS ||                                          \
--   (option) == CURLOPT_COPYPOSTFIELDS ||                                      \
--   0)
--#define curlcheck_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 ||                                       \
--   (option) == CURLOPT_CONNECT_TO ||                                          \
--   0)
--#define curlcheck_string_info(info)                             \
--  (CURLINFO_STRING < (info) && (info) < CURLINFO_LONG &&        \
--   (info) != CURLINFO_PRIVATE)
--#define curlcheck_long_info(info)                       \
--  (CURLINFO_LONG < (info) && (info) < CURLINFO_DOUBLE)
--#define curlcheck_double_info(info)                     \
--  (CURLINFO_DOUBLE < (info) && (info) < CURLINFO_SLIST)
--#define curlcheck_slist_info(info)                                      \
--  (((info) == CURLINFO_SSL_ENGINES) || ((info) == CURLINFO_COOKIELIST))
--#define curlcheck_tlssessioninfo_info(info)                              \
--  (((info) == CURLINFO_TLS_SSL_PTR) || ((info) == CURLINFO_TLS_SESSION))
--#define curlcheck_certinfo_info(info) ((info) == CURLINFO_CERTINFO)
--#define curlcheck_socket_info(info)                     \
--  (CURLINFO_SOCKET < (info) && (info) < CURLINFO_OFF_T)
--#define curlcheck_off_t_info(info)              \
--  (CURLINFO_OFF_T < (info))
--#define curlcheck_any_ptr(expr)                 \
--  (sizeof(expr) == sizeof(void *))
--#define curlcheck_NULL(expr)                                            \
--  (__builtin_types_compatible_p(__typeof__(expr), __typeof__(NULL)))
--#define curlcheck_ptr(expr, type)                                       \
--  (curlcheck_NULL(expr) ||                                              \
--   __builtin_types_compatible_p(__typeof__(expr), type *) ||            \
--   __builtin_types_compatible_p(__typeof__(expr), const type *))
--#define curlcheck_arr(expr, type)                                       \
--  (curlcheck_ptr((expr), type) ||                                       \
--   __builtin_types_compatible_p(__typeof__(expr), type []))
--#define curlcheck_string(expr)                                          \
--  (curlcheck_arr((expr), char) ||                                       \
--   curlcheck_arr((expr), signed char) ||                                \
--   curlcheck_arr((expr), unsigned char))
--#define curlcheck_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))
--#define curlcheck_off_t(expr)                                   \
--  (__builtin_types_compatible_p(__typeof__(expr), curl_off_t))
--#define curlcheck_error_buffer(expr)                                    \
--  (curlcheck_NULL(expr) ||                                              \
--   __builtin_types_compatible_p(__typeof__(expr), char *) ||            \
--   __builtin_types_compatible_p(__typeof__(expr), char[]))
--#if 0
--#define curlcheck_cb_data(expr)                                         \
--  (curlcheck_ptr((expr), void) ||                                       \
--   curlcheck_ptr((expr), FILE))
--#else 
--#define curlcheck_cb_data(expr)                 \
--  curlcheck_any_ptr(expr)
--#endif
--#define curlcheck_FILE(expr)                                            \
--  (curlcheck_NULL(expr) ||                                              \
--   (__builtin_types_compatible_p(__typeof__(expr), FILE *)))
--#define curlcheck_postfields(expr)                                      \
--  (curlcheck_ptr((expr), void) ||                                       \
--   curlcheck_arr((expr), char) ||                                       \
--   curlcheck_arr((expr), unsigned char))
--#define curlcheck_cb_compatible(func, type)                             \
--  (__builtin_types_compatible_p(__typeof__(func), type) ||              \
--   __builtin_types_compatible_p(__typeof__(func) *, type))
--#define curlcheck_resolver_start_callback(expr)       \
--  (curlcheck_NULL(expr) || \
--   curlcheck_cb_compatible((expr), curl_resolver_start_callback))
--#define curlcheck_read_cb(expr)                                         \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), __typeof__(fread) *) ||              \
--   curlcheck_cb_compatible((expr), curl_read_callback) ||               \
--   curlcheck_cb_compatible((expr), _curl_read_callback1) ||             \
--   curlcheck_cb_compatible((expr), _curl_read_callback2) ||             \
--   curlcheck_cb_compatible((expr), _curl_read_callback3) ||             \
--   curlcheck_cb_compatible((expr), _curl_read_callback4) ||             \
--   curlcheck_cb_compatible((expr), _curl_read_callback5) ||             \
--   curlcheck_cb_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 *);
--#define curlcheck_write_cb(expr)                                        \
--  (curlcheck_read_cb(expr) ||                                           \
--   curlcheck_cb_compatible((expr), __typeof__(fwrite) *) ||             \
--   curlcheck_cb_compatible((expr), curl_write_callback) ||              \
--   curlcheck_cb_compatible((expr), _curl_write_callback1) ||            \
--   curlcheck_cb_compatible((expr), _curl_write_callback2) ||            \
--   curlcheck_cb_compatible((expr), _curl_write_callback3) ||            \
--   curlcheck_cb_compatible((expr), _curl_write_callback4) ||            \
--   curlcheck_cb_compatible((expr), _curl_write_callback5) ||            \
--   curlcheck_cb_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 *);
--#define curlcheck_ioctl_cb(expr)                                        \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), curl_ioctl_callback) ||              \
--   curlcheck_cb_compatible((expr), _curl_ioctl_callback1) ||            \
--   curlcheck_cb_compatible((expr), _curl_ioctl_callback2) ||            \
--   curlcheck_cb_compatible((expr), _curl_ioctl_callback3) ||            \
--   curlcheck_cb_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 *);
--#define curlcheck_sockopt_cb(expr)                                      \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), curl_sockopt_callback) ||            \
--   curlcheck_cb_compatible((expr), _curl_sockopt_callback1) ||          \
--   curlcheck_cb_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);
--#define curlcheck_opensocket_cb(expr)                                   \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), curl_opensocket_callback) ||         \
--   curlcheck_cb_compatible((expr), _curl_opensocket_callback1) ||       \
--   curlcheck_cb_compatible((expr), _curl_opensocket_callback2) ||       \
--   curlcheck_cb_compatible((expr), _curl_opensocket_callback3) ||       \
--   curlcheck_cb_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 *);
--#define curlcheck_progress_cb(expr)                                     \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), curl_progress_callback) ||           \
--   curlcheck_cb_compatible((expr), _curl_progress_callback1) ||         \
--   curlcheck_cb_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);
--#define curlcheck_debug_cb(expr)                                        \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), curl_debug_callback) ||              \
--   curlcheck_cb_compatible((expr), _curl_debug_callback1) ||            \
--   curlcheck_cb_compatible((expr), _curl_debug_callback2) ||            \
--   curlcheck_cb_compatible((expr), _curl_debug_callback3) ||            \
--   curlcheck_cb_compatible((expr), _curl_debug_callback4) ||            \
--   curlcheck_cb_compatible((expr), _curl_debug_callback5) ||            \
--   curlcheck_cb_compatible((expr), _curl_debug_callback6) ||            \
--   curlcheck_cb_compatible((expr), _curl_debug_callback7) ||            \
--   curlcheck_cb_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 *);
--#define curlcheck_ssl_ctx_cb(expr)                                      \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), curl_ssl_ctx_callback) ||            \
--   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback1) ||          \
--   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback2) ||          \
--   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback3) ||          \
--   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback4) ||          \
--   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback5) ||          \
--   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback6) ||          \
--   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback7) ||          \
--   curlcheck_cb_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
--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
--#define curlcheck_conv_cb(expr)                                         \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), curl_conv_callback) ||               \
--   curlcheck_cb_compatible((expr), _curl_conv_callback1) ||             \
--   curlcheck_cb_compatible((expr), _curl_conv_callback2) ||             \
--   curlcheck_cb_compatible((expr), _curl_conv_callback3) ||             \
--   curlcheck_cb_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);
--#define curlcheck_seek_cb(expr)                                         \
--  (curlcheck_NULL(expr) ||                                              \
--   curlcheck_cb_compatible((expr), curl_seek_callback) ||               \
--   curlcheck_cb_compatible((expr), _curl_seek_callback1) ||             \
--   curlcheck_cb_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 
--#else
--#if defined(__STDC__) && (__STDC__ >= 1)
--#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 
--#endif 
-+#include <curl/curl.h>
- #endif 
- 
- 
-@@ -57759,7 +55203,7 @@ class zpaqfranzsftp2
- #ifndef _WIN32
- 	int kickstartlinux()
- 	{
--		myprintf("38151: You should get libcurl.so, for example\n");
-+		myprintf("38151: You should get libcurl.so.4, for example\n");
- #ifdef __APPLE__
- 		myprintf("38158: macOS             :brew install curl\n");
- #else
-@@ -57775,7 +55219,7 @@ class zpaqfranzsftp2
- 		myprintf("38155: Alma Linux        :dnf install curl\n");
- 		myprintf("38156: Alma Linux        :sudo dnf install curl\n");
- 		myprintf("38157: Amazon Linux (v2+):dnf install curl\n");
--		myprintf("38158: Fedora            :dnf install curl\n");
-+		myprintf("38158: Fedora            :dnf install libcurl-full\n");
- 		myprintf("38159: Oracle Linux (v8+):dnf install curl\n");
- 		myprintf("38160: Rocky Linux       :dnf install curl\n");
- 
-@@ -58024,7 +55468,7 @@ class zpaqfranzsftp2
- 
- 		if (!hModule)
- 		{
--			myprintf("46919$ Cannot load libcurl.so, sorry\n");
-+			myprintf("46919$ Cannot load libcurl.so.4, sorry\n");
- #ifdef _WIN32
- 			(void)kickstart();
- #endif
--- 
-2.53.0
-

diff --git a/zpaqfranz-65.1-Unbundle-curl.h-and-load-curl-DSO-by-a-bare-file-nam.patch b/zpaqfranz-65.1-Unbundle-curl.h-and-load-curl-DSO-by-a-bare-file-nam.patch
new file mode 100644
index 0000000..639ae57
--- /dev/null
+++ b/zpaqfranz-65.1-Unbundle-curl.h-and-load-curl-DSO-by-a-bare-file-nam.patch
@@ -0,0 +1,2638 @@
+From 89e6016fbf2590f5c6148507a4b51ca820a62093 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Mon, 21 Sep 2026 13:18:13 +0200
+Subject: [PATCH] Unbundle curl.h and load curl DSO by a bare file name
+
+Fedora packages run-time curl library under libcurl.so.4 file name.
+---
+ zpaqfranz.cpp | 2570 +------------------------------------------------
+ 1 file changed, 7 insertions(+), 2563 deletions(-)
+
+diff --git a/zpaqfranz.cpp b/zpaqfranz.cpp
+index 95e7469..812611c 100644
+--- a/zpaqfranz.cpp
++++ b/zpaqfranz.cpp
+@@ -1152,23 +1152,6 @@ furnished to do so, subject to the following conditions:
+    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+    SOFTWARE.
+ 
+-24 [MIT-like]           curl command line tool and library        https://curl.se/
+- /// LICENSE_START.24
+- /// LICENSE_END.24
+-COPYRIGHT AND PERMISSION NOTICE
+-Copyright (c) 1996 - 2025, Daniel Stenberg, daniel@haxx.se, and many contributors, see the THANKS file.
+-All rights reserved.
+-Permission to use, copy, modify, and distribute this software for any purpose with or without fee 
+-is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
+-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 
+-TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. 
+-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+-WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE 
+-OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+-Except as contained in this notice, the name of a copyright holder shall not be used in advertising or 
+-otherwise to promote the sale, use or other dealings in this Software without prior written 
+-authorization of the copyright holder.
+-
+ 
+ 25 [LGPL]                       https://github.com/libfuse/libfuse
+  /// LICENSE_START.25
+@@ -1642,10 +1625,10 @@ If you define -DSFTP during compilation, the program will dynamically use the
+ libcurl library, if it is available. 
+ On Windows systems, this refers to the libcurl-x64.dll/libcurl.dll. 
+ This DLL can be downloaded from the author's website simply by running zpaqfranz sftp. 
+-For *nix systems, it is typically named libcurl.so (or something similar) and must be 
++For *nix systems, it is typically named libcurl.so.4 (or something similar) and must be 
+ installed manually, for example, using pkg add libcurl (on FreeBSD) or equivalent commands. 
+ If it cannot be made to work, zpaqfranz will return an error.
+-On *nix systems, the location of libcurl.so might not be known: there are many different systems, 
++On *nix systems, the location of libcurl.so.4 might not be known: there are many different systems, 
+ and it can be found almost anywhere. 
+ Therefore, you need to ensure it is in the current path
+ 
+@@ -1886,7 +1869,7 @@ g++ -O3 zpaqfranz.cpp -o zpaqfranz -pthread
+ 
+ #ifdef ZPAQFULL ///NOSFTPSTART
+ Debian with SFTP and libcurl
+-This gets a DYNAMIC LOADING of curl library: you must have (somewhere) a libcurl.so!
++This gets a DYNAMIC LOADING of curl library: you must have (somewhere) a libcurl.so.4!
+ g++ -O3 -DSFTP -DHWSHA2 zpaqfranz.cpp -o zpaqfranz  -pthread -s -ldl -Wall -Wpedantic
+ 
+ Making DLL on Windows (highly experimental)
+@@ -2237,2546 +2220,7 @@ std::string g_mountbackend= "auto"; // -backend auto|core|jidac (see franzmount:
+ /// LICENSE_START.24
+ 
+ #ifdef SFTP
+-/***************************************************************************
+- *                                  _   _ ____  _
+- *  Project                     ___| | | |  _ \| |
+- *                             / __| | | | |_) | |
+- *                            | (__| |_| |  _ <| |___
+- *                             \___|\___/|_| \_\_____|
+- *
+- * Copyright (C) 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.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.
+- *
+- * SPDX-License-Identifier: curl
+- *
+- ***************************************************************************/
+-
+-/*
+- * If you have libcurl problems, all docs and details are found here:
+- *   https://curl.se/libcurl/
+- */
+- 
+-/// This is a bit reworked header
+-
+-#if (defined(__GNUC__) &&                                              \
+-  ((__GNUC__ > 12) || ((__GNUC__ == 12) && (__GNUC_MINOR__ >= 1))) ||  \
+-  (defined(__clang__) && __clang_major__ >= 3) ||                      \
+-  defined(__IAR_SYSTEMS_ICC__)) &&                                     \
+-  !defined(__INTEL_COMPILER) &&                                        \
+-  !defined(CURL_DISABLE_DEPRECATION) && !defined(BUILDING_LIBCURL)
+-#define CURL_DEPRECATED(version, message)                       \
+-  __attribute__((deprecated("since " # version ". " message)))
+-#if defined(__IAR_SYSTEMS_ICC__)
+-#define CURL_IGNORE_DEPRECATION(statements) \
+-      _Pragma("diag_suppress=Pe1444") \
+-      statements \
+-      _Pragma("diag_default=Pe1444")
+-#else
+-#define CURL_IGNORE_DEPRECATION(statements) \
+-      _Pragma("GCC diagnostic push") \
+-      _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") \
+-      statements \
+-      _Pragma("GCC diagnostic pop")
+-#endif
+-#else
+-#define CURL_DEPRECATED(version, message)
+-#define CURL_IGNORE_DEPRECATION(statements)     statements
+-#endif
+-#ifndef CURLINC_SYSTEM_H
+-#define CURLINC_SYSTEM_H
+-#if defined(__DJGPP__) || defined(__GO32__)
+-#  if defined(__DJGPP__) && (__DJGPP__ > 1)
+-#    define CURL_TYPEOF_CURL_OFF_T     long long
+-#    define CURL_FORMAT_CURL_OFF_T     "lld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#    define CURL_SUFFIX_CURL_OFF_T     LL
+-#    define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  else
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    define CURL_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  endif
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#elif defined(__SALFORDC__)
+-#  define CURL_TYPEOF_CURL_OFF_T     long
+-#  define CURL_FORMAT_CURL_OFF_T     "ld"
+-#  define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#  define CURL_SUFFIX_CURL_OFF_T     L
+-#  define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#elif defined(__BORLANDC__)
+-#  if (__BORLANDC__ < 0x520)
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    define CURL_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  else
+-#    define CURL_TYPEOF_CURL_OFF_T     __int64
+-#    define CURL_FORMAT_CURL_OFF_T     "I64d"
+-#    define CURL_FORMAT_CURL_OFF_TU    "I64u"
+-#    define CURL_SUFFIX_CURL_OFF_T     i64
+-#    define CURL_SUFFIX_CURL_OFF_TU    ui64
+-#  endif
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#elif defined(__TURBOC__)
+-#  define CURL_TYPEOF_CURL_OFF_T     long
+-#  define CURL_FORMAT_CURL_OFF_T     "ld"
+-#  define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#  define CURL_SUFFIX_CURL_OFF_T     L
+-#  define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#elif defined(__POCC__)
+-#  if (__POCC__ < 280)
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    define CURL_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  elif defined(_MSC_VER)
+-#    define CURL_TYPEOF_CURL_OFF_T     __int64
+-#    define CURL_FORMAT_CURL_OFF_T     "I64d"
+-#    define CURL_FORMAT_CURL_OFF_TU    "I64u"
+-#    define CURL_SUFFIX_CURL_OFF_T     i64
+-#    define CURL_SUFFIX_CURL_OFF_TU    ui64
+-#  else
+-#    define CURL_TYPEOF_CURL_OFF_T     long long
+-#    define CURL_FORMAT_CURL_OFF_T     "lld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#    define CURL_SUFFIX_CURL_OFF_T     LL
+-#    define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  endif
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#elif defined(__LCC__)
+-#  if defined(__MCST__) 
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    define CURL_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#    define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
+-#    define CURL_PULL_SYS_TYPES_H      1
+-#    define CURL_PULL_SYS_SOCKET_H     1
+-#  else                
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    define CURL_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#    define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#  endif
+-#elif defined(macintosh)
+-#  include <ConditionalMacros.h>
+-#  if TYPE_LONGLONG
+-#    define CURL_TYPEOF_CURL_OFF_T     long long
+-#    define CURL_FORMAT_CURL_OFF_T     "lld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#    define CURL_SUFFIX_CURL_OFF_T     LL
+-#    define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  else
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    define CURL_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  endif
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
+-#elif defined(__TANDEM)
+-# if ! defined(__LP64)
+-#  define CURL_TYPEOF_CURL_OFF_T     long long
+-#  define CURL_FORMAT_CURL_OFF_T     "lld"
+-#  define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#  define CURL_SUFFIX_CURL_OFF_T     LL
+-#  define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-# endif
+-#elif defined(_WIN32_WCE)
+-#  define CURL_TYPEOF_CURL_OFF_T     __int64
+-#  define CURL_FORMAT_CURL_OFF_T     "I64d"
+-#  define CURL_FORMAT_CURL_OFF_TU    "I64u"
+-#  define CURL_SUFFIX_CURL_OFF_T     i64
+-#  define CURL_SUFFIX_CURL_OFF_TU    ui64
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#elif defined(__MINGW32__)
+-#  include <inttypes.h>
+-#  define CURL_TYPEOF_CURL_OFF_T     long long
+-#  define CURL_FORMAT_CURL_OFF_T     PRId64
+-#  define CURL_FORMAT_CURL_OFF_TU    PRIu64
+-#  define CURL_SUFFIX_CURL_OFF_T     LL
+-#  define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#  define CURL_PULL_SYS_TYPES_H      1
+-#elif defined(__VMS)
+-#  if defined(__VAX)
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    define CURL_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  else
+-#    define CURL_TYPEOF_CURL_OFF_T     long long
+-#    define CURL_FORMAT_CURL_OFF_T     "lld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#    define CURL_SUFFIX_CURL_OFF_T     LL
+-#    define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  endif
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int
+-#elif defined(__OS400__)
+-#  define CURL_TYPEOF_CURL_OFF_T     long long
+-#  define CURL_FORMAT_CURL_OFF_T     "lld"
+-#  define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#  define CURL_SUFFIX_CURL_OFF_T     LL
+-#  define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
+-#  define CURL_PULL_SYS_TYPES_H      1
+-#  define CURL_PULL_SYS_SOCKET_H     1
+-#elif defined(__MVS__)
+-#  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_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_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_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  endif
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
+-#  define CURL_PULL_SYS_TYPES_H      1
+-#  define CURL_PULL_SYS_SOCKET_H     1
+-#elif defined(__370__)
+-#  if defined(__IBMC__) || defined(__IBMCPP__)
+-#    if defined(_ILP32)
+-#    elif defined(_LP64)
+-#    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_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_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_SUFFIX_CURL_OFF_T     L
+-#      define CURL_SUFFIX_CURL_OFF_TU    UL
+-#    endif
+-#    define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
+-#    define CURL_PULL_SYS_TYPES_H      1
+-#    define CURL_PULL_SYS_SOCKET_H     1
+-#  endif
+-#elif defined(TPF)
+-#  define CURL_TYPEOF_CURL_OFF_T     long
+-#  define CURL_FORMAT_CURL_OFF_T     "ld"
+-#  define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#  define CURL_SUFFIX_CURL_OFF_T     L
+-#  define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#elif defined(__TINYC__) 
+-#  define CURL_TYPEOF_CURL_OFF_T     long long
+-#  define CURL_FORMAT_CURL_OFF_T     "lld"
+-#  define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#  define CURL_SUFFIX_CURL_OFF_T     LL
+-#  define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t
+-#  define CURL_PULL_SYS_TYPES_H      1
+-#  define CURL_PULL_SYS_SOCKET_H     1
+-#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) 
+-#  if !defined(__LP64) && (defined(__ILP32) ||                          \
+-                           defined(__i386) ||                           \
+-                           defined(__sparcv8) ||                        \
+-                           defined(__sparcv8plus))
+-#    define CURL_TYPEOF_CURL_OFF_T     long long
+-#    define CURL_FORMAT_CURL_OFF_T     "lld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#    define CURL_SUFFIX_CURL_OFF_T     LL
+-#    define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  elif defined(__LP64) || \
+-        defined(__amd64) || defined(__sparcv9)
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    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_PULL_SYS_TYPES_H      1
+-#  define CURL_PULL_SYS_SOCKET_H     1
+-#elif defined(__xlc__) 
+-#  if !defined(_LP64)
+-#    define CURL_TYPEOF_CURL_OFF_T     long long
+-#    define CURL_FORMAT_CURL_OFF_T     "lld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#    define CURL_SUFFIX_CURL_OFF_T     LL
+-#    define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  else
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    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_PULL_SYS_TYPES_H      1
+-#  define CURL_PULL_SYS_SOCKET_H     1
+-#elif defined(__hpux) 
+-#  if !defined(_LP64)
+-#    define CURL_TYPEOF_CURL_OFF_T     long long
+-#    define CURL_FORMAT_CURL_OFF_T     "lld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#    define CURL_SUFFIX_CURL_OFF_T     LL
+-#    define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  else
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    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_PULL_SYS_TYPES_H      1
+-#  define CURL_PULL_SYS_SOCKET_H     1
+-#elif defined(_MSC_VER)
+-#  if (_MSC_VER >= 1800)
+-#    include <inttypes.h>
+-#    define CURL_TYPEOF_CURL_OFF_T     __int64
+-#    define CURL_FORMAT_CURL_OFF_T     PRId64
+-#    define CURL_FORMAT_CURL_OFF_TU    PRIu64
+-#    define CURL_SUFFIX_CURL_OFF_T     i64
+-#    define CURL_SUFFIX_CURL_OFF_TU    ui64
+-#  elif (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64)
+-#    define CURL_TYPEOF_CURL_OFF_T     __int64
+-#    define CURL_FORMAT_CURL_OFF_T     "I64d"
+-#    define CURL_FORMAT_CURL_OFF_TU    "I64u"
+-#    define CURL_SUFFIX_CURL_OFF_T     i64
+-#    define CURL_SUFFIX_CURL_OFF_TU    ui64
+-#  else
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    define CURL_SUFFIX_CURL_OFF_T     L
+-#    define CURL_SUFFIX_CURL_OFF_TU    UL
+-#  endif
+-#  define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#elif defined(__GNUC__) && !defined(_SCO_DS)
+-#  if !defined(__LP64__) &&                                             \
+-  (defined(__ILP32__) || defined(__i386__) || defined(__hppa__) ||      \
+-   defined(__ppc__) || defined(__powerpc__) || defined(__arm__) ||      \
+-   defined(__sparc__) || defined(__mips__) || defined(__sh__) ||        \
+-   defined(__XTENSA__) ||                                               \
+-   (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 4)  ||               \
+-   (defined(__LONG_MAX__) && __LONG_MAX__ == 2147483647L))
+-#    define CURL_TYPEOF_CURL_OFF_T     long long
+-#    define CURL_FORMAT_CURL_OFF_T     "lld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "llu"
+-#    define CURL_SUFFIX_CURL_OFF_T     LL
+-#    define CURL_SUFFIX_CURL_OFF_TU    ULL
+-#  elif defined(__LP64__) || \
+-        defined(__x86_64__) || defined(__ppc64__) || defined(__sparc64__) || \
+-        defined(__e2k__) || \
+-        (defined(__SIZEOF_LONG__) && __SIZEOF_LONG__ == 8) || \
+-        (defined(__LONG_MAX__) && __LONG_MAX__ == 9223372036854775807L)
+-#    define CURL_TYPEOF_CURL_OFF_T     long
+-#    define CURL_FORMAT_CURL_OFF_T     "ld"
+-#    define CURL_FORMAT_CURL_OFF_TU    "lu"
+-#    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_PULL_SYS_TYPES_H      1
+-#  define CURL_PULL_SYS_SOCKET_H     1
+-#else
+-# define CURL_TYPEOF_CURL_OFF_T     long
+-# define CURL_FORMAT_CURL_OFF_T     "ld"
+-# define CURL_FORMAT_CURL_OFF_TU    "lu"
+-# define CURL_SUFFIX_CURL_OFF_T     L
+-# define CURL_SUFFIX_CURL_OFF_TU    UL
+-# define CURL_TYPEOF_CURL_SOCKLEN_T int
+-#endif
+-#ifdef _AIX
+-#define CURL_PULL_SYS_POLL_H
+-#endif
+-#ifdef CURL_PULL_SYS_TYPES_H
+-#  include <sys/types.h>
+-#endif
+-#ifdef CURL_PULL_SYS_SOCKET_H
+-#  include <sys/socket.h>
+-#endif
+-#ifdef CURL_PULL_SYS_POLL_H
+-#  include <sys/poll.h>
+-#endif
+-#ifdef CURL_TYPEOF_CURL_SOCKLEN_T
+-  typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;
+-#endif
+-#ifdef CURL_TYPEOF_CURL_OFF_T
+-  typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;
+-#endif
+-#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \
+-  defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) || \
+-  defined(__POCC__) || defined(__SALFORDC__) || defined(__HIGHC__) || \
+-  defined(__ILEC400__)
+-#define CURL_ISOCPP
+-#else
+-#undef CURL_ISOCPP
+-#endif
+-#if defined(__BORLANDC__) && (__BORLANDC__ == 0x0551)
+-#  define CURLINC_OFF_T_C_HLPR2(x) x
+-#  define CURLINC_OFF_T_C_HLPR1(x) CURLINC_OFF_T_C_HLPR2(x)
+-#  define CURL_OFF_T_C(Val)  CURLINC_OFF_T_C_HLPR1(Val) ## \
+-                             CURLINC_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_T)
+-#  define CURL_OFF_TU_C(Val) CURLINC_OFF_T_C_HLPR1(Val) ## \
+-                             CURLINC_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_TU)
+-#else
+-#  ifdef CURL_ISOCPP
+-#    define CURLINC_OFF_T_C_HLPR2(Val,Suffix) Val ## Suffix
+-#  else
+-#    define CURLINC_OFF_T_C_HLPR2(Val,Suffix) ValSuffix
+-#  endif
+-#  define CURLINC_OFF_T_C_HLPR1(Val,Suffix) CURLINC_OFF_T_C_HLPR2(Val,Suffix)
+-#  define CURL_OFF_T_C(Val)  CURLINC_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_T)
+-#  define CURL_OFF_TU_C(Val) CURLINC_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_TU)
+-#endif
+-#endif 
+-#include <stdio.h>
+-#include <limits.h>
+-#if defined(__FreeBSD__) || defined(__MidnightBSD__)
+-#include <sys/param.h>
+-#endif
+-#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))
+-#include <winsock2.h>
+-#include <ws2tcpip.h>
+-#endif
+-#endif
+-#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \
+-    defined(__minix) || defined(__INTEGRITY) || \
+-    defined(ANDROID) || defined(__ANDROID__) || defined(__OpenBSD__) || \
+-    defined(__CYGWIN__) || defined(AMIGA) || defined(__NuttX__) || \
+-   (defined(__FreeBSD_version) && (__FreeBSD_version < 800000)) || \
+-   (defined(__MidnightBSD_version) && (__MidnightBSD_version < 100000)) || \
+-    defined(__sun__) || defined(__serenity__) || defined(__vxworks__)
+-#include <sys/select.h>
+-#endif
+-#if !defined(_WIN32) && !defined(_WIN32_WCE)
+-#include <sys/socket.h>
+-#endif
+-#if !defined(_WIN32)
+-#include <sys/time.h>
+-#endif
+-#ifndef __has_declspec_attribute
+-#  define __has_declspec_attribute(x) 0
+-#endif
+-typedef void CURL;
+-typedef void CURLSH;
+-#ifdef CURL_STATICLIB
+-#  define CURL_EXTERN
+-#elif defined(_WIN32) || \
+-     (__has_declspec_attribute(dllexport) && \
+-      __has_declspec_attribute(dllimport))
+-#  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
+-#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 
+-typedef enum {
+-  CURLSSLBACKEND_NONE = 0,
+-  CURLSSLBACKEND_OPENSSL = 1,
+-  CURLSSLBACKEND_GNUTLS = 2,
+-  CURLSSLBACKEND_NSS                    CURL_DEPRECATED(8.3.0, "") = 3,
+-  CURLSSLBACKEND_OBSOLETE4 = 4,  
+-  CURLSSLBACKEND_GSKIT                  CURL_DEPRECATED(8.3.0, "") = 5,
+-  CURLSSLBACKEND_POLARSSL               CURL_DEPRECATED(7.69.0, "") = 6,
+-  CURLSSLBACKEND_WOLFSSL = 7,
+-  CURLSSLBACKEND_SCHANNEL = 8,
+-  CURLSSLBACKEND_SECURETRANSPORT = 9,
+-  CURLSSLBACKEND_AXTLS                  CURL_DEPRECATED(7.61.0, "") = 10,
+-  CURLSSLBACKEND_MBEDTLS = 11,
+-  CURLSSLBACKEND_MESALINK               CURL_DEPRECATED(7.82.0, "") = 12,
+-  CURLSSLBACKEND_BEARSSL = 13,
+-  CURLSSLBACKEND_RUSTLS = 14
+-} curl_sslbackend;
+-struct curl_httppost {
+-  struct curl_httppost *next;       
+-  char *name;                       
+-  long namelength;                  
+-  char *contents;                   
+-  long contentslength;              
+-  char *buffer;                     
+-  long bufferlength;                
+-  char *contenttype;                
+-  struct curl_slist *contentheader; 
+-  struct curl_httppost *more;       
+-  long flags;                       
+-  char *showfilename;               
+-  void *userp;                      
+-  curl_off_t contentlen;            
+-};
+-typedef int (*curl_progress_callback)(void *clientp,
+-                                      double dltotal,
+-                                      double dlnow,
+-                                      double ultotal,
+-                                      double ulnow);
+-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
+-#define CURL_MAX_READ_SIZE (10*1024*1024)
+-#endif
+-#ifndef CURL_MAX_WRITE_SIZE
+-#define CURL_MAX_WRITE_SIZE 16384
+-#endif
+-#ifndef CURL_MAX_HTTP_HEADER
+-#define CURL_MAX_HTTP_HEADER (100*1024)
+-#endif
+-typedef size_t (*curl_write_callback)(char *buffer,
+-                                      size_t size,
+-                                      size_t nitems,
+-                                      void *outstream);
+-typedef int (*curl_resolver_start_callback)(void *resolver_state,
+-                                            void *reserved, void *userdata);
+-typedef enum {
+-  CURLFILETYPE_FILE = 0,
+-  CURLFILETYPE_DIRECTORY,
+-  CURLFILETYPE_SYMLINK,
+-  CURLFILETYPE_DEVICE_BLOCK,
+-  CURLFILETYPE_DEVICE_CHAR,
+-  CURLFILETYPE_NAMEDPIPE,
+-  CURLFILETYPE_SOCKET,
+-  CURLFILETYPE_DOOR, 
+-  CURLFILETYPE_UNKNOWN 
+-} curlfiletype;
+-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 {
+-    char *time;
+-    char *perm;
+-    char *user;
+-    char *group;
+-    char *target; 
+-  } strings;
+-  unsigned int flags;
+-  char *b_data;
+-  size_t b_size;
+-  size_t b_used;
+-};
+-typedef long (*curl_chunk_bgn_callback)(const void *transfer_info,
+-                                        void *ptr,
+-                                        int remains);
+-typedef long (*curl_chunk_end_callback)(void *ptr);
+-typedef int (*curl_fnmatch_callback)(void *ptr,
+-                                     const char *pattern,
+-                                     const char *string);
+-typedef int (*curl_seek_callback)(void *instream,
+-                                  curl_off_t offset,
+-                                  int origin); 
+-typedef size_t (*curl_read_callback)(char *buffer,
+-                                      size_t size,
+-                                      size_t nitems,
+-                                      void *instream);
+-typedef int (*curl_trailer_callback)(struct curl_slist **list,
+-                                      void *userdata);
+-typedef enum {
+-  CURLSOCKTYPE_IPCXN,  
+-  CURLSOCKTYPE_ACCEPT, 
+-  CURLSOCKTYPE_LAST    
+-} curlsocktype;
+-#define CURL_SOCKOPT_OK 0
+-#define CURL_SOCKOPT_ERROR 1 
+-#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; 
+-  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,            
+-  CURLIOE_UNKNOWNCMD,    
+-  CURLIOE_FAILRESTART,   
+-  CURLIOE_LAST           
+-} curlioerr;
+-typedef enum {
+-  CURLIOCMD_NOP,         
+-  CURLIOCMD_RESTARTREAD, 
+-  CURLIOCMD_LAST         
+-} curliocmd;
+-typedef curlioerr (*curl_ioctl_callback)(CURL *handle,
+-                                         int cmd,
+-                                         void *clientp);
+-#ifndef CURL_DID_MEMORY_FUNC_TYPEDEFS
+-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
+-typedef enum {
+-  CURLINFO_TEXT = 0,
+-  CURLINFO_HEADER_IN,    
+-  CURLINFO_HEADER_OUT,   
+-  CURLINFO_DATA_IN,      
+-  CURLINFO_DATA_OUT,     
+-  CURLINFO_SSL_DATA_IN,  
+-  CURLINFO_SSL_DATA_OUT, 
+-  CURLINFO_END
+-} curl_infotype;
+-typedef int (*curl_debug_callback)
+-       (CURL *handle,      
+-        curl_infotype type, 
+-        char *data,        
+-        size_t size,       
+-        void *userptr);    
+-typedef int (*curl_prereq_callback)(void *clientp,
+-                                    char *conn_primary_ip,
+-                                    char *conn_local_ip,
+-                                    int conn_primary_port,
+-                                    int conn_local_port);
+-typedef enum {
+-  CURLE_OK = 0,
+-  CURLE_UNSUPPORTED_PROTOCOL,    
+-  CURLE_FAILED_INIT,             
+-  CURLE_URL_MALFORMAT,           
+-  CURLE_NOT_BUILT_IN,            
+-  CURLE_COULDNT_RESOLVE_PROXY,   
+-  CURLE_COULDNT_RESOLVE_HOST,    
+-  CURLE_COULDNT_CONNECT,         
+-  CURLE_WEIRD_SERVER_REPLY,      
+-  CURLE_REMOTE_ACCESS_DENIED,    
+-  CURLE_FTP_ACCEPT_FAILED,       
+-  CURLE_FTP_WEIRD_PASS_REPLY,    
+-  CURLE_FTP_ACCEPT_TIMEOUT,      
+-  CURLE_FTP_WEIRD_PASV_REPLY,    
+-  CURLE_FTP_WEIRD_227_FORMAT,    
+-  CURLE_FTP_CANT_GET_HOST,       
+-  CURLE_HTTP2,                   
+-  CURLE_FTP_COULDNT_SET_TYPE,    
+-  CURLE_PARTIAL_FILE,            
+-  CURLE_FTP_COULDNT_RETR_FILE,   
+-  CURLE_OBSOLETE20,              
+-  CURLE_QUOTE_ERROR,             
+-  CURLE_HTTP_RETURNED_ERROR,     
+-  CURLE_WRITE_ERROR,             
+-  CURLE_OBSOLETE24,              
+-  CURLE_UPLOAD_FAILED,           
+-  CURLE_READ_ERROR,              
+-  CURLE_OUT_OF_MEMORY,           
+-  CURLE_OPERATION_TIMEDOUT,      
+-  CURLE_OBSOLETE29,              
+-  CURLE_FTP_PORT_FAILED,         
+-  CURLE_FTP_COULDNT_USE_REST,    
+-  CURLE_OBSOLETE32,              
+-  CURLE_RANGE_ERROR,             
+-  CURLE_OBSOLETE34,              
+-  CURLE_SSL_CONNECT_ERROR,       
+-  CURLE_BAD_DOWNLOAD_RESUME,     
+-  CURLE_FILE_COULDNT_READ_FILE,  
+-  CURLE_LDAP_CANNOT_BIND,        
+-  CURLE_LDAP_SEARCH_FAILED,      
+-  CURLE_OBSOLETE40,              
+-  CURLE_OBSOLETE41,              
+-  CURLE_ABORTED_BY_CALLBACK,     
+-  CURLE_BAD_FUNCTION_ARGUMENT,   
+-  CURLE_OBSOLETE44,              
+-  CURLE_INTERFACE_FAILED,        
+-  CURLE_OBSOLETE46,              
+-  CURLE_TOO_MANY_REDIRECTS,      
+-  CURLE_UNKNOWN_OPTION,          
+-  CURLE_SETOPT_OPTION_SYNTAX,    
+-  CURLE_OBSOLETE50,              
+-  CURLE_OBSOLETE51,              
+-  CURLE_GOT_NOTHING,             
+-  CURLE_SSL_ENGINE_NOTFOUND,     
+-  CURLE_SSL_ENGINE_SETFAILED,    
+-  CURLE_SEND_ERROR,              
+-  CURLE_RECV_ERROR,              
+-  CURLE_OBSOLETE57,              
+-  CURLE_SSL_CERTPROBLEM,         
+-  CURLE_SSL_CIPHER,              
+-  CURLE_PEER_FAILED_VERIFICATION, 
+-  CURLE_BAD_CONTENT_ENCODING,    
+-  CURLE_OBSOLETE62,              
+-  CURLE_FILESIZE_EXCEEDED,       
+-  CURLE_USE_SSL_FAILED,          
+-  CURLE_SEND_FAIL_REWIND,        
+-  CURLE_SSL_ENGINE_INITFAILED,   
+-  CURLE_LOGIN_DENIED,            
+-  CURLE_TFTP_NOTFOUND,           
+-  CURLE_TFTP_PERM,               
+-  CURLE_REMOTE_DISK_FULL,        
+-  CURLE_TFTP_ILLEGAL,            
+-  CURLE_TFTP_UNKNOWNID,          
+-  CURLE_REMOTE_FILE_EXISTS,      
+-  CURLE_TFTP_NOSUCHUSER,         
+-  CURLE_OBSOLETE75,              
+-  CURLE_OBSOLETE76,              
+-  CURLE_SSL_CACERT_BADFILE,      
+-  CURLE_REMOTE_FILE_NOT_FOUND,   
+-  CURLE_SSH,                     
+-  CURLE_SSL_SHUTDOWN_FAILED,     
+-  CURLE_AGAIN,                   
+-  CURLE_SSL_CRL_BADFILE,         
+-  CURLE_SSL_ISSUER_ERROR,        
+-  CURLE_FTP_PRET_FAILED,         
+-  CURLE_RTSP_CSEQ_ERROR,         
+-  CURLE_RTSP_SESSION_ERROR,      
+-  CURLE_FTP_BAD_FILE_LIST,       
+-  CURLE_CHUNK_FAILED,            
+-  CURLE_NO_CONNECTION_AVAILABLE, 
+-  CURLE_SSL_PINNEDPUBKEYNOTMATCH, 
+-  CURLE_SSL_INVALIDCERTSTATUS,   
+-  CURLE_HTTP2_STREAM,            
+-  CURLE_RECURSIVE_API_CALL,      
+-  CURLE_AUTH_ERROR,              
+-  CURLE_HTTP3,                   
+-  CURLE_QUIC_CONNECT_ERROR,      
+-  CURLE_PROXY,                   
+-  CURLE_SSL_CLIENTCERT,          
+-  CURLE_UNRECOVERABLE_POLL,      
+-  CURLE_TOO_LARGE,               
+-  CURLE_ECH_REQUIRED,            
+-  CURL_LAST 
+-} CURLcode;
+-typedef enum {
+-  CURLPX_OK,
+-  CURLPX_BAD_ADDRESS_TYPE,
+-  CURLPX_BAD_VERSION,
+-  CURLPX_CLOSED,
+-  CURLPX_GSSAPI,
+-  CURLPX_GSSAPI_PERMSG,
+-  CURLPX_GSSAPI_PROTECTION,
+-  CURLPX_IDENTD,
+-  CURLPX_IDENTD_DIFFER,
+-  CURLPX_LONG_HOSTNAME,
+-  CURLPX_LONG_PASSWD,
+-  CURLPX_LONG_USER,
+-  CURLPX_NO_AUTH,
+-  CURLPX_RECV_ADDRESS,
+-  CURLPX_RECV_AUTH,
+-  CURLPX_RECV_CONNECT,
+-  CURLPX_RECV_REQACK,
+-  CURLPX_REPLY_ADDRESS_TYPE_NOT_SUPPORTED,
+-  CURLPX_REPLY_COMMAND_NOT_SUPPORTED,
+-  CURLPX_REPLY_CONNECTION_REFUSED,
+-  CURLPX_REPLY_GENERAL_SERVER_FAILURE,
+-  CURLPX_REPLY_HOST_UNREACHABLE,
+-  CURLPX_REPLY_NETWORK_UNREACHABLE,
+-  CURLPX_REPLY_NOT_ALLOWED,
+-  CURLPX_REPLY_TTL_EXPIRED,
+-  CURLPX_REPLY_UNASSIGNED,
+-  CURLPX_REQUEST_FAILED,
+-  CURLPX_RESOLVE_HOST,
+-  CURLPX_SEND_AUTH,
+-  CURLPX_SEND_CONNECT,
+-  CURLPX_SEND_REQUEST,
+-  CURLPX_UNKNOWN_FAIL,
+-  CURLPX_UNKNOWN_MODE,
+-  CURLPX_USER_REJECTED,
+-  CURLPX_LAST 
+-} CURLproxycode;
+-typedef CURLcode (*curl_conv_callback)(char *buffer, size_t length);
+-typedef CURLcode (*curl_ssl_ctx_callback)(CURL *curl,    
+-                                          void *ssl_ctx, 
+-                                          void *userptr);
+-typedef enum {
+-  CURLPROXY_HTTP = 0,   
+-  CURLPROXY_HTTP_1_0 = 1,   
+-  CURLPROXY_HTTPS = 2,  
+-  CURLPROXY_HTTPS2 = 3, 
+-  CURLPROXY_SOCKS4 = 4, 
+-  CURLPROXY_SOCKS5 = 5, 
+-  CURLPROXY_SOCKS4A = 6, 
+-  CURLPROXY_SOCKS5_HOSTNAME = 7 
+-} curl_proxytype;  
+-#define CURLSSH_AUTH_ANY       ~0     
+-#define CURLSSH_AUTH_NONE      0      
+-#define CURLSSH_AUTH_PUBLICKEY (1<<0) 
+-#define CURLSSH_AUTH_PASSWORD  (1<<1) 
+-#define CURLSSH_AUTH_HOST      (1<<2) 
+-#define CURLSSH_AUTH_KEYBOARD  (1<<3) 
+-#define CURLSSH_AUTH_AGENT     (1<<4) 
+-#define CURLSSH_AUTH_GSSAPI    (1<<5) 
+-#define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY
+-#define CURL_ERROR_SIZE 256
+-enum curl_khtype {
+-  CURLKHTYPE_UNKNOWN,
+-  CURLKHTYPE_RSA1,
+-  CURLKHTYPE_RSA,
+-  CURLKHTYPE_DSS,
+-  CURLKHTYPE_ECDSA,
+-  CURLKHTYPE_ED25519
+-};
+-struct curl_khkey {
+-  const char *key; 
+-  size_t len;
+-  enum curl_khtype keytype;
+-};
+-enum curl_khstat {
+-  CURLKHSTAT_FINE_ADD_TO_FILE,
+-  CURLKHSTAT_FINE,
+-  CURLKHSTAT_REJECT, 
+-  CURLKHSTAT_DEFER,  
+-  CURLKHSTAT_FINE_REPLACE, 
+-  CURLKHSTAT_LAST    
+-};
+-enum curl_khmatch {
+-  CURLKHMATCH_OK,       
+-  CURLKHMATCH_MISMATCH, 
+-  CURLKHMATCH_MISSING,  
+-  CURLKHMATCH_LAST      
+-};
+-typedef int
+-  (*curl_sshkeycallback) (CURL *easy,     
+-                          const struct curl_khkey *knownkey, 
+-                          const struct curl_khkey *foundkey, 
+-                          enum curl_khmatch, 
+-                          void *clientp); 
+-typedef int
+-  (*curl_sshhostkeycallback) (void *clientp,
+-                          int keytype, 
+-                          const char *key, 
+-                          size_t keylen); 
+-typedef enum {
+-  CURLUSESSL_NONE,    
+-  CURLUSESSL_TRY,     
+-  CURLUSESSL_CONTROL, 
+-  CURLUSESSL_ALL,     
+-  CURLUSESSL_LAST     
+-} curl_usessl;
+-typedef enum {
+-  CURLFTPSSL_CCC_NONE,    
+-  CURLFTPSSL_CCC_PASSIVE, 
+-  CURLFTPSSL_CCC_ACTIVE,  
+-  CURLFTPSSL_CCC_LAST     
+-} curl_ftpccc;
+-typedef enum {
+-  CURLFTPAUTH_DEFAULT, 
+-  CURLFTPAUTH_SSL,     
+-  CURLFTPAUTH_TLS,     
+-  CURLFTPAUTH_LAST 
+-} curl_ftpauth;
+-typedef enum {
+-  CURLFTP_CREATE_DIR_NONE,  
+-  CURLFTP_CREATE_DIR,       
+-  CURLFTP_CREATE_DIR_RETRY, 
+-  CURLFTP_CREATE_DIR_LAST   
+-} curl_ftpcreatedir;
+-typedef enum {
+-  CURLFTPMETHOD_DEFAULT,   
+-  CURLFTPMETHOD_MULTICWD,  
+-  CURLFTPMETHOD_NOCWD,     
+-  CURLFTPMETHOD_SINGLECWD, 
+-  CURLFTPMETHOD_LAST       
+-} curl_ftpmethod;
+-struct curl_hstsentry {
+-  char *name;
+-  size_t namelen;
+-  unsigned int includeSubDomains:1;
+-  char expire[18]; 
+-};
+-struct curl_index {
+-  size_t index; 
+-  size_t total; 
+-};
+-typedef enum {
+-  CURLSTS_OK,
+-  CURLSTS_DONE,
+-  CURLSTS_FAIL
+-} CURLSTScode;
+-typedef CURLSTScode (*curl_hstsread_callback)(CURL *easy,
+-                                              struct curl_hstsentry *e,
+-                                              void *userp);
+-typedef CURLSTScode (*curl_hstswrite_callback)(CURL *easy,
+-                                               struct curl_hstsentry *e,
+-                                               struct curl_index *i,
+-                                               void *userp);
+-#define CURLOPTTYPE_LONG          0
+-#define CURLOPTTYPE_OBJECTPOINT   10000
+-#define CURLOPTTYPE_FUNCTIONPOINT 20000
+-#define CURLOPTTYPE_OFF_T         30000
+-#define CURLOPTTYPE_BLOB          40000
+-#define CURLOPT(na,t,nu) na = t + nu
+-#define CURLOPTDEPRECATED(na,t,nu,v,m) na CURL_DEPRECATED(v,m) = t + nu
+-#define CURLOPTTYPE_STRINGPOINT CURLOPTTYPE_OBJECTPOINT
+-#define CURLOPTTYPE_SLISTPOINT  CURLOPTTYPE_OBJECTPOINT
+-#define CURLOPTTYPE_CBPOINT     CURLOPTTYPE_OBJECTPOINT
+-#define CURLOPTTYPE_VALUES      CURLOPTTYPE_LONG
+-typedef enum {
+-  CURLOPT(CURLOPT_WRITEDATA, CURLOPTTYPE_CBPOINT, 1),
+-  CURLOPT(CURLOPT_URL, CURLOPTTYPE_STRINGPOINT, 2),
+-  CURLOPT(CURLOPT_PORT, CURLOPTTYPE_LONG, 3),
+-  CURLOPT(CURLOPT_PROXY, CURLOPTTYPE_STRINGPOINT, 4),
+-  CURLOPT(CURLOPT_USERPWD, CURLOPTTYPE_STRINGPOINT, 5),
+-  CURLOPT(CURLOPT_PROXYUSERPWD, CURLOPTTYPE_STRINGPOINT, 6),
+-  CURLOPT(CURLOPT_RANGE, CURLOPTTYPE_STRINGPOINT, 7),
+-  CURLOPT(CURLOPT_READDATA, CURLOPTTYPE_CBPOINT, 9),
+-  CURLOPT(CURLOPT_ERRORBUFFER, CURLOPTTYPE_OBJECTPOINT, 10),
+-  CURLOPT(CURLOPT_WRITEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 11),
+-  CURLOPT(CURLOPT_READFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 12),
+-  CURLOPT(CURLOPT_TIMEOUT, CURLOPTTYPE_LONG, 13),
+-  CURLOPT(CURLOPT_INFILESIZE, CURLOPTTYPE_LONG, 14),
+-  CURLOPT(CURLOPT_POSTFIELDS, CURLOPTTYPE_OBJECTPOINT, 15),
+-  CURLOPT(CURLOPT_REFERER, CURLOPTTYPE_STRINGPOINT, 16),
+-  CURLOPT(CURLOPT_FTPPORT, CURLOPTTYPE_STRINGPOINT, 17),
+-  CURLOPT(CURLOPT_USERAGENT, CURLOPTTYPE_STRINGPOINT, 18),
+-  CURLOPT(CURLOPT_LOW_SPEED_LIMIT, CURLOPTTYPE_LONG, 19),
+-  CURLOPT(CURLOPT_LOW_SPEED_TIME, CURLOPTTYPE_LONG, 20),
+-  CURLOPT(CURLOPT_RESUME_FROM, CURLOPTTYPE_LONG, 21),
+-  CURLOPT(CURLOPT_COOKIE, CURLOPTTYPE_STRINGPOINT, 22),
+-  CURLOPT(CURLOPT_HTTPHEADER, CURLOPTTYPE_SLISTPOINT, 23),
+-  CURLOPTDEPRECATED(CURLOPT_HTTPPOST, CURLOPTTYPE_OBJECTPOINT, 24,
+-                    7.56.0, "Use CURLOPT_MIMEPOST"),
+-  CURLOPT(CURLOPT_SSLCERT, CURLOPTTYPE_STRINGPOINT, 25),
+-  CURLOPT(CURLOPT_KEYPASSWD, CURLOPTTYPE_STRINGPOINT, 26),
+-  CURLOPT(CURLOPT_CRLF, CURLOPTTYPE_LONG, 27),
+-  CURLOPT(CURLOPT_QUOTE, CURLOPTTYPE_SLISTPOINT, 28),
+-  CURLOPT(CURLOPT_HEADERDATA, CURLOPTTYPE_CBPOINT, 29),
+-  CURLOPT(CURLOPT_COOKIEFILE, CURLOPTTYPE_STRINGPOINT, 31),
+-  CURLOPT(CURLOPT_SSLVERSION, CURLOPTTYPE_VALUES, 32),
+-  CURLOPT(CURLOPT_TIMECONDITION, CURLOPTTYPE_VALUES, 33),
+-  CURLOPT(CURLOPT_TIMEVALUE, CURLOPTTYPE_LONG, 34),
+-  CURLOPT(CURLOPT_CUSTOMREQUEST, CURLOPTTYPE_STRINGPOINT, 36),
+-  CURLOPT(CURLOPT_STDERR, CURLOPTTYPE_OBJECTPOINT, 37),
+-  CURLOPT(CURLOPT_POSTQUOTE, CURLOPTTYPE_SLISTPOINT, 39),
+-  CURLOPT(CURLOPT_VERBOSE, CURLOPTTYPE_LONG, 41),
+-  CURLOPT(CURLOPT_HEADER, CURLOPTTYPE_LONG, 42),
+-  CURLOPT(CURLOPT_NOPROGRESS, CURLOPTTYPE_LONG, 43),
+-  CURLOPT(CURLOPT_NOBODY, CURLOPTTYPE_LONG, 44),
+-  CURLOPT(CURLOPT_FAILONERROR, CURLOPTTYPE_LONG, 45),
+-  CURLOPT(CURLOPT_UPLOAD, CURLOPTTYPE_LONG, 46),
+-  CURLOPT(CURLOPT_POST, CURLOPTTYPE_LONG, 47),
+-  CURLOPT(CURLOPT_DIRLISTONLY, CURLOPTTYPE_LONG, 48),
+-  CURLOPT(CURLOPT_APPEND, CURLOPTTYPE_LONG, 50),
+-  CURLOPT(CURLOPT_NETRC, CURLOPTTYPE_VALUES, 51),
+-  CURLOPT(CURLOPT_FOLLOWLOCATION, CURLOPTTYPE_LONG, 52),
+-  CURLOPT(CURLOPT_TRANSFERTEXT, CURLOPTTYPE_LONG, 53),
+-  CURLOPTDEPRECATED(CURLOPT_PUT, CURLOPTTYPE_LONG, 54,
+-                    7.12.1, "Use CURLOPT_UPLOAD"),
+-  CURLOPTDEPRECATED(CURLOPT_PROGRESSFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 56,
+-                    7.32.0, "Use CURLOPT_XFERINFOFUNCTION"),
+-  CURLOPT(CURLOPT_XFERINFODATA, CURLOPTTYPE_CBPOINT, 57),
+-#define CURLOPT_PROGRESSDATA CURLOPT_XFERINFODATA
+-  CURLOPT(CURLOPT_AUTOREFERER, CURLOPTTYPE_LONG, 58),
+-  CURLOPT(CURLOPT_PROXYPORT, CURLOPTTYPE_LONG, 59),
+-  CURLOPT(CURLOPT_POSTFIELDSIZE, CURLOPTTYPE_LONG, 60),
+-  CURLOPT(CURLOPT_HTTPPROXYTUNNEL, CURLOPTTYPE_LONG, 61),
+-  CURLOPT(CURLOPT_INTERFACE, CURLOPTTYPE_STRINGPOINT, 62),
+-  CURLOPT(CURLOPT_KRBLEVEL, CURLOPTTYPE_STRINGPOINT, 63),
+-  CURLOPT(CURLOPT_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 64),
+-  CURLOPT(CURLOPT_CAINFO, CURLOPTTYPE_STRINGPOINT, 65),
+-  CURLOPT(CURLOPT_MAXREDIRS, CURLOPTTYPE_LONG, 68),
+-  CURLOPT(CURLOPT_FILETIME, CURLOPTTYPE_LONG, 69),
+-  CURLOPT(CURLOPT_TELNETOPTIONS, CURLOPTTYPE_SLISTPOINT, 70),
+-  CURLOPT(CURLOPT_MAXCONNECTS, CURLOPTTYPE_LONG, 71),
+-  CURLOPT(CURLOPT_FRESH_CONNECT, CURLOPTTYPE_LONG, 74),
+-  CURLOPT(CURLOPT_FORBID_REUSE, CURLOPTTYPE_LONG, 75),
+-  CURLOPTDEPRECATED(CURLOPT_RANDOM_FILE, CURLOPTTYPE_STRINGPOINT, 76,
+-                    7.84.0, "Serves no purpose anymore"),
+-  CURLOPTDEPRECATED(CURLOPT_EGDSOCKET, CURLOPTTYPE_STRINGPOINT, 77,
+-                    7.84.0, "Serves no purpose anymore"),
+-  CURLOPT(CURLOPT_CONNECTTIMEOUT, CURLOPTTYPE_LONG, 78),
+-  CURLOPT(CURLOPT_HEADERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 79),
+-  CURLOPT(CURLOPT_HTTPGET, CURLOPTTYPE_LONG, 80),
+-  CURLOPT(CURLOPT_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 81),
+-  CURLOPT(CURLOPT_COOKIEJAR, CURLOPTTYPE_STRINGPOINT, 82),
+-  CURLOPT(CURLOPT_SSL_CIPHER_LIST, CURLOPTTYPE_STRINGPOINT, 83),
+-  CURLOPT(CURLOPT_HTTP_VERSION, CURLOPTTYPE_VALUES, 84),
+-  CURLOPT(CURLOPT_FTP_USE_EPSV, CURLOPTTYPE_LONG, 85),
+-  CURLOPT(CURLOPT_SSLCERTTYPE, CURLOPTTYPE_STRINGPOINT, 86),
+-  CURLOPT(CURLOPT_SSLKEY, CURLOPTTYPE_STRINGPOINT, 87),
+-  CURLOPT(CURLOPT_SSLKEYTYPE, CURLOPTTYPE_STRINGPOINT, 88),
+-  CURLOPT(CURLOPT_SSLENGINE, CURLOPTTYPE_STRINGPOINT, 89),
+-  CURLOPT(CURLOPT_SSLENGINE_DEFAULT, CURLOPTTYPE_LONG, 90),
+-  CURLOPTDEPRECATED(CURLOPT_DNS_USE_GLOBAL_CACHE, CURLOPTTYPE_LONG, 91,
+-                    7.11.1, "Use CURLOPT_SHARE"),
+-  CURLOPT(CURLOPT_DNS_CACHE_TIMEOUT, CURLOPTTYPE_LONG, 92),
+-  CURLOPT(CURLOPT_PREQUOTE, CURLOPTTYPE_SLISTPOINT, 93),
+-  CURLOPT(CURLOPT_DEBUGFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 94),
+-  CURLOPT(CURLOPT_DEBUGDATA, CURLOPTTYPE_CBPOINT, 95),
+-  CURLOPT(CURLOPT_COOKIESESSION, CURLOPTTYPE_LONG, 96),
+-  CURLOPT(CURLOPT_CAPATH, CURLOPTTYPE_STRINGPOINT, 97),
+-  CURLOPT(CURLOPT_BUFFERSIZE, CURLOPTTYPE_LONG, 98),
+-  CURLOPT(CURLOPT_NOSIGNAL, CURLOPTTYPE_LONG, 99),
+-  CURLOPT(CURLOPT_SHARE, CURLOPTTYPE_OBJECTPOINT, 100),
+-  CURLOPT(CURLOPT_PROXYTYPE, CURLOPTTYPE_VALUES, 101),
+-  CURLOPT(CURLOPT_ACCEPT_ENCODING, CURLOPTTYPE_STRINGPOINT, 102),
+-  CURLOPT(CURLOPT_PRIVATE, CURLOPTTYPE_OBJECTPOINT, 103),
+-  CURLOPT(CURLOPT_HTTP200ALIASES, CURLOPTTYPE_SLISTPOINT, 104),
+-  CURLOPT(CURLOPT_UNRESTRICTED_AUTH, CURLOPTTYPE_LONG, 105),
+-  CURLOPT(CURLOPT_FTP_USE_EPRT, CURLOPTTYPE_LONG, 106),
+-  CURLOPT(CURLOPT_HTTPAUTH, CURLOPTTYPE_VALUES, 107),
+-  CURLOPT(CURLOPT_SSL_CTX_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 108),
+-  CURLOPT(CURLOPT_SSL_CTX_DATA, CURLOPTTYPE_CBPOINT, 109),
+-  CURLOPT(CURLOPT_FTP_CREATE_MISSING_DIRS, CURLOPTTYPE_LONG, 110),
+-  CURLOPT(CURLOPT_PROXYAUTH, CURLOPTTYPE_VALUES, 111),
+-  CURLOPT(CURLOPT_SERVER_RESPONSE_TIMEOUT, CURLOPTTYPE_LONG, 112),
+-  CURLOPT(CURLOPT_IPRESOLVE, CURLOPTTYPE_VALUES, 113),
+-  CURLOPT(CURLOPT_MAXFILESIZE, CURLOPTTYPE_LONG, 114),
+-  CURLOPT(CURLOPT_INFILESIZE_LARGE, CURLOPTTYPE_OFF_T, 115),
+-  CURLOPT(CURLOPT_RESUME_FROM_LARGE, CURLOPTTYPE_OFF_T, 116),
+-  CURLOPT(CURLOPT_MAXFILESIZE_LARGE, CURLOPTTYPE_OFF_T, 117),
+-  CURLOPT(CURLOPT_NETRC_FILE, CURLOPTTYPE_STRINGPOINT, 118),
+-  CURLOPT(CURLOPT_USE_SSL, CURLOPTTYPE_VALUES, 119),
+-  CURLOPT(CURLOPT_POSTFIELDSIZE_LARGE, CURLOPTTYPE_OFF_T, 120),
+-  CURLOPT(CURLOPT_TCP_NODELAY, CURLOPTTYPE_LONG, 121),
+-  CURLOPT(CURLOPT_FTPSSLAUTH, CURLOPTTYPE_VALUES, 129),
+-  CURLOPTDEPRECATED(CURLOPT_IOCTLFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 130,
+-                    7.18.0, "Use CURLOPT_SEEKFUNCTION"),
+-  CURLOPTDEPRECATED(CURLOPT_IOCTLDATA, CURLOPTTYPE_CBPOINT, 131,
+-                    7.18.0, "Use CURLOPT_SEEKDATA"),
+-  CURLOPT(CURLOPT_FTP_ACCOUNT, CURLOPTTYPE_STRINGPOINT, 134),
+-  CURLOPT(CURLOPT_COOKIELIST, CURLOPTTYPE_STRINGPOINT, 135),
+-  CURLOPT(CURLOPT_IGNORE_CONTENT_LENGTH, CURLOPTTYPE_LONG, 136),
+-  CURLOPT(CURLOPT_FTP_SKIP_PASV_IP, CURLOPTTYPE_LONG, 137),
+-  CURLOPT(CURLOPT_FTP_FILEMETHOD, CURLOPTTYPE_VALUES, 138),
+-  CURLOPT(CURLOPT_LOCALPORT, CURLOPTTYPE_LONG, 139),
+-  CURLOPT(CURLOPT_LOCALPORTRANGE, CURLOPTTYPE_LONG, 140),
+-  CURLOPT(CURLOPT_CONNECT_ONLY, CURLOPTTYPE_LONG, 141),
+-  CURLOPTDEPRECATED(CURLOPT_CONV_FROM_NETWORK_FUNCTION,
+-                    CURLOPTTYPE_FUNCTIONPOINT, 142,
+-                    7.82.0, "Serves no purpose anymore"),
+-  CURLOPTDEPRECATED(CURLOPT_CONV_TO_NETWORK_FUNCTION,
+-                    CURLOPTTYPE_FUNCTIONPOINT, 143,
+-                    7.82.0, "Serves no purpose anymore"),
+-  CURLOPTDEPRECATED(CURLOPT_CONV_FROM_UTF8_FUNCTION,
+-                    CURLOPTTYPE_FUNCTIONPOINT, 144,
+-                    7.82.0, "Serves no purpose anymore"),
+-  CURLOPT(CURLOPT_MAX_SEND_SPEED_LARGE, CURLOPTTYPE_OFF_T, 145),
+-  CURLOPT(CURLOPT_MAX_RECV_SPEED_LARGE, CURLOPTTYPE_OFF_T, 146),
+-  CURLOPT(CURLOPT_FTP_ALTERNATIVE_TO_USER, CURLOPTTYPE_STRINGPOINT, 147),
+-  CURLOPT(CURLOPT_SOCKOPTFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 148),
+-  CURLOPT(CURLOPT_SOCKOPTDATA, CURLOPTTYPE_CBPOINT, 149),
+-  CURLOPT(CURLOPT_SSL_SESSIONID_CACHE, CURLOPTTYPE_LONG, 150),
+-  CURLOPT(CURLOPT_SSH_AUTH_TYPES, CURLOPTTYPE_VALUES, 151),
+-  CURLOPT(CURLOPT_SSH_PUBLIC_KEYFILE, CURLOPTTYPE_STRINGPOINT, 152),
+-  CURLOPT(CURLOPT_SSH_PRIVATE_KEYFILE, CURLOPTTYPE_STRINGPOINT, 153),
+-  CURLOPT(CURLOPT_FTP_SSL_CCC, CURLOPTTYPE_LONG, 154),
+-  CURLOPT(CURLOPT_TIMEOUT_MS, CURLOPTTYPE_LONG, 155),
+-  CURLOPT(CURLOPT_CONNECTTIMEOUT_MS, CURLOPTTYPE_LONG, 156),
+-  CURLOPT(CURLOPT_HTTP_TRANSFER_DECODING, CURLOPTTYPE_LONG, 157),
+-  CURLOPT(CURLOPT_HTTP_CONTENT_DECODING, CURLOPTTYPE_LONG, 158),
+-  CURLOPT(CURLOPT_NEW_FILE_PERMS, CURLOPTTYPE_LONG, 159),
+-  CURLOPT(CURLOPT_NEW_DIRECTORY_PERMS, CURLOPTTYPE_LONG, 160),
+-  CURLOPT(CURLOPT_POSTREDIR, CURLOPTTYPE_VALUES, 161),
+-  CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_MD5, CURLOPTTYPE_STRINGPOINT, 162),
+-  CURLOPT(CURLOPT_OPENSOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 163),
+-  CURLOPT(CURLOPT_OPENSOCKETDATA, CURLOPTTYPE_CBPOINT, 164),
+-  CURLOPT(CURLOPT_COPYPOSTFIELDS, CURLOPTTYPE_OBJECTPOINT, 165),
+-  CURLOPT(CURLOPT_PROXY_TRANSFER_MODE, CURLOPTTYPE_LONG, 166),
+-  CURLOPT(CURLOPT_SEEKFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 167),
+-  CURLOPT(CURLOPT_SEEKDATA, CURLOPTTYPE_CBPOINT, 168),
+-  CURLOPT(CURLOPT_CRLFILE, CURLOPTTYPE_STRINGPOINT, 169),
+-  CURLOPT(CURLOPT_ISSUERCERT, CURLOPTTYPE_STRINGPOINT, 170),
+-  CURLOPT(CURLOPT_ADDRESS_SCOPE, CURLOPTTYPE_LONG, 171),
+-  CURLOPT(CURLOPT_CERTINFO, CURLOPTTYPE_LONG, 172),
+-  CURLOPT(CURLOPT_USERNAME, CURLOPTTYPE_STRINGPOINT, 173),
+-  CURLOPT(CURLOPT_PASSWORD, CURLOPTTYPE_STRINGPOINT, 174),
+-  CURLOPT(CURLOPT_PROXYUSERNAME, CURLOPTTYPE_STRINGPOINT, 175),
+-  CURLOPT(CURLOPT_PROXYPASSWORD, CURLOPTTYPE_STRINGPOINT, 176),
+-  CURLOPT(CURLOPT_NOPROXY, CURLOPTTYPE_STRINGPOINT, 177),
+-  CURLOPT(CURLOPT_TFTP_BLKSIZE, CURLOPTTYPE_LONG, 178),
+-  CURLOPTDEPRECATED(CURLOPT_SOCKS5_GSSAPI_SERVICE,
+-                    CURLOPTTYPE_STRINGPOINT, 179,
+-                    7.49.0, "Use CURLOPT_PROXY_SERVICE_NAME"),
+-  CURLOPT(CURLOPT_SOCKS5_GSSAPI_NEC, CURLOPTTYPE_LONG, 180),
+-  CURLOPTDEPRECATED(CURLOPT_PROTOCOLS, CURLOPTTYPE_LONG, 181,
+-                    7.85.0, "Use CURLOPT_PROTOCOLS_STR"),
+-  CURLOPTDEPRECATED(CURLOPT_REDIR_PROTOCOLS, CURLOPTTYPE_LONG, 182,
+-                    7.85.0, "Use CURLOPT_REDIR_PROTOCOLS_STR"),
+-  CURLOPT(CURLOPT_SSH_KNOWNHOSTS, CURLOPTTYPE_STRINGPOINT, 183),
+-  CURLOPT(CURLOPT_SSH_KEYFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 184),
+-  CURLOPT(CURLOPT_SSH_KEYDATA, CURLOPTTYPE_CBPOINT, 185),
+-  CURLOPT(CURLOPT_MAIL_FROM, CURLOPTTYPE_STRINGPOINT, 186),
+-  CURLOPT(CURLOPT_MAIL_RCPT, CURLOPTTYPE_SLISTPOINT, 187),
+-  CURLOPT(CURLOPT_FTP_USE_PRET, CURLOPTTYPE_LONG, 188),
+-  CURLOPT(CURLOPT_RTSP_REQUEST, CURLOPTTYPE_VALUES, 189),
+-  CURLOPT(CURLOPT_RTSP_SESSION_ID, CURLOPTTYPE_STRINGPOINT, 190),
+-  CURLOPT(CURLOPT_RTSP_STREAM_URI, CURLOPTTYPE_STRINGPOINT, 191),
+-  CURLOPT(CURLOPT_RTSP_TRANSPORT, CURLOPTTYPE_STRINGPOINT, 192),
+-  CURLOPT(CURLOPT_RTSP_CLIENT_CSEQ, CURLOPTTYPE_LONG, 193),
+-  CURLOPT(CURLOPT_RTSP_SERVER_CSEQ, CURLOPTTYPE_LONG, 194),
+-  CURLOPT(CURLOPT_INTERLEAVEDATA, CURLOPTTYPE_CBPOINT, 195),
+-  CURLOPT(CURLOPT_INTERLEAVEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 196),
+-  CURLOPT(CURLOPT_WILDCARDMATCH, CURLOPTTYPE_LONG, 197),
+-  CURLOPT(CURLOPT_CHUNK_BGN_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 198),
+-  CURLOPT(CURLOPT_CHUNK_END_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 199),
+-  CURLOPT(CURLOPT_FNMATCH_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 200),
+-  CURLOPT(CURLOPT_CHUNK_DATA, CURLOPTTYPE_CBPOINT, 201),
+-  CURLOPT(CURLOPT_FNMATCH_DATA, CURLOPTTYPE_CBPOINT, 202),
+-  CURLOPT(CURLOPT_RESOLVE, CURLOPTTYPE_SLISTPOINT, 203),
+-  CURLOPT(CURLOPT_TLSAUTH_USERNAME, CURLOPTTYPE_STRINGPOINT, 204),
+-  CURLOPT(CURLOPT_TLSAUTH_PASSWORD, CURLOPTTYPE_STRINGPOINT, 205),
+-  CURLOPT(CURLOPT_TLSAUTH_TYPE, CURLOPTTYPE_STRINGPOINT, 206),
+-  CURLOPT(CURLOPT_TRANSFER_ENCODING, CURLOPTTYPE_LONG, 207),
+-  CURLOPT(CURLOPT_CLOSESOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 208),
+-  CURLOPT(CURLOPT_CLOSESOCKETDATA, CURLOPTTYPE_CBPOINT, 209),
+-  CURLOPT(CURLOPT_GSSAPI_DELEGATION, CURLOPTTYPE_VALUES, 210),
+-  CURLOPT(CURLOPT_DNS_SERVERS, CURLOPTTYPE_STRINGPOINT, 211),
+-  CURLOPT(CURLOPT_ACCEPTTIMEOUT_MS, CURLOPTTYPE_LONG, 212),
+-  CURLOPT(CURLOPT_TCP_KEEPALIVE, CURLOPTTYPE_LONG, 213),
+-  CURLOPT(CURLOPT_TCP_KEEPIDLE, CURLOPTTYPE_LONG, 214),
+-  CURLOPT(CURLOPT_TCP_KEEPINTVL, CURLOPTTYPE_LONG, 215),
+-  CURLOPT(CURLOPT_SSL_OPTIONS, CURLOPTTYPE_VALUES, 216),
+-  CURLOPT(CURLOPT_MAIL_AUTH, CURLOPTTYPE_STRINGPOINT, 217),
+-  CURLOPT(CURLOPT_SASL_IR, CURLOPTTYPE_LONG, 218),
+-  CURLOPT(CURLOPT_XFERINFOFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 219),
+-  CURLOPT(CURLOPT_XOAUTH2_BEARER, CURLOPTTYPE_STRINGPOINT, 220),
+-  CURLOPT(CURLOPT_DNS_INTERFACE, CURLOPTTYPE_STRINGPOINT, 221),
+-  CURLOPT(CURLOPT_DNS_LOCAL_IP4, CURLOPTTYPE_STRINGPOINT, 222),
+-  CURLOPT(CURLOPT_DNS_LOCAL_IP6, CURLOPTTYPE_STRINGPOINT, 223),
+-  CURLOPT(CURLOPT_LOGIN_OPTIONS, CURLOPTTYPE_STRINGPOINT, 224),
+-  CURLOPTDEPRECATED(CURLOPT_SSL_ENABLE_NPN, CURLOPTTYPE_LONG, 225,
+-                    7.86.0, "Has no function"),
+-  CURLOPT(CURLOPT_SSL_ENABLE_ALPN, CURLOPTTYPE_LONG, 226),
+-  CURLOPT(CURLOPT_EXPECT_100_TIMEOUT_MS, CURLOPTTYPE_LONG, 227),
+-  CURLOPT(CURLOPT_PROXYHEADER, CURLOPTTYPE_SLISTPOINT, 228),
+-  CURLOPT(CURLOPT_HEADEROPT, CURLOPTTYPE_VALUES, 229),
+-  CURLOPT(CURLOPT_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 230),
+-  CURLOPT(CURLOPT_UNIX_SOCKET_PATH, CURLOPTTYPE_STRINGPOINT, 231),
+-  CURLOPT(CURLOPT_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 232),
+-  CURLOPT(CURLOPT_SSL_FALSESTART, CURLOPTTYPE_LONG, 233),
+-  CURLOPT(CURLOPT_PATH_AS_IS, CURLOPTTYPE_LONG, 234),
+-  CURLOPT(CURLOPT_PROXY_SERVICE_NAME, CURLOPTTYPE_STRINGPOINT, 235),
+-  CURLOPT(CURLOPT_SERVICE_NAME, CURLOPTTYPE_STRINGPOINT, 236),
+-  CURLOPT(CURLOPT_PIPEWAIT, CURLOPTTYPE_LONG, 237),
+-  CURLOPT(CURLOPT_DEFAULT_PROTOCOL, CURLOPTTYPE_STRINGPOINT, 238),
+-  CURLOPT(CURLOPT_STREAM_WEIGHT, CURLOPTTYPE_LONG, 239),
+-  CURLOPT(CURLOPT_STREAM_DEPENDS, CURLOPTTYPE_OBJECTPOINT, 240),
+-  CURLOPT(CURLOPT_STREAM_DEPENDS_E, CURLOPTTYPE_OBJECTPOINT, 241),
+-  CURLOPT(CURLOPT_TFTP_NO_OPTIONS, CURLOPTTYPE_LONG, 242),
+-  CURLOPT(CURLOPT_CONNECT_TO, CURLOPTTYPE_SLISTPOINT, 243),
+-  CURLOPT(CURLOPT_TCP_FASTOPEN, CURLOPTTYPE_LONG, 244),
+-  CURLOPT(CURLOPT_KEEP_SENDING_ON_ERROR, CURLOPTTYPE_LONG, 245),
+-  CURLOPT(CURLOPT_PROXY_CAINFO, CURLOPTTYPE_STRINGPOINT, 246),
+-  CURLOPT(CURLOPT_PROXY_CAPATH, CURLOPTTYPE_STRINGPOINT, 247),
+-  CURLOPT(CURLOPT_PROXY_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 248),
+-  CURLOPT(CURLOPT_PROXY_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 249),
+-  CURLOPT(CURLOPT_PROXY_SSLVERSION, CURLOPTTYPE_VALUES, 250),
+-  CURLOPT(CURLOPT_PROXY_TLSAUTH_USERNAME, CURLOPTTYPE_STRINGPOINT, 251),
+-  CURLOPT(CURLOPT_PROXY_TLSAUTH_PASSWORD, CURLOPTTYPE_STRINGPOINT, 252),
+-  CURLOPT(CURLOPT_PROXY_TLSAUTH_TYPE, CURLOPTTYPE_STRINGPOINT, 253),
+-  CURLOPT(CURLOPT_PROXY_SSLCERT, CURLOPTTYPE_STRINGPOINT, 254),
+-  CURLOPT(CURLOPT_PROXY_SSLCERTTYPE, CURLOPTTYPE_STRINGPOINT, 255),
+-  CURLOPT(CURLOPT_PROXY_SSLKEY, CURLOPTTYPE_STRINGPOINT, 256),
+-  CURLOPT(CURLOPT_PROXY_SSLKEYTYPE, CURLOPTTYPE_STRINGPOINT, 257),
+-  CURLOPT(CURLOPT_PROXY_KEYPASSWD, CURLOPTTYPE_STRINGPOINT, 258),
+-  CURLOPT(CURLOPT_PROXY_SSL_CIPHER_LIST, CURLOPTTYPE_STRINGPOINT, 259),
+-  CURLOPT(CURLOPT_PROXY_CRLFILE, CURLOPTTYPE_STRINGPOINT, 260),
+-  CURLOPT(CURLOPT_PROXY_SSL_OPTIONS, CURLOPTTYPE_LONG, 261),
+-  CURLOPT(CURLOPT_PRE_PROXY, CURLOPTTYPE_STRINGPOINT, 262),
+-  CURLOPT(CURLOPT_PROXY_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 263),
+-  CURLOPT(CURLOPT_ABSTRACT_UNIX_SOCKET, CURLOPTTYPE_STRINGPOINT, 264),
+-  CURLOPT(CURLOPT_SUPPRESS_CONNECT_HEADERS, CURLOPTTYPE_LONG, 265),
+-  CURLOPT(CURLOPT_REQUEST_TARGET, CURLOPTTYPE_STRINGPOINT, 266),
+-  CURLOPT(CURLOPT_SOCKS5_AUTH, CURLOPTTYPE_LONG, 267),
+-  CURLOPT(CURLOPT_SSH_COMPRESSION, CURLOPTTYPE_LONG, 268),
+-  CURLOPT(CURLOPT_MIMEPOST, CURLOPTTYPE_OBJECTPOINT, 269),
+-  CURLOPT(CURLOPT_TIMEVALUE_LARGE, CURLOPTTYPE_OFF_T, 270),
+-  CURLOPT(CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS, CURLOPTTYPE_LONG, 271),
+-  CURLOPT(CURLOPT_RESOLVER_START_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 272),
+-  CURLOPT(CURLOPT_RESOLVER_START_DATA, CURLOPTTYPE_CBPOINT, 273),
+-  CURLOPT(CURLOPT_HAPROXYPROTOCOL, CURLOPTTYPE_LONG, 274),
+-  CURLOPT(CURLOPT_DNS_SHUFFLE_ADDRESSES, CURLOPTTYPE_LONG, 275),
+-  CURLOPT(CURLOPT_TLS13_CIPHERS, CURLOPTTYPE_STRINGPOINT, 276),
+-  CURLOPT(CURLOPT_PROXY_TLS13_CIPHERS, CURLOPTTYPE_STRINGPOINT, 277),
+-  CURLOPT(CURLOPT_DISALLOW_USERNAME_IN_URL, CURLOPTTYPE_LONG, 278),
+-  CURLOPT(CURLOPT_DOH_URL, CURLOPTTYPE_STRINGPOINT, 279),
+-  CURLOPT(CURLOPT_UPLOAD_BUFFERSIZE, CURLOPTTYPE_LONG, 280),
+-  CURLOPT(CURLOPT_UPKEEP_INTERVAL_MS, CURLOPTTYPE_LONG, 281),
+-  CURLOPT(CURLOPT_CURLU, CURLOPTTYPE_OBJECTPOINT, 282),
+-  CURLOPT(CURLOPT_TRAILERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 283),
+-  CURLOPT(CURLOPT_TRAILERDATA, CURLOPTTYPE_CBPOINT, 284),
+-  CURLOPT(CURLOPT_HTTP09_ALLOWED, CURLOPTTYPE_LONG, 285),
+-  CURLOPT(CURLOPT_ALTSVC_CTRL, CURLOPTTYPE_LONG, 286),
+-  CURLOPT(CURLOPT_ALTSVC, CURLOPTTYPE_STRINGPOINT, 287),
+-  CURLOPT(CURLOPT_MAXAGE_CONN, CURLOPTTYPE_LONG, 288),
+-  CURLOPT(CURLOPT_SASL_AUTHZID, CURLOPTTYPE_STRINGPOINT, 289),
+-  CURLOPT(CURLOPT_MAIL_RCPT_ALLOWFAILS, CURLOPTTYPE_LONG, 290),
+-  CURLOPT(CURLOPT_SSLCERT_BLOB, CURLOPTTYPE_BLOB, 291),
+-  CURLOPT(CURLOPT_SSLKEY_BLOB, CURLOPTTYPE_BLOB, 292),
+-  CURLOPT(CURLOPT_PROXY_SSLCERT_BLOB, CURLOPTTYPE_BLOB, 293),
+-  CURLOPT(CURLOPT_PROXY_SSLKEY_BLOB, CURLOPTTYPE_BLOB, 294),
+-  CURLOPT(CURLOPT_ISSUERCERT_BLOB, CURLOPTTYPE_BLOB, 295),
+-  CURLOPT(CURLOPT_PROXY_ISSUERCERT, CURLOPTTYPE_STRINGPOINT, 296),
+-  CURLOPT(CURLOPT_PROXY_ISSUERCERT_BLOB, CURLOPTTYPE_BLOB, 297),
+-  CURLOPT(CURLOPT_SSL_EC_CURVES, CURLOPTTYPE_STRINGPOINT, 298),
+-  CURLOPT(CURLOPT_HSTS_CTRL, CURLOPTTYPE_LONG, 299),
+-  CURLOPT(CURLOPT_HSTS, CURLOPTTYPE_STRINGPOINT, 300),
+-  CURLOPT(CURLOPT_HSTSREADFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 301),
+-  CURLOPT(CURLOPT_HSTSREADDATA, CURLOPTTYPE_CBPOINT, 302),
+-  CURLOPT(CURLOPT_HSTSWRITEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 303),
+-  CURLOPT(CURLOPT_HSTSWRITEDATA, CURLOPTTYPE_CBPOINT, 304),
+-  CURLOPT(CURLOPT_AWS_SIGV4, CURLOPTTYPE_STRINGPOINT, 305),
+-  CURLOPT(CURLOPT_DOH_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 306),
+-  CURLOPT(CURLOPT_DOH_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 307),
+-  CURLOPT(CURLOPT_DOH_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 308),
+-  CURLOPT(CURLOPT_CAINFO_BLOB, CURLOPTTYPE_BLOB, 309),
+-  CURLOPT(CURLOPT_PROXY_CAINFO_BLOB, CURLOPTTYPE_BLOB, 310),
+-  CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256, CURLOPTTYPE_STRINGPOINT, 311),
+-  CURLOPT(CURLOPT_PREREQFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 312),
+-  CURLOPT(CURLOPT_PREREQDATA, CURLOPTTYPE_CBPOINT, 313),
+-  CURLOPT(CURLOPT_MAXLIFETIME_CONN, CURLOPTTYPE_LONG, 314),
+-  CURLOPT(CURLOPT_MIME_OPTIONS, CURLOPTTYPE_LONG, 315),
+-  CURLOPT(CURLOPT_SSH_HOSTKEYFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 316),
+-  CURLOPT(CURLOPT_SSH_HOSTKEYDATA, CURLOPTTYPE_CBPOINT, 317),
+-  CURLOPT(CURLOPT_PROTOCOLS_STR, CURLOPTTYPE_STRINGPOINT, 318),
+-  CURLOPT(CURLOPT_REDIR_PROTOCOLS_STR, CURLOPTTYPE_STRINGPOINT, 319),
+-  CURLOPT(CURLOPT_WS_OPTIONS, CURLOPTTYPE_LONG, 320),
+-  CURLOPT(CURLOPT_CA_CACHE_TIMEOUT, CURLOPTTYPE_LONG, 321),
+-  CURLOPT(CURLOPT_QUICK_EXIT, CURLOPTTYPE_LONG, 322),
+-  CURLOPT(CURLOPT_HAPROXY_CLIENT_IP, CURLOPTTYPE_STRINGPOINT, 323),
+-  CURLOPT(CURLOPT_SERVER_RESPONSE_TIMEOUT_MS, CURLOPTTYPE_LONG, 324),
+-  CURLOPT(CURLOPT_ECH, CURLOPTTYPE_STRINGPOINT, 325),
+-  CURLOPT(CURLOPT_TCP_KEEPCNT, CURLOPTTYPE_LONG, 326),
+-  CURLOPT_LASTENTRY 
+-} CURLoption;
+-enum {
+-  CURL_HTTP_VERSION_NONE, 
+-  CURL_HTTP_VERSION_1_0,  
+-  CURL_HTTP_VERSION_1_1,  
+-  CURL_HTTP_VERSION_2_0,  
+-  CURL_HTTP_VERSION_2TLS, 
+-  CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE,  
+-  CURL_HTTP_VERSION_3 = 30, 
+-  CURL_HTTP_VERSION_3ONLY = 31, 
+-  CURL_HTTP_VERSION_LAST 
+-};
+-enum {
+-    CURL_RTSPREQ_NONE, 
+-    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 
+-};
+-enum CURL_NETRC_OPTION {
+-  CURL_NETRC_IGNORED,     
+-  CURL_NETRC_OPTIONAL,    
+-  CURL_NETRC_REQUIRED,    
+-  CURL_NETRC_LAST
+-};
+-enum CURL_TLSAUTH {
+-  CURL_TLSAUTH_NONE,
+-  CURL_TLSAUTH_SRP,
+-  CURL_TLSAUTH_LAST 
+-};
+-typedef enum {
+-  CURL_TIMECOND_NONE,
+-  CURL_TIMECOND_IFMODSINCE,
+-  CURL_TIMECOND_IFUNMODSINCE,
+-  CURL_TIMECOND_LASTMOD,
+-  CURL_TIMECOND_LAST
+-} curl_TimeCond;
+-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);
+-typedef struct curl_mime      curl_mime;      
+-typedef struct curl_mimepart  curl_mimepart;  
+-CURL_EXTERN curl_mime *curl_mime_init(CURL *easy);
+-CURL_EXTERN void curl_mime_free(curl_mime *mime);
+-CURL_EXTERN curl_mimepart *curl_mime_addpart(curl_mime *mime);
+-CURL_EXTERN CURLcode curl_mime_name(curl_mimepart *part, const char *name);
+-CURL_EXTERN CURLcode curl_mime_filename(curl_mimepart *part,
+-                                        const char *filename);
+-CURL_EXTERN CURLcode curl_mime_type(curl_mimepart *part, const char *mimetype);
+-CURL_EXTERN CURLcode curl_mime_encoder(curl_mimepart *part,
+-                                       const char *encoding);
+-CURL_EXTERN CURLcode curl_mime_data(curl_mimepart *part,
+-                                    const char *data, size_t datasize);
+-CURL_EXTERN CURLcode curl_mime_filedata(curl_mimepart *part,
+-                                        const char *filename);
+-CURL_EXTERN CURLcode curl_mime_data_cb(curl_mimepart *part,
+-                                       curl_off_t datasize,
+-                                       curl_read_callback readfunc,
+-                                       curl_seek_callback seekfunc,
+-                                       curl_free_callback freefunc,
+-                                       void *arg);
+-CURL_EXTERN CURLcode curl_mime_subparts(curl_mimepart *part,
+-                                        curl_mime *subparts);
+-CURL_EXTERN CURLcode curl_mime_headers(curl_mimepart *part,
+-                                       struct curl_slist *headers,
+-                                       int take_ownership);
+-typedef enum {
+-  CURLFORM_NOTHING         CURL_DEPRECATED(7.56.0, ""),
+-  CURLFORM_COPYNAME        CURL_DEPRECATED(7.56.0, "Use curl_mime_name()"),
+-  CURLFORM_PTRNAME         CURL_DEPRECATED(7.56.0, "Use curl_mime_name()"),
+-  CURLFORM_NAMELENGTH      CURL_DEPRECATED(7.56.0, ""),
+-  CURLFORM_COPYCONTENTS    CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+-  CURLFORM_PTRCONTENTS     CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+-  CURLFORM_CONTENTSLENGTH  CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+-  CURLFORM_FILECONTENT     CURL_DEPRECATED(7.56.0, "Use curl_mime_data_cb()"),
+-  CURLFORM_ARRAY           CURL_DEPRECATED(7.56.0, ""),
+-  CURLFORM_OBSOLETE,
+-  CURLFORM_FILE            CURL_DEPRECATED(7.56.0, "Use curl_mime_filedata()"),
+-  CURLFORM_BUFFER          CURL_DEPRECATED(7.56.0, "Use curl_mime_filename()"),
+-  CURLFORM_BUFFERPTR       CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+-  CURLFORM_BUFFERLENGTH    CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+-  CURLFORM_CONTENTTYPE     CURL_DEPRECATED(7.56.0, "Use curl_mime_type()"),
+-  CURLFORM_CONTENTHEADER   CURL_DEPRECATED(7.56.0, "Use curl_mime_headers()"),
+-  CURLFORM_FILENAME        CURL_DEPRECATED(7.56.0, "Use curl_mime_filename()"),
+-  CURLFORM_END,
+-  CURLFORM_OBSOLETE2,
+-  CURLFORM_STREAM          CURL_DEPRECATED(7.56.0, "Use curl_mime_data_cb()"),
+-  CURLFORM_CONTENTLEN  
+-                           CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+-  CURLFORM_LASTENTRY 
+-} CURLformoption;
+-struct curl_forms {
+-  CURLformoption option;
+-  const char     *value;
+-};
+-typedef enum {
+-  CURL_FORMADD_OK             CURL_DEPRECATED(7.56.0, ""), 
+-  CURL_FORMADD_MEMORY         CURL_DEPRECATED(7.56.0, ""),
+-  CURL_FORMADD_OPTION_TWICE   CURL_DEPRECATED(7.56.0, ""),
+-  CURL_FORMADD_NULL           CURL_DEPRECATED(7.56.0, ""),
+-  CURL_FORMADD_UNKNOWN_OPTION CURL_DEPRECATED(7.56.0, ""),
+-  CURL_FORMADD_INCOMPLETE     CURL_DEPRECATED(7.56.0, ""),
+-  CURL_FORMADD_ILLEGAL_ARRAY  CURL_DEPRECATED(7.56.0, ""),
+-  CURL_FORMADD_DISABLED       CURL_DEPRECATED(7.56.0, ""),
+-  CURL_FORMADD_LAST 
+-} CURLFORMcode;
+-CURL_EXTERN CURLFORMcode CURL_DEPRECATED(7.56.0, "Use curl_mime_init()")
+-curl_formadd(struct curl_httppost **httppost,
+-             struct curl_httppost **last_post,
+-             ...);
+-typedef size_t (*curl_formget_callback)(void *arg, const char *buf,
+-                                        size_t len);
+-CURL_EXTERN int CURL_DEPRECATED(7.56.0, "")
+-curl_formget(struct curl_httppost *form, void *arg,
+-             curl_formget_callback append);
+-CURL_EXTERN void CURL_DEPRECATED(7.56.0, "Use curl_mime_free()")
+-curl_formfree(struct curl_httppost *form);
+-CURL_EXTERN char *curl_getenv(const char *variable);
+-CURL_EXTERN char *curl_version(void);
+-CURL_EXTERN char *curl_easy_escape(CURL *handle,
+-                                   const char *string,
+-                                   int length);
+-CURL_EXTERN char *curl_escape(const char *string,
+-                              int length);
+-CURL_EXTERN char *curl_easy_unescape(CURL *handle,
+-                                     const char *string,
+-                                     int length,
+-                                     int *outlength);
+-CURL_EXTERN char *curl_unescape(const char *string,
+-                                int length);
+-CURL_EXTERN void curl_free(void *p);
+-CURL_EXTERN CURLcode curl_global_init(long flags);
+-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);
+-CURL_EXTERN void curl_global_cleanup(void);
+-CURL_EXTERN CURLcode curl_global_trace(const char *config);
+-struct curl_slist {
+-  char *data;
+-  struct curl_slist *next;
+-};
+-struct curl_ssl_backend {
+-  curl_sslbackend id;
+-  const char *name;
+-};
+-typedef struct curl_ssl_backend curl_ssl_backend;
+-typedef enum {
+-  CURLSSLSET_OK = 0,
+-  CURLSSLSET_UNKNOWN_BACKEND,
+-  CURLSSLSET_TOO_LATE,
+-  CURLSSLSET_NO_BACKENDS 
+-} CURLsslset;
+-CURL_EXTERN CURLsslset curl_global_sslset(curl_sslbackend id, const char *name,
+-                                          const curl_ssl_backend ***avail);
+-CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *list,
+-                                                 const char *data);
+-CURL_EXTERN void curl_slist_free_all(struct curl_slist *list);
+-CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused);
+-struct curl_certinfo {
+-  int num_of_certs;             
+-  struct curl_slist **certinfo; 
+-};
+-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_PTR      0x400000 
+-#define CURLINFO_SOCKET   0x500000
+-#define CURLINFO_OFF_T    0x600000
+-typedef enum {
+-  CURLINFO_NONE, 
+-  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 CURL_DEPRECATED(7.55.0, "Use CURLINFO_SIZE_UPLOAD_T")
+-                            = CURLINFO_DOUBLE + 7,
+-  CURLINFO_SIZE_UPLOAD_T    = CURLINFO_OFF_T  + 7,
+-  CURLINFO_SIZE_DOWNLOAD
+-                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SIZE_DOWNLOAD_T")
+-                            = CURLINFO_DOUBLE + 8,
+-  CURLINFO_SIZE_DOWNLOAD_T  = CURLINFO_OFF_T  + 8,
+-  CURLINFO_SPEED_DOWNLOAD
+-                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SPEED_DOWNLOAD_T")
+-                            = CURLINFO_DOUBLE + 9,
+-  CURLINFO_SPEED_DOWNLOAD_T = CURLINFO_OFF_T  + 9,
+-  CURLINFO_SPEED_UPLOAD
+-                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SPEED_UPLOAD_T")
+-                            = CURLINFO_DOUBLE + 10,
+-  CURLINFO_SPEED_UPLOAD_T   = CURLINFO_OFF_T  + 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_FILETIME_T       = CURLINFO_OFF_T  + 14,
+-  CURLINFO_CONTENT_LENGTH_DOWNLOAD
+-                       CURL_DEPRECATED(7.55.0,
+-                                      "Use CURLINFO_CONTENT_LENGTH_DOWNLOAD_T")
+-                            = CURLINFO_DOUBLE + 15,
+-  CURLINFO_CONTENT_LENGTH_DOWNLOAD_T = CURLINFO_OFF_T  + 15,
+-  CURLINFO_CONTENT_LENGTH_UPLOAD
+-                       CURL_DEPRECATED(7.55.0,
+-                                       "Use CURLINFO_CONTENT_LENGTH_UPLOAD_T")
+-                            = CURLINFO_DOUBLE + 16,
+-  CURLINFO_CONTENT_LENGTH_UPLOAD_T   = CURLINFO_OFF_T  + 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  CURL_DEPRECATED(7.45.0, "Use CURLINFO_ACTIVESOCKET")
+-                            = 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_PTR    + 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 CURL_DEPRECATED(7.48.0, "Use CURLINFO_TLS_SSL_PTR")
+-                            = CURLINFO_PTR    + 43,
+-  CURLINFO_ACTIVESOCKET     = CURLINFO_SOCKET + 44,
+-  CURLINFO_TLS_SSL_PTR      = CURLINFO_PTR    + 45,
+-  CURLINFO_HTTP_VERSION     = CURLINFO_LONG   + 46,
+-  CURLINFO_PROXY_SSL_VERIFYRESULT = CURLINFO_LONG + 47,
+-  CURLINFO_PROTOCOL    CURL_DEPRECATED(7.85.0, "Use CURLINFO_SCHEME")
+-                            = CURLINFO_LONG   + 48,
+-  CURLINFO_SCHEME           = CURLINFO_STRING + 49,
+-  CURLINFO_TOTAL_TIME_T     = CURLINFO_OFF_T + 50,
+-  CURLINFO_NAMELOOKUP_TIME_T = CURLINFO_OFF_T + 51,
+-  CURLINFO_CONNECT_TIME_T   = CURLINFO_OFF_T + 52,
+-  CURLINFO_PRETRANSFER_TIME_T = CURLINFO_OFF_T + 53,
+-  CURLINFO_STARTTRANSFER_TIME_T = CURLINFO_OFF_T + 54,
+-  CURLINFO_REDIRECT_TIME_T  = CURLINFO_OFF_T + 55,
+-  CURLINFO_APPCONNECT_TIME_T = CURLINFO_OFF_T + 56,
+-  CURLINFO_RETRY_AFTER      = CURLINFO_OFF_T + 57,
+-  CURLINFO_EFFECTIVE_METHOD = CURLINFO_STRING + 58,
+-  CURLINFO_PROXY_ERROR      = CURLINFO_LONG + 59,
+-  CURLINFO_REFERER          = CURLINFO_STRING + 60,
+-  CURLINFO_CAINFO           = CURLINFO_STRING + 61,
+-  CURLINFO_CAPATH           = CURLINFO_STRING + 62,
+-  CURLINFO_XFER_ID          = CURLINFO_OFF_T + 63,
+-  CURLINFO_CONN_ID          = CURLINFO_OFF_T + 64,
+-  CURLINFO_QUEUE_TIME_T     = CURLINFO_OFF_T + 65,
+-  CURLINFO_USED_PROXY       = CURLINFO_LONG + 66,
+-  CURLINFO_POSTTRANSFER_TIME_T = CURLINFO_OFF_T + 67,
+-  CURLINFO_EARLYDATA_SENT_T = CURLINFO_OFF_T + 68,
+-  CURLINFO_LASTONE          = 68
+-} CURLINFO;
+-typedef enum {
+-  CURLCLOSEPOLICY_NONE, 
+-  CURLCLOSEPOLICY_OLDEST,
+-  CURLCLOSEPOLICY_LEAST_RECENTLY_USED,
+-  CURLCLOSEPOLICY_LEAST_TRAFFIC,
+-  CURLCLOSEPOLICY_SLOWEST,
+-  CURLCLOSEPOLICY_CALLBACK,
+-  CURLCLOSEPOLICY_LAST 
+-} 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_DEFAULT CURL_GLOBAL_ALL
+-typedef enum {
+-  CURL_LOCK_DATA_NONE = 0,
+-  CURL_LOCK_DATA_SHARE,
+-  CURL_LOCK_DATA_COOKIE,
+-  CURL_LOCK_DATA_DNS,
+-  CURL_LOCK_DATA_SSL_SESSION,
+-  CURL_LOCK_DATA_CONNECT,
+-  CURL_LOCK_DATA_PSL,
+-  CURL_LOCK_DATA_HSTS,
+-  CURL_LOCK_DATA_LAST
+-} curl_lock_data;
+-typedef enum {
+-  CURL_LOCK_ACCESS_NONE = 0,   
+-  CURL_LOCK_ACCESS_SHARED = 1, 
+-  CURL_LOCK_ACCESS_SINGLE = 2, 
+-  CURL_LOCK_ACCESS_LAST        
+-} 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,  
+-  CURLSHE_BAD_OPTION, 
+-  CURLSHE_IN_USE,     
+-  CURLSHE_INVALID,    
+-  CURLSHE_NOMEM,      
+-  CURLSHE_NOT_BUILT_IN, 
+-  CURLSHE_LAST        
+-} CURLSHcode;
+-typedef enum {
+-  CURLSHOPT_NONE,  
+-  CURLSHOPT_SHARE,   
+-  CURLSHOPT_UNSHARE, 
+-  CURLSHOPT_LOCKFUNC,   
+-  CURLSHOPT_UNLOCKFUNC, 
+-  CURLSHOPT_USERDATA,   
+-  CURLSHOPT_LAST  
+-} CURLSHoption;
+-CURL_EXTERN CURLSH *curl_share_init(void);
+-CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *share, CURLSHoption option,
+-                                         ...);
+-CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *share);
+-typedef enum {
+-  CURLVERSION_FIRST,    
+-  CURLVERSION_SECOND,   
+-  CURLVERSION_THIRD,    
+-  CURLVERSION_FOURTH,   
+-  CURLVERSION_FIFTH,    
+-  CURLVERSION_SIXTH,    
+-  CURLVERSION_SEVENTH,  
+-  CURLVERSION_EIGHTH,   
+-  CURLVERSION_NINTH,    
+-  CURLVERSION_TENTH,    
+-  CURLVERSION_ELEVENTH, 
+-  CURLVERSION_TWELFTH,  
+-  CURLVERSION_LAST 
+-} CURLversion;
+-#define CURLVERSION_NOW CURLVERSION_TWELFTH
+-struct curl_version_info_data {
+-  CURLversion age;          
+-  const char *version;      
+-  unsigned int version_num; 
+-  const char *host;         
+-  int features;             
+-  const char *ssl_version;  
+-  long ssl_version_num;     
+-  const char *libz_version; 
+-  const char * const *protocols;
+-  const char *ares;
+-  int ares_num;
+-  const char *libidn;
+-  int iconv_ver_num;
+-  const char *libssh_version; 
+-  unsigned int brotli_ver_num; 
+-  const char *brotli_version; 
+-  unsigned int nghttp2_ver_num; 
+-  const char *nghttp2_version; 
+-  const char *quic_version;    
+-  const char *cainfo;          
+-  const char *capath;          
+-  unsigned int zstd_ver_num; 
+-  const char *zstd_version; 
+-  const char *hyper_version; 
+-  const char *gsasl_version; 
+-  const char * const *feature_names;
+-  const char *rtmp_version; 
+-};
+-typedef struct curl_version_info_data curl_version_info_data;
+-
+-CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion);
+-CURL_EXTERN const char *curl_easy_strerror(CURLcode);
+-CURL_EXTERN const char *curl_share_strerror(CURLSHcode);
+-CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask);
+-#ifndef CURLINC_EASY_H
+-#define CURLINC_EASY_H
+-struct curl_blob {
+-  void *data;
+-  size_t len;
+-  unsigned int flags; 
+-};
+-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);
+-CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...);
+-CURL_EXTERN CURL *curl_easy_duphandle(CURL *curl);
+-CURL_EXTERN void curl_easy_reset(CURL *curl);
+-CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen,
+-                                    size_t *n);
+-CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer,
+-                                    size_t buflen, size_t *n);
+-CURL_EXTERN CURLcode curl_easy_upkeep(CURL *curl);
+-#endif
+-#ifndef CURLINC_MULTI_H
+-#define CURLINC_MULTI_H
+-typedef void CURLM;
+-typedef enum {
+-  CURLM_CALL_MULTI_PERFORM = -1, 
+-  CURLM_OK,
+-  CURLM_BAD_HANDLE,      
+-  CURLM_BAD_EASY_HANDLE, 
+-  CURLM_OUT_OF_MEMORY,   
+-  CURLM_INTERNAL_ERROR,  
+-  CURLM_BAD_SOCKET,      
+-  CURLM_UNKNOWN_OPTION,  
+-  CURLM_ADDED_ALREADY,   
+-  CURLM_RECURSIVE_API_CALL, 
+-  CURLM_WAKEUP_FAILURE,  
+-  CURLM_BAD_FUNCTION_ARGUMENT, 
+-  CURLM_ABORTED_BY_CALLBACK,
+-  CURLM_UNRECOVERABLE_POLL,
+-  CURLM_LAST
+-} CURLMcode;
+-typedef enum {
+-  CURLMSG_NONE, 
+-  CURLMSG_DONE, 
+-  CURLMSG_LAST 
+-} CURLMSG;
+-struct CURLMsg {
+-  CURLMSG msg;       
+-  CURL *easy_handle; 
+-  union {
+-    void *whatever;    
+-    CURLcode result;   
+-  } data;
+-};
+-typedef struct CURLMsg CURLMsg;
+-struct curl_waitfd {
+-  curl_socket_t fd;
+-  short events;
+-  short revents;
+-};
+-CURL_EXTERN CURLM *curl_multi_init(void);
+-CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle,
+-                                            CURL *curl_handle);
+-CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
+-                                               CURL *curl_handle);
+-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);
+-CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle,
+-                                      struct curl_waitfd extra_fds[],
+-                                      unsigned int extra_nfds,
+-                                      int timeout_ms,
+-                                      int *ret);
+-CURL_EXTERN CURLMcode curl_multi_poll(CURLM *multi_handle,
+-                                      struct curl_waitfd extra_fds[],
+-                                      unsigned int extra_nfds,
+-                                      int timeout_ms,
+-                                      int *ret);
+-CURL_EXTERN CURLMcode curl_multi_wakeup(CURLM *multi_handle);
+-CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle,
+-                                         int *running_handles);
+-CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
+-CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle,
+-                                          int *msgs_in_queue);
+-CURL_EXTERN const char *curl_multi_strerror(CURLMcode);
+-#define CURL_SOCKET_TIMEOUT CURL_SOCKET_BAD
+-typedef int (*curl_socket_callback)(CURL *easy,      
+-                                    curl_socket_t s, 
+-                                    int what,        
+-                                    void *userp,     
+-                                    void *socketp);  
+-typedef int (*curl_multi_timer_callback)(CURLM *multi,    
+-                                         long timeout_ms, 
+-                                         void *userp);    
+-CURL_EXTERN CURLMcode CURL_DEPRECATED(7.19.5, "Use curl_multi_socket_action()")
+-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_DEPRECATED(7.19.5, "Use curl_multi_socket_action()")
+-curl_multi_socket_all(CURLM *multi_handle, int *running_handles);
+-#ifndef CURL_ALLOW_OLD_MULTI_SOCKET
+-#define curl_multi_socket(x,y,z) curl_multi_socket_action(x,y,0,z)
+-#endif
+-CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle,
+-                                         long *milliseconds);
+-typedef enum {
+-  CURLOPT(CURLMOPT_SOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 1),
+-  CURLOPT(CURLMOPT_SOCKETDATA, CURLOPTTYPE_OBJECTPOINT, 2),
+-  CURLOPT(CURLMOPT_PIPELINING, CURLOPTTYPE_LONG, 3),
+-  CURLOPT(CURLMOPT_TIMERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 4),
+-  CURLOPT(CURLMOPT_TIMERDATA, CURLOPTTYPE_OBJECTPOINT, 5),
+-  CURLOPT(CURLMOPT_MAXCONNECTS, CURLOPTTYPE_LONG, 6),
+-  CURLOPT(CURLMOPT_MAX_HOST_CONNECTIONS, CURLOPTTYPE_LONG, 7),
+-  CURLOPT(CURLMOPT_MAX_PIPELINE_LENGTH, CURLOPTTYPE_LONG, 8),
+-  CURLOPT(CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 9),
+-  CURLOPT(CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 10),
+-  CURLOPT(CURLMOPT_PIPELINING_SITE_BL, CURLOPTTYPE_OBJECTPOINT, 11),
+-  CURLOPT(CURLMOPT_PIPELINING_SERVER_BL, CURLOPTTYPE_OBJECTPOINT, 12),
+-  CURLOPT(CURLMOPT_MAX_TOTAL_CONNECTIONS, CURLOPTTYPE_LONG, 13),
+-  CURLOPT(CURLMOPT_PUSHFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 14),
+-  CURLOPT(CURLMOPT_PUSHDATA, CURLOPTTYPE_OBJECTPOINT, 15),
+-  CURLOPT(CURLMOPT_MAX_CONCURRENT_STREAMS, CURLOPTTYPE_LONG, 16),
+-  CURLMOPT_LASTENTRY 
+-} CURLMoption;
+-CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle,
+-                                        CURLMoption option, ...);
+-CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle,
+-                                        curl_socket_t sockfd, void *sockp);
+-CURL_EXTERN CURL **curl_multi_get_handles(CURLM *multi_handle);
+-struct curl_pushheaders;  
+-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);
+-CURL_EXTERN CURLMcode curl_multi_waitfds(CURLM *multi,
+-                                         struct curl_waitfd *ufds,
+-                                         unsigned int size,
+-                                         unsigned int *fd_count);
+-#endif
+-#ifndef CURLINC_URLAPI_H
+-#define CURLINC_URLAPI_H
+-typedef enum {
+-  CURLUE_OK,
+-  CURLUE_BAD_HANDLE,          
+-  CURLUE_BAD_PARTPOINTER,     
+-  CURLUE_MALFORMED_INPUT,     
+-  CURLUE_BAD_PORT_NUMBER,     
+-  CURLUE_UNSUPPORTED_SCHEME,  
+-  CURLUE_URLDECODE,           
+-  CURLUE_OUT_OF_MEMORY,       
+-  CURLUE_USER_NOT_ALLOWED,    
+-  CURLUE_UNKNOWN_PART,        
+-  CURLUE_NO_SCHEME,           
+-  CURLUE_NO_USER,             
+-  CURLUE_NO_PASSWORD,         
+-  CURLUE_NO_OPTIONS,          
+-  CURLUE_NO_HOST,             
+-  CURLUE_NO_PORT,             
+-  CURLUE_NO_QUERY,            
+-  CURLUE_NO_FRAGMENT,         
+-  CURLUE_NO_ZONEID,           
+-  CURLUE_BAD_FILE_URL,        
+-  CURLUE_BAD_FRAGMENT,        
+-  CURLUE_BAD_HOSTNAME,        
+-  CURLUE_BAD_IPV6,            
+-  CURLUE_BAD_LOGIN,           
+-  CURLUE_BAD_PASSWORD,        
+-  CURLUE_BAD_PATH,            
+-  CURLUE_BAD_QUERY,           
+-  CURLUE_BAD_SCHEME,          
+-  CURLUE_BAD_SLASHES,         
+-  CURLUE_BAD_USER,            
+-  CURLUE_LACKS_IDN,           
+-  CURLUE_TOO_LARGE,           
+-  CURLUE_LAST
+-} CURLUcode;
+-typedef enum {
+-  CURLUPART_URL,
+-  CURLUPART_SCHEME,
+-  CURLUPART_USER,
+-  CURLUPART_PASSWORD,
+-  CURLUPART_OPTIONS,
+-  CURLUPART_HOST,
+-  CURLUPART_PORT,
+-  CURLUPART_PATH,
+-  CURLUPART_QUERY,
+-  CURLUPART_FRAGMENT,
+-  CURLUPART_ZONEID 
+-} CURLUPart;
+-typedef struct Curl_URL CURLU;
+-CURL_EXTERN CURLU *curl_url(void);
+-CURL_EXTERN void curl_url_cleanup(CURLU *handle);
+-CURL_EXTERN CURLU *curl_url_dup(const CURLU *in);
+-CURL_EXTERN CURLUcode curl_url_get(const CURLU *handle, CURLUPart what,
+-                                   char **part, unsigned int flags);
+-CURL_EXTERN CURLUcode curl_url_set(CURLU *handle, CURLUPart what,
+-                                   const char *part, unsigned int flags);
+-CURL_EXTERN const char *curl_url_strerror(CURLUcode);
+-#endif 
+-#ifndef CURLINC_OPTIONS_H
+-#define CURLINC_OPTIONS_H
+-typedef enum {
+-  CURLOT_LONG,    
+-  CURLOT_VALUES,  
+-  CURLOT_OFF_T,   
+-  CURLOT_OBJECT,  
+-  CURLOT_STRING,  
+-  CURLOT_SLIST,   
+-  CURLOT_CBPTR,   
+-  CURLOT_BLOB,    
+-  CURLOT_FUNCTION 
+-} curl_easytype;
+-struct curl_easyoption {
+-  const char *name;
+-  CURLoption id;
+-  curl_easytype type;
+-  unsigned int flags;
+-};
+-CURL_EXTERN const struct curl_easyoption *
+-curl_easy_option_by_name(const char *name);
+-CURL_EXTERN const struct curl_easyoption *
+-curl_easy_option_by_id(CURLoption id);
+-CURL_EXTERN const struct curl_easyoption *
+-curl_easy_option_next(const struct curl_easyoption *prev);
+-#endif 
+-#ifndef CURLINC_HEADER_H
+-#define CURLINC_HEADER_H
+-struct curl_header {
+-  char *name;    
+-  char *value;
+-  size_t amount; 
+-  size_t index;  
+-  unsigned int origin; 
+-  void *anchor; 
+-};
+-typedef enum {
+-  CURLHE_OK,
+-  CURLHE_BADINDEX,      
+-  CURLHE_MISSING,       
+-  CURLHE_NOHEADERS,     
+-  CURLHE_NOREQUEST,     
+-  CURLHE_OUT_OF_MEMORY, 
+-  CURLHE_BAD_ARGUMENT,  
+-  CURLHE_NOT_BUILT_IN   
+-} CURLHcode;
+-CURL_EXTERN CURLHcode curl_easy_header(CURL *easy,
+-                                       const char *name,
+-                                       size_t index,
+-                                       unsigned int origin,
+-                                       int request,
+-                                       struct curl_header **hout);
+-CURL_EXTERN struct curl_header *curl_easy_nextheader(CURL *easy,
+-                                                     unsigned int origin,
+-                                                     int request,
+-                                                     struct curl_header *prev);
+-#endif 
+-#ifndef CURLINC_WEBSOCKETS_H
+-#define CURLINC_WEBSOCKETS_H
+-struct curl_ws_frame {
+-  int age;              
+-  int flags;            
+-  curl_off_t offset;    
+-  curl_off_t bytesleft; 
+-  size_t len;           
+-};
+-CURL_EXTERN CURLcode curl_ws_recv(CURL *curl, void *buffer, size_t buflen,
+-                                  size_t *recv,
+-                                  const struct curl_ws_frame **metap);
+-CURL_EXTERN CURLcode curl_ws_send(CURL *curl, const void *buffer,
+-                                  size_t buflen, size_t *sent,
+-                                  curl_off_t fragsize,
+-                                  unsigned int flags);
+-CURL_EXTERN const struct curl_ws_frame *curl_ws_meta(CURL *curl);
+-#endif 
+-#ifndef CURL_SKIP_INCLUDE_MPRINTF
+-#ifndef CURLINC_MPRINTF_H
+-#define CURLINC_MPRINTF_H
+-#include <condition_variable>
+-#ifndef CURL_TEMP_PRINTF
+-#if (defined(__GNUC__) || defined(__clang__) ||                         \
+-  defined(__IAR_SYSTEMS_ICC__)) &&                                      \
+-  defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) &&         \
+-  !defined(CURL_NO_FMT_CHECKS)
+-#if defined(__MINGW32__) && !defined(__clang__)
+-#if defined(__MINGW_PRINTF_FORMAT)  
+-#define CURL_TEMP_PRINTF(fmt, arg) \
+-  __attribute__((format(__MINGW_PRINTF_FORMAT, fmt, arg)))
+-#else
+-#define CURL_TEMP_PRINTF(fmt, arg)
+-#endif
+-#else
+-#define CURL_TEMP_PRINTF(fmt, arg) \
+-  __attribute__((format(printf, fmt, arg)))
+-#endif
+-#else
+-#define CURL_TEMP_PRINTF(fmt, arg)
+-#endif
+-#endif
+-CURL_EXTERN int curl_mprintf(const char *format, ...)
+-  CURL_TEMP_PRINTF(1, 2);
+-CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...)
+-  CURL_TEMP_PRINTF(2, 3);
+-CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...)
+-  CURL_TEMP_PRINTF(2, 3);
+-CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength,
+-                               const char *format, ...)
+-  CURL_TEMP_PRINTF(3, 4);
+-CURL_EXTERN int curl_mvprintf(const char *format, va_list args)
+-  CURL_TEMP_PRINTF(1, 0);
+-CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args)
+-  CURL_TEMP_PRINTF(2, 0);
+-CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args)
+-  CURL_TEMP_PRINTF(2, 0);
+-CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength,
+-                                const char *format, va_list args)
+-  CURL_TEMP_PRINTF(3, 0);
+-CURL_EXTERN char *curl_maprintf(const char *format, ...)
+-  CURL_TEMP_PRINTF(1, 2);
+-CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args)
+-  CURL_TEMP_PRINTF(1, 0);
+-#undef CURL_TEMP_PRINTF
+-#endif 
+-#endif
+-#if defined(__GNUC__) && defined(__GNUC_MINOR__) && \
+-    ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \
+-    !defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK)
+-#ifndef CURLINC_TYPECHECK_GCC_H
+-#define CURLINC_TYPECHECK_GCC_H
+-#define curl_easy_setopt(handle, option, value)                         \
+-  __extension__({                                                       \
+-      CURLoption _curl_opt = (option);                                  \
+-      if(__builtin_constant_p(_curl_opt)) {                             \
+-        CURL_IGNORE_DEPRECATION(                                        \
+-          if(curlcheck_long_option(_curl_opt))                          \
+-            if(!curlcheck_long(value))                                  \
+-              _curl_easy_setopt_err_long();                             \
+-          if(curlcheck_off_t_option(_curl_opt))                         \
+-            if(!curlcheck_off_t(value))                                 \
+-              _curl_easy_setopt_err_curl_off_t();                       \
+-          if(curlcheck_string_option(_curl_opt))                        \
+-            if(!curlcheck_string(value))                                \
+-              _curl_easy_setopt_err_string();                           \
+-          if(curlcheck_write_cb_option(_curl_opt))                      \
+-            if(!curlcheck_write_cb(value))                              \
+-              _curl_easy_setopt_err_write_callback();                   \
+-          if((_curl_opt) == CURLOPT_RESOLVER_START_FUNCTION)            \
+-            if(!curlcheck_resolver_start_callback(value))               \
+-              _curl_easy_setopt_err_resolver_start_callback();          \
+-          if((_curl_opt) == CURLOPT_READFUNCTION)                       \
+-            if(!curlcheck_read_cb(value))                               \
+-              _curl_easy_setopt_err_read_cb();                          \
+-          if((_curl_opt) == CURLOPT_IOCTLFUNCTION)                      \
+-            if(!curlcheck_ioctl_cb(value))                              \
+-              _curl_easy_setopt_err_ioctl_cb();                         \
+-          if((_curl_opt) == CURLOPT_SOCKOPTFUNCTION)                    \
+-            if(!curlcheck_sockopt_cb(value))                            \
+-              _curl_easy_setopt_err_sockopt_cb();                       \
+-          if((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION)                 \
+-            if(!curlcheck_opensocket_cb(value))                         \
+-              _curl_easy_setopt_err_opensocket_cb();                    \
+-          if((_curl_opt) == CURLOPT_PROGRESSFUNCTION)                   \
+-            if(!curlcheck_progress_cb(value))                           \
+-              _curl_easy_setopt_err_progress_cb();                      \
+-          if((_curl_opt) == CURLOPT_DEBUGFUNCTION)                      \
+-            if(!curlcheck_debug_cb(value))                              \
+-              _curl_easy_setopt_err_debug_cb();                         \
+-          if((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION)                   \
+-            if(!curlcheck_ssl_ctx_cb(value))                            \
+-              _curl_easy_setopt_err_ssl_ctx_cb();                       \
+-          if(curlcheck_conv_cb_option(_curl_opt))                       \
+-            if(!curlcheck_conv_cb(value))                               \
+-              _curl_easy_setopt_err_conv_cb();                          \
+-          if((_curl_opt) == CURLOPT_SEEKFUNCTION)                       \
+-            if(!curlcheck_seek_cb(value))                               \
+-              _curl_easy_setopt_err_seek_cb();                          \
+-          if(curlcheck_cb_data_option(_curl_opt))                       \
+-            if(!curlcheck_cb_data(value))                               \
+-              _curl_easy_setopt_err_cb_data();                          \
+-          if((_curl_opt) == CURLOPT_ERRORBUFFER)                        \
+-            if(!curlcheck_error_buffer(value))                          \
+-              _curl_easy_setopt_err_error_buffer();                     \
+-          if((_curl_opt) == CURLOPT_STDERR)                             \
+-            if(!curlcheck_FILE(value))                                  \
+-              _curl_easy_setopt_err_FILE();                             \
+-          if(curlcheck_postfields_option(_curl_opt))                    \
+-            if(!curlcheck_postfields(value))                            \
+-              _curl_easy_setopt_err_postfields();                       \
+-          if((_curl_opt) == CURLOPT_HTTPPOST)                           \
+-            if(!curlcheck_arr((value), struct curl_httppost))           \
+-              _curl_easy_setopt_err_curl_httpost();                     \
+-          if((_curl_opt) == CURLOPT_MIMEPOST)                           \
+-            if(!curlcheck_ptr((value), curl_mime))                      \
+-              _curl_easy_setopt_err_curl_mimepost();                    \
+-          if(curlcheck_slist_option(_curl_opt))                         \
+-            if(!curlcheck_arr((value), struct curl_slist))              \
+-              _curl_easy_setopt_err_curl_slist();                       \
+-          if((_curl_opt) == CURLOPT_SHARE)                              \
+-            if(!curlcheck_ptr((value), CURLSH))                         \
+-              _curl_easy_setopt_err_CURLSH();                           \
+-        )                                                               \
+-      }                                                                 \
+-      curl_easy_setopt(handle, _curl_opt, value);                       \
+-    })
+-#define curl_easy_getinfo(handle, info, arg)                            \
+-  __extension__({                                                       \
+-      CURLINFO _curl_info = (info);                                     \
+-      if(__builtin_constant_p(_curl_info)) {                            \
+-        CURL_IGNORE_DEPRECATION(                                        \
+-          if(curlcheck_string_info(_curl_info))                         \
+-            if(!curlcheck_arr((arg), char *))                           \
+-              _curl_easy_getinfo_err_string();                          \
+-          if(curlcheck_long_info(_curl_info))                           \
+-            if(!curlcheck_arr((arg), long))                             \
+-              _curl_easy_getinfo_err_long();                            \
+-          if(curlcheck_double_info(_curl_info))                         \
+-            if(!curlcheck_arr((arg), double))                           \
+-              _curl_easy_getinfo_err_double();                          \
+-          if(curlcheck_slist_info(_curl_info))                          \
+-            if(!curlcheck_arr((arg), struct curl_slist *))              \
+-              _curl_easy_getinfo_err_curl_slist();                      \
+-          if(curlcheck_tlssessioninfo_info(_curl_info))                 \
+-            if(!curlcheck_arr((arg), struct curl_tlssessioninfo *))     \
+-              _curl_easy_getinfo_err_curl_tlssesssioninfo();            \
+-          if(curlcheck_certinfo_info(_curl_info))                       \
+-            if(!curlcheck_arr((arg), struct curl_certinfo *))           \
+-              _curl_easy_getinfo_err_curl_certinfo();                   \
+-          if(curlcheck_socket_info(_curl_info))                         \
+-            if(!curlcheck_arr((arg), curl_socket_t))                    \
+-              _curl_easy_getinfo_err_curl_socket();                     \
+-          if(curlcheck_off_t_info(_curl_info))                          \
+-            if(!curlcheck_arr((arg), curl_off_t))                       \
+-              _curl_easy_getinfo_err_curl_off_t();                      \
+-        )                                                               \
+-      }                                                                 \
+-      curl_easy_getinfo(handle, _curl_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)
+-#define CURLWARNING(id, message)                                        \
+-  static void __attribute__((__warning__(message)))                     \
+-  __attribute__((__unused__)) __attribute__((__noinline__))             \
+-  id(void) { __asm__(""); }
+-CURLWARNING(_curl_easy_setopt_err_long,
+-  "curl_easy_setopt expects a long argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_curl_off_t,
+-  "curl_easy_setopt expects a curl_off_t argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_string,
+-              "curl_easy_setopt expects a "
+-              "string ('char *' or char[]) argument for this option"
+-  )
+-CURLWARNING(_curl_easy_setopt_err_write_callback,
+-  "curl_easy_setopt expects a curl_write_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_resolver_start_callback,
+-              "curl_easy_setopt expects a "
+-              "curl_resolver_start_callback argument for this option"
+-  )
+-CURLWARNING(_curl_easy_setopt_err_read_cb,
+-  "curl_easy_setopt expects a curl_read_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_ioctl_cb,
+-  "curl_easy_setopt expects a curl_ioctl_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_sockopt_cb,
+-  "curl_easy_setopt expects a curl_sockopt_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_opensocket_cb,
+-              "curl_easy_setopt expects a "
+-              "curl_opensocket_callback argument for this option"
+-  )
+-CURLWARNING(_curl_easy_setopt_err_progress_cb,
+-  "curl_easy_setopt expects a curl_progress_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_debug_cb,
+-  "curl_easy_setopt expects a curl_debug_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_ssl_ctx_cb,
+-  "curl_easy_setopt expects a curl_ssl_ctx_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_conv_cb,
+-  "curl_easy_setopt expects a curl_conv_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_seek_cb,
+-  "curl_easy_setopt expects a curl_seek_callback argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_cb_data,
+-              "curl_easy_setopt expects a "
+-              "private data pointer as argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_error_buffer,
+-              "curl_easy_setopt expects a "
+-              "char buffer of CURL_ERROR_SIZE as argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_FILE,
+-  "curl_easy_setopt expects a 'FILE *' argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_postfields,
+-  "curl_easy_setopt expects a 'void *' or 'char *' argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_curl_httpost,
+-              "curl_easy_setopt expects a 'struct curl_httppost *' "
+-              "argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_curl_mimepost,
+-              "curl_easy_setopt expects a 'curl_mime *' "
+-              "argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_curl_slist,
+-  "curl_easy_setopt expects a 'struct curl_slist *' argument for this option")
+-CURLWARNING(_curl_easy_setopt_err_CURLSH,
+-  "curl_easy_setopt expects a CURLSH* argument for this option")
+-CURLWARNING(_curl_easy_getinfo_err_string,
+-  "curl_easy_getinfo expects a pointer to 'char *' for this info")
+-CURLWARNING(_curl_easy_getinfo_err_long,
+-  "curl_easy_getinfo expects a pointer to long for this info")
+-CURLWARNING(_curl_easy_getinfo_err_double,
+-  "curl_easy_getinfo expects a pointer to double for this info")
+-CURLWARNING(_curl_easy_getinfo_err_curl_slist,
+-  "curl_easy_getinfo expects a pointer to 'struct curl_slist *' for this info")
+-CURLWARNING(_curl_easy_getinfo_err_curl_tlssesssioninfo,
+-              "curl_easy_getinfo expects a pointer to "
+-              "'struct curl_tlssessioninfo *' for this info")
+-CURLWARNING(_curl_easy_getinfo_err_curl_certinfo,
+-              "curl_easy_getinfo expects a pointer to "
+-              "'struct curl_certinfo *' for this info")
+-CURLWARNING(_curl_easy_getinfo_err_curl_socket,
+-  "curl_easy_getinfo expects a pointer to curl_socket_t for this info")
+-CURLWARNING(_curl_easy_getinfo_err_curl_off_t,
+-  "curl_easy_getinfo expects a pointer to curl_off_t for this info")
+-#define curlcheck_long_option(option)                   \
+-  (0 < (option) && (option) < CURLOPTTYPE_OBJECTPOINT)
+-#define curlcheck_off_t_option(option)          \
+-  (((option) > CURLOPTTYPE_OFF_T) && ((option) < CURLOPTTYPE_BLOB))
+-#define curlcheck_string_option(option)                                       \
+-  ((option) == CURLOPT_ABSTRACT_UNIX_SOCKET ||                                \
+-   (option) == CURLOPT_ACCEPT_ENCODING ||                                     \
+-   (option) == CURLOPT_ALTSVC ||                                              \
+-   (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_DOH_URL ||                                             \
+-   (option) == CURLOPT_ECH        ||                                          \
+-   (option) == CURLOPT_EGDSOCKET ||                                           \
+-   (option) == CURLOPT_FTP_ACCOUNT ||                                         \
+-   (option) == CURLOPT_FTP_ALTERNATIVE_TO_USER ||                             \
+-   (option) == CURLOPT_FTPPORT ||                                             \
+-   (option) == CURLOPT_HSTS ||                                                \
+-   (option) == CURLOPT_HAPROXY_CLIENT_IP ||                                   \
+-   (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_PRE_PROXY ||                                           \
+-   (option) == CURLOPT_PROTOCOLS_STR ||                                       \
+-   (option) == CURLOPT_PROXY ||                                               \
+-   (option) == CURLOPT_PROXY_CAINFO ||                                        \
+-   (option) == CURLOPT_PROXY_CAPATH ||                                        \
+-   (option) == CURLOPT_PROXY_CRLFILE ||                                       \
+-   (option) == CURLOPT_PROXY_ISSUERCERT ||                                    \
+-   (option) == CURLOPT_PROXY_KEYPASSWD ||                                     \
+-   (option) == CURLOPT_PROXY_PINNEDPUBLICKEY ||                               \
+-   (option) == CURLOPT_PROXY_SERVICE_NAME ||                                  \
+-   (option) == CURLOPT_PROXY_SSL_CIPHER_LIST ||                               \
+-   (option) == CURLOPT_PROXY_SSLCERT ||                                       \
+-   (option) == CURLOPT_PROXY_SSLCERTTYPE ||                                   \
+-   (option) == CURLOPT_PROXY_SSLKEY ||                                        \
+-   (option) == CURLOPT_PROXY_SSLKEYTYPE ||                                    \
+-   (option) == CURLOPT_PROXY_TLS13_CIPHERS ||                                 \
+-   (option) == CURLOPT_PROXY_TLSAUTH_PASSWORD ||                              \
+-   (option) == CURLOPT_PROXY_TLSAUTH_TYPE ||                                  \
+-   (option) == CURLOPT_PROXY_TLSAUTH_USERNAME ||                              \
+-   (option) == CURLOPT_PROXYPASSWORD ||                                       \
+-   (option) == CURLOPT_PROXYUSERNAME ||                                       \
+-   (option) == CURLOPT_PROXYUSERPWD ||                                        \
+-   (option) == CURLOPT_RANDOM_FILE ||                                         \
+-   (option) == CURLOPT_RANGE ||                                               \
+-   (option) == CURLOPT_REDIR_PROTOCOLS_STR ||                                 \
+-   (option) == CURLOPT_REFERER ||                                             \
+-   (option) == CURLOPT_REQUEST_TARGET ||                                      \
+-   (option) == CURLOPT_RTSP_SESSION_ID ||                                     \
+-   (option) == CURLOPT_RTSP_STREAM_URI ||                                     \
+-   (option) == CURLOPT_RTSP_TRANSPORT ||                                      \
+-   (option) == CURLOPT_SASL_AUTHZID ||                                        \
+-   (option) == CURLOPT_SERVICE_NAME ||                                        \
+-   (option) == CURLOPT_SOCKS5_GSSAPI_SERVICE ||                               \
+-   (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 ||                             \
+-   (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 ||                          \
+-   (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_TLS13_CIPHERS ||                                       \
+-   (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_AWS_SIGV4 ||                                           \
+-   (option) == CURLOPT_USERPWD ||                                             \
+-   (option) == CURLOPT_XOAUTH2_BEARER ||                                      \
+-   (option) == CURLOPT_SSL_EC_CURVES ||                                       \
+-   0)
+-#define curlcheck_write_cb_option(option)                               \
+-  ((option) == CURLOPT_HEADERFUNCTION ||                                \
+-   (option) == CURLOPT_WRITEFUNCTION)
+-#define curlcheck_conv_cb_option(option)                                \
+-  ((option) == CURLOPT_CONV_TO_NETWORK_FUNCTION ||                      \
+-   (option) == CURLOPT_CONV_FROM_NETWORK_FUNCTION ||                    \
+-   (option) == CURLOPT_CONV_FROM_UTF8_FUNCTION)
+-#define curlcheck_cb_data_option(option)                                      \
+-  ((option) == CURLOPT_CHUNK_DATA ||                                          \
+-   (option) == CURLOPT_CLOSESOCKETDATA ||                                     \
+-   (option) == CURLOPT_DEBUGDATA ||                                           \
+-   (option) == CURLOPT_FNMATCH_DATA ||                                        \
+-   (option) == CURLOPT_HEADERDATA ||                                          \
+-   (option) == CURLOPT_HSTSREADDATA ||                                        \
+-   (option) == CURLOPT_HSTSWRITEDATA ||                                       \
+-   (option) == CURLOPT_INTERLEAVEDATA ||                                      \
+-   (option) == CURLOPT_IOCTLDATA ||                                           \
+-   (option) == CURLOPT_OPENSOCKETDATA ||                                      \
+-   (option) == CURLOPT_PREREQDATA ||                                          \
+-   (option) == CURLOPT_PROGRESSDATA ||                                        \
+-   (option) == CURLOPT_READDATA ||                                            \
+-   (option) == CURLOPT_SEEKDATA ||                                            \
+-   (option) == CURLOPT_SOCKOPTDATA ||                                         \
+-   (option) == CURLOPT_SSH_KEYDATA ||                                         \
+-   (option) == CURLOPT_SSL_CTX_DATA ||                                        \
+-   (option) == CURLOPT_WRITEDATA ||                                           \
+-   (option) == CURLOPT_RESOLVER_START_DATA ||                                 \
+-   (option) == CURLOPT_TRAILERDATA ||                                         \
+-   (option) == CURLOPT_SSH_HOSTKEYDATA ||                                     \
+-   0)
+-#define curlcheck_postfields_option(option)                                   \
+-  ((option) == CURLOPT_POSTFIELDS ||                                          \
+-   (option) == CURLOPT_COPYPOSTFIELDS ||                                      \
+-   0)
+-#define curlcheck_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 ||                                       \
+-   (option) == CURLOPT_CONNECT_TO ||                                          \
+-   0)
+-#define curlcheck_string_info(info)                             \
+-  (CURLINFO_STRING < (info) && (info) < CURLINFO_LONG &&        \
+-   (info) != CURLINFO_PRIVATE)
+-#define curlcheck_long_info(info)                       \
+-  (CURLINFO_LONG < (info) && (info) < CURLINFO_DOUBLE)
+-#define curlcheck_double_info(info)                     \
+-  (CURLINFO_DOUBLE < (info) && (info) < CURLINFO_SLIST)
+-#define curlcheck_slist_info(info)                                      \
+-  (((info) == CURLINFO_SSL_ENGINES) || ((info) == CURLINFO_COOKIELIST))
+-#define curlcheck_tlssessioninfo_info(info)                              \
+-  (((info) == CURLINFO_TLS_SSL_PTR) || ((info) == CURLINFO_TLS_SESSION))
+-#define curlcheck_certinfo_info(info) ((info) == CURLINFO_CERTINFO)
+-#define curlcheck_socket_info(info)                     \
+-  (CURLINFO_SOCKET < (info) && (info) < CURLINFO_OFF_T)
+-#define curlcheck_off_t_info(info)              \
+-  (CURLINFO_OFF_T < (info))
+-#define curlcheck_any_ptr(expr)                 \
+-  (sizeof(expr) == sizeof(void *))
+-#define curlcheck_NULL(expr)                                            \
+-  (__builtin_types_compatible_p(__typeof__(expr), __typeof__(NULL)))
+-#define curlcheck_ptr(expr, type)                                       \
+-  (curlcheck_NULL(expr) ||                                              \
+-   __builtin_types_compatible_p(__typeof__(expr), type *) ||            \
+-   __builtin_types_compatible_p(__typeof__(expr), const type *))
+-#define curlcheck_arr(expr, type)                                       \
+-  (curlcheck_ptr((expr), type) ||                                       \
+-   __builtin_types_compatible_p(__typeof__(expr), type []))
+-#define curlcheck_string(expr)                                          \
+-  (curlcheck_arr((expr), char) ||                                       \
+-   curlcheck_arr((expr), signed char) ||                                \
+-   curlcheck_arr((expr), unsigned char))
+-#define curlcheck_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))
+-#define curlcheck_off_t(expr)                                   \
+-  (__builtin_types_compatible_p(__typeof__(expr), curl_off_t))
+-#define curlcheck_error_buffer(expr)                                    \
+-  (curlcheck_NULL(expr) ||                                              \
+-   __builtin_types_compatible_p(__typeof__(expr), char *) ||            \
+-   __builtin_types_compatible_p(__typeof__(expr), char[]))
+-#if 0
+-#define curlcheck_cb_data(expr)                                         \
+-  (curlcheck_ptr((expr), void) ||                                       \
+-   curlcheck_ptr((expr), FILE))
+-#else 
+-#define curlcheck_cb_data(expr)                 \
+-  curlcheck_any_ptr(expr)
+-#endif
+-#define curlcheck_FILE(expr)                                            \
+-  (curlcheck_NULL(expr) ||                                              \
+-   (__builtin_types_compatible_p(__typeof__(expr), FILE *)))
+-#define curlcheck_postfields(expr)                                      \
+-  (curlcheck_ptr((expr), void) ||                                       \
+-   curlcheck_arr((expr), char) ||                                       \
+-   curlcheck_arr((expr), unsigned char))
+-#define curlcheck_cb_compatible(func, type)                             \
+-  (__builtin_types_compatible_p(__typeof__(func), type) ||              \
+-   __builtin_types_compatible_p(__typeof__(func) *, type))
+-#define curlcheck_resolver_start_callback(expr)       \
+-  (curlcheck_NULL(expr) || \
+-   curlcheck_cb_compatible((expr), curl_resolver_start_callback))
+-#define curlcheck_read_cb(expr)                                         \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), __typeof__(fread) *) ||              \
+-   curlcheck_cb_compatible((expr), curl_read_callback) ||               \
+-   curlcheck_cb_compatible((expr), _curl_read_callback1) ||             \
+-   curlcheck_cb_compatible((expr), _curl_read_callback2) ||             \
+-   curlcheck_cb_compatible((expr), _curl_read_callback3) ||             \
+-   curlcheck_cb_compatible((expr), _curl_read_callback4) ||             \
+-   curlcheck_cb_compatible((expr), _curl_read_callback5) ||             \
+-   curlcheck_cb_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 *);
+-#define curlcheck_write_cb(expr)                                        \
+-  (curlcheck_read_cb(expr) ||                                           \
+-   curlcheck_cb_compatible((expr), __typeof__(fwrite) *) ||             \
+-   curlcheck_cb_compatible((expr), curl_write_callback) ||              \
+-   curlcheck_cb_compatible((expr), _curl_write_callback1) ||            \
+-   curlcheck_cb_compatible((expr), _curl_write_callback2) ||            \
+-   curlcheck_cb_compatible((expr), _curl_write_callback3) ||            \
+-   curlcheck_cb_compatible((expr), _curl_write_callback4) ||            \
+-   curlcheck_cb_compatible((expr), _curl_write_callback5) ||            \
+-   curlcheck_cb_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 *);
+-#define curlcheck_ioctl_cb(expr)                                        \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), curl_ioctl_callback) ||              \
+-   curlcheck_cb_compatible((expr), _curl_ioctl_callback1) ||            \
+-   curlcheck_cb_compatible((expr), _curl_ioctl_callback2) ||            \
+-   curlcheck_cb_compatible((expr), _curl_ioctl_callback3) ||            \
+-   curlcheck_cb_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 *);
+-#define curlcheck_sockopt_cb(expr)                                      \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), curl_sockopt_callback) ||            \
+-   curlcheck_cb_compatible((expr), _curl_sockopt_callback1) ||          \
+-   curlcheck_cb_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);
+-#define curlcheck_opensocket_cb(expr)                                   \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), curl_opensocket_callback) ||         \
+-   curlcheck_cb_compatible((expr), _curl_opensocket_callback1) ||       \
+-   curlcheck_cb_compatible((expr), _curl_opensocket_callback2) ||       \
+-   curlcheck_cb_compatible((expr), _curl_opensocket_callback3) ||       \
+-   curlcheck_cb_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 *);
+-#define curlcheck_progress_cb(expr)                                     \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), curl_progress_callback) ||           \
+-   curlcheck_cb_compatible((expr), _curl_progress_callback1) ||         \
+-   curlcheck_cb_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);
+-#define curlcheck_debug_cb(expr)                                        \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), curl_debug_callback) ||              \
+-   curlcheck_cb_compatible((expr), _curl_debug_callback1) ||            \
+-   curlcheck_cb_compatible((expr), _curl_debug_callback2) ||            \
+-   curlcheck_cb_compatible((expr), _curl_debug_callback3) ||            \
+-   curlcheck_cb_compatible((expr), _curl_debug_callback4) ||            \
+-   curlcheck_cb_compatible((expr), _curl_debug_callback5) ||            \
+-   curlcheck_cb_compatible((expr), _curl_debug_callback6) ||            \
+-   curlcheck_cb_compatible((expr), _curl_debug_callback7) ||            \
+-   curlcheck_cb_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 *);
+-#define curlcheck_ssl_ctx_cb(expr)                                      \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), curl_ssl_ctx_callback) ||            \
+-   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback1) ||          \
+-   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback2) ||          \
+-   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback3) ||          \
+-   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback4) ||          \
+-   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback5) ||          \
+-   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback6) ||          \
+-   curlcheck_cb_compatible((expr), _curl_ssl_ctx_callback7) ||          \
+-   curlcheck_cb_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
+-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
+-#define curlcheck_conv_cb(expr)                                         \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), curl_conv_callback) ||               \
+-   curlcheck_cb_compatible((expr), _curl_conv_callback1) ||             \
+-   curlcheck_cb_compatible((expr), _curl_conv_callback2) ||             \
+-   curlcheck_cb_compatible((expr), _curl_conv_callback3) ||             \
+-   curlcheck_cb_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);
+-#define curlcheck_seek_cb(expr)                                         \
+-  (curlcheck_NULL(expr) ||                                              \
+-   curlcheck_cb_compatible((expr), curl_seek_callback) ||               \
+-   curlcheck_cb_compatible((expr), _curl_seek_callback1) ||             \
+-   curlcheck_cb_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 
+-#else
+-#if defined(__STDC__) && (__STDC__ >= 1)
+-#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 
+-#endif 
++#include <curl/curl.h>
+ #endif 
+ 
+ 
+@@ -58462,7 +55906,7 @@ class zpaqfranzsftp2
+ #ifndef _WIN32
+ 	int kickstartlinux()
+ 	{
+-		myprintf("38151: You should get libcurl.so, for example\n");
++		myprintf("38151: You should get libcurl.so.4, for example\n");
+ #ifdef __APPLE__
+ 		myprintf("38158: macOS             :brew install curl\n");
+ #else
+@@ -58478,7 +55922,7 @@ class zpaqfranzsftp2
+ 		myprintf("38155: Alma Linux        :dnf install curl\n");
+ 		myprintf("38156: Alma Linux        :sudo dnf install curl\n");
+ 		myprintf("38157: Amazon Linux (v2+):dnf install curl\n");
+-		myprintf("38158: Fedora            :dnf install curl\n");
++		myprintf("38158: Fedora            :dnf install libcurl-full\n");
+ 		myprintf("38159: Oracle Linux (v8+):dnf install curl\n");
+ 		myprintf("38160: Rocky Linux       :dnf install curl\n");
+ 
+@@ -58727,7 +56171,7 @@ class zpaqfranzsftp2
+ 
+ 		if (!hModule)
+ 		{
+-			myprintf("46919$ Cannot load libcurl.so, sorry\n");
++			myprintf("46919$ Cannot load libcurl.so.4, sorry\n");
+ #ifdef _WIN32
+ 			(void)kickstart();
+ #endif
+-- 
+2.55.0
+

diff --git a/zpaqfranz.spec b/zpaqfranz.spec
index c2f1edb..754b365 100644
--- a/zpaqfranz.spec
+++ b/zpaqfranz.spec
@@ -7,6 +7,9 @@
 %bcond_with jit
 %endif
 
+# Add "mount" subcommand for mounting archives via FUSE
+%bcond_without fuse
+
 # Prefer GCC compiler
 %global toolchain gcc
 %bcond_with toolchain_clang
@@ -14,8 +17,8 @@
 
 Name:           zpaqfranz
 Epoch:          1
-Version:        64.8
-Release:        2%{?dist}
+Version:        65.1
+Release:        1%{?dist}
 Summary:        Advanced multiversioned archiver with hardware acceleration
 # LICENSE:  MIT text
 # man/LICENSE:  Unlicense text
@@ -57,6 +60,10 @@ Summary:        Advanced multiversioned archiver with hardware acceleration
 ## Not used at build time and not in any binary package
 # man/zpaqfranz.1:      LicenseRef-Fedora-Public-Domain (built from man/zpaqfranz.pod)
 # zpaqfranz.cpp parts from cURL: curl
+# zpaqfranz.cpp parts claimed to be from libfuse (LGPL-2.1-only AND GPL-2-only)
+#       but there is no such code
+# zpaqfranz.cpp parts clamimed for be from WinFsp (GPL-3-only WITH an exception)
+#       but there is no such code
 # ZSFX/libzpaq.cpp: MIT AND Unlicense AND LicenseRef-Fedora-Public-Domain
 #       (a subset and an old version of zpaqfranz.cpp)
 # ZSFX/LICENSE:     MIT text
@@ -67,12 +74,15 @@ URL:            https://github.com/fcorbelli/%{name}
 Source:         %{url}/archive/%{version}/%{name}-%{version}.tar.gz
 # Unbundle curl.h and fix loading curl libary, probably not suitable for
 # the upstream.
-Patch0:         zpaqfranz-64.6-Unbundle-curl.h-and-load-curl-DSO-by-a-bare-file-nam.patch
+Patch0:         zpaqfranz-65.1-Unbundle-curl.h-and-load-curl-DSO-by-a-bare-file-nam.patch
 BuildRequires:  coreutils
 BuildRequires:  gcc-c++
 BuildRequires:  libcurl-devel
 BuildRequires:  libssh-devel
 BuildRequires:  perl-podlators
+%if %{with fuse}
+BuildRequires:  pkgconfig(fuse3)
+%endif
 # rpm-build for elfdeps tool
 BuildRequires:  rpm-build
 BuildRequires:  sed
@@ -85,6 +95,10 @@ Provides:       bundled(libdivsufsort-lite) = 2.00
 # Unknown version of lz4 is bundeld to libzpaq.cpp from
 # <https://github.com/lz4/lz4>.
 Provides:       bundled(lz4)
+%if %{with fuse}
+# libfuse.so executes /usr/bin/fusermount3
+Recommends:     fuse3
+%endif
 # For cURL library with SFTP support. It's dlopened at run-time as an optional
 # feature.
 Recommends:     libcurl-full
@@ -139,7 +153,15 @@ sed -n -e '/^Credits and copyrights and licenses/,/^   _____ _____/ p' \
     -DBIG \
 %endif
     -DSFTP \
-    zpaqfranz.cpp %{?__global_ldflags} -ldl -pthread -o zpaqfranz
+%if %{with fuse}
+    -DZPAQMOUNT \
+    $(pkg-config --cflags fuse3) \
+%endif
+    zpaqfranz.cpp %{?__global_ldflags} -ldl -pthread \
+%if %{with fuse}
+    $(pkg-config --libs fuse3) \
+%endif
+    -o zpaqfranz
 pod2man --utf8 man/zpaqfranz.pod man/zpaqfranz.1
 
 %check
@@ -160,6 +182,9 @@ install -m 0644 -D -t %{buildroot}%{_mandir}/man1 man/zpaqfranz.1
 %{_mandir}/man1/zpaqfranz.1*
 
 %changelog
+* Mon Sep 21 2026 Petr Pisar <ppisar@redhat.com> - 1:65.1-1
+- 65.1 bump
+
 * Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 1:64.8-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
 

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-09-21 12:19 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-21 12:19 [rpms/zpaqfranz] rawhide: 65.1 bump 

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox