diff -pruN 8.0.31-1/client/base/mysql_connection_options.cc 8.0.32-1/client/base/mysql_connection_options.cc
--- 8.0.31-1/client/base/mysql_connection_options.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/base/mysql_connection_options.cc	2022-12-16 15:34:44.000000000 +0000
@@ -68,7 +68,10 @@ void Mysql_connection_options::create_op
                           "Directory for character set files.");
   this->create_new_option(&this->m_compress, "compress",
                           "Use compression in server/client protocol.")
-      ->set_short_character('C');
+      ->set_short_character('C')
+      ->add_callback(new std::function<void(char *)>([](char *) {
+        CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      }));
   this->create_new_option(
       &this->m_compress_algorithm, "compression-algorithms",
       "Use compression algorithm in server/client protocol. Valid values "
diff -pruN 8.0.31-1/client/check/mysqlcheck.cc 8.0.32-1/client/check/mysqlcheck.cc
--- 8.0.31-1/client/check/mysqlcheck.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/check/mysqlcheck.cc	2022-12-16 15:34:44.000000000 +0000
@@ -363,6 +363,9 @@ static bool get_one_option(int optid, co
       opt_protocol =
           find_type_or_exit(argument, &sql_protocol_typelib, opt->name);
       break;
+    case OPT_COMPRESS:
+      CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      break;
   }
 
   if (orig_what_to_do && (what_to_do != orig_what_to_do)) {
diff -pruN 8.0.31-1/client/check/mysqlcheck_core.cc 8.0.32-1/client/check/mysqlcheck_core.cc
--- 8.0.31-1/client/check/mysqlcheck_core.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/check/mysqlcheck_core.cc	2022-12-16 15:34:44.000000000 +0000
@@ -269,7 +269,6 @@ static void print_result() {
   MYSQL_ROW row;
   char prev[NAME_LEN * 3 + 2];
   char prev_alter[MAX_ALTER_STR_SIZE];
-  uint i;
   size_t dot_pos;
   bool found_error = false, table_rebuild = false;
 
@@ -279,7 +278,7 @@ static void print_result() {
   prev[0] = '\0';
   prev_alter[0] = 0;
 
-  for (i = 0; (row = mysql_fetch_row(res)); i++) {
+  while ((row = mysql_fetch_row(res))) {
     int changed = strcmp(prev, row[0]);
     bool status = !strcmp(row[2], "status");
 
diff -pruN 8.0.31-1/client/client_priv.h 8.0.32-1/client/client_priv.h
--- 8.0.31-1/client/client_priv.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/client_priv.h	2022-12-16 15:34:44.000000000 +0000
@@ -183,6 +183,7 @@ enum options_client {
   OPT_SSL_SESSION_DATA,
   OPT_SSL_SESSION_DATA_CONTINUE_ON_FAILED_REUSE,
   OPT_LONG_QUERY_TIME,
+  OPT_AUTHENTICATION_KERBEROS_CLIENT_MODE,
   /* Add new option above this */
   OPT_MAX_CLIENT_OPTION
 };
diff -pruN 8.0.31-1/client/CMakeLists.txt 8.0.32-1/client/CMakeLists.txt
--- 8.0.31-1/client/CMakeLists.txt	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/CMakeLists.txt	2022-12-16 15:34:44.000000000 +0000
@@ -247,6 +247,14 @@ MYSQL_ADD_EXECUTABLE(mysqlbinlog
   LINK_LIBRARIES ${MYSQLBINLOG_LIBRARIES}
   )
 
+# __builtin_strncpy specified bound depends on the length of the source argument
+# mysqlbinlog.cc:2169:22: note: length computed here
+IF((WITH_LTO OR CMAKE_COMPILER_FLAG_WITH_LTO) AND
+    MY_COMPILER_IS_GNU AND
+    CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 11)
+  MY_TARGET_LINK_OPTIONS(mysqlbinlog "-Wno-stringop-truncation")
+ENDIF()
+
 IF(WITH_JSON_BINLOG_LIBRARY)
   IF(APPLE)
     ADD_CUSTOM_COMMAND(TARGET mysqlbinlog POST_BUILD
diff -pruN 8.0.31-1/client/mysqladmin.cc 8.0.32-1/client/mysqladmin.cc
--- 8.0.31-1/client/mysqladmin.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysqladmin.cc	2022-12-16 15:34:44.000000000 +0000
@@ -364,6 +364,9 @@ bool get_one_option(int optid, const str
     case OPT_ENABLE_CLEARTEXT_PLUGIN:
       using_opt_enable_cleartext_plugin = true;
       break;
+    case 'C':
+      CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      break;
   }
   if (error) {
     usage();
diff -pruN 8.0.31-1/client/mysqlbinlog.cc 8.0.32-1/client/mysqlbinlog.cc
--- 8.0.31-1/client/mysqlbinlog.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysqlbinlog.cc	2022-12-16 15:34:44.000000000 +0000
@@ -1730,6 +1730,8 @@ static Exit_status process_event(PRINT_E
       case binary_log::ANONYMOUS_GTID_LOG_EVENT:
       case binary_log::GTID_LOG_EVENT: {
         seen_gtid = true;
+        print_event_info->immediate_server_version =
+            down_cast<Gtid_log_event *>(ev)->immediate_server_version;
         if (print_event_info->skipped_event_in_transaction == true)
           fprintf(result_file, "COMMIT /* added by mysqlbinlog */%s\n",
                   print_event_info->delimiter);
@@ -2286,6 +2288,10 @@ extern "C" bool get_one_option(int optid
       warning(CLIENT_WARN_DEPRECATED_MSG("--stop-never-slave-server-id",
                                          "--connection-server-id"));
       break;
+    case 'C':
+      warning(
+          CLIENT_WARN_DEPRECATED_MSG("--compress", "--compression-algorithms"));
+      break;
   }
   if (tty_password) pass = get_tty_password(NullS);
 
@@ -2427,6 +2433,7 @@ static Exit_status dump_multiple_logs(in
   print_event_info.skip_gtids = opt_skip_gtids;
   print_event_info.print_table_metadata = opt_print_table_metadata;
   print_event_info.require_row_format = opt_require_row_format;
+  print_event_info.immediate_server_version = UNDEFINED_SERVER_VERSION;
 
   // Dump all logs.
   my_off_t save_stop_position = stop_position;
diff -pruN 8.0.31-1/client/mysql.cc 8.0.32-1/client/mysql.cc
--- 8.0.31-1/client/mysql.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysql.cc	2022-12-16 15:34:44.000000000 +0000
@@ -234,6 +234,7 @@ static const CHARSET_INFO *charset_info
 static char *opt_fido_register_factor = nullptr;
 static char *opt_oci_config_file = nullptr;
 
+#include "authentication_kerberos_clientopt-vars.h"
 #include "caching_sha2_passwordopt-vars.h"
 #include "multi_factor_passwordopt-vars.h"
 #include "sslopt-vars.h"
@@ -1959,6 +1960,7 @@ static struct my_option my_long_options[
      "is ~/.oci/config and %HOME/.oci/config on Windows.",
      &opt_oci_config_file, &opt_oci_config_file, nullptr, GET_STR, REQUIRED_ARG,
      0, 0, 0, nullptr, 0, nullptr},
+#include "authentication_kerberos_clientopt-longopts.h"
     {nullptr, 0, nullptr, nullptr, nullptr, nullptr, GET_NO_ARG, NO_ARG, 0, 0,
      0, nullptr, 0, nullptr}};
 
@@ -2085,6 +2087,8 @@ bool get_one_option(int optid, const str
       break;
 #include "sslopt-case.h"
 
+#include "authentication_kerberos_clientopt-case.h"
+
     case 'V':
       usage(1);
       exit(0);
@@ -2096,6 +2100,9 @@ bool get_one_option(int optid, const str
       opt_binhex = (argument != disabled_my_option);
       opt_binary_as_hex_set_explicitly = true;
       break;
+    case 'C':
+      CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      break;
   }
   return false;
 }
@@ -4767,6 +4774,15 @@ static bool init_connection_options(MYSQ
       return 1;
     }
   }
+
+#if defined(_WIN32)
+  char error[256]{0};
+  if (set_authentication_kerberos_client_mode(mysql, error, 255)) {
+    put_info(error, INFO_ERROR);
+    return 1;
+  }
+#endif
+
   return false;
 }
 
diff -pruN 8.0.31-1/client/mysqldump.cc 8.0.32-1/client/mysqldump.cc
--- 8.0.31-1/client/mysqldump.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysqldump.cc	2022-12-16 15:34:44.000000000 +0000
@@ -162,6 +162,7 @@ static uint my_end_arg;
 static char *opt_mysql_unix_port = nullptr;
 static char *opt_bind_addr = nullptr;
 static int first_error = 0;
+#include "authentication_kerberos_clientopt-vars.h"
 #include "caching_sha2_passwordopt-vars.h"
 #include "multi_factor_passwordopt-vars.h"
 #include "sslopt-vars.h"
@@ -453,8 +454,8 @@ static struct my_option my_long_options[
     {"mysqld-long-query-time", OPT_LONG_QUERY_TIME,
      "Set long_query_time for the session of this dump. Ommitting flag means "
      "using the server value.",
-     &opt_long_query_time, &opt_long_query_time, 0, GET_ULONG, REQUIRED_ARG, 0,
-     0, LONG_TIMEOUT, nullptr, 0, nullptr},
+     &opt_long_query_time, &opt_long_query_time, nullptr, GET_ULONG,
+     REQUIRED_ARG, 0, 0, LONG_TIMEOUT, nullptr, 0, nullptr},
     {"source-data", OPT_SOURCE_DATA,
      "This causes the binary log position and filename to be appended to the "
      "output. If equal to 1, will print it as a CHANGE MASTER command; if equal"
@@ -659,6 +660,7 @@ static struct my_option my_long_options[
      "be dumped or not.",
      &opt_skip_gipk, &opt_skip_gipk, nullptr, GET_BOOL, NO_ARG, 0, 0, 0,
      nullptr, 0, nullptr},
+#include "authentication_kerberos_clientopt-longopts.h"
     {nullptr, 0, nullptr, nullptr, nullptr, nullptr, GET_NO_ARG, NO_ARG, 0, 0,
      0, nullptr, 0, nullptr}};
 
@@ -895,6 +897,8 @@ static bool get_one_option(int optid, co
       break;
 #include "sslopt-case.h"
 
+#include "authentication_kerberos_clientopt-case.h"
+
     case 'V':
       print_version();
       exit(0);
@@ -1001,6 +1005,9 @@ static bool get_one_option(int optid, co
     case (int)OPT_LONG_QUERY_TIME:
       long_query_time_opt_provided = true;
       break;
+    case 'C':
+      CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      break;
   }
   return false;
 }
@@ -1593,6 +1600,14 @@ static int connect_to_db(char *host, cha
   set_get_server_public_key_option(&mysql_connection);
   set_password_options(&mysql_connection);
 
+#if defined(_WIN32)
+  char error[256]{0};
+  if (set_authentication_kerberos_client_mode(&mysql_connection, error, 255)) {
+    fprintf(stderr, "%s", error);
+    return 1;
+  }
+#endif /* _WIN32 */
+
   if (opt_compress_algorithm)
     mysql_options(&mysql_connection, MYSQL_OPT_COMPRESSION_ALGORITHMS,
                   opt_compress_algorithm);
@@ -5599,6 +5614,19 @@ static bool process_set_gtid_purged(MYSQ
               "--all-databases --triggers --routines --events. \n");
     }
 
+    if (!opt_single_transaction && !opt_lock_all_tables && !opt_master_data) {
+      fprintf(stderr,
+              "Warning: A dump from a server that has GTIDs "
+              "enabled will by default include the GTIDs "
+              "of all transactions, even those that were "
+              "executed during its extraction and might "
+              "not be represented in the dumped data. "
+              "This might result in an inconsistent data dump. \n"
+              "In order to ensure a consistent backup of the "
+              "database, pass --single-transaction or "
+              "--lock-all-tables or --master-data. \n");
+    }
+
     set_session_binlog(false);
     if (add_set_gtid_purged(mysql_con)) {
       mysql_free_result(gtid_mode_res);
@@ -5879,8 +5907,7 @@ int main(int argc, char **argv) {
 
   if (opt_slave_data && do_stop_slave_sql(mysql)) goto err;
 
-  if ((opt_lock_all_tables || opt_master_data ||
-       (opt_single_transaction && flush_logs)) &&
+  if ((opt_lock_all_tables || opt_master_data || opt_single_transaction) &&
       do_flush_tables_read_lock(mysql))
     goto err;
 
@@ -5888,8 +5915,8 @@ int main(int argc, char **argv) {
     Flush logs before starting transaction since
     this causes implicit commit starting mysql-5.5.
   */
-  if (opt_lock_all_tables || opt_master_data ||
-      (opt_single_transaction && flush_logs) || opt_delete_master_logs) {
+  if (opt_lock_all_tables || opt_master_data || opt_single_transaction ||
+      opt_delete_master_logs) {
     if (flush_logs || opt_delete_master_logs) {
       if (mysql_refresh(mysql, REFRESH_LOG)) {
         DB_error(mysql, "when doing refresh");
@@ -5906,6 +5933,7 @@ int main(int argc, char **argv) {
     if (get_bin_log_name(mysql, bin_log_name, sizeof(bin_log_name))) goto err;
   }
 
+  /* Start the transaction */
   if (opt_single_transaction && start_transaction(mysql)) goto err;
 
   /* Add 'STOP SLAVE to beginning of dump */
diff -pruN 8.0.31-1/client/mysqlimport.cc 8.0.32-1/client/mysqlimport.cc
--- 8.0.31-1/client/mysqlimport.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysqlimport.cc	2022-12-16 15:34:44.000000000 +0000
@@ -289,6 +289,9 @@ static bool get_one_option(int optid, co
     case '?':
       usage();
       exit(0);
+    case 'C':
+      CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      break;
   }
   return false;
 }
diff -pruN 8.0.31-1/client/mysqlshow.cc 8.0.32-1/client/mysqlshow.cc
--- 8.0.31-1/client/mysqlshow.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysqlshow.cc	2022-12-16 15:34:44.000000000 +0000
@@ -373,6 +373,9 @@ static bool get_one_option(int optid, co
     case 'I': /* Info */
       usage();
       exit(0);
+    case 'C':
+      CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      break;
   }
   return false;
 }
diff -pruN 8.0.31-1/client/mysqlslap.cc 8.0.32-1/client/mysqlslap.cc
--- 8.0.31-1/client/mysqlslap.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysqlslap.cc	2022-12-16 15:34:44.000000000 +0000
@@ -786,6 +786,9 @@ static bool get_one_option(int optid, co
     case OPT_ENABLE_CLEARTEXT_PLUGIN:
       using_opt_enable_cleartext_plugin = true;
       break;
+    case 'C':
+      CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      break;
   }
   return false;
 }
@@ -1670,12 +1673,11 @@ static int run_scheduler(stats *sptr, st
 }
 
 extern "C" void *run_task(void *p) {
-  ulonglong counter = 0, queries;
+  ulonglong queries;
   ulonglong detach_counter;
   unsigned int commit_counter;
   MYSQL *mysql;
   MYSQL_RES *result;
-  MYSQL_ROW row;
   statement *ptr;
   thread_context *con = (thread_context *)p;
 
@@ -1780,7 +1782,8 @@ extern "C" void *run_task(void *p) {
             fprintf(stderr, "%s: Error when storing result: %d %s\n",
                     my_progname, mysql_errno(mysql), mysql_error(mysql));
           else {
-            while ((row = mysql_fetch_row(result))) counter++;
+            while (mysql_fetch_row(result)) {
+            }
             mysql_free_result(result);
           }
         }
diff -pruN 8.0.31-1/client/mysqltest/regular_expressions.cc 8.0.32-1/client/mysqltest/regular_expressions.cc
--- 8.0.31-1/client/mysqltest/regular_expressions.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysqltest/regular_expressions.cc	2022-12-16 15:34:44.000000000 +0000
@@ -25,8 +25,8 @@
 #include "m_ctype.h"
 #include "my_compiler.h"
 
-extern void die(const char *fmt, ...) MY_ATTRIBUTE((format(printf, 1, 2)))
-    MY_ATTRIBUTE((noreturn));
+[[noreturn]] extern void die(const char *fmt, ...)
+    MY_ATTRIBUTE((format(printf, 1, 2)));
 
 /*
   Filter for queries that can be run using the
diff -pruN 8.0.31-1/client/mysqltest.cc 8.0.32-1/client/mysqltest.cc
--- 8.0.31-1/client/mysqltest.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/client/mysqltest.cc	2022-12-16 15:34:44.000000000 +0000
@@ -196,6 +196,7 @@ static int opt_port = 0;
 static int opt_max_connect_retries;
 static int opt_result_format_version;
 static int opt_max_connections = DEFAULT_MAX_CONN;
+static bool backtick_lhs = false;
 static char *opt_init_command = nullptr;
 static bool opt_colored_diff = false;
 static bool opt_compress = false, silent = false, verbose = false,
@@ -602,12 +603,12 @@ REPLACE *glob_replace = nullptr;
 void replace_strings_append(REPLACE *rep, DYNAMIC_STRING *ds, const char *from,
                             size_t len);
 
-static void cleanup_and_exit(int exit_code) MY_ATTRIBUTE((noreturn));
+[[noreturn]] static void cleanup_and_exit(int exit_code);
 
-void die(const char *fmt, ...) MY_ATTRIBUTE((format(printf, 1, 2)))
-    MY_ATTRIBUTE((noreturn));
-void abort_not_supported_test(const char *fmt, ...)
-    MY_ATTRIBUTE((format(printf, 1, 2))) MY_ATTRIBUTE((noreturn));
+[[noreturn]] void die(const char *fmt, ...)
+    MY_ATTRIBUTE((format(printf, 1, 2)));
+[[noreturn]] void abort_not_supported_test(const char *fmt, ...)
+    MY_ATTRIBUTE((format(printf, 1, 2)));
 void verbose_msg(const char *fmt, ...) MY_ATTRIBUTE((format(printf, 1, 2)));
 void log_msg(const char *fmt, ...) MY_ATTRIBUTE((format(printf, 1, 2)));
 void flush_ds_res();
@@ -2554,6 +2555,20 @@ void revert_properties() {
   once_property = false;
 }
 
+/* Operands available in if or while conditions */
+enum block_op { EQ_OP, NE_OP, GT_OP, GE_OP, LT_OP, LE_OP, ILLEG_OP };
+static enum block_op find_operand(const char *start) {
+  char first = *start;
+  char next = *(start + 1);
+  if (first == '=' && next == '=') return EQ_OP;
+  if (first == '!' && next == '=') return NE_OP;
+  if (first == '>' && next == '=') return GE_OP;
+  if (first == '>') return GT_OP;
+  if (first == '<' && next == '=') return LE_OP;
+  if (first == '<') return LT_OP;
+  return ILLEG_OP;
+}
+
 /*
   Set variable from the result of a query
 
@@ -2587,13 +2602,23 @@ static void var_query_set(VAR *var, cons
   DBUG_TRACE;
 
   /* Only white space or ) allowed past ending ` */
-  while (end > query && *end != '`') {
-    if (*end && (*end != ' ' && *end != '\t' && *end != '\n' && *end != ')'))
+  const char *expr_end = end;
+
+  while ((end > query) && (*end != '`')) --end;
+  if (query == end) die("Syntax error in query, missing '`'");
+
+  const char *end_ptr = end;
+  end_ptr++;
+
+  while (my_isspace(charset_info, *end_ptr) && end_ptr < expr_end) end_ptr++;
+  if (end_ptr != expr_end) {
+    enum block_op operand = find_operand(end_ptr);
+    if (operand != ILLEG_OP && backtick_lhs)
+      die("LHS of expression must be variable");
+    else
       die("Spurious text after `query` expression");
-    --end;
   }
 
-  if (query == end) die("Syntax error in query, missing '`'");
   ++query;
 
   /* Eval the query, thus replacing all environment variables */
@@ -6897,24 +6922,6 @@ static int do_done(struct st_command *co
   return 0;
 }
 
-/* Operands available in if or while conditions */
-
-enum block_op { EQ_OP, NE_OP, GT_OP, GE_OP, LT_OP, LE_OP, ILLEG_OP };
-
-static enum block_op find_operand(const char *start) {
-  char first = *start;
-  char next = *(start + 1);
-
-  if (first == '=' && next == '=') return EQ_OP;
-  if (first == '!' && next == '=') return NE_OP;
-  if (first == '>' && next == '=') return GE_OP;
-  if (first == '>') return GT_OP;
-  if (first == '<' && next == '=') return LE_OP;
-  if (first == '<') return LT_OP;
-
-  return ILLEG_OP;
-}
-
 /*
   Process start of a "if" or "while" statement
 
@@ -6934,7 +6941,7 @@ static enum block_op find_operand(const
   <block statements>
   }
 
-  assert (expr)
+  assert ([!]<expr>)
 
   Evaluates the <expr> and if it evaluates to
   greater than zero executes the following code block.
@@ -7091,10 +7098,28 @@ static void do_block(enum block_cmd cmd,
 
     v.is_int = true;
     my_free(v2.str_val);
+  } else if (*expr_start == '`') {
+    backtick_lhs = true;
+    eval_expr(&v, expr_start, &expr_end);
+    backtick_lhs = false;
   } else {
-    if (*expr_start != '`' && !my_isdigit(charset_info, *expr_start))
-      die("Expression in %s() must begin with $, ` or a number", cmd_name);
+    /* First skip any leading white space or unary -+ */
+    if (*expr_start == '-' || *expr_start == '+') expr_start++;
+    while (my_isspace(charset_info, *expr_start)) expr_start++;
+    if (!my_isdigit(charset_info, *expr_start))
+      die("Expression in %s() must begin with $, !, ` or an integer", cmd_name);
     eval_expr(&v, expr_start, &expr_end);
+    char *endptr;
+    v.int_val = (int)strtol(v.str_val, &endptr, 10);
+    while (my_isspace(charset_info, *endptr)) endptr++;
+
+    if (*endptr != '\0') {
+      enum block_op operand = find_operand(endptr);
+      if (operand == ILLEG_OP)
+        die("Found junk '%s' in %s() condition", endptr, cmd_name);
+      else
+        die("LHS of %s() must be a variable", cmd_name);
+    }
   }
 
 NO_COMPARE:
@@ -7931,6 +7956,9 @@ static bool get_one_option(int optid, co
     case '?':
       usage();
       exit(0);
+    case 'C':
+      CLIENT_WARN_DEPRECATED("--compress", "--compression-algorithms");
+      break;
   }
   return false;
 }
diff -pruN 8.0.31-1/cmake/boost.cmake 8.0.32-1/cmake/boost.cmake
--- 8.0.31-1/cmake/boost.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/boost.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -330,6 +330,9 @@ ELSE()
 ENDIF()
 
 IF(NOT WIN32)
+# Needed to use Boost header container_hash/hash.hpp in C++17
+  ADD_DEFINITIONS(-DBOOST_NO_CXX98_FUNCTION_BASE)
+
   FILE(GLOB_RECURSE BOOST_PATCHES_LIST
     RELATIVE ${BOOST_PATCHES_DIR}
     ${BOOST_PATCHES_DIR}/*.hpp
diff -pruN 8.0.31-1/cmake/curl.cmake 8.0.32-1/cmake/curl.cmake
--- 8.0.31-1/cmake/curl.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/curl.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -99,7 +99,7 @@ MACRO(FIND_SYSTEM_CURL)
   ENDIF()
 ENDMACRO()
 
-SET(CURL_VERSION_DIR "curl-7.83.1")
+SET(CURL_VERSION_DIR "curl-7.86.0")
 MACRO(MYSQL_USE_BUNDLED_CURL)
   SET(WITH_CURL "bundled" CACHE STRING "Bundled curl library")
   ADD_SUBDIRECTORY(extra/curl)
diff -pruN 8.0.31-1/cmake/fastcov.cmake 8.0.32-1/cmake/fastcov.cmake
--- 8.0.31-1/cmake/fastcov.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/fastcov.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -21,19 +21,32 @@
 # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 
 # Targets below assume we have gcc and gcov version >= 9
+
+# There is no coverage for the NDBCLUSTER plugin, so disable it.
+# Alternatively: use -DWITH_NDB=1, and run cluster test suites also.
+
+# The default mtr test suite has limited coverage of replication,
+# and of some plugins.
+
 # cmake <path> -DWITH_DEBUG=1 -DWITH_SYSTEM_LIBS=1 -DENABLE_GCOV=1
+#              -DWITH_NDBCLUSTER_STORAGE_ENGINE=0
 # make
 # make fastcov-clean
 # <run some tests>
 # make fastcov-report
 # make fastcov-html
+# open in browser:  ${CMAKE_BINARY_DIR}/code_coverage/index.html
 
 FIND_PROGRAM(FASTCOV_EXECUTABLE NAMES fastcov.py fastcov)
 
-IF(NOT FASTCOV_EXECUTABLE OR
-    NOT CMAKE_COMPILER_IS_GNUCXX OR
+IF(NOT FASTCOV_EXECUTABLE)
+  MESSAGE(WARNING "Could not find fastcov.py or fastcov")
+  RETURN()
+ENDIF()
+
+IF(NOT CMAKE_COMPILER_IS_GNUCXX OR
     CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9)
-  MESSAGE(WARNING "You should upgrade to gcc version >= 9 and fastcov")
+  MESSAGE(WARNING "You should upgrade to gcc version >= 9")
   RETURN()
 ENDIF()
 
@@ -43,6 +56,12 @@ IF(ALTERNATIVE_GCC)
   FIND_PROGRAM(GCOV_EXECUTABLE gcov
     NO_DEFAULT_PATH
     PATHS "${GCC_B_PREFIX}")
+  # Ensure that fastcov can find tools in PATH.
+  IF(GCOV_EXECUTABLE)
+    SET(FASTCOV_PATH_PREFIX
+      ${CMAKE_COMMAND} -E env "PATH=${GCC_B_PREFIX}:$ENV{PATH}"
+      )
+  ENDIF()
 ENDIF()
 
 FIND_PROGRAM(GCOV_EXECUTABLE NAMES gcov)
@@ -74,47 +93,63 @@ IF(GCOV_VERSION AND GCOV_VERSION VERSION
     "At least version 9 is required")
 ENDIF()
 
-# Add symlinks for files which contain #line 1 "foo.c" rather than full path.
-# extra/duktape/duktape-2.3.0/src/duktape.c has #line directives for:
-FILE(GLOB DUKTAPE_SRC_INPUT
-  "${CMAKE_SOURCE_DIR}/extra/duktape/duktape-2.3.0/src-input/*.c")
-FOREACH(FILE ${DUKTAPE_SRC_INPUT})
-  GET_FILENAME_COMPONENT(filename "${FILE}" NAME)
-  EXECUTE_PROCESS(
-    COMMAND ${CMAKE_COMMAND} -E create_symlink ${FILE} ${filename}
-    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+IF(WITH_ROUTER)
+  # extra/duktape/duktape-2.7.0/src/duktape.c has ~140 #line directives.
+  # Just create some empty files, to make fastcov happy.
+  SET(DUKTAPE_SOURCE_DIR ${CMAKE_SOURCE_DIR}/extra/duktape/duktape-2.7.0)
+  EXECUTE_PROCESS(COMMAND
+    grep "\#line [12] " ${DUKTAPE_SOURCE_DIR}/src/duktape.c
+    OUTPUT_VARIABLE DUKTAPE_LINES
+    OUTPUT_STRIP_TRAILING_WHITESPACE
     )
-ENDFOREACH()
-
-FOREACH(FILE
-    # InnoDB generated parsers are checked in as source.
-    ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0blex.cc
-    ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0blex.l
-    ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0pars.cc
-    ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0pars.y
-    ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0tlex.cc
-    ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0tlex.l
-    ${CMAKE_SOURCE_DIR}/storage/innobase/pars/lexyy.cc
-    ${CMAKE_SOURCE_DIR}/storage/innobase/pars/pars0grm.cc
-    ${CMAKE_SOURCE_DIR}/storage/innobase/pars/pars0grm.y
-    ${CMAKE_SOURCE_DIR}/storage/innobase/pars/pars0lex.l
-    # MySQL parsers
-    ${CMAKE_SOURCE_DIR}/sql/debug_lo_parser.yy
-    ${CMAKE_SOURCE_DIR}/sql/debug_lo_scanner.ll
-    ${CMAKE_SOURCE_DIR}/sql/sql_hints.yy
-    ${CMAKE_SOURCE_DIR}/sql/sql_yacc.yy
-    )
-  GET_FILENAME_COMPONENT(filename "${FILE}" NAME)
-  EXECUTE_PROCESS(
-    COMMAND ${CMAKE_COMMAND} -E create_symlink ${FILE} ${filename}
-    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
-    )
-ENDFOREACH()
+  STRING(REPLACE "\n" ";" DUKTAPE_LINES "${DUKTAPE_LINES}")
+  FOREACH(LINE ${DUKTAPE_LINES})
+    STRING(REGEX MATCH "#line [12] \"(.*)\"" XXX ${LINE})
+    SET(DUK_SOURCE_FILE ${CMAKE_MATCH_1})
+    IF(CMAKE_GENERATOR MATCHES "Ninja")
+      FILE(WRITE ${CMAKE_BINARY_DIR}/${DUK_SOURCE_FILE} "")
+    ELSE()
+      FILE(WRITE
+        ${CMAKE_BINARY_DIR}/router/src/mock_server/src/${DUK_SOURCE_FILE} "")
+    ENDIF()
+  ENDFOREACH()
+ENDIF(WITH_ROUTER)
+
+# We may be running gcov in-source.
+IF(NOT THIS_IS_AN_IN_SOURCE_BUILD)
+  FOREACH(FILE
+      # InnoDB generated parsers are checked in as source.
+      ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0blex.cc
+      ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0blex.l
+      ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0pars.cc
+      ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0pars.y
+      ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0tlex.cc
+      ${CMAKE_SOURCE_DIR}/storage/innobase/fts/fts0tlex.l
+      ${CMAKE_SOURCE_DIR}/storage/innobase/pars/lexyy.cc
+      ${CMAKE_SOURCE_DIR}/storage/innobase/pars/pars0grm.cc
+      ${CMAKE_SOURCE_DIR}/storage/innobase/pars/pars0grm.y
+      ${CMAKE_SOURCE_DIR}/storage/innobase/pars/pars0lex.l
+      )
+    GET_FILENAME_COMPONENT(filename "${FILE}" NAME)
+    IF(CMAKE_GENERATOR MATCHES "Ninja")
+      EXECUTE_PROCESS(
+        COMMAND ${CMAKE_COMMAND} -E create_symlink ${FILE} ${filename}
+        WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+        )
+    ELSE()
+      EXECUTE_PROCESS(
+        COMMAND ${CMAKE_COMMAND} -E create_symlink ${FILE} ${filename}
+        WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/storage/innobase
+        )
+    ENDIF()
+  ENDFOREACH()
+ENDIF()
 
 # Ignore std, boost and 3rd-party code when doing coverage analysis.
 SET(FASTCOV_EXCLUDE_LIST "--exclude")
 FOREACH(FASTCOV_EXCLUDE
     "/usr/include"
+    "/usr/lib"
     "${BOOST_INCLUDE_DIR}"
     "${BOOST_PATCHES_DIR}"
     ${GMOCK_INCLUDE_DIRS}
@@ -126,12 +161,14 @@ FOREACH(FASTCOV_EXCLUDE
 ENDFOREACH()
 
 ADD_CUSTOM_TARGET(fastcov-clean
-  COMMAND ${FASTCOV_EXECUTABLE} --gcov ${GCOV_EXECUTABLE} --zerocounters
+  COMMAND ${FASTCOV_PATH_PREFIX}
+          ${FASTCOV_EXECUTABLE} --gcov ${GCOV_EXECUTABLE} --zerocounters
   COMMENT "Running ${FASTCOV_EXECUTABLE} --zerocounters"
   VERBATIM
   )
 ADD_CUSTOM_TARGET(fastcov-report
-  COMMAND ${FASTCOV_EXECUTABLE} --gcov ${GCOV_EXECUTABLE}
+  COMMAND ${FASTCOV_PATH_PREFIX}
+          ${FASTCOV_EXECUTABLE} --gcov ${GCOV_EXECUTABLE}
           ${FASTCOV_EXCLUDE_LIST} --lcov -o report.info
   COMMENT "Running ${FASTCOV_EXECUTABLE} --lcov -o report.info"
   VERBATIM
diff -pruN 8.0.31-1/cmake/info_macros.cmake.in 8.0.32-1/cmake/info_macros.cmake.in
--- 8.0.31-1/cmake/info_macros.cmake.in	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/info_macros.cmake.in	2022-12-16 15:34:44.000000000 +0000
@@ -175,14 +175,15 @@ MACRO(CREATE_INFO_BIN)
   IF(HAVE_BUILD_ID_SUPPORT AND NOT WITHOUT_SERVER)
     FILE(APPEND ${INFO_BIN} "\n===== BUILD ID =====\n")
     EXECUTE_PROCESS(COMMAND
-      ${MYSQLD_EXECUTABLE} --help
+      ${MYSQLD_EXECUTABLE} --no-defaults --help
       OUTPUT_VARIABLE mysqld_help
       RESULT_VARIABLE mysqld_help_result
       ERROR_VARIABLE mysqld_help_error
       OUTPUT_STRIP_TRAILING_WHITESPACE
       )
     IF(mysqld_help_result)
-      MESSAGE(FATAL_ERROR "mysqld --help failed: ${mysqld_help_error}")
+      MESSAGE(FATAL_ERROR
+        "mysqld --no-defaults --help failed: ${mysqld_help_error}")
     ENDIF()
     STRING(REPLACE "\n" ";" mysqld_help_list "${mysqld_help}")
     UNSET(BUILD_ID_FOUND)
diff -pruN 8.0.31-1/cmake/kerberos.cmake 8.0.32-1/cmake/kerberos.cmake
--- 8.0.31-1/cmake/kerberos.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/kerberos.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -106,41 +106,7 @@ MACRO(FIND_SYSTEM_KERBEROS)
 
     FIND_LIBRARY(SYSTEM_GSSAPI_LIBRARIES NAMES "gssapi_krb5")
     SET(GSSAPI_LIBRARIES "${SYSTEM_GSSAPI_LIBRARIES}")
-    MESSAGE(STATUS "GSSAPI_LIBRARIES  ${GSSAPI_LIBRARIES}")
-  ELSEIF(WIN32)
-    # authentication_kerberos and authentication_kerberos_client plug-ins shall
-    # not be officially built on windows, Linux MySQL server with Kerberos and
-    # windows java mysql client with Kerberos shall work.
-    FIND_PATH(KERBEROS_ROOT_DIR
-      NAMES include/krb5/krb5.h
-      )
-    FIND_PATH(KERBEROS_INCLUDE_DIR
-      NAMES krb5/krb5.h
-      HINTS ${KERBEROS_ROOT_DIR}/include
-      )
-    FIND_PATH(GSSAPI_INCLUDE_DIR
-      NAMES gssapi/gssapi.h
-      HINTS ${KERBEROS_ROOT_DIR}/include
-      )
-    FIND_FILE(KERBEROS_LIBRARIES
-      NAMES krb5_64.dll
-      PATHS ${KERBEROS_ROOT_DIR}/bin
-      NO_CMAKE_PATH
-      NO_CMAKE_ENVIRONMENT_PATH
-      NO_SYSTEM_ENVIRONMENT_PATH
-      )
-    FIND_FILE(GSSAPI_LIBRARIES
-      NAMES gssapi64.dll
-      PATHS ${KERBEROS_ROOT_DIR}/bin
-      NO_CMAKE_PATH
-      NO_CMAKE_ENVIRONMENT_PATH
-      NO_SYSTEM_ENVIRONMENT_PATH
-      )
-    IF(KERBEROS_INCLUDE_DIR)
-      MESSAGE(STATUS "KERBEROS_INCLUDE_DIR ${KERBEROS_INCLUDE_DIR}")
-      SET(HAVE_KRB5_KRB5_H 1 CACHE INTERNAL "")
-      SET(GSSAPI_FOUND 1)
-    ENDIF()
+    MESSAGE(STATUS "GSSAPI_LIBRARIES ${GSSAPI_LIBRARIES}")
   ELSEIF(SOLARIS OR APPLE)
     # Solaris: /usr/lib/64/libkrb5.so
     # Apple: /usr/lib/libkrb5.dylib   which depends on /System/..../Heimdal
@@ -198,12 +164,46 @@ ENDMACRO(FIND_SYSTEM_KERBEROS)
 #   NEEDED               libkrb5.so.3
 #   NEEDED               libk5crypto.so.3
 #   NEEDED               libcom_err.so.2
-SET(CUSTOM_KERBEROS_EXTRA_LIBRARIES
-  com_err
-  gssapi_krb5
-  k5crypto
-  krb5support
-  )
+IF (WIN32)
+  SET(CUSTOM_KERBEROS_EXTRA_LIBRARIES
+    k5sprt64.lib
+    comerr64.lib
+    xpprof64.lib
+    krbcc64.lib
+    gssapi64.lib
+    )
+  SET(CUSTOM_KERBEROS_EXTRA_DLLS
+    k5sprt64.dll
+    comerr64.dll
+    xpprof64.dll
+    krbcc64.dll
+    gssapi64.dll
+    )
+    # We still support 32bit build for -DWITHOUT_SERVER=ON
+    IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
+      SET(CUSTOM_KERBEROS_EXTRA_LIBRARIES
+        k5sprt32.lib
+        comerr32.lib
+        xpprof32.lib
+        krbcc32.lib
+        gssapi32.lib
+        )
+      SET(CUSTOM_KERBEROS_EXTRA_DLLS
+        k5sprt32.dll
+        comerr32.dll
+        xpprof32.dll
+        krbcc32.dll
+        gssapi32.dll
+        )
+    ENDIF()
+ELSE()
+  SET(CUSTOM_KERBEROS_EXTRA_LIBRARIES
+    com_err
+    gssapi_krb5
+    k5crypto
+    krb5support
+    )
+ENDIF()
 
 MACRO(FIND_CUSTOM_KERBEROS)
   # Header file first search in WITH_KERBEROS.
@@ -213,6 +213,7 @@ MACRO(FIND_CUSTOM_KERBEROS)
     NO_CMAKE_ENVIRONMENT_PATH
     HINTS ${WITH_KERBEROS_PATH}
   )
+  MESSAGE(STATUS "KERBEROS_ROOT_DIR ${KERBEROS_ROOT_DIR}")
   # Then search in standard places (if not found above).
   FIND_PATH(KERBEROS_ROOT_DIR
     NAMES include/krb5/krb5.h
@@ -228,43 +229,115 @@ MACRO(FIND_CUSTOM_KERBEROS)
     HINTS ${KERBEROS_ROOT_DIR}/include
     )
 
-  FIND_LIBRARY(KERBEROS_CUSTOM_LIBRARY
-    NAMES "krb5"
-    PATHS ${WITH_KERBEROS}/lib
-    NO_DEFAULT_PATH
-    NO_CMAKE_ENVIRONMENT_PATH
-    NO_SYSTEM_ENVIRONMENT_PATH
-    )
+  IF(WIN32)
+    FIND_FILE(KERBEROS_CUSTOM_LIBRARY
+      NAMES krb5_64.lib
+      PATHS ${KERBEROS_ROOT_DIR}/lib
+      NO_CMAKE_PATH
+      NO_CMAKE_ENVIRONMENT_PATH
+      NO_SYSTEM_ENVIRONMENT_PATH
+      )
+    FIND_FILE(KERBEROS_CUSTOM_DLL
+      NAMES krb5_64.dll
+      PATHS ${KERBEROS_ROOT_DIR}/bin
+      NO_CMAKE_PATH
+      NO_CMAKE_ENVIRONMENT_PATH
+      NO_SYSTEM_ENVIRONMENT_PATH
+      )
+    FIND_FILE(CCAPISERVER_EXECUTABLE
+      NAMES ccapiserver.exe
+      PATHS ${KERBEROS_ROOT_DIR}/bin
+      NO_CMAKE_PATH
+      NO_CMAKE_ENVIRONMENT_PATH
+      NO_SYSTEM_ENVIRONMENT_PATH
+      )
+    # We still support 32bit build for -DWITHOUT_SERVER=ON
+    IF(CMAKE_SIZEOF_VOID_P EQUAL 4)
+      FIND_FILE(KERBEROS_CUSTOM_LIBRARY
+        NAMES krb5_32.lib
+        PATHS ${KERBEROS_ROOT_DIR}/lib
+        NO_CMAKE_PATH
+        NO_CMAKE_ENVIRONMENT_PATH
+        NO_SYSTEM_ENVIRONMENT_PATH
+        )
+      FIND_FILE(KERBEROS_CUSTOM_DLL
+        NAMES krb5_32.dll
+        PATHS ${KERBEROS_ROOT_DIR}/bin
+        NO_CMAKE_PATH
+        NO_CMAKE_ENVIRONMENT_PATH
+        NO_SYSTEM_ENVIRONMENT_PATH
+        )
+    ENDIF()
 
-  FIND_LIBRARY(GSSAPI_LIBRARIES
-    NAMES "gssapi_krb5"
-    PATHS ${WITH_KERBEROS}/lib
-    NO_DEFAULT_PATH
-    NO_CMAKE_ENVIRONMENT_PATH
-    NO_SYSTEM_ENVIRONMENT_PATH
-    )
+    IF(KERBEROS_INCLUDE_DIR AND KERBEROS_CUSTOM_LIBRARY AND
+       KERBEROS_CUSTOM_DLL AND CCAPISERVER_EXECUTABLE)
+      MESSAGE(STATUS "KERBEROS_INCLUDE_DIR ${KERBEROS_INCLUDE_DIR}")
+      SET(KERBEROS_FOUND 1)
+      SET(HAVE_KRB5_KRB5_H 1 CACHE INTERNAL "")
 
-  FOREACH(EXTRA_LIB ${CUSTOM_KERBEROS_EXTRA_LIBRARIES})
-    SET(VAR_NAME "KERBEROS_CUSTOM_LIBRARY_${EXTRA_LIB}")
-    FIND_LIBRARY(${VAR_NAME}
-      NAMES "${EXTRA_LIB}"
+      FOREACH(EXTRA_LIB ${CUSTOM_KERBEROS_EXTRA_LIBRARIES})
+        SET(VAR_NAME "KERBEROS_CUSTOM_LIBRARY_${EXTRA_LIB}")
+        FIND_FILE(${VAR_NAME}
+          NAMES "${EXTRA_LIB}"
+          PATHS ${WITH_KERBEROS}/lib
+          NO_DEFAULT_PATH
+          NO_CMAKE_ENVIRONMENT_PATH
+          NO_SYSTEM_ENVIRONMENT_PATH
+          )
+      ENDFOREACH()
+
+      FOREACH(EXTRA_DLL ${CUSTOM_KERBEROS_EXTRA_DLLS})
+        SET(VAR_NAME "KERBEROS_CUSTOM_DLL_${EXTRA_DLL}")
+        FIND_FILE(${VAR_NAME}
+          NAMES "${EXTRA_DLL}"
+          PATHS ${WITH_KERBEROS}/bin
+          NO_DEFAULT_PATH
+          NO_CMAKE_ENVIRONMENT_PATH
+          NO_SYSTEM_ENVIRONMENT_PATH
+          )
+      ENDFOREACH()
+
+      IF(GSSAPI_INCLUDE_DIR)
+        MESSAGE(STATUS "GSSAPI_INCLUDE_DIR ${GSSAPI_INCLUDE_DIR}")
+        SET(GSSAPI_FOUND 1)
+        SET(HAVE_GSSAPI_GSSAPI_H 1 CACHE INTERNAL "")
+      ENDIF()
+    ENDIF()
+  ELSE()
+    FIND_LIBRARY(KERBEROS_CUSTOM_LIBRARY
+      NAMES "krb5"
       PATHS ${WITH_KERBEROS}/lib
       NO_DEFAULT_PATH
       NO_CMAKE_ENVIRONMENT_PATH
       NO_SYSTEM_ENVIRONMENT_PATH
       )
-  ENDFOREACH()
-
-  IF(KERBEROS_INCLUDE_DIR AND KERBEROS_CUSTOM_LIBRARY)
-    MESSAGE(STATUS "KERBEROS_INCLUDE_DIR ${KERBEROS_INCLUDE_DIR}")
-    SET(KERBEROS_FOUND 1)
-    SET(HAVE_KRB5_KRB5_H 1 CACHE INTERNAL "")
-  ENDIF()
-
-  IF(GSSAPI_INCLUDE_DIR AND KERBEROS_CUSTOM_LIBRARY_gssapi_krb5)
-    MESSAGE(STATUS "GSSAPI_INCLUDE_DIR ${GSSAPI_INCLUDE_DIR}")
-    SET(GSSAPI_FOUND 1)
-    SET(HAVE_GSSAPI_GSSAPI_H 1 CACHE INTERNAL "")
+    FIND_LIBRARY(GSSAPI_LIBRARIES
+      NAMES "gssapi_krb5"
+      PATHS ${WITH_KERBEROS}/lib
+      NO_DEFAULT_PATH
+      NO_CMAKE_ENVIRONMENT_PATH
+      NO_SYSTEM_ENVIRONMENT_PATH
+      )
+    FOREACH(EXTRA_LIB ${CUSTOM_KERBEROS_EXTRA_LIBRARIES})
+      SET(VAR_NAME "KERBEROS_CUSTOM_LIBRARY_${EXTRA_LIB}")
+      FIND_LIBRARY(${VAR_NAME}
+        NAMES "${EXTRA_LIB}"
+        PATHS ${WITH_KERBEROS}/lib
+        NO_DEFAULT_PATH
+        NO_CMAKE_ENVIRONMENT_PATH
+        NO_SYSTEM_ENVIRONMENT_PATH
+        )
+    ENDFOREACH()
+    IF(KERBEROS_INCLUDE_DIR AND KERBEROS_CUSTOM_LIBRARY)
+      MESSAGE(STATUS "KERBEROS_INCLUDE_DIR ${KERBEROS_INCLUDE_DIR}")
+      SET(KERBEROS_FOUND 1)
+      SET(HAVE_KRB5_KRB5_H 1 CACHE INTERNAL "")
+    ENDIF()
+    IF(GSSAPI_INCLUDE_DIR AND KERBEROS_CUSTOM_LIBRARY_gssapi_krb5)
+      MESSAGE(STATUS "GSSAPI_INCLUDE_DIR ${GSSAPI_INCLUDE_DIR}")
+      SET(GSSAPI_FOUND 1)
+      SET(HAVE_GSSAPI_GSSAPI_H 1 CACHE INTERNAL "")
+    ENDIF()
   ENDIF()
 ENDMACRO(FIND_CUSTOM_KERBEROS)
 
@@ -272,16 +345,28 @@ MACRO(MYSQL_CHECK_KERBEROS)
   # No Kerberos support for these platforms:
   IF( APPLE OR
       FREEBSD OR
-      SOLARIS OR
-      WIN32
+      SOLARIS
       )
     SET(WITH_KERBEROS "none")
     SET(WITH_KERBEROS "none" CACHE INTERNAL "")
   ENDIF()
 
+  # WITH_KERBEROS is set to "none" by default for Windows
+  # However, it can be specified on command line
+  # through either WITH_KERBEROS_WIN=<path/to/custom/installation>
+  # or through WITH_KERBEROS=<path/to/custom/installation>
   IF(WIN32)
     SET(KERBEROS_LIB_SSPI 1)
-    MESSAGE(STATUS "Kerberos client is supported in windows using SSPI.")
+    IF(WITH_KERBEROS_WIN)
+      MESSAGE(STATUS "WITH_KERBEROS_WIN is specified. Setting WITH_KERBEROS.")
+      SET(WITH_KERBEROS ${WITH_KERBEROS_WIN})
+      SET(WITH_KERBEROS ${WITH_KERBEROS_WIN} CACHE STRING "${WITH_KERBEROS_WIN}")
+    ELSE()
+      IF(NOT WITH_KERBEROS)
+        SET(WITH_KERBEROS "none")
+        SET(WITH_KERBEROS "none" CACHE INTERNAL "")
+      ENDIF()
+    ENDIF()
   ELSE()
     UNSET(KERBEROS_LIB_SSPI)
     UNSET(KERBEROS_LIB_SSPI CACHE)
@@ -303,13 +388,16 @@ MACRO(MYSQL_CHECK_KERBEROS)
   ENDIF()
 
   IF(WITH_KERBEROS STREQUAL "system")
+    IF(WIN32)
+      MESSAGE(FATAL_ERROR "-DWITH_KERBEROS=system not supported on this platform.")
+    ENDIF()
     FIND_SYSTEM_KERBEROS()
   ELSEIF(WITH_KERBEROS STREQUAL "none")
     MESSAGE(STATUS "KERBEROS path is none, disabling kerberos support.")
     SET(WITH_KERBEROS 0)
     SET(KERBEROS_FOUND 0)
   ELSEIF(WITH_KERBEROS_PATH)
-    IF(LINUX_STANDALONE)
+    IF(LINUX_STANDALONE OR WIN32)
       FIND_CUSTOM_KERBEROS()
     ELSE()
       MESSAGE(FATAL_ERROR
@@ -320,7 +408,6 @@ MACRO(MYSQL_CHECK_KERBEROS)
   ENDIF()
 
   MESSAGE(STATUS "HAVE_KRB5_KRB5_H  ${HAVE_KRB5_KRB5_H}")
-  MESSAGE(STATUS "KERBEROS_LIBRARIES  ${KERBEROS_LIBRARIES}")
 
   IF((KERBEROS_LIBRARIES OR KERBEROS_CUSTOM_LIBRARY) AND HAVE_KRB5_KRB5_H)
     SET(KERBEROS_FOUND 1)
@@ -332,7 +419,7 @@ MACRO(MYSQL_CHECK_KERBEROS)
     ENDIF()
   ENDIF()
 
-  IF(KERBEROS_FOUND)
+  IF(KERBEROS_FOUND AND (NOT WIN32))
     SET(KERBEROS_LIB_CONFIGURED 1)
   ENDIF()
 
@@ -361,4 +448,54 @@ MACRO(MYSQL_CHECK_KERBEROS_DLLS)
       ENDIF()
     ENDFOREACH()
   ENDIF()
+
+  IF(WIN32 AND KERBEROS_CUSTOM_LIBRARY)
+    SET(GSSAPI_LIBRARIES "")
+    GET_FILENAME_COMPONENT(KERBEROS_DLL_NAME "${KERBEROS_CUSTOM_DLL}" NAME)
+    MY_ADD_CUSTOM_TARGET(copy_kerberos_dlls ALL
+      COMMAND ${CMAKE_COMMAND} -E copy_if_different
+      "${KERBEROS_CUSTOM_DLL}"
+      "${CMAKE_BINARY_DIR}/runtime_output_directory/${CMAKE_CFG_INTDIR}/${KERBEROS_DLL_NAME}"
+      )
+    INSTALL(FILES
+      "${KERBEROS_CUSTOM_DLL}"
+      DESTINATION ${INSTALL_BINDIR} COMPONENT SharedLibraries)
+
+    SET(KERBEROS_LIBRARIES_EXTRA "")
+    FOREACH(EXTRA_LIB ${CUSTOM_KERBEROS_EXTRA_LIBRARIES})
+      SET(VAR_NAME "KERBEROS_CUSTOM_LIBRARY_${EXTRA_LIB}")
+      LIST(APPEND KERBEROS_LIBRARIES_EXTRA "${${VAR_NAME}}")
+    ENDFOREACH()
+
+    SET(KERBEROS_LIBRARIES "${KERBEROS_LIBRARIES_EXTRA}")
+    LIST(APPEND KERBEROS_LIBRARIES "${KERBEROS_CUSTOM_LIBRARY}")
+
+    FOREACH(EXTRA_DLL ${CUSTOM_KERBEROS_EXTRA_DLLS})
+      SET(DLL_PATH "KERBEROS_CUSTOM_DLL_${EXTRA_DLL}")
+      GET_FILENAME_COMPONENT("${EXTRA_DLL}_NAME" "${${DLL_PATH}}" NAME)
+      SET(TARGET_NAME "copy_${EXTRA_DLL}")
+      MY_ADD_CUSTOM_TARGET(${TARGET_NAME} ALL
+        COMMAND ${CMAKE_COMMAND} -E copy_if_different
+        "${${DLL_PATH}}"
+        "${CMAKE_BINARY_DIR}/runtime_output_directory/${CMAKE_CFG_INTDIR}/${${EXTRA_DLL}_NAME}"
+        )
+      ADD_DEPENDENCIES(copy_kerberos_dlls ${TARGET_NAME})
+      INSTALL(FILES
+        "${${DLL_PATH}}"
+        DESTINATION ${INSTALL_BINDIR} COMPONENT SharedLibraries)
+    ENDFOREACH()
+
+    GET_FILENAME_COMPONENT(CCAPISERVER_EXECUTABLE_NAME "${CCAPISERVER_EXECUTABLE}" NAME)
+    MY_ADD_CUSTOM_TARGET(copy_ccapiserver_executable ALL
+      COMMAND ${CMAKE_COMMAND} -E copy_if_different
+      "${CCAPISERVER_EXECUTABLE}"
+      "${CMAKE_BINARY_DIR}/runtime_output_directory/${CMAKE_CFG_INTDIR}/${CCAPISERVER_EXECUTABLE_NAME}"
+      )
+    INSTALL(FILES
+      "${CCAPISERVER_EXECUTABLE}"
+      DESTINATION ${INSTALL_BINDIR})
+    ADD_DEPENDENCIES(copy_kerberos_dlls copy_ccapiserver_executable)
+  ENDIF()
+
+  MESSAGE(STATUS "KERBEROS_LIBRARIES  ${KERBEROS_LIBRARIES}")
 ENDMACRO(MYSQL_CHECK_KERBEROS_DLLS)
diff -pruN 8.0.31-1/cmake/lz4.cmake 8.0.32-1/cmake/lz4.cmake
--- 8.0.31-1/cmake/lz4.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/lz4.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -53,8 +53,8 @@ MACRO (FIND_SYSTEM_LZ4)
   ENDIF()
 ENDMACRO()
 
-SET(LZ4_VERSION "lz4-1.9.3")
-SET(BUNDLED_LZ4_PATH "${CMAKE_SOURCE_DIR}/extra/lz4/${LZ4_VERSION}")
+SET(LZ4_VERSION "lz4-1.9.4")
+SET(BUNDLED_LZ4_PATH "${CMAKE_SOURCE_DIR}/extra/lz4/${LZ4_VERSION}/lib")
 
 MACRO (MYSQL_USE_BUNDLED_LZ4)
   SET(WITH_LZ4 "bundled" CACHE STRING "Bundled lz4 library")
diff -pruN 8.0.31-1/cmake/maintainer.cmake 8.0.32-1/cmake/maintainer.cmake
--- 8.0.31-1/cmake/maintainer.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/maintainer.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -93,7 +93,7 @@ IF(MY_COMPILER_IS_CLANG)
   MY_ADD_C_WARNING_FLAG("Wunreachable-code-break")
   MY_ADD_C_WARNING_FLAG("Wunreachable-code-return")
 ENDIF()
-  
+
 # Extra warning flags for Clang++
 IF(MY_COMPILER_IS_CLANG)
   # Disable a few default Clang++ warnings
@@ -102,10 +102,22 @@ IF(MY_COMPILER_IS_CLANG)
 
   STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wconditional-uninitialized")
   STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wdeprecated")
+
+  # Xcode >= 14 makes noise about sprintf, and loss of precision when
+  # assigning integers from 64 bits to 32 bits, so silence. We can't
+  # put these two deprecation exceptions in Darwin.cmake because the
+  # previous line adding -Wdeprecated would be added later and
+  # override them, so do it here instead:
+  IF(APPLE)
+     STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wno-deprecated-declarations")
+     STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wno-shorten-64-to-32")
+  ENDIF()
+
   STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wextra-semi")
   STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wheader-hygiene")
   STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wnon-virtual-dtor")
   STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wundefined-reinterpret-cast")
+  STRING_APPEND(MY_CXX_WARNING_FLAGS " -Wrange-loop-analysis")
 
   MY_ADD_CXX_WARNING_FLAG("Winconsistent-missing-destructor-override")
   MY_ADD_CXX_WARNING_FLAG("Winconsistent-missing-override")
@@ -143,7 +155,6 @@ IF(MY_COMPILER_IS_CLANG)
   # -Wold-style-cast
   # -Wpadded
   # -Wpedantic
-  # -Wrange-loop-analysis
   # -Wredundant-parens
   # -Wreserved-id-macro
   # -Wshadow
diff -pruN 8.0.31-1/cmake/os/Linux.cmake 8.0.32-1/cmake/os/Linux.cmake
--- 8.0.31-1/cmake/os/Linux.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/os/Linux.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -27,6 +27,10 @@ INCLUDE(CheckCSourceRuns)
 
 SET(LINUX 1)
 
+IF(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64")
+  SET(LINUX_ARM 1)
+ENDIF()
+
 # OS display name (version_compile_os etc).
 # Used by the test suite to ignore bugs on some platforms.
 SET(SYSTEM_TYPE "Linux")
diff -pruN 8.0.31-1/cmake/sasl.cmake 8.0.32-1/cmake/sasl.cmake
--- 8.0.31-1/cmake/sasl.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/sasl.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -91,6 +91,15 @@ MACRO(FIND_SASL_VERSION)
       "${SASL_VERSION_MAJOR}.${SASL_VERSION_MINOR}.${SASL_VERSION_STEP}")
     SET(SASL_VERSION "${SASL_VERSION}" CACHE INTERNAL "SASL major.minor.step")
     MESSAGE(STATUS "SASL_VERSION (${WITH_SASL}) is ${SASL_VERSION}")
+
+    FILE(READ "${SASL_INCLUDE_DIR}/sasl/sasl.h" SASL_HEADER_TEXT)
+    STRING(FIND "${SASL_HEADER_TEXT}" "LIBSASL_API int sasl_client_done"
+           HAVE_SASL_CLIENT_DONE)
+    IF(${HAVE_SASL_CLIENT_DONE} EQUAL -1)
+      SET(SASL_CLIENT_DONE_SUPPORTED 0)
+    ELSE()
+      SET(SASL_CLIENT_DONE_SUPPORTED 1)
+    ENDIF()
   ENDIF()
 ENDMACRO()
 
diff -pruN 8.0.31-1/cmake/zlib.cmake 8.0.32-1/cmake/zlib.cmake
--- 8.0.31-1/cmake/zlib.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/cmake/zlib.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -28,11 +28,9 @@
 # but we need at least version 1.2.11, and that's not available on
 # all the platforms we need to support.
 
-# With earier versions, several compression tests fail.
-# SET(MIN_ZLIB_VERSION_REQUIRED "1.2.11")
-
 # Security bug fixes required from:
-SET(MIN_ZLIB_VERSION_REQUIRED "1.2.12")
+SET(MIN_ZLIB_VERSION_REQUIRED "1.2.13")
+
 
 MACRO(FIND_ZLIB_VERSION)
   FOREACH(version_part
@@ -86,7 +84,7 @@ MACRO (RESET_ZLIB_VARIABLES)
   UNSET(FIND_PACKAGE_MESSAGE_DETAILS_ZLIB CACHE)
 ENDMACRO()
 
-SET(ZLIB_VERSION_DIR "zlib-1.2.12")
+SET(ZLIB_VERSION_DIR "zlib-1.2.13")
 SET(BUNDLED_ZLIB_PATH ${CMAKE_SOURCE_DIR}/extra/zlib/${ZLIB_VERSION_DIR})
 
 MACRO (MYSQL_USE_BUNDLED_ZLIB)
diff -pruN 8.0.31-1/CMakeLists.txt 8.0.32-1/CMakeLists.txt
--- 8.0.31-1/CMakeLists.txt	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/CMakeLists.txt	2022-12-16 15:34:44.000000000 +0000
@@ -593,7 +593,9 @@ ENDIF()
 # So if you do a 'git pull' you may end up with a developer sandbox
 # that no longer works as expected (CMakeCache.txt and other
 # generated/configured files may contain data which is no longer valid)
+SET(THIS_IS_AN_IN_SOURCE_BUILD FALSE)
 IF(${REALPATH_CMAKE_SOURCE_DIR} STREQUAL ${REALPATH_CMAKE_BINARY_DIR})
+  SET(THIS_IS_AN_IN_SOURCE_BUILD TRUE)
   IF(FORCE_INSOURCE_BUILD)
     MESSAGE(WARNING "This is an in-source build")
   ELSE()
@@ -1675,7 +1677,6 @@ SET(SYSTEM_LIBRARIES
   LZ4       # Homebrew  lz4
   PROTOBUF  # Homebrew  protobuf
   SSL       # Homebrew  openssl@1.1
-# ZLIB      # Xcode                  Min required version is now 1.2.12
   ZSTD      # Homebrew  zstd
   FIDO      # Homebrew  libfido2
   )
@@ -2228,6 +2229,12 @@ IF(NOT WITHOUT_SERVER AND WITH_UNIT_TEST
       IF(HAS_WARN_FLAG)
         MY_TARGET_LINK_OPTIONS(server_unittest_library "${HAS_WARN_FLAG}")
       ENDIF()
+      # We may get errors in boost/geometry/srs/projections/proj/ob_tran.hpp
+      # and several other boost files.
+      MY_CHECK_CXX_COMPILER_WARNING("error=maybe-uninitialized" HAS_WARN_FLAG)
+      IF(HAS_WARN_FLAG)
+        MY_TARGET_LINK_OPTIONS(server_unittest_library "${HAS_WARN_FLAG}")
+      ENDIF()
     ENDIF()
   ELSE()
     SET(DUMMY_SOURCE_FILE ${CMAKE_BINARY_DIR}/server_unittest_library.c)
@@ -2328,7 +2335,7 @@ IF(HAVE_BUILD_ID_SUPPORT AND NOT WITHOUT
   IF(SHOW_BUILD_ID)
     # Show build id in the build log, after everything else has bee built.
     ADD_CUSTOM_TARGET(show_build_id ALL
-      COMMAND $<TARGET_FILE:mysqld> --help | grep BuildID
+      COMMAND $<TARGET_FILE:mysqld> --no-defaults --help | grep BuildID
       COMMENT "Showing mysqld build id"
       VERBATIM
       )
diff -pruN 8.0.31-1/components/libminchassis/dynamic_loader_scheme_file.cc 8.0.32-1/components/libminchassis/dynamic_loader_scheme_file.cc
--- 8.0.31-1/components/libminchassis/dynamic_loader_scheme_file.cc	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/components/libminchassis/dynamic_loader_scheme_file.cc	2022-12-16 15:34:44.000000000 +0000
@@ -20,6 +20,8 @@ You should have received a copy of the G
 along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */
 
+#include "my_config.h"
+
 #include <mysql/components/component_implementation.h>
 #include <mysql/components/service_implementation.h>
 #include <mysql/components/services/dynamic_loader.h>
@@ -125,7 +127,14 @@ DEFINE_BOOL_METHOD(mysql_dynamic_loader_
 #endif
 
     /* Open library. */
+#if defined(HAVE_ASAN) || defined(HAVE_LSAN)
+    // Do not unload the shared object during dlclose().
+    // LeakSanitizer needs this in order to provide call stacks,
+    // and to match entries in lsan.supp.
+    void *handle = dlopen(file_name.c_str(), RTLD_NOW | RTLD_NODELETE);
+#else
     void *handle = dlopen(file_name.c_str(), RTLD_NOW);
+#endif
     if (handle == nullptr) {
       const char *errmsg;
       int error_number = dlopen_errno;
diff -pruN 8.0.31-1/config.h.cmake 8.0.32-1/config.h.cmake
--- 8.0.31-1/config.h.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/config.h.cmake	2022-12-16 15:34:44.000000000 +0000
@@ -360,4 +360,7 @@
 /* ARM crc32 support */
 #cmakedefine HAVE_ARMV8_CRC32_INTRINSIC @HAVE_ARMV8_CRC32_INTRINSIC@
 
+/* sasl_client_done support */
+#cmakedefine SASL_CLIENT_DONE_SUPPORTED @SASL_CLIENT_DONE_SUPPORTED@
+
 #endif
diff -pruN 8.0.31-1/debian/changelog 8.0.32-1/debian/changelog
--- 8.0.31-1/debian/changelog	2022-11-14 20:33:29.000000000 +0000
+++ 8.0.32-1/debian/changelog	2023-01-24 14:55:07.000000000 +0000
@@ -1,3 +1,29 @@
+mysql-8.0 (8.0.32-1) unstable; urgency=medium
+
+  [ Lars Tangvald ]
+  * Imported upstream version 8.0.32 to fix security issues
+    - https://www.oracle.com/security-alerts/cpujan2023.html#AppendixMSQL
+    - CVE-2022-32221 CVE-2023-21836 CVE-2023-21868 CVE-2023-21869
+    - CVE-2023-21871 CVE-2023-21875 CVE-2023-21877 CVE-2023-21863
+    - CVE-2023-21867 CVE-2023-21870 CVE-2023-21873 CVE-2023-21876
+    - CVE-2023-21878 CVE-2023-21879 CVE-2023-21880 CVE-2023-21881
+    - CVE-2023-21883 CVE-2023-21882 CVE-2023-21887
+    Upstream release notes:
+    - https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-32.html
+    (Closes: #1029151)
+  * debian/rules: Exclude mysql.info from package install
+  * debian/mysql-router-8.0.install: Added new files
+
+  [ Marc Deslauriers ]
+  * debian/patches/disable_timestamping_test.path: disable test that fails
+    to build on certain archs because of the presence of sizeof in macros.
+
+  [ Lena Voytek ]
+  * debian/rules: Remove changelog install override containing empty file
+    Docs/Changelog
+
+ -- Lena Voytek <lena.voytek@canonical.com>  Tue, 24 Jan 2023 07:55:07 -0700
+
 mysql-8.0 (8.0.31-1) unstable; urgency=medium
 
   [ Marc Deslauriers ]
diff -pruN 8.0.31-1/debian/mysql-router.install 8.0.32-1/debian/mysql-router.install
--- 8.0.31-1/debian/mysql-router.install	2022-11-14 20:15:47.000000000 +0000
+++ 8.0.32-1/debian/mysql-router.install	2023-01-24 13:24:13.000000000 +0000
@@ -10,6 +10,7 @@ usr/lib/mysql-router/libmysqlharness_std
 usr/lib/mysql-router/libmysqlharness_tls.so.1
 usr/lib/mysql-router/libmysqlrouter.so.1
 usr/lib/mysql-router/libmysqlrouter_connection_pool.so.1
+usr/lib/mysql-router/libmysqlrouter_destination_status.so.1
 usr/lib/mysql-router/libmysqlrouter_http.so.1
 usr/lib/mysql-router/libmysqlrouter_http_auth_backend.so.1
 usr/lib/mysql-router/libmysqlrouter_http_auth_realm.so.1
@@ -18,6 +19,7 @@ usr/lib/mysql-router/libmysqlrouter_meta
 usr/lib/mysql-router/libmysqlrouter_mysqlxmessages.so.1
 usr/lib/mysql-router/libmysqlrouter_routing.so.1
 usr/lib/mysqlrouter/plugin/connection_pool.so
+usr/lib/mysqlrouter/plugin/destination_status.so
 usr/lib/mysqlrouter/plugin/http_auth_backend.so
 usr/lib/mysqlrouter/plugin/http_auth_realm.so
 usr/lib/mysqlrouter/plugin/http_server.so
diff -pruN 8.0.31-1/debian/patches/disable_timestamping_test.patch 8.0.32-1/debian/patches/disable_timestamping_test.patch
--- 8.0.31-1/debian/patches/disable_timestamping_test.patch	1970-01-01 00:00:00.000000000 +0000
+++ 8.0.32-1/debian/patches/disable_timestamping_test.patch	2023-01-24 14:55:07.000000000 +0000
@@ -0,0 +1,15 @@
+Description: disable test that fails to build on certain archs because of
+ the presence of sizeof in macros.
+Author: Marc Deslauriers <marc.deslauriers@canonical.com>
+Forwarded: no
+
+--- a/router/src/harness/tests/CMakeLists.txt
++++ b/router/src/harness/tests/CMakeLists.txt
+@@ -180,7 +180,3 @@ ADD_DEPENDENCIES(mysqlrouter_all net_ts_
+ MYSQL_ADD_EXECUTABLE(acl_cli acl_cli.cc SKIP_INSTALL)
+ TARGET_LINK_LIBRARIES(acl_cli harness-library)
+ ADD_DEPENDENCIES(mysqlrouter_all acl_cli)
+-
+-MYSQL_ADD_EXECUTABLE(linux_timestamping linux_timestamping.cc SKIP_INSTALL)
+-TARGET_LINK_LIBRARIES(linux_timestamping harness_net_ts harness_stdx)
+-ADD_DEPENDENCIES(mysqlrouter_all linux_timestamping)
diff -pruN 8.0.31-1/debian/patches/series 8.0.32-1/debian/patches/series
--- 8.0.31-1/debian/patches/series	2022-11-14 20:15:47.000000000 +0000
+++ 8.0.32-1/debian/patches/series	2023-01-24 14:55:07.000000000 +0000
@@ -6,3 +6,4 @@ use-largest-lock-free-type-selector-on-r
 revert_faster_tls_model.patch
 disable_root_files.patch
 boost-1.76.0-fix_multiprecision_issue_419-ppc64le.patch
+disable_timestamping_test.patch
diff -pruN 8.0.31-1/debian/rules 8.0.32-1/debian/rules
--- 8.0.31-1/debian/rules	2022-11-14 20:15:47.000000000 +0000
+++ 8.0.32-1/debian/rules	2023-01-24 14:55:07.000000000 +0000
@@ -207,12 +207,10 @@ override_dh_installlogrotate-arch:
 override_dh_install:
 	dh_install --fail-missing		\
 		-Xusr/share/man			\
-		-Xusr/share/mysql/mysql.server
+		-Xusr/share/mysql/mysql.server  \
+		-Xmysql.info
 	dh_apparmor -pmysql-server-8.0 --profile-name=usr.sbin.mysqld
 
-override_dh_installchangelogs:
-	dh_installchangelogs Docs/ChangeLog
-
 override_dh_systemd_enable:
 	dh_systemd_enable --name=mysql
 
diff -pruN 8.0.31-1/Docs/ChangeLog 8.0.32-1/Docs/ChangeLog
--- 8.0.31-1/Docs/ChangeLog	2022-09-13 16:36:39.000000000 +0000
+++ 8.0.32-1/Docs/ChangeLog	1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-This is a placeholder
diff -pruN 8.0.31-1/Docs/INFO_SRC 8.0.32-1/Docs/INFO_SRC
--- 8.0.31-1/Docs/INFO_SRC	2022-09-13 16:36:39.000000000 +0000
+++ 8.0.32-1/Docs/INFO_SRC	2022-12-16 15:56:12.000000000 +0000
@@ -1,7 +1,7 @@
-commit: da4abf34c335274d18a2a8b2d6c9a677a498b15b
-date: 2022-09-13 18:06:48 +0200
-build-date: 2022-09-13 16:16:26 +0000
-short: da4abf34c33
-branch: mysql-8.0.31-release
+commit: 683372e870fea4430bafe8bf06ef6f06a234e539
+date: 2022-12-16 13:56:25 +0100
+build-date: 2022-12-16 15:36:03 +0000
+short: 683372e870f
+branch: mysql-8.0.32-release
 
-MySQL source 8.0.31
+MySQL source 8.0.32
diff -pruN 8.0.31-1/Docs/mysql.info 8.0.32-1/Docs/mysql.info
--- 8.0.31-1/Docs/mysql.info	1970-01-01 00:00:00.000000000 +0000
+++ 8.0.32-1/Docs/mysql.info	2022-12-16 15:34:44.000000000 +0000
@@ -0,0 +1,3 @@
+
+The MySQL Reference Manual is available in various formats on
+http://dev.mysql.com/doc.
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/acinclude.m4 8.0.32-1/extra/curl/curl-7.83.1/acinclude.m4
--- 8.0.31-1/extra/curl/curl-7.83.1/acinclude.m4	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/acinclude.m4	1970-01-01 00:00:00.000000000 +0000
@@ -1,2477 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2021, 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.
-#
-#***************************************************************************
-
-dnl CURL_CHECK_DEF (SYMBOL, [INCLUDES], [SILENT])
-dnl -------------------------------------------------
-dnl Use the C preprocessor to find out if the given object-style symbol
-dnl is defined and get its expansion. This macro will not use default
-dnl includes even if no INCLUDES argument is given. This macro will run
-dnl silently when invoked with three arguments. If the expansion would
-dnl result in a set of double-quoted strings the returned expansion will
-dnl actually be a single double-quoted string concatenating all them.
-
-AC_DEFUN([CURL_CHECK_DEF], [
-  AC_REQUIRE([CURL_CPP_P])dnl
-  OLDCPPFLAGS=$CPPFLAGS
-  # CPPPFLAG comes from CURL_CPP_P
-  CPPFLAGS="$CPPFLAGS $CPPPFLAG"
-  AS_VAR_PUSHDEF([ac_HaveDef], [curl_cv_have_def_$1])dnl
-  AS_VAR_PUSHDEF([ac_Def], [curl_cv_def_$1])dnl
-  if test -z "$SED"; then
-    AC_MSG_ERROR([SED not set. Cannot continue without SED being set.])
-  fi
-  if test -z "$GREP"; then
-    AC_MSG_ERROR([GREP not set. Cannot continue without GREP being set.])
-  fi
-  ifelse($3,,[AC_MSG_CHECKING([for preprocessor definition of $1])])
-  tmp_exp=""
-  AC_PREPROC_IFELSE([
-    AC_LANG_SOURCE(
-ifelse($2,,,[$2])[[
-#ifdef $1
-CURL_DEF_TOKEN $1
-#endif
-    ]])
-  ],[
-    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
-      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
-      "$SED" 's/.*CURL_DEF_TOKEN[[ ]][[ ]]*//' 2>/dev/null | \
-      "$SED" 's/[["]][[ ]]*[["]]//g' 2>/dev/null`
-    if test -z "$tmp_exp" || test "$tmp_exp" = "$1"; then
-      tmp_exp=""
-    fi
-  ])
-  if test -z "$tmp_exp"; then
-    AS_VAR_SET(ac_HaveDef, no)
-    ifelse($3,,[AC_MSG_RESULT([no])])
-  else
-    AS_VAR_SET(ac_HaveDef, yes)
-    AS_VAR_SET(ac_Def, $tmp_exp)
-    ifelse($3,,[AC_MSG_RESULT([$tmp_exp])])
-  fi
-  AS_VAR_POPDEF([ac_Def])dnl
-  AS_VAR_POPDEF([ac_HaveDef])dnl
-  CPPFLAGS=$OLDCPPFLAGS
-])
-
-
-dnl CURL_CHECK_DEF_CC (SYMBOL, [INCLUDES], [SILENT])
-dnl -------------------------------------------------
-dnl Use the C compiler to find out only if the given symbol is defined
-dnl or not, this can not find out its expansion. This macro will not use
-dnl default includes even if no INCLUDES argument is given. This macro
-dnl will run silently when invoked with three arguments.
-
-AC_DEFUN([CURL_CHECK_DEF_CC], [
-  AS_VAR_PUSHDEF([ac_HaveDef], [curl_cv_have_def_$1])dnl
-  ifelse($3,,[AC_MSG_CHECKING([for compiler definition of $1])])
-  AC_COMPILE_IFELSE([
-    AC_LANG_SOURCE(
-ifelse($2,,,[$2])[[
-int main (void)
-{
-#ifdef $1
-  return 0;
-#else
-  force compilation error
-#endif
-}
-    ]])
-  ],[
-    tst_symbol_defined="yes"
-  ],[
-    tst_symbol_defined="no"
-  ])
-  if test "$tst_symbol_defined" = "yes"; then
-    AS_VAR_SET(ac_HaveDef, yes)
-    ifelse($3,,[AC_MSG_RESULT([yes])])
-  else
-    AS_VAR_SET(ac_HaveDef, no)
-    ifelse($3,,[AC_MSG_RESULT([no])])
-  fi
-  AS_VAR_POPDEF([ac_HaveDef])dnl
-])
-
-
-dnl CURL_CHECK_LIB_XNET
-dnl -------------------------------------------------
-dnl Verify if X/Open network library is required.
-
-AC_DEFUN([CURL_CHECK_LIB_XNET], [
-  AC_MSG_CHECKING([if X/Open network library is required])
-  tst_lib_xnet_required="no"
-  AC_COMPILE_IFELSE([
-    AC_LANG_SOURCE([[
-int main (void)
-{
-#if defined(__hpux) && defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 600)
-  return 0;
-#elif defined(__hpux) && defined(_XOPEN_SOURCE_EXTENDED)
-  return 0;
-#else
-  force compilation error
-#endif
-}
-    ]])
-  ],[
-    tst_lib_xnet_required="yes"
-    LIBS="-lxnet $LIBS"
-  ])
-  AC_MSG_RESULT([$tst_lib_xnet_required])
-])
-
-
-dnl CURL_CHECK_AIX_ALL_SOURCE
-dnl -------------------------------------------------
-dnl Provides a replacement of traditional AC_AIX with
-dnl an uniform behavior across all autoconf versions,
-dnl and with our own placement rules.
-
-AC_DEFUN([CURL_CHECK_AIX_ALL_SOURCE], [
-  AH_VERBATIM([_ALL_SOURCE],
-    [/* Define to 1 if OS is AIX. */
-#ifndef _ALL_SOURCE
-#  undef _ALL_SOURCE
-#endif])
-  AC_BEFORE([$0], [AC_SYS_LARGEFILE])dnl
-  AC_BEFORE([$0], [CURL_CONFIGURE_REENTRANT])dnl
-  AC_BEFORE([$0], [CURL_CONFIGURE_PULL_SYS_POLL])dnl
-  AC_MSG_CHECKING([if OS is AIX (to define _ALL_SOURCE)])
-  AC_EGREP_CPP([yes_this_is_aix],[
-#ifdef _AIX
-   yes_this_is_aix
-#endif
-  ],[
-    AC_MSG_RESULT([yes])
-    AC_DEFINE(_ALL_SOURCE)
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-])
-
-
-dnl CURL_CHECK_HEADER_WINDOWS
-dnl -------------------------------------------------
-dnl Check for compilable and valid windows.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINDOWS], [
-  AC_CACHE_CHECK([for windows.h], [curl_cv_header_windows_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINDOWS_H shall not be defined.
-#else
-        int dummy=2*WINVER;
-#endif
-      ]])
-    ],[
-      curl_cv_header_windows_h="yes"
-    ],[
-      curl_cv_header_windows_h="no"
-    ])
-  ])
-  case "$curl_cv_header_windows_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINDOWS_H, 1,
-        [Define to 1 if you have the windows.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_NATIVE_WINDOWS
-dnl -------------------------------------------------
-dnl Check if building a native Windows target
-
-AC_DEFUN([CURL_CHECK_NATIVE_WINDOWS], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([whether build target is a native Windows one], [curl_cv_native_windows], [
-    if test "$curl_cv_header_windows_h" = "no"; then
-      curl_cv_native_windows="no"
-    else
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-        ]],[[
-#if defined(__MINGW32__) || defined(__MINGW32CE__) || \
-   (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64)))
-          int dummy=1;
-#else
-          Not a native Windows build target.
-#endif
-        ]])
-      ],[
-        curl_cv_native_windows="yes"
-      ],[
-        curl_cv_native_windows="no"
-      ])
-    fi
-  ])
-  AM_CONDITIONAL(DOING_NATIVE_WINDOWS, test "x$curl_cv_native_windows" = xyes)
-])
-
-
-dnl CURL_CHECK_HEADER_WINSOCK2
-dnl -------------------------------------------------
-dnl Check for compilable and valid winsock2.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINSOCK2], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for winsock2.h], [curl_cv_header_winsock2_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WINSOCK2_H shall not be defined.
-#else
-        int dummy=2*IPPROTO_ESP;
-#endif
-      ]])
-    ],[
-      curl_cv_header_winsock2_h="yes"
-    ],[
-      curl_cv_header_winsock2_h="no"
-    ])
-  ])
-  case "$curl_cv_header_winsock2_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINSOCK2_H, 1,
-        [Define to 1 if you have the winsock2.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WS2TCPIP
-dnl -------------------------------------------------
-dnl Check for compilable and valid ws2tcpip.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WS2TCPIP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CACHE_CHECK([for ws2tcpip.h], [curl_cv_header_ws2tcpip_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock2.h>
-#include <ws2tcpip.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__) || defined(__MINGW32CE__)
-        HAVE_WS2TCPIP_H shall not be defined.
-#else
-        int dummy=2*IP_PKTINFO;
-#endif
-      ]])
-    ],[
-      curl_cv_header_ws2tcpip_h="yes"
-    ],[
-      curl_cv_header_ws2tcpip_h="no"
-    ])
-  ])
-  case "$curl_cv_header_ws2tcpip_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WS2TCPIP_H, 1,
-        [Define to 1 if you have the ws2tcpip.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINCRYPT
-dnl -------------------------------------------------
-dnl Check for compilable and valid wincrypt.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINCRYPT], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for wincrypt.h], [curl_cv_header_wincrypt_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <wincrypt.h>
-      ]],[[
-        int dummy=2*PROV_RSA_FULL;
-      ]])
-    ],[
-      curl_cv_header_wincrypt_h="yes"
-    ],[
-      curl_cv_header_wincrypt_h="no"
-    ])
-  ])
-  case "$curl_cv_header_wincrypt_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINCRYPT_H, 1,
-        [Define to 1 if you have the wincrypt.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINLDAP
-dnl -------------------------------------------------
-dnl Check for compilable and valid winldap.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINLDAP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for winldap.h], [curl_cv_header_winldap_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#endif
-#include <winldap.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINLDAP_H shall not be defined.
-#else
-        LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-        ULONG res = ldap_unbind(ldp);
-#endif
-      ]])
-    ],[
-      curl_cv_header_winldap_h="yes"
-    ],[
-      curl_cv_header_winldap_h="no"
-    ])
-  ])
-  case "$curl_cv_header_winldap_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINLDAP_H, 1,
-        [Define to 1 if you have the winldap.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_WINBER
-dnl -------------------------------------------------
-dnl Check for compilable and valid winber.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINBER], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINLDAP])dnl
-  AC_CACHE_CHECK([for winber.h], [curl_cv_header_winber_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#endif
-#include <winldap.h>
-#include <winber.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINBER_H shall not be defined.
-#else
-        BERVAL *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-#endif
-      ]])
-    ],[
-      curl_cv_header_winber_h="yes"
-    ],[
-      curl_cv_header_winber_h="no"
-    ])
-  ])
-  case "$curl_cv_header_winber_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINBER_H, 1,
-        [Define to 1 if you have the winber.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_LBER
-dnl -------------------------------------------------
-dnl Check for compilable and valid lber.h header,
-dnl and check if it is needed even with ldap.h
-
-AC_DEFUN([CURL_CHECK_HEADER_LBER], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for lber.h], [curl_cv_header_lber_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#include <lber.h>
-      ]],[[
-        BerValue *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-      ]])
-    ],[
-      curl_cv_header_lber_h="yes"
-    ],[
-      curl_cv_header_lber_h="no"
-    ])
-  ])
-  if test "$curl_cv_header_lber_h" = "yes"; then
-    AC_DEFINE_UNQUOTED(HAVE_LBER_H, 1,
-      [Define to 1 if you have the lber.h header file.])
-    #
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#include <ldap.h>
-      ]],[[
-        BerValue *bvp = NULL;
-        BerElement *bep = ber_init(bvp);
-        ber_free(bep, 1);
-      ]])
-    ],[
-      curl_cv_need_header_lber_h="no"
-    ],[
-      curl_cv_need_header_lber_h="yes"
-    ])
-    #
-    case "$curl_cv_need_header_lber_h" in
-      yes)
-        AC_DEFINE_UNQUOTED(NEED_LBER_H, 1,
-          [Define to 1 if you need the lber.h header file even with ldap.h])
-        ;;
-    esac
-  fi
-])
-
-
-dnl CURL_CHECK_HEADER_LDAP
-dnl -------------------------------------------------
-dnl Check for compilable and valid ldap.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_LDAP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_LBER])dnl
-  AC_CACHE_CHECK([for ldap.h], [curl_cv_header_ldap_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#include <ldap.h>
-      ]],[[
-        LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-        int res = ldap_unbind(ldp);
-      ]])
-    ],[
-      curl_cv_header_ldap_h="yes"
-    ],[
-      curl_cv_header_ldap_h="no"
-    ])
-  ])
-  case "$curl_cv_header_ldap_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_LDAP_H, 1,
-        [Define to 1 if you have the ldap.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_LDAP_SSL
-dnl -------------------------------------------------
-dnl Check for compilable and valid ldap_ssl.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_LDAP_SSL], [
-  AC_REQUIRE([CURL_CHECK_HEADER_LDAP])dnl
-  AC_CACHE_CHECK([for ldap_ssl.h], [curl_cv_header_ldap_ssl_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-#include <ldap_ssl.h>
-      ]],[[
-        LDAP *ldp = ldapssl_init("dummy", LDAPS_PORT, 1);
-      ]])
-    ],[
-      curl_cv_header_ldap_ssl_h="yes"
-    ],[
-      curl_cv_header_ldap_ssl_h="no"
-    ])
-  ])
-  case "$curl_cv_header_ldap_ssl_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_LDAP_SSL_H, 1,
-        [Define to 1 if you have the ldap_ssl.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_HEADER_LDAPSSL
-dnl -------------------------------------------------
-dnl Check for compilable and valid ldapssl.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_LDAPSSL], [
-  AC_REQUIRE([CURL_CHECK_HEADER_LDAP])dnl
-  AC_CACHE_CHECK([for ldapssl.h], [curl_cv_header_ldapssl_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-#include <ldapssl.h>
-      ]],[[
-        char *cert_label = NULL;
-        LDAP *ldp = ldap_ssl_init("dummy", LDAPS_PORT, cert_label);
-      ]])
-    ],[
-      curl_cv_header_ldapssl_h="yes"
-    ],[
-      curl_cv_header_ldapssl_h="no"
-    ])
-  ])
-  case "$curl_cv_header_ldapssl_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_LDAPSSL_H, 1,
-        [Define to 1 if you have the ldapssl.h header file.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_LIBS_WINLDAP
-dnl -------------------------------------------------
-dnl Check for libraries needed for WINLDAP support,
-dnl and prepended to LIBS any needed libraries.
-dnl This macro can take an optional parameter with a
-dnl whitespace separated list of libraries to check
-dnl before the WINLDAP default ones.
-
-AC_DEFUN([CURL_CHECK_LIBS_WINLDAP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINBER])dnl
-  #
-  AC_MSG_CHECKING([for WINLDAP libraries])
-  #
-  u_libs=""
-  #
-  ifelse($1,,,[
-    for x_lib in $1; do
-      case "$x_lib" in
-        -l*)
-          l_lib="$x_lib"
-          ;;
-        *)
-          l_lib="-l$x_lib"
-          ;;
-      esac
-      if test -z "$u_libs"; then
-        u_libs="$l_lib"
-      else
-        u_libs="$u_libs $l_lib"
-      fi
-    done
-  ])
-  #
-  curl_cv_save_LIBS="$LIBS"
-  curl_cv_ldap_LIBS="unknown"
-  #
-  for x_nlibs in '' "$u_libs" \
-    '-lwldap32' ; do
-    if test "$curl_cv_ldap_LIBS" = "unknown"; then
-      if test -z "$x_nlibs"; then
-        LIBS="$curl_cv_save_LIBS"
-      else
-        LIBS="$x_nlibs $curl_cv_save_LIBS"
-      fi
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINLDAP_H
-#include <winldap.h>
-#endif
-#ifdef HAVE_WINBER_H
-#include <winber.h>
-#endif
-#endif
-        ]],[[
-          BERVAL *bvp = NULL;
-          BerElement *bep = ber_init(bvp);
-          LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-          ULONG res = ldap_unbind(ldp);
-          ber_free(bep, 1);
-        ]])
-      ],[
-        curl_cv_ldap_LIBS="$x_nlibs"
-      ])
-    fi
-  done
-  #
-  LIBS="$curl_cv_save_LIBS"
-  #
-  case X-"$curl_cv_ldap_LIBS" in
-    X-unknown)
-      AC_MSG_RESULT([cannot find WINLDAP libraries])
-      ;;
-    X-)
-      AC_MSG_RESULT([no additional lib required])
-      ;;
-    *)
-      if test -z "$curl_cv_save_LIBS"; then
-        LIBS="$curl_cv_ldap_LIBS"
-      else
-        LIBS="$curl_cv_ldap_LIBS $curl_cv_save_LIBS"
-      fi
-      AC_MSG_RESULT([$curl_cv_ldap_LIBS])
-      ;;
-  esac
-  #
-])
-
-
-dnl CURL_CHECK_LIBS_LDAP
-dnl -------------------------------------------------
-dnl Check for libraries needed for LDAP support,
-dnl and prepended to LIBS any needed libraries.
-dnl This macro can take an optional parameter with a
-dnl whitespace separated list of libraries to check
-dnl before the default ones.
-
-AC_DEFUN([CURL_CHECK_LIBS_LDAP], [
-  AC_REQUIRE([CURL_CHECK_HEADER_LDAP])dnl
-  #
-  AC_MSG_CHECKING([for LDAP libraries])
-  #
-  u_libs=""
-  #
-  ifelse($1,,,[
-    for x_lib in $1; do
-      case "$x_lib" in
-        -l*)
-          l_lib="$x_lib"
-          ;;
-        *)
-          l_lib="-l$x_lib"
-          ;;
-      esac
-      if test -z "$u_libs"; then
-        u_libs="$l_lib"
-      else
-        u_libs="$u_libs $l_lib"
-      fi
-    done
-  ])
-  #
-  curl_cv_save_LIBS="$LIBS"
-  curl_cv_ldap_LIBS="unknown"
-  #
-  for x_nlibs in '' "$u_libs" \
-    '-lldap' \
-    '-lldap -llber' \
-    '-llber -lldap' \
-    '-lldapssl -lldapx -lldapsdk' \
-    '-lldapsdk -lldapx -lldapssl' \
-    '-lldap -llber -lssl -lcrypto' ; do
-
-    if test "$curl_cv_ldap_LIBS" = "unknown"; then
-      if test -z "$x_nlibs"; then
-        LIBS="$curl_cv_save_LIBS"
-      else
-        LIBS="$x_nlibs $curl_cv_save_LIBS"
-      fi
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#endif
-#ifndef NULL
-#define NULL (void *)0
-#endif
-#ifndef LDAP_DEPRECATED
-#define LDAP_DEPRECATED 1
-#endif
-#ifdef NEED_LBER_H
-#include <lber.h>
-#endif
-#ifdef HAVE_LDAP_H
-#include <ldap.h>
-#endif
-        ]],[[
-          BerValue *bvp = NULL;
-          BerElement *bep = ber_init(bvp);
-          LDAP *ldp = ldap_init("dummy", LDAP_PORT);
-          int res = ldap_unbind(ldp);
-          ber_free(bep, 1);
-        ]])
-      ],[
-        curl_cv_ldap_LIBS="$x_nlibs"
-      ])
-    fi
-  done
-  #
-  LIBS="$curl_cv_save_LIBS"
-  #
-  case X-"$curl_cv_ldap_LIBS" in
-    X-unknown)
-      AC_MSG_RESULT([cannot find LDAP libraries])
-      ;;
-    X-)
-      AC_MSG_RESULT([no additional lib required])
-      ;;
-    *)
-      if test -z "$curl_cv_save_LIBS"; then
-        LIBS="$curl_cv_ldap_LIBS"
-      else
-        LIBS="$curl_cv_ldap_LIBS $curl_cv_save_LIBS"
-      fi
-      AC_MSG_RESULT([$curl_cv_ldap_LIBS])
-      ;;
-  esac
-  #
-])
-
-
-dnl CURL_CHECK_HEADER_MALLOC
-dnl -------------------------------------------------
-dnl Check for compilable and valid malloc.h header,
-dnl and check if it is needed even with stdlib.h
-
-AC_DEFUN([CURL_CHECK_HEADER_MALLOC], [
-  AC_CACHE_CHECK([for malloc.h], [curl_cv_header_malloc_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <malloc.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      curl_cv_header_malloc_h="yes"
-    ],[
-      curl_cv_header_malloc_h="no"
-    ])
-  ])
-  if test "$curl_cv_header_malloc_h" = "yes"; then
-    AC_DEFINE_UNQUOTED(HAVE_MALLOC_H, 1,
-      [Define to 1 if you have the malloc.h header file.])
-    #
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <stdlib.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      curl_cv_need_header_malloc_h="no"
-    ],[
-      curl_cv_need_header_malloc_h="yes"
-    ])
-    #
-    case "$curl_cv_need_header_malloc_h" in
-      yes)
-        AC_DEFINE_UNQUOTED(NEED_MALLOC_H, 1,
-          [Define to 1 if you need the malloc.h header file even with stdlib.h])
-        ;;
-    esac
-  fi
-])
-
-
-dnl CURL_CHECK_HEADER_MEMORY
-dnl -------------------------------------------------
-dnl Check for compilable and valid memory.h header,
-dnl and check if it is needed even with stdlib.h for
-dnl memory related functions.
-
-AC_DEFUN([CURL_CHECK_HEADER_MEMORY], [
-  AC_CACHE_CHECK([for memory.h], [curl_cv_header_memory_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <memory.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      curl_cv_header_memory_h="yes"
-    ],[
-      curl_cv_header_memory_h="no"
-    ])
-  ])
-  if test "$curl_cv_header_memory_h" = "yes"; then
-    AC_DEFINE_UNQUOTED(HAVE_MEMORY_H, 1,
-      [Define to 1 if you have the memory.h header file.])
-    #
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <stdlib.h>
-      ]],[[
-        void *p = malloc(10);
-        void *q = calloc(10,10);
-        free(p);
-        free(q);
-      ]])
-    ],[
-      curl_cv_need_header_memory_h="no"
-    ],[
-      curl_cv_need_header_memory_h="yes"
-    ])
-    #
-    case "$curl_cv_need_header_memory_h" in
-      yes)
-        AC_DEFINE_UNQUOTED(NEED_MEMORY_H, 1,
-          [Define to 1 if you need the memory.h header file even with stdlib.h])
-        ;;
-    esac
-  fi
-])
-
-dnl TYPE_SOCKADDR_STORAGE
-dnl -------------------------------------------------
-dnl Check for struct sockaddr_storage. Most IPv6-enabled
-dnl hosts have it, but AIX 4.3 is one known exception.
-
-AC_DEFUN([TYPE_SOCKADDR_STORAGE],
-[
-   AC_CHECK_TYPE([struct sockaddr_storage],
-        AC_DEFINE(HAVE_STRUCT_SOCKADDR_STORAGE, 1,
-                  [if struct sockaddr_storage is defined]), ,
-   [
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-   ])
-])
-
-dnl CURL_CHECK_FUNC_RECV
-dnl -------------------------------------------------
-dnl Test if the socket recv() function is available,
-dnl and check its return type and the types of its
-dnl arguments. If the function succeeds HAVE_RECV
-dnl will be defined, defining the types of the arguments
-dnl in RECV_TYPE_ARG1, RECV_TYPE_ARG2, RECV_TYPE_ARG3
-dnl and RECV_TYPE_ARG4, defining the type of the function
-dnl return value in RECV_TYPE_RETV.
-
-AC_DEFUN([CURL_CHECK_FUNC_RECV], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for recv])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_PROTO_BSDSOCKET_H
-#include <proto/bsdsocket.h>
-struct Library *SocketBase = NULL;
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      recv(0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_recv="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_recv="no"
-  ])
-  #
-  if test "$curl_cv_recv" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for recv],
-      [curl_cv_func_recv_args], [
-      curl_cv_func_recv_args="unknown"
-      for recv_retv in 'int' 'ssize_t'; do
-        for recv_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for recv_arg2 in 'char *' 'void *'; do
-            for recv_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for recv_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_recv_args" = "unknown"; then
-                  AC_COMPILE_IFELSE([
-                    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#define RECVCALLCONV PASCAL
-#else
-#ifdef HAVE_PROTO_BSDSOCKET_H
-#include <proto/bsdsocket.h>
-struct Library *SocketBase = NULL;
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define RECVCALLCONV
-#endif
-#ifndef HAVE_PROTO_BSDSOCKET_H
-                      extern $recv_retv RECVCALLCONV
-                      recv($recv_arg1, $recv_arg2, $recv_arg3, $recv_arg4);
-#endif
-                    ]],[[
-                      $recv_arg1 s=0;
-                      $recv_arg2 buf=0;
-                      $recv_arg3 len=0;
-                      $recv_arg4 flags=0;
-                      $recv_retv res = recv(s, buf, len, flags);
-                    ]])
-                  ],[
-                    curl_cv_func_recv_args="$recv_arg1,$recv_arg2,$recv_arg3,$recv_arg4,$recv_retv"
-                  ])
-                fi
-              done
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_recv_args" = "unknown"; then
-      AC_MSG_ERROR([Cannot find proper types to use for recv args])
-    else
-      recv_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_recv_args" | sed 's/\*/\*/g'`
-      IFS=$recv_prev_IFS
-      shift
-      #
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG2, $[2],
-        [Define to the type of arg 2 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG3, $[3],
-        [Define to the type of arg 3 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_ARG4, $[4],
-        [Define to the type of arg 4 for recv.])
-      AC_DEFINE_UNQUOTED(RECV_TYPE_RETV, $[5],
-        [Define to the function return type for recv.])
-      #
-      AC_DEFINE_UNQUOTED(HAVE_RECV, 1,
-        [Define to 1 if you have the recv function.])
-      curl_cv_func_recv="yes"
-    fi
-  else
-    AC_MSG_ERROR([Unable to link function recv])
-  fi
-])
-
-
-dnl CURL_CHECK_FUNC_SEND
-dnl -------------------------------------------------
-dnl Test if the socket send() function is available,
-dnl and check its return type and the types of its
-dnl arguments. If the function succeeds HAVE_SEND
-dnl will be defined, defining the types of the arguments
-dnl in SEND_TYPE_ARG1, SEND_TYPE_ARG2, SEND_TYPE_ARG3
-dnl and SEND_TYPE_ARG4, defining the type of the function
-dnl return value in SEND_TYPE_RETV, and also defining the
-dnl type qualifier of second argument in SEND_QUAL_ARG2.
-
-AC_DEFUN([CURL_CHECK_FUNC_SEND], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for send])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_PROTO_BSDSOCKET_H
-#include <proto/bsdsocket.h>
-struct Library *SocketBase = NULL;
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-    ]],[[
-      send(0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_send="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_send="no"
-  ])
-  #
-  if test "$curl_cv_send" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for send],
-      [curl_cv_func_send_args], [
-      curl_cv_func_send_args="unknown"
-      for send_retv in 'int' 'ssize_t'; do
-        for send_arg1 in 'int' 'ssize_t' 'SOCKET'; do
-          for send_arg2 in 'char *' 'void *' 'const char *' 'const void *'; do
-            for send_arg3 in 'size_t' 'int' 'socklen_t' 'unsigned int'; do
-              for send_arg4 in 'int' 'unsigned int'; do
-                if test "$curl_cv_func_send_args" = "unknown"; then
-                  AC_COMPILE_IFELSE([
-                    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#define SENDCALLCONV PASCAL
-#else
-#ifdef HAVE_PROTO_BSDSOCKET_H
-#include <proto/bsdsocket.h>
-struct Library *SocketBase = NULL;
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#define SENDCALLCONV
-#endif
-#ifndef HAVE_PROTO_BSDSOCKET_H
-                      extern $send_retv SENDCALLCONV
-                      send($send_arg1, $send_arg2, $send_arg3, $send_arg4);
-#endif
-                    ]],[[
-                      $send_arg1 s=0;
-                      $send_arg3 len=0;
-                      $send_arg4 flags=0;
-                      $send_retv res = send(s, 0, len, flags);
-                    ]])
-                  ],[
-                    curl_cv_func_send_args="$send_arg1,$send_arg2,$send_arg3,$send_arg4,$send_retv"
-                  ])
-                fi
-              done
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_send_args" = "unknown"; then
-      AC_MSG_ERROR([Cannot find proper types to use for send args])
-    else
-      send_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_send_args" | sed 's/\*/\*/g'`
-      IFS=$send_prev_IFS
-      shift
-      #
-      send_qual_type_arg2=$[2]
-      #
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG3, $[3],
-        [Define to the type of arg 3 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG4, $[4],
-        [Define to the type of arg 4 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_RETV, $[5],
-        [Define to the function return type for send.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$send_qual_type_arg2" in
-        const*)
-          send_qual_arg2=const
-          send_type_arg2=`echo $send_qual_type_arg2 | sed 's/^const //'`
-        ;;
-        *)
-          send_qual_arg2=
-          send_type_arg2=$send_qual_type_arg2
-        ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(SEND_QUAL_ARG2, $send_qual_arg2,
-        [Define to the type qualifier of arg 2 for send.])
-      AC_DEFINE_UNQUOTED(SEND_TYPE_ARG2, $send_type_arg2,
-        [Define to the type of arg 2 for send.])
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_SEND, 1,
-        [Define to 1 if you have the send function.])
-      curl_cv_func_send="yes"
-    fi
-  else
-    AC_MSG_ERROR([Unable to link function send])
-  fi
-])
-
-dnl CURL_CHECK_MSG_NOSIGNAL
-dnl -------------------------------------------------
-dnl Check for MSG_NOSIGNAL
-
-AC_DEFUN([CURL_CHECK_MSG_NOSIGNAL], [
-  AC_CHECK_HEADERS(sys/types.h sys/socket.h)
-  AC_CACHE_CHECK([for MSG_NOSIGNAL], [curl_cv_msg_nosignal], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_PROTO_BSDSOCKET_H
-#include <proto/bsdsocket.h>
-struct Library *SocketBase = NULL;
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#endif
-      ]],[[
-        int flag=MSG_NOSIGNAL;
-      ]])
-    ],[
-      curl_cv_msg_nosignal="yes"
-    ],[
-      curl_cv_msg_nosignal="no"
-    ])
-  ])
-  case "$curl_cv_msg_nosignal" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_MSG_NOSIGNAL, 1,
-        [Define to 1 if you have the MSG_NOSIGNAL flag.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_STRUCT_TIMEVAL
-dnl -------------------------------------------------
-dnl Check for timeval struct
-
-AC_DEFUN([CURL_CHECK_STRUCT_TIMEVAL], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
-  AC_CHECK_HEADERS(sys/types.h sys/time.h sys/socket.h)
-  AC_CACHE_CHECK([for struct timeval], [curl_cv_struct_timeval], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#include <time.h>
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-      ]],[[
-        struct timeval ts;
-        ts.tv_sec  = 0;
-        ts.tv_usec = 0;
-      ]])
-    ],[
-      curl_cv_struct_timeval="yes"
-    ],[
-      curl_cv_struct_timeval="no"
-    ])
-  ])
-  case "$curl_cv_struct_timeval" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_STRUCT_TIMEVAL, 1,
-        [Define to 1 if you have the timeval struct.])
-      ;;
-  esac
-])
-
-
-dnl TYPE_IN_ADDR_T
-dnl -------------------------------------------------
-dnl Check for in_addr_t: it is used to receive the return code of inet_addr()
-dnl and a few other things.
-
-AC_DEFUN([TYPE_IN_ADDR_T], [
-  AC_CHECK_TYPE([in_addr_t], ,[
-    dnl in_addr_t not available
-    AC_CACHE_CHECK([for in_addr_t equivalent],
-      [curl_cv_in_addr_t_equiv], [
-      curl_cv_in_addr_t_equiv="unknown"
-      for t in "unsigned long" int size_t unsigned long; do
-        if test "$curl_cv_in_addr_t_equiv" = "unknown"; then
-          AC_LINK_IFELSE([
-            AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-            ]],[[
-              $t data = inet_addr ("1.2.3.4");
-            ]])
-          ],[
-            curl_cv_in_addr_t_equiv="$t"
-          ])
-        fi
-      done
-    ])
-    case "$curl_cv_in_addr_t_equiv" in
-      unknown)
-        AC_MSG_ERROR([Cannot find a type to use in place of in_addr_t])
-        ;;
-      *)
-        AC_DEFINE_UNQUOTED(in_addr_t, $curl_cv_in_addr_t_equiv,
-          [Type to use in place of in_addr_t when system does not provide it.])
-        ;;
-    esac
-  ],[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#else
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#endif
-  ])
-])
-
-
-dnl CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC
-dnl -------------------------------------------------
-dnl Check if monotonic clock_gettime is available.
-
-AC_DEFUN([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC], [
-  AC_CHECK_HEADERS(sys/types.h sys/time.h)
-  AC_MSG_CHECKING([for monotonic clock_gettime])
-  #
-  if test "x$dontwant_rt" = "xno" ; then
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#include <time.h>
-      ]],[[
-        struct timespec ts;
-        (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      curl_func_clock_gettime="yes"
-    ],[
-      AC_MSG_RESULT([no])
-      curl_func_clock_gettime="no"
-    ])
-  fi
-  dnl Definition of HAVE_CLOCK_GETTIME_MONOTONIC is intentionally postponed
-  dnl until library linking and run-time checks for clock_gettime succeed.
-])
-
-
-dnl CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC
-dnl -------------------------------------------------
-dnl If monotonic clock_gettime is available then,
-dnl check and prepended to LIBS any needed libraries.
-
-AC_DEFUN([CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC], [
-  AC_REQUIRE([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC])dnl
-  #
-  if test "$curl_func_clock_gettime" = "yes"; then
-    #
-    AC_MSG_CHECKING([for clock_gettime in libraries])
-    #
-    curl_cv_save_LIBS="$LIBS"
-    curl_cv_gclk_LIBS="unknown"
-    #
-    for x_xlibs in '' '-lrt' '-lposix4' ; do
-      if test "$curl_cv_gclk_LIBS" = "unknown"; then
-        if test -z "$x_xlibs"; then
-          LIBS="$curl_cv_save_LIBS"
-        else
-          LIBS="$x_xlibs $curl_cv_save_LIBS"
-        fi
-        AC_LINK_IFELSE([
-          AC_LANG_PROGRAM([[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#include <time.h>
-          ]],[[
-            struct timespec ts;
-            (void)clock_gettime(CLOCK_MONOTONIC, &ts);
-          ]])
-        ],[
-          curl_cv_gclk_LIBS="$x_xlibs"
-        ])
-      fi
-    done
-    #
-    LIBS="$curl_cv_save_LIBS"
-    #
-    case X-"$curl_cv_gclk_LIBS" in
-      X-unknown)
-        AC_MSG_RESULT([cannot find clock_gettime])
-        AC_MSG_WARN([HAVE_CLOCK_GETTIME_MONOTONIC will not be defined])
-        curl_func_clock_gettime="no"
-        ;;
-      X-)
-        AC_MSG_RESULT([no additional lib required])
-        curl_func_clock_gettime="yes"
-        ;;
-      *)
-        if test -z "$curl_cv_save_LIBS"; then
-          LIBS="$curl_cv_gclk_LIBS"
-        else
-          LIBS="$curl_cv_gclk_LIBS $curl_cv_save_LIBS"
-        fi
-        AC_MSG_RESULT([$curl_cv_gclk_LIBS])
-        curl_func_clock_gettime="yes"
-        ;;
-    esac
-    #
-    dnl only do runtime verification when not cross-compiling
-    if test "x$cross_compiling" != "xyes" &&
-      test "$curl_func_clock_gettime" = "yes"; then
-      AC_MSG_CHECKING([if monotonic clock_gettime works])
-      CURL_RUN_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#include <time.h>
-        ]],[[
-          struct timespec ts;
-          if (0 == clock_gettime(CLOCK_MONOTONIC, &ts))
-            exit(0);
-          else
-            exit(1);
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-      ],[
-        AC_MSG_RESULT([no])
-        AC_MSG_WARN([HAVE_CLOCK_GETTIME_MONOTONIC will not be defined])
-        curl_func_clock_gettime="no"
-        LIBS="$curl_cv_save_LIBS"
-      ])
-    fi
-    #
-    case "$curl_func_clock_gettime" in
-      yes)
-        AC_DEFINE_UNQUOTED(HAVE_CLOCK_GETTIME_MONOTONIC, 1,
-          [Define to 1 if you have the clock_gettime function and monotonic timer.])
-        ;;
-    esac
-    #
-  fi
-  #
-])
-
-
-dnl CURL_CHECK_LIBS_CONNECT
-dnl -------------------------------------------------
-dnl Verify if network connect function is already available
-dnl using current libraries or if another one is required.
-
-AC_DEFUN([CURL_CHECK_LIBS_CONNECT], [
-  AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl
-  AC_REQUIRE([CURL_INCLUDES_BSDSOCKET])dnl
-  AC_MSG_CHECKING([for connect in libraries])
-  tst_connect_save_LIBS="$LIBS"
-  tst_connect_need_LIBS="unknown"
-  for tst_lib in '' '-lsocket' ; do
-    if test "$tst_connect_need_LIBS" = "unknown"; then
-      LIBS="$tst_lib $tst_connect_save_LIBS"
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-          $curl_includes_winsock2
-          $curl_includes_bsdsocket
-          #if !defined(HAVE_WINDOWS_H) && !defined(HAVE_PROTO_BSDSOCKET_H)
-            int connect(int, void*, int);
-          #endif
-        ]],[[
-          if(0 != connect(0, 0, 0))
-            return 1;
-        ]])
-      ],[
-        tst_connect_need_LIBS="$tst_lib"
-      ])
-    fi
-  done
-  LIBS="$tst_connect_save_LIBS"
-  #
-  case X-"$tst_connect_need_LIBS" in
-    X-unknown)
-      AC_MSG_RESULT([cannot find connect])
-      AC_MSG_ERROR([cannot find connect function in libraries.])
-      ;;
-    X-)
-      AC_MSG_RESULT([yes])
-      ;;
-    *)
-      AC_MSG_RESULT([$tst_connect_need_LIBS])
-      LIBS="$tst_connect_need_LIBS $tst_connect_save_LIBS"
-      ;;
-  esac
-])
-
-
-dnl CURL_DEFINE_UNQUOTED (VARIABLE, [VALUE])
-dnl -------------------------------------------------
-dnl Like AC_DEFINE_UNQUOTED this macro will define a C preprocessor
-dnl symbol that can be further used in custom template configuration
-dnl files. This macro, unlike AC_DEFINE_UNQUOTED, does not use a third
-dnl argument for the description. Symbol definitions done with this
-dnl macro are intended to be exclusively used in handcrafted *.h.in
-dnl template files. Contrary to what AC_DEFINE_UNQUOTED does, this one
-dnl prevents autoheader generation and insertion of symbol template
-dnl stub and definition into the first configuration header file. Do
-dnl not use this macro as a replacement for AC_DEFINE_UNQUOTED, each
-dnl one serves different functional needs.
-
-AC_DEFUN([CURL_DEFINE_UNQUOTED], [
-cat >>confdefs.h <<_EOF
-[@%:@define] $1 ifelse($#, 2, [$2], 1)
-_EOF
-])
-
-dnl CURL_CONFIGURE_PULL_SYS_POLL
-dnl -------------------------------------------------
-dnl The need for the sys/poll.h inclusion arises mainly to properly
-dnl interface AIX systems which define macros 'events' and 'revents'.
-
-AC_DEFUN([CURL_CONFIGURE_PULL_SYS_POLL], [
-  AC_REQUIRE([CURL_INCLUDES_POLL])dnl
-  #
-  tst_poll_events_macro_defined="unknown"
-  #
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-      $curl_includes_poll
-    ]],[[
-#if defined(events) || defined(revents)
-      return 0;
-#else
-      force compilation error
-#endif
-    ]])
-  ],[
-    tst_poll_events_macro_defined="yes"
-  ],[
-    tst_poll_events_macro_defined="no"
-  ])
-  #
-  if test "$tst_poll_events_macro_defined" = "yes"; then
-    if test "x$ac_cv_header_sys_poll_h" = "xyes"; then
-      CURL_DEFINE_UNQUOTED([CURL_PULL_SYS_POLL_H])
-    fi
-  fi
-  #
-])
-
-
-dnl CURL_CHECK_FUNC_SELECT
-dnl -------------------------------------------------
-dnl Test if the socket select() function is available,
-dnl and check its return type and the types of its
-dnl arguments. If the function succeeds HAVE_SELECT
-dnl will be defined, defining the types of the
-dnl arguments in SELECT_TYPE_ARG1, SELECT_TYPE_ARG234
-dnl and SELECT_TYPE_ARG5, defining the type of the
-dnl function return value in SELECT_TYPE_RETV, and
-dnl also defining the type qualifier of fifth argument
-dnl in SELECT_QUAL_ARG5.
-
-AC_DEFUN([CURL_CHECK_FUNC_SELECT], [
-  AC_REQUIRE([CURL_CHECK_STRUCT_TIMEVAL])dnl
-  AC_CHECK_HEADERS(sys/select.h sys/socket.h)
-  #
-  AC_MSG_CHECKING([for select])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#include <time.h>
-#ifndef HAVE_WINDOWS_H
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#elif defined(HAVE_UNISTD_H)
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_PROTO_BSDSOCKET_H
-#include <proto/bsdsocket.h>
-struct Library *SocketBase = NULL;
-#define select(a,b,c,d,e) WaitSelect(a,b,c,d,e,0)
-#endif
-#endif
-    ]],[[
-      select(0, 0, 0, 0, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    curl_cv_select="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    curl_cv_select="no"
-  ])
-  #
-  if test "$curl_cv_select" = "yes"; then
-    AC_CACHE_CHECK([types of args and return type for select],
-      [curl_cv_func_select_args], [
-      curl_cv_func_select_args="unknown"
-      for sel_retv in 'int' 'ssize_t'; do
-        for sel_arg1 in 'int' 'ssize_t' 'size_t' 'unsigned long int' 'unsigned int'; do
-          for sel_arg234 in 'fd_set *' 'int *' 'void *'; do
-            for sel_arg5 in 'struct timeval *' 'const struct timeval *'; do
-              if test "$curl_cv_func_select_args" = "unknown"; then
-                AC_COMPILE_IFELSE([
-                  AC_LANG_PROGRAM([[
-#undef inline
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#define SELECTCALLCONV PASCAL
-#endif
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#include <time.h>
-#ifndef HAVE_WINDOWS_H
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#elif defined(HAVE_UNISTD_H)
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_PROTO_BSDSOCKET_H
-#include <proto/bsdsocket.h>
-struct Library *SocketBase = NULL;
-#define select(a,b,c,d,e) WaitSelect(a,b,c,d,e,0)
-#endif
-#define SELECTCALLCONV
-#endif
-#ifndef HAVE_STRUCT_TIMEVAL
-                    struct timeval {
-                      long tv_sec;
-                      long tv_usec;
-                    };
-#endif
-#ifndef HAVE_PROTO_BSDSOCKET_H
-                    extern $sel_retv SELECTCALLCONV
-				select($sel_arg1,
-					$sel_arg234,
-					$sel_arg234,
-					$sel_arg234,
-					$sel_arg5);
-#endif
-                  ]],[[
-                    $sel_arg1   nfds=0;
-                    $sel_arg234 rfds=0;
-                    $sel_arg234 wfds=0;
-                    $sel_arg234 efds=0;
-                    $sel_retv res = select(nfds, rfds, wfds, efds, 0);
-                  ]])
-                ],[
-                  curl_cv_func_select_args="$sel_arg1,$sel_arg234,$sel_arg5,$sel_retv"
-                ])
-              fi
-            done
-          done
-        done
-      done
-    ]) # AC-CACHE-CHECK
-    if test "$curl_cv_func_select_args" = "unknown"; then
-      AC_MSG_WARN([Cannot find proper types to use for select args])
-      AC_MSG_WARN([HAVE_SELECT will not be defined])
-    else
-      select_prev_IFS=$IFS; IFS=','
-      set dummy `echo "$curl_cv_func_select_args" | sed 's/\*/\*/g'`
-      IFS=$select_prev_IFS
-      shift
-      #
-      sel_qual_type_arg5=$[3]
-      #
-      AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG1, $[1],
-        [Define to the type of arg 1 for select.])
-      AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG234, $[2],
-        [Define to the type of args 2, 3 and 4 for select.])
-      AC_DEFINE_UNQUOTED(SELECT_TYPE_RETV, $[4],
-        [Define to the function return type for select.])
-      #
-      prev_sh_opts=$-
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set -f
-          ;;
-      esac
-      #
-      case "$sel_qual_type_arg5" in
-        const*)
-          sel_qual_arg5=const
-          sel_type_arg5=`echo $sel_qual_type_arg5 | sed 's/^const //'`
-        ;;
-        *)
-          sel_qual_arg5=
-          sel_type_arg5=$sel_qual_type_arg5
-        ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(SELECT_QUAL_ARG5, $sel_qual_arg5,
-        [Define to the type qualifier of arg 5 for select.])
-      AC_DEFINE_UNQUOTED(SELECT_TYPE_ARG5, $sel_type_arg5,
-        [Define to the type of arg 5 for select.])
-      #
-      case $prev_sh_opts in
-        *f*)
-          ;;
-        *)
-          set +f
-          ;;
-      esac
-      #
-      AC_DEFINE_UNQUOTED(HAVE_SELECT, 1,
-        [Define to 1 if you have the select function.])
-      curl_cv_func_select="yes"
-    fi
-  fi
-])
-
-
-dnl CURL_VERIFY_RUNTIMELIBS
-dnl -------------------------------------------------
-dnl Verify that the shared libs found so far can be used when running
-dnl programs, since otherwise the situation will create odd configure errors
-dnl that are misleading people.
-dnl
-dnl Make sure this test is run BEFORE the first test in the script that
-dnl runs anything, which at the time of this writing is the AC_CHECK_SIZEOF
-dnl macro. It must also run AFTER all lib-checking macros are complete.
-
-AC_DEFUN([CURL_VERIFY_RUNTIMELIBS], [
-
-  dnl this test is of course not sensible if we are cross-compiling!
-  if test "x$cross_compiling" != xyes; then
-
-    dnl just run a program to verify that the libs checked for previous to this
-    dnl point also is available run-time!
-    AC_MSG_CHECKING([run-time libs availability])
-    CURL_RUN_IFELSE([
-int main()
-{
-  return 0;
-}
-],
-    AC_MSG_RESULT([fine]),
-    AC_MSG_RESULT([failed])
-    AC_MSG_ERROR([one or more libs available at link-time are not available run-time. Libs used at link-time: $LIBS])
-    )
-
-    dnl if this test fails, configure has already stopped
-  fi
-])
-
-
-dnl CURL_CHECK_VARIADIC_MACROS
-dnl -------------------------------------------------
-dnl Check compiler support of variadic macros
-
-AC_DEFUN([CURL_CHECK_VARIADIC_MACROS], [
-  AC_CACHE_CHECK([for compiler support of C99 variadic macro style],
-    [curl_cv_variadic_macros_c99], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#define c99_vmacro3(first, ...) fun3(first, __VA_ARGS__)
-#define c99_vmacro2(first, ...) fun2(first, __VA_ARGS__)
-        int fun3(int arg1, int arg2, int arg3);
-        int fun2(int arg1, int arg2);
-        int fun3(int arg1, int arg2, int arg3)
-        { return arg1 + arg2 + arg3; }
-        int fun2(int arg1, int arg2)
-        { return arg1 + arg2; }
-      ]],[[
-        int res3 = c99_vmacro3(1, 2, 3);
-        int res2 = c99_vmacro2(1, 2);
-      ]])
-    ],[
-      curl_cv_variadic_macros_c99="yes"
-    ],[
-      curl_cv_variadic_macros_c99="no"
-    ])
-  ])
-  case "$curl_cv_variadic_macros_c99" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_VARIADIC_MACROS_C99, 1,
-        [Define to 1 if compiler supports C99 variadic macro style.])
-      ;;
-  esac
-  AC_CACHE_CHECK([for compiler support of old gcc variadic macro style],
-    [curl_cv_variadic_macros_gcc], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#define gcc_vmacro3(first, args...) fun3(first, args)
-#define gcc_vmacro2(first, args...) fun2(first, args)
-        int fun3(int arg1, int arg2, int arg3);
-        int fun2(int arg1, int arg2);
-        int fun3(int arg1, int arg2, int arg3)
-        { return arg1 + arg2 + arg3; }
-        int fun2(int arg1, int arg2)
-        { return arg1 + arg2; }
-      ]],[[
-        int res3 = gcc_vmacro3(1, 2, 3);
-        int res2 = gcc_vmacro2(1, 2);
-      ]])
-    ],[
-      curl_cv_variadic_macros_gcc="yes"
-    ],[
-      curl_cv_variadic_macros_gcc="no"
-    ])
-  ])
-  case "$curl_cv_variadic_macros_gcc" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_VARIADIC_MACROS_GCC, 1,
-        [Define to 1 if compiler supports old gcc variadic macro style.])
-      ;;
-  esac
-])
-
-
-dnl CURL_CHECK_CA_BUNDLE
-dnl -------------------------------------------------
-dnl Check if a default ca-bundle should be used
-dnl
-dnl regarding the paths this will scan:
-dnl /etc/ssl/certs/ca-certificates.crt Debian systems
-dnl /etc/pki/tls/certs/ca-bundle.crt Redhat and Mandriva
-dnl /usr/share/ssl/certs/ca-bundle.crt old(er) Redhat
-dnl /usr/local/share/certs/ca-root-nss.crt FreeBSD, MidnightBSD
-dnl /etc/ssl/cert.pem OpenBSD, FreeBSD, MidnightBSD (symlink)
-dnl /etc/ssl/certs/ (ca path) SUSE
-
-AC_DEFUN([CURL_CHECK_CA_BUNDLE], [
-
-  AC_MSG_CHECKING([default CA cert bundle/path])
-
-  AC_ARG_WITH(ca-bundle,
-AS_HELP_STRING([--with-ca-bundle=FILE],
-[Path to a file containing CA certificates (example: /etc/ca-bundle.crt)])
-AS_HELP_STRING([--without-ca-bundle], [Don't use a default CA bundle]),
-  [
-    want_ca="$withval"
-    if test "x$want_ca" = "xyes"; then
-      AC_MSG_ERROR([--with-ca-bundle=FILE requires a path to the CA bundle])
-    fi
-  ],
-  [ want_ca="unset" ])
-  AC_ARG_WITH(ca-path,
-AS_HELP_STRING([--with-ca-path=DIRECTORY],
-[Path to a directory containing CA certificates stored individually, with \
-their filenames in a hash format. This option can be used with the OpenSSL, \
-GnuTLS and mbedTLS backends. Refer to OpenSSL c_rehash for details. \
-(example: /etc/certificates)])
-AS_HELP_STRING([--without-ca-path], [Don't use a default CA path]),
-  [
-    want_capath="$withval"
-    if test "x$want_capath" = "xyes"; then
-      AC_MSG_ERROR([--with-ca-path=DIRECTORY requires a path to the CA path directory])
-    fi
-  ],
-  [ want_capath="unset"])
-
-  ca_warning="   (warning: certs not found)"
-  capath_warning="   (warning: certs not found)"
-  check_capath=""
-
-  if test "x$want_ca" != "xno" -a "x$want_ca" != "xunset" -a \
-          "x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
-    dnl both given
-    ca="$want_ca"
-    capath="$want_capath"
-  elif test "x$want_ca" != "xno" -a "x$want_ca" != "xunset"; then
-    dnl --with-ca-bundle given
-    ca="$want_ca"
-    capath="no"
-  elif test "x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
-    dnl --with-ca-path given
-    if test "x$OPENSSL_ENABLED" != "x1" -a "x$GNUTLS_ENABLED" != "x1" -a "x$MBEDTLS_ENABLED" != "x1"; then
-      AC_MSG_ERROR([--with-ca-path only works with OpenSSL, GnuTLS or mbedTLS])
-    fi
-    capath="$want_capath"
-    ca="no"
-  else
-    dnl first try autodetecting a CA bundle , then a CA path
-    dnl both autodetections can be skipped by --without-ca-*
-    ca="no"
-    capath="no"
-    if test "x$cross_compiling" != "xyes"; then
-      dnl NOT cross-compiling and...
-      dnl neither of the --with-ca-* options are provided
-      if test "x$want_ca" = "xunset"; then
-        dnl the path we previously would have installed the curl ca bundle
-        dnl to, and thus we now check for an already existing cert in that
-        dnl place in case we find no other
-        if test "x$prefix" != xNONE; then
-          cac="${prefix}/share/curl/curl-ca-bundle.crt"
-        else
-          cac="$ac_default_prefix/share/curl/curl-ca-bundle.crt"
-        fi
-
-        for a in /etc/ssl/certs/ca-certificates.crt \
-                 /etc/pki/tls/certs/ca-bundle.crt \
-                 /usr/share/ssl/certs/ca-bundle.crt \
-                 /usr/local/share/certs/ca-root-nss.crt \
-                 /etc/ssl/cert.pem \
-                 "$cac"; do
-          if test -f "$a"; then
-            ca="$a"
-            break
-          fi
-        done
-      fi
-      if test "x$want_capath" = "xunset" -a "x$ca" = "xno" -a \
-              "x$OPENSSL_ENABLED" = "x1"; then
-        check_capath="/etc/ssl/certs/"
-      fi
-    else
-      dnl no option given and cross-compiling
-      AC_MSG_WARN([skipped the ca-cert path detection when cross-compiling])
-    fi
-  fi
-
-  if test "x$ca" = "xno" || test -f "$ca"; then
-    ca_warning=""
-  fi
-
-  if test "x$capath" != "xno"; then
-    check_capath="$capath"
-  fi
-
-  if test ! -z "$check_capath"; then
-    for a in "$check_capath"; do
-      if test -d "$a" && ls "$a"/[[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]].0 >/dev/null 2>/dev/null; then
-        if test "x$capath" = "xno"; then
-          capath="$a"
-        fi
-        capath_warning=""
-        break
-      fi
-    done
-  fi
-
-  if test "x$capath" = "xno"; then
-    capath_warning=""
-  fi
-
-  if test "x$ca" != "xno"; then
-    CURL_CA_BUNDLE='"'$ca'"'
-    AC_DEFINE_UNQUOTED(CURL_CA_BUNDLE, "$ca", [Location of default ca bundle])
-    AC_SUBST(CURL_CA_BUNDLE)
-    AC_MSG_RESULT([$ca])
-  fi
-  if test "x$capath" != "xno"; then
-    CURL_CA_PATH="\"$capath\""
-    AC_DEFINE_UNQUOTED(CURL_CA_PATH, "$capath", [Location of default ca path])
-    AC_MSG_RESULT([$capath (capath)])
-  fi
-  if test "x$ca" = "xno" && test "x$capath" = "xno"; then
-    AC_MSG_RESULT([no])
-  fi
-
-  AC_MSG_CHECKING([whether to use builtin CA store of SSL library])
-  AC_ARG_WITH(ca-fallback,
-AS_HELP_STRING([--with-ca-fallback], [Use the built in CA store of the SSL library])
-AS_HELP_STRING([--without-ca-fallback], [Don't use the built in CA store of the SSL library]),
-  [
-    if test "x$with_ca_fallback" != "xyes" -a "x$with_ca_fallback" != "xno"; then
-      AC_MSG_ERROR([--with-ca-fallback only allows yes or no as parameter])
-    fi
-  ],
-  [ with_ca_fallback="no"])
-  AC_MSG_RESULT([$with_ca_fallback])
-  if test "x$with_ca_fallback" = "xyes"; then
-    if test "x$OPENSSL_ENABLED" != "x1" -a "x$GNUTLS_ENABLED" != "x1"; then
-      AC_MSG_ERROR([--with-ca-fallback only works with OpenSSL or GnuTLS])
-    fi
-    AC_DEFINE_UNQUOTED(CURL_CA_FALLBACK, 1, [define "1" to use built in CA store of SSL library ])
-  fi
-])
-
-dnl CURL_CHECK_WIN32_LARGEFILE
-dnl -------------------------------------------------
-dnl Check if curl's WIN32 large file will be used
-
-AC_DEFUN([CURL_CHECK_WIN32_LARGEFILE], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_MSG_CHECKING([whether build target supports WIN32 file API])
-  curl_win32_file_api="no"
-  if test "$curl_cv_header_windows_h" = "yes"; then
-    if test x"$enable_largefile" != "xno"; then
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-        ]],[[
-#if !defined(_WIN32_WCE) && \
-    (defined(__MINGW32__) || \
-    (defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64))))
-          int dummy=1;
-#else
-          WIN32 large file API not supported.
-#endif
-        ]])
-      ],[
-        curl_win32_file_api="win32_large_files"
-      ])
-    fi
-    if test "$curl_win32_file_api" = "no"; then
-      AC_COMPILE_IFELSE([
-        AC_LANG_PROGRAM([[
-        ]],[[
-#if defined(_WIN32_WCE) || defined(__MINGW32__) || defined(_MSC_VER)
-          int dummy=1;
-#else
-          WIN32 small file API not supported.
-#endif
-        ]])
-      ],[
-        curl_win32_file_api="win32_small_files"
-      ])
-    fi
-  fi
-  case "$curl_win32_file_api" in
-    win32_large_files)
-      AC_MSG_RESULT([yes (large file enabled)])
-      AC_DEFINE_UNQUOTED(USE_WIN32_LARGE_FILES, 1,
-        [Define to 1 if you are building a Windows target with large file support.])
-      AC_SUBST(USE_WIN32_LARGE_FILES, [1])
-      ;;
-    win32_small_files)
-      AC_MSG_RESULT([yes (large file disabled)])
-      AC_DEFINE_UNQUOTED(USE_WIN32_SMALL_FILES, 1,
-        [Define to 1 if you are building a Windows target without large file support.])
-      AC_SUBST(USE_WIN32_SMALL_FILES, [1])
-      ;;
-    *)
-      AC_MSG_RESULT([no])
-      ;;
-  esac
-])
-
-dnl CURL_CHECK_WIN32_CRYPTO
-dnl -------------------------------------------------
-dnl Check if curl's WIN32 crypto lib can be used
-
-AC_DEFUN([CURL_CHECK_WIN32_CRYPTO], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINCRYPT])dnl
-  AC_MSG_CHECKING([whether build target supports WIN32 crypto API])
-  curl_win32_crypto_api="no"
-  if test "$curl_cv_header_wincrypt_h" = "yes"; then
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <wincrypt.h>
-      ]],[[
-        HCRYPTPROV hCryptProv;
-        if(CryptAcquireContext(&hCryptProv, NULL, NULL, PROV_RSA_FULL,
-                               CRYPT_VERIFYCONTEXT | CRYPT_SILENT)) {
-          CryptReleaseContext(hCryptProv, 0);
-        }
-      ]])
-    ],[
-      curl_win32_crypto_api="yes"
-    ])
-  fi
-  case "$curl_win32_crypto_api" in
-    yes)
-      AC_MSG_RESULT([yes])
-      AC_DEFINE_UNQUOTED(USE_WIN32_CRYPTO, 1,
-        [Define to 1 if you are building a Windows target with crypto API support.])
-      AC_SUBST(USE_WIN32_CRYPTO, [1])
-      ;;
-    *)
-      AC_MSG_RESULT([no])
-      ;;
-  esac
-])
-
-dnl CURL_EXPORT_PCDIR ($pcdir)
-dnl ------------------------
-dnl if $pcdir is not empty, set PKG_CONFIG_LIBDIR to $pcdir and export
-dnl
-dnl we need this macro since pkg-config distinguishes among empty and unset
-dnl variable while checking PKG_CONFIG_LIBDIR
-dnl
-
-AC_DEFUN([CURL_EXPORT_PCDIR], [
-    if test -n "$1"; then
-      PKG_CONFIG_LIBDIR="$1"
-      export PKG_CONFIG_LIBDIR
-    fi
-])
-
-dnl CURL_CHECK_PKGCONFIG ($module, [$pcdir])
-dnl ------------------------
-dnl search for the pkg-config tool. Set the PKGCONFIG variable to hold the
-dnl path to it, or 'no' if not found/present.
-dnl
-dnl If pkg-config is present, check that it has info about the $module or
-dnl return "no" anyway!
-dnl
-dnl Optionally PKG_CONFIG_LIBDIR may be given as $pcdir.
-dnl
-
-AC_DEFUN([CURL_CHECK_PKGCONFIG], [
-    if test -n "$PKG_CONFIG"; then
-      PKGCONFIG="$PKG_CONFIG"
-    else
-      AC_PATH_TOOL([PKGCONFIG], [pkg-config], [no],
-        [$PATH:/usr/bin:/usr/local/bin])
-    fi
-
-    if test "x$PKGCONFIG" != "xno"; then
-      AC_MSG_CHECKING([for $1 options with pkg-config])
-      dnl ask pkg-config about $1
-      itexists=`CURL_EXPORT_PCDIR([$2]) dnl
-        $PKGCONFIG --exists $1 >/dev/null 2>&1 && echo 1`
-
-      if test -z "$itexists"; then
-        dnl pkg-config does not have info about the given module! set the
-        dnl variable to 'no'
-        PKGCONFIG="no"
-        AC_MSG_RESULT([no])
-      else
-        AC_MSG_RESULT([found])
-      fi
-    fi
-])
-
-
-dnl CURL_GENERATE_CONFIGUREHELP_PM
-dnl -------------------------------------------------
-dnl Generate test harness configurehelp.pm module, defining and
-dnl initializing some perl variables with values which are known
-dnl when the configure script runs. For portability reasons, test
-dnl harness needs information on how to run the C preprocessor.
-
-AC_DEFUN([CURL_GENERATE_CONFIGUREHELP_PM], [
-  AC_REQUIRE([AC_PROG_CPP])dnl
-  tmp_cpp=`eval echo "$ac_cpp" 2>/dev/null`
-  if test -z "$tmp_cpp"; then
-    tmp_cpp='cpp'
-  fi
-  cat >./tests/configurehelp.pm <<_EOF
-[@%:@] This is a generated file.  Do not edit.
-
-package configurehelp;
-
-use strict;
-use warnings;
-use Exporter;
-
-use vars qw(
-    @ISA
-    @EXPORT_OK
-    \$Cpreprocessor
-    );
-
-@ISA = qw(Exporter);
-
-@EXPORT_OK = qw(
-    \$Cpreprocessor
-    );
-
-\$Cpreprocessor = '$tmp_cpp';
-
-1;
-_EOF
-])
-
-dnl CURL_CPP_P
-dnl
-dnl Check if $cpp -P should be used for extract define values due to gcc 5
-dnl splitting up strings and defines between line outputs. gcc by default
-dnl (without -P) will show TEST EINVAL TEST as
-dnl
-dnl # 13 "conftest.c"
-dnl TEST
-dnl # 13 "conftest.c" 3 4
-dnl     22
-dnl # 13 "conftest.c"
-dnl            TEST
-
-AC_DEFUN([CURL_CPP_P], [
-  AC_MSG_CHECKING([if cpp -P is needed])
-  AC_EGREP_CPP([TEST.*TEST], [
- #include <errno.h>
-TEST EINVAL TEST
-  ], [cpp=no], [cpp=yes])
-  AC_MSG_RESULT([$cpp])
-
-  dnl we need cpp -P so check if it works then
-  if test "x$cpp" = "xyes"; then
-    AC_MSG_CHECKING([if cpp -P works])
-    OLDCPPFLAGS=$CPPFLAGS
-    CPPFLAGS="$CPPFLAGS -P"
-    AC_EGREP_CPP([TEST.*TEST], [
- #include <errno.h>
-TEST EINVAL TEST
-    ], [cpp_p=yes], [cpp_p=no])
-    AC_MSG_RESULT([$cpp_p])
-
-    if test "x$cpp_p" = "xno"; then
-      AC_MSG_WARN([failed to figure out cpp -P alternative])
-      # without -P
-      CPPPFLAG=""
-    else
-      # with -P
-      CPPPFLAG="-P"
-    fi
-    dnl restore CPPFLAGS
-    CPPFLAGS=$OLDCPPFLAGS
-  else
-    # without -P
-    CPPPFLAG=""
-  fi
-])
-
-
-dnl CURL_DARWIN_CFLAGS
-dnl
-dnl Set -Werror=partial-availability to detect possible breaking code
-dnl with very low deployment targets.
-dnl
-
-AC_DEFUN([CURL_DARWIN_CFLAGS], [
-
-  tst_cflags="no"
-  case $host_os in
-    darwin*)
-      tst_cflags="yes"
-      ;;
-  esac
-
-  AC_MSG_CHECKING([for good-to-use Darwin CFLAGS])
-  AC_MSG_RESULT([$tst_cflags]);
-
-  if test "$tst_cflags" = "yes"; then
-    old_CFLAGS=$CFLAGS
-    CFLAGS="$CFLAGS -Werror=partial-availability"
-    AC_MSG_CHECKING([whether $CC accepts -Werror=partial-availability])
-    AC_COMPILE_IFELSE([AC_LANG_PROGRAM()],
-      [AC_MSG_RESULT([yes])],
-      [AC_MSG_RESULT([no])
-      CFLAGS=$old_CFLAGS])
-  fi
-
-])
-
-
-dnl CURL_SUPPORTS_BUILTIN_AVAILABLE
-dnl
-dnl Check to see if the compiler supports __builtin_available. This built-in
-dnl compiler function first appeared in Apple LLVM 9.0.0. It's so new that, at
-dnl the time this macro was written, the function was not yet documented. Its
-dnl purpose is to return true if the code is running under a certain OS version
-dnl or later.
-
-AC_DEFUN([CURL_SUPPORTS_BUILTIN_AVAILABLE], [
-  AC_MSG_CHECKING([to see if the compiler supports __builtin_available()])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-#include <stdlib.h>
-    ]],[[
-      if (__builtin_available(macOS 10.8, iOS 5.0, *)) {}
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    AC_DEFINE_UNQUOTED(HAVE_BUILTIN_AVAILABLE, 1,
-        [Define to 1 if you have the __builtin_available function.])
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-])
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/aclocal.m4 8.0.32-1/extra/curl/curl-7.83.1/aclocal.m4
--- 8.0.31-1/extra/curl/curl-7.83.1/aclocal.m4	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/aclocal.m4	1970-01-01 00:00:00.000000000 +0000
@@ -1,1217 +0,0 @@
-# generated automatically by aclocal 1.16.5 -*- Autoconf -*-
-
-# Copyright (C) 1996-2021 Free Software Foundation, Inc.
-
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
-m4_ifndef([AC_AUTOCONF_VERSION],
-  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,
-[m4_warning([this file was generated for autoconf 2.71.
-You have another version of autoconf.  It may work, but is not guaranteed to.
-If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically 'autoreconf'.])])
-
-# Copyright (C) 2002-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_AUTOMAKE_VERSION(VERSION)
-# ----------------------------
-# Automake X.Y traces this macro to ensure aclocal.m4 has been
-# generated from the m4 files accompanying Automake X.Y.
-# (This private macro should not be called outside this file.)
-AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.16'
-dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
-dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.5], [],
-      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
-])
-
-# _AM_AUTOCONF_VERSION(VERSION)
-# -----------------------------
-# aclocal traces this macro to find the Autoconf version.
-# This is a private macro too.  Using m4_define simplifies
-# the logic in aclocal, which can simply ignore this definition.
-m4_define([_AM_AUTOCONF_VERSION], [])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.5])dnl
-m4_ifndef([AC_AUTOCONF_VERSION],
-  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
-
-# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
-
-# Copyright (C) 2001-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to
-# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
-#
-# Of course, Automake must honor this variable whenever it calls a
-# tool from the auxiliary directory.  The problem is that $srcdir (and
-# therefore $ac_aux_dir as well) can be either absolute or relative,
-# depending on how configure is run.  This is pretty annoying, since
-# it makes $ac_aux_dir quite unusable in subdirectories: in the top
-# source directory, any form will work fine, but in subdirectories a
-# relative path needs to be adjusted first.
-#
-# $ac_aux_dir/missing
-#    fails when called from a subdirectory if $ac_aux_dir is relative
-# $top_srcdir/$ac_aux_dir/missing
-#    fails if $ac_aux_dir is absolute,
-#    fails when called from a subdirectory in a VPATH build with
-#          a relative $ac_aux_dir
-#
-# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
-# are both prefixed by $srcdir.  In an in-source build this is usually
-# harmless because $srcdir is '.', but things will broke when you
-# start a VPATH build or use an absolute $srcdir.
-#
-# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
-# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
-#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
-# and then we would define $MISSING as
-#   MISSING="\${SHELL} $am_aux_dir/missing"
-# This will work as long as MISSING is not called from configure, because
-# unfortunately $(top_srcdir) has no meaning in configure.
-# However there are other variables, like CC, which are often used in
-# configure, and could therefore not use this "fixed" $ac_aux_dir.
-#
-# Another solution, used here, is to always expand $ac_aux_dir to an
-# absolute PATH.  The drawback is that using absolute paths prevent a
-# configured tree to be moved without reconfiguration.
-
-AC_DEFUN([AM_AUX_DIR_EXPAND],
-[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
-# Expand $ac_aux_dir to an absolute path.
-am_aux_dir=`cd "$ac_aux_dir" && pwd`
-])
-
-# AM_CONDITIONAL                                            -*- Autoconf -*-
-
-# Copyright (C) 1997-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_CONDITIONAL(NAME, SHELL-CONDITION)
-# -------------------------------------
-# Define a conditional.
-AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ([2.52])dnl
- m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
-       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])dnl
-AC_SUBST([$1_FALSE])dnl
-_AM_SUBST_NOTMAKE([$1_TRUE])dnl
-_AM_SUBST_NOTMAKE([$1_FALSE])dnl
-m4_define([_AM_COND_VALUE_$1], [$2])dnl
-if $2; then
-  $1_TRUE=
-  $1_FALSE='#'
-else
-  $1_TRUE='#'
-  $1_FALSE=
-fi
-AC_CONFIG_COMMANDS_PRE(
-[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
-  AC_MSG_ERROR([[conditional "$1" was never defined.
-Usually this means the macro was only invoked conditionally.]])
-fi])])
-
-# Copyright (C) 1999-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-
-# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
-# written in clear, in which case automake, when reading aclocal.m4,
-# will think it sees a *use*, and therefore will trigger all it's
-# C support machinery.  Also note that it means that autoscan, seeing
-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
-
-# _AM_DEPENDENCIES(NAME)
-# ----------------------
-# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
-# We try a few techniques and use that to set a single cache variable.
-#
-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
-# dependency, and given that the user is not expected to run this macro,
-# just rely on AC_PROG_CC.
-AC_DEFUN([_AM_DEPENDENCIES],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
-
-m4_if([$1], [CC],   [depcc="$CC"   am_compiler_list=],
-      [$1], [CXX],  [depcc="$CXX"  am_compiler_list=],
-      [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
-      [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
-      [$1], [UPC],  [depcc="$UPC"  am_compiler_list=],
-      [$1], [GCJ],  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
-                    [depcc="$$1"   am_compiler_list=])
-
-AC_CACHE_CHECK([dependency style of $depcc],
-               [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
-  # We make a subdir and do the tests there.  Otherwise we can end up
-  # making bogus files that we don't know about and never remove.  For
-  # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named 'D' -- because '-MD' means "put the output
-  # in D".
-  rm -rf conftest.dir
-  mkdir conftest.dir
-  # Copy depcomp to subdir because otherwise we won't find it if we're
-  # using a relative directory.
-  cp "$am_depcomp" conftest.dir
-  cd conftest.dir
-  # We will build objects and dependencies in a subdirectory because
-  # it helps to detect inapplicable dependency modes.  For instance
-  # both Tru64's cc and ICC support -MD to output dependencies as a
-  # side effect of compilation, but ICC will put the dependencies in
-  # the current directory while Tru64 will put them in the object
-  # directory.
-  mkdir sub
-
-  am_cv_$1_dependencies_compiler_type=none
-  if test "$am_compiler_list" = ""; then
-     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
-  fi
-  am__universal=false
-  m4_case([$1], [CC],
-    [case " $depcc " in #(
-     *\ -arch\ *\ -arch\ *) am__universal=true ;;
-     esac],
-    [CXX],
-    [case " $depcc " in #(
-     *\ -arch\ *\ -arch\ *) am__universal=true ;;
-     esac])
-
-  for depmode in $am_compiler_list; do
-    # Setup a source with many dependencies, because some compilers
-    # like to wrap large dependency lists on column 80 (with \), and
-    # we should not choose a depcomp mode which is confused by this.
-    #
-    # We need to recreate these files for each test, as the compiler may
-    # overwrite some of them when testing with obscure command lines.
-    # This happens at least with the AIX C compiler.
-    : > sub/conftest.c
-    for i in 1 2 3 4 5 6; do
-      echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
-      # Solaris 10 /bin/sh.
-      echo '/* dummy */' > sub/conftst$i.h
-    done
-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
-    # We check with '-c' and '-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle '-M -o', and we need to detect this.  Also, some Intel
-    # versions had trouble with output in subdirs.
-    am__obj=sub/conftest.${OBJEXT-o}
-    am__minus_obj="-o $am__obj"
-    case $depmode in
-    gcc)
-      # This depmode causes a compiler race in universal mode.
-      test "$am__universal" = false || continue
-      ;;
-    nosideeffect)
-      # After this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested.
-      if test "x$enable_dependency_tracking" = xyes; then
-	continue
-      else
-	break
-      fi
-      ;;
-    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
-      # This compiler won't grok '-c -o', but also, the minuso test has
-      # not run yet.  These depmodes are late enough in the game, and
-      # so weak that their functioning should not be impacted.
-      am__obj=conftest.${OBJEXT-o}
-      am__minus_obj=
-      ;;
-    none) break ;;
-    esac
-    if depmode=$depmode \
-       source=sub/conftest.c object=$am__obj \
-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
-         >/dev/null 2>conftest.err &&
-       grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
-       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
-      # icc doesn't choke on unknown options, it will just issue warnings
-      # or remarks (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored or not supported.
-      # When given -MP, icc 7.0 and 7.1 complain thusly:
-      #   icc: Command line warning: ignoring option '-M'; no argument required
-      # The diagnosis changed in icc 8.0:
-      #   icc: Command line remark: option '-MP' not supported
-      if (grep 'ignoring option' conftest.err ||
-          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
-        am_cv_$1_dependencies_compiler_type=$depmode
-        break
-      fi
-    fi
-  done
-
-  cd ..
-  rm -rf conftest.dir
-else
-  am_cv_$1_dependencies_compiler_type=none
-fi
-])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
-  test "x$enable_dependency_tracking" != xno \
-  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
-
-
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
-
-
-# AM_DEP_TRACK
-# ------------
-AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE([dependency-tracking], [dnl
-AS_HELP_STRING(
-  [--enable-dependency-tracking],
-  [do not reject slow dependency extractors])
-AS_HELP_STRING(
-  [--disable-dependency-tracking],
-  [speeds up one-time build])])
-if test "x$enable_dependency_tracking" != xno; then
-  am_depcomp="$ac_aux_dir/depcomp"
-  AMDEPBACKSLASH='\'
-  am__nodep='_no'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
-AC_SUBST([am__nodep])dnl
-_AM_SUBST_NOTMAKE([am__nodep])dnl
-])
-
-# Generate code to set up dependency tracking.              -*- Autoconf -*-
-
-# Copyright (C) 1999-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# _AM_OUTPUT_DEPENDENCY_COMMANDS
-# ------------------------------
-AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[{
-  # Older Autoconf quotes --file arguments for eval, but not when files
-  # are listed without --file.  Let's play safe and only enable the eval
-  # if we detect the quoting.
-  # TODO: see whether this extra hack can be removed once we start
-  # requiring Autoconf 2.70 or later.
-  AS_CASE([$CONFIG_FILES],
-          [*\'*], [eval set x "$CONFIG_FILES"],
-          [*], [set x $CONFIG_FILES])
-  shift
-  # Used to flag and report bootstrapping failures.
-  am_rc=0
-  for am_mf
-  do
-    # Strip MF so we end up with the name of the file.
-    am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile which includes
-    # dependency-tracking related rules and includes.
-    # Grep'ing the whole file directly is not great: AIX grep has a line
-    # limit of 2048, but all sed's we know have understand at least 4000.
-    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
-      || continue
-    am_dirpart=`AS_DIRNAME(["$am_mf"])`
-    am_filepart=`AS_BASENAME(["$am_mf"])`
-    AM_RUN_LOG([cd "$am_dirpart" \
-      && sed -e '/# am--include-marker/d' "$am_filepart" \
-        | $MAKE -f - am--depfiles]) || am_rc=$?
-  done
-  if test $am_rc -ne 0; then
-    AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
-    for automatic dependency tracking.  If GNU make was not used, consider
-    re-running the configure script with MAKE="gmake" (or whatever is
-    necessary).  You can also try re-running configure with the
-    '--disable-dependency-tracking' option to at least be able to build
-    the package (albeit without support for automatic dependency tracking).])
-  fi
-  AS_UNSET([am_dirpart])
-  AS_UNSET([am_filepart])
-  AS_UNSET([am_mf])
-  AS_UNSET([am_rc])
-  rm -f conftest-deps.mk
-}
-])# _AM_OUTPUT_DEPENDENCY_COMMANDS
-
-
-# AM_OUTPUT_DEPENDENCY_COMMANDS
-# -----------------------------
-# This macro should only be invoked once -- use via AC_REQUIRE.
-#
-# This code is only required when automatic dependency tracking is enabled.
-# This creates each '.Po' and '.Plo' makefile fragment that we'll need in
-# order to bootstrap the dependency handling code.
-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
-[AC_CONFIG_COMMANDS([depfiles],
-     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
-     [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
-
-# Do all the work for Automake.                             -*- Autoconf -*-
-
-# Copyright (C) 1996-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This macro actually does too much.  Some checks are only needed if
-# your package does certain things.  But this isn't really a big deal.
-
-dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
-m4_define([AC_PROG_CC],
-m4_defn([AC_PROG_CC])
-[_AM_PROG_CC_C_O
-])
-
-# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
-# AM_INIT_AUTOMAKE([OPTIONS])
-# -----------------------------------------------
-# The call with PACKAGE and VERSION arguments is the old style
-# call (pre autoconf-2.50), which is being phased out.  PACKAGE
-# and VERSION should now be passed to AC_INIT and removed from
-# the call to AM_INIT_AUTOMAKE.
-# We support both call styles for the transition.  After
-# the next Automake release, Autoconf can make the AC_INIT
-# arguments mandatory, and then we can depend on a new Autoconf
-# release and drop the old call support.
-AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.65])dnl
-m4_ifdef([_$0_ALREADY_INIT],
-  [m4_fatal([$0 expanded multiple times
-]m4_defn([_$0_ALREADY_INIT]))],
-  [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl
-dnl Autoconf wants to disallow AM_ names.  We explicitly allow
-dnl the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
-AC_REQUIRE([AC_PROG_INSTALL])dnl
-if test "`cd $srcdir && pwd`" != "`pwd`"; then
-  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
-  # is not polluted with repeated "-I."
-  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
-  # test to see if srcdir already configured
-  if test -f $srcdir/config.status; then
-    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-  fi
-fi
-
-# test whether we have cygpath
-if test -z "$CYGPATH_W"; then
-  if (cygpath --version) >/dev/null 2>/dev/null; then
-    CYGPATH_W='cygpath -w'
-  else
-    CYGPATH_W=echo
-  fi
-fi
-AC_SUBST([CYGPATH_W])
-
-# Define the identity of the package.
-dnl Distinguish between old-style and new-style calls.
-m4_ifval([$2],
-[AC_DIAGNOSE([obsolete],
-             [$0: two- and three-arguments forms are deprecated.])
-m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
- AC_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])dnl
-dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(
-  m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),
-  [ok:ok],,
-  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
-
-_AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
- AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
-
-# Some tools Automake needs.
-AC_REQUIRE([AM_SANITY_CHECK])dnl
-AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
-AM_MISSING_PROG([AUTOCONF], [autoconf])
-AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
-AM_MISSING_PROG([AUTOHEADER], [autoheader])
-AM_MISSING_PROG([MAKEINFO], [makeinfo])
-AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-# For better backward compatibility.  To be removed once Automake 1.9.x
-# dies out for good.  For more background, see:
-# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
-AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
-# We need awk for the "check" target (and possibly the TAP driver).  The
-# system "awk" is bad on some platforms.
-AC_REQUIRE([AC_PROG_AWK])dnl
-AC_REQUIRE([AC_PROG_MAKE_SET])dnl
-AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
-	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
-			     [_AM_PROG_TAR([v7])])])
-_AM_IF_OPTION([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
-		  [_AM_DEPENDENCIES([CC])],
-		  [m4_define([AC_PROG_CC],
-			     m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_CXX],
-		  [_AM_DEPENDENCIES([CXX])],
-		  [m4_define([AC_PROG_CXX],
-			     m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJC],
-		  [_AM_DEPENDENCIES([OBJC])],
-		  [m4_define([AC_PROG_OBJC],
-			     m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
-AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
-		  [_AM_DEPENDENCIES([OBJCXX])],
-		  [m4_define([AC_PROG_OBJCXX],
-			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
-])
-# Variables for tags utilities; see am/tags.am
-if test -z "$CTAGS"; then
-  CTAGS=ctags
-fi
-AC_SUBST([CTAGS])
-if test -z "$ETAGS"; then
-  ETAGS=etags
-fi
-AC_SUBST([ETAGS])
-if test -z "$CSCOPE"; then
-  CSCOPE=cscope
-fi
-AC_SUBST([CSCOPE])
-
-AC_REQUIRE([AM_SILENT_RULES])dnl
-dnl The testsuite driver may need to know about EXEEXT, so add the
-dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
-dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
-AC_CONFIG_COMMANDS_PRE(dnl
-[m4_provide_if([_AM_COMPILER_EXEEXT],
-  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
-
-# POSIX will say in a future version that running "rm -f" with no argument
-# is OK; and we want to be able to make that assumption in our Makefile
-# recipes.  So use an aggressive probe to check that the usage we want is
-# actually supported "in the wild" to an acceptable degree.
-# See automake bug#10828.
-# To make any issue more visible, cause the running configure to be aborted
-# by default if the 'rm' program in use doesn't match our expectations; the
-# user can still override this though.
-if rm -f && rm -fr && rm -rf; then : OK; else
-  cat >&2 <<'END'
-Oops!
-
-Your 'rm' program seems unable to run without file operands specified
-on the command line, even when the '-f' option is present.  This is contrary
-to the behaviour of most rm programs out there, and not conforming with
-the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
-
-Please tell bug-automake@gnu.org about your system, including the value
-of your $PATH and any error possibly output before this message.  This
-can help us improve future automake versions.
-
-END
-  if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
-    echo 'Configuration will proceed anyway, since you have set the' >&2
-    echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
-    echo >&2
-  else
-    cat >&2 <<'END'
-Aborting the configuration process, to ensure you take notice of the issue.
-
-You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: <https://www.gnu.org/software/coreutils/>.
-
-If you want to complete the configuration process using your problematic
-'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
-to "yes", and re-run configure.
-
-END
-    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
-  fi
-fi
-dnl The trailing newline in this macro's definition is deliberate, for
-dnl backward compatibility and to allow trailing 'dnl'-style comments
-dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
-])
-
-dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
-dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
-dnl mangled by Autoconf and run in a shell conditional statement.
-m4_define([_AC_COMPILER_EXEEXT],
-m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
-
-# When config.status generates a header, we must update the stamp-h file.
-# This file resides in the same directory as the config header
-# that is generated.  The stamp files are numbered to have different names.
-
-# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
-# loop where config.status creates the headers, so we can generate
-# our stamp files there.
-AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
-[# Compute $1's index in $config_headers.
-_am_arg=$1
-_am_stamp_count=1
-for _am_header in $config_headers :; do
-  case $_am_header in
-    $_am_arg | $_am_arg:* )
-      break ;;
-    * )
-      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
-  esac
-done
-echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-
-# Copyright (C) 2001-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_INSTALL_SH
-# ------------------
-# Define $install_sh.
-AC_DEFUN([AM_PROG_INSTALL_SH],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh+set}" != xset; then
-  case $am_aux_dir in
-  *\ * | *\	*)
-    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
-  *)
-    install_sh="\${SHELL} $am_aux_dir/install-sh"
-  esac
-fi
-AC_SUBST([install_sh])])
-
-# Copyright (C) 2003-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# Check whether the underlying file-system supports filenames
-# with a leading dot.  For instance MS-DOS doesn't.
-AC_DEFUN([AM_SET_LEADING_DOT],
-[rm -rf .tst 2>/dev/null
-mkdir .tst 2>/dev/null
-if test -d .tst; then
-  am__leading_dot=.
-else
-  am__leading_dot=_
-fi
-rmdir .tst 2>/dev/null
-AC_SUBST([am__leading_dot])])
-
-# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
-# From Jim Meyering
-
-# Copyright (C) 1996-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_MAINTAINER_MODE([DEFAULT-MODE])
-# ----------------------------------
-# Control maintainer-specific portions of Makefiles.
-# Default is to disable them, unless 'enable' is passed literally.
-# For symmetry, 'disable' may be passed as well.  Anyway, the user
-# can override the default with the --enable/--disable switch.
-AC_DEFUN([AM_MAINTAINER_MODE],
-[m4_case(m4_default([$1], [disable]),
-       [enable], [m4_define([am_maintainer_other], [disable])],
-       [disable], [m4_define([am_maintainer_other], [enable])],
-       [m4_define([am_maintainer_other], [enable])
-        m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
-AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
-  dnl maintainer-mode's default is 'disable' unless 'enable' is passed
-  AC_ARG_ENABLE([maintainer-mode],
-    [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
-      am_maintainer_other[ make rules and dependencies not useful
-      (and sometimes confusing) to the casual installer])],
-    [USE_MAINTAINER_MODE=$enableval],
-    [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
-  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
-  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
-  MAINT=$MAINTAINER_MODE_TRUE
-  AC_SUBST([MAINT])dnl
-]
-)
-
-# Check to see how 'make' treats includes.	            -*- Autoconf -*-
-
-# Copyright (C) 2001-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_MAKE_INCLUDE()
-# -----------------
-# Check whether make has an 'include' directive that can support all
-# the idioms we need for our automatic dependency tracking code.
-AC_DEFUN([AM_MAKE_INCLUDE],
-[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
-cat > confinc.mk << 'END'
-am__doit:
-	@echo this is the am__doit target >confinc.out
-.PHONY: am__doit
-END
-am__include="#"
-am__quote=
-# BSD make does it like this.
-echo '.include "confinc.mk" # ignored' > confmf.BSD
-# Other make implementations (GNU, Solaris 10, AIX) do it like this.
-echo 'include confinc.mk # ignored' > confmf.GNU
-_am_result=no
-for s in GNU BSD; do
-  AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
-  AS_CASE([$?:`cat confinc.out 2>/dev/null`],
-      ['0:this is the am__doit target'],
-      [AS_CASE([$s],
-          [BSD], [am__include='.include' am__quote='"'],
-          [am__include='include' am__quote=''])])
-  if test "$am__include" != "#"; then
-    _am_result="yes ($s style)"
-    break
-  fi
-done
-rm -f confinc.* confmf.*
-AC_MSG_RESULT([${_am_result}])
-AC_SUBST([am__include])])
-AC_SUBST([am__quote])])
-
-# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
-
-# Copyright (C) 1997-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_MISSING_PROG(NAME, PROGRAM)
-# ------------------------------
-AC_DEFUN([AM_MISSING_PROG],
-[AC_REQUIRE([AM_MISSING_HAS_RUN])
-$1=${$1-"${am_missing_run}$2"}
-AC_SUBST($1)])
-
-# AM_MISSING_HAS_RUN
-# ------------------
-# Define MISSING if not defined so far and test if it is modern enough.
-# If it is, set am_missing_run to use it, otherwise, to nothing.
-AC_DEFUN([AM_MISSING_HAS_RUN],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([missing])dnl
-if test x"${MISSING+set}" != xset; then
-  MISSING="\${SHELL} '$am_aux_dir/missing'"
-fi
-# Use eval to expand $SHELL
-if eval "$MISSING --is-lightweight"; then
-  am_missing_run="$MISSING "
-else
-  am_missing_run=
-  AC_MSG_WARN(['missing' script is too old or missing])
-fi
-])
-
-# Helper functions for option handling.                     -*- Autoconf -*-
-
-# Copyright (C) 2001-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# _AM_MANGLE_OPTION(NAME)
-# -----------------------
-AC_DEFUN([_AM_MANGLE_OPTION],
-[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
-
-# _AM_SET_OPTION(NAME)
-# --------------------
-# Set option NAME.  Presently that only means defining a flag for this option.
-AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
-
-# _AM_SET_OPTIONS(OPTIONS)
-# ------------------------
-# OPTIONS is a space-separated list of Automake options.
-AC_DEFUN([_AM_SET_OPTIONS],
-[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
-
-# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
-# -------------------------------------------
-# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
-AC_DEFUN([_AM_IF_OPTION],
-[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-
-# Copyright (C) 1999-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# _AM_PROG_CC_C_O
-# ---------------
-# Like AC_PROG_CC_C_O, but changed for automake.  We rewrite AC_PROG_CC
-# to automatically call this.
-AC_DEFUN([_AM_PROG_CC_C_O],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-AC_REQUIRE_AUX_FILE([compile])dnl
-AC_LANG_PUSH([C])dnl
-AC_CACHE_CHECK(
-  [whether $CC understands -c and -o together],
-  [am_cv_prog_cc_c_o],
-  [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
-  # Make sure it works both with $CC and with simple cc.
-  # Following AC_PROG_CC_C_O, we do the test twice because some
-  # compilers refuse to overwrite an existing .o file with -o,
-  # though they will create one.
-  am_cv_prog_cc_c_o=yes
-  for am_i in 1 2; do
-    if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
-         && test -f conftest2.$ac_objext; then
-      : OK
-    else
-      am_cv_prog_cc_c_o=no
-      break
-    fi
-  done
-  rm -f core conftest*
-  unset am_i])
-if test "$am_cv_prog_cc_c_o" != yes; then
-   # Losing compiler, so override with the script.
-   # FIXME: It is wrong to rewrite CC.
-   # But if we don't then we get into trouble of one sort or another.
-   # A longer-term fix would be to have automake use am__CC in this case,
-   # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
-   CC="$am_aux_dir/compile $CC"
-fi
-AC_LANG_POP([C])])
-
-# For backward compatibility.
-AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
-
-# Copyright (C) 2001-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_RUN_LOG(COMMAND)
-# -------------------
-# Run COMMAND, save the exit status in ac_status, and log it.
-# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
-AC_DEFUN([AM_RUN_LOG],
-[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
-   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
-   ac_status=$?
-   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
-   (exit $ac_status); }])
-
-# Check to make sure that the build environment is sane.    -*- Autoconf -*-
-
-# Copyright (C) 1996-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_SANITY_CHECK
-# ---------------
-AC_DEFUN([AM_SANITY_CHECK],
-[AC_MSG_CHECKING([whether build environment is sane])
-# Reject unsafe characters in $srcdir or the absolute working directory
-# name.  Accept space and tab only in the latter.
-am_lf='
-'
-case `pwd` in
-  *[[\\\"\#\$\&\'\`$am_lf]]*)
-    AC_MSG_ERROR([unsafe absolute working directory name]);;
-esac
-case $srcdir in
-  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
-    AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
-esac
-
-# Do 'set' in a subshell so we don't clobber the current shell's
-# arguments.  Must try -L first in case configure is actually a
-# symlink; some systems play weird games with the mod time of symlinks
-# (eg FreeBSD returns the mod time of the symlink's containing
-# directory).
-if (
-   am_has_slept=no
-   for am_try in 1 2; do
-     echo "timestamp, slept: $am_has_slept" > conftest.file
-     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-     if test "$[*]" = "X"; then
-	# -L didn't work.
-	set X `ls -t "$srcdir/configure" conftest.file`
-     fi
-     if test "$[*]" != "X $srcdir/configure conftest.file" \
-	&& test "$[*]" != "X conftest.file $srcdir/configure"; then
-
-	# If neither matched, then we have a broken ls.  This can happen
-	# if, for instance, CONFIG_SHELL is bash and it inherits a
-	# broken ls alias from the environment.  This has actually
-	# happened.  Such a system could not be considered "sane".
-	AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
-  alias in your environment])
-     fi
-     if test "$[2]" = conftest.file || test $am_try -eq 2; then
-       break
-     fi
-     # Just in case.
-     sleep 1
-     am_has_slept=yes
-   done
-   test "$[2]" = conftest.file
-   )
-then
-   # Ok.
-   :
-else
-   AC_MSG_ERROR([newly created file is older than distributed files!
-Check your system clock])
-fi
-AC_MSG_RESULT([yes])
-# If we didn't sleep, we still need to ensure time stamps of config.status and
-# generated files are strictly newer.
-am_sleep_pid=
-if grep 'slept: no' conftest.file >/dev/null 2>&1; then
-  ( sleep 1 ) &
-  am_sleep_pid=$!
-fi
-AC_CONFIG_COMMANDS_PRE(
-  [AC_MSG_CHECKING([that generated files are newer than configure])
-   if test -n "$am_sleep_pid"; then
-     # Hide warnings about reused PIDs.
-     wait $am_sleep_pid 2>/dev/null
-   fi
-   AC_MSG_RESULT([done])])
-rm -f conftest.file
-])
-
-# Copyright (C) 2009-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_SILENT_RULES([DEFAULT])
-# --------------------------
-# Enable less verbose build rules; with the default set to DEFAULT
-# ("yes" being less verbose, "no" or empty being verbose).
-AC_DEFUN([AM_SILENT_RULES],
-[AC_ARG_ENABLE([silent-rules], [dnl
-AS_HELP_STRING(
-  [--enable-silent-rules],
-  [less verbose build output (undo: "make V=1")])
-AS_HELP_STRING(
-  [--disable-silent-rules],
-  [verbose build output (undo: "make V=0")])dnl
-])
-case $enable_silent_rules in @%:@ (((
-  yes) AM_DEFAULT_VERBOSITY=0;;
-   no) AM_DEFAULT_VERBOSITY=1;;
-    *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
-esac
-dnl
-dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
-dnl do not support nested variable expansions.
-dnl See automake bug#9928 and bug#10237.
-am_make=${MAKE-make}
-AC_CACHE_CHECK([whether $am_make supports nested variables],
-   [am_cv_make_support_nested_variables],
-   [if AS_ECHO([['TRUE=$(BAR$(V))
-BAR0=false
-BAR1=true
-V=1
-am__doit:
-	@$(TRUE)
-.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
-  am_cv_make_support_nested_variables=yes
-else
-  am_cv_make_support_nested_variables=no
-fi])
-if test $am_cv_make_support_nested_variables = yes; then
-  dnl Using '$V' instead of '$(V)' breaks IRIX make.
-  AM_V='$(V)'
-  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
-else
-  AM_V=$AM_DEFAULT_VERBOSITY
-  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
-fi
-AC_SUBST([AM_V])dnl
-AM_SUBST_NOTMAKE([AM_V])dnl
-AC_SUBST([AM_DEFAULT_V])dnl
-AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
-AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
-AM_BACKSLASH='\'
-AC_SUBST([AM_BACKSLASH])dnl
-_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
-])
-
-# Copyright (C) 2001-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# AM_PROG_INSTALL_STRIP
-# ---------------------
-# One issue with vendor 'install' (even GNU) is that you can't
-# specify the program used to strip binaries.  This is especially
-# annoying in cross-compiling environments, where the build's strip
-# is unlikely to handle the host's binaries.
-# Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in "make install-strip", and initialize
-# STRIPPROG with the value of the STRIP variable (set by the user).
-AC_DEFUN([AM_PROG_INSTALL_STRIP],
-[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using 'strip' when the user
-# run "make install-strip".  However 'strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the 'STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
-if test "$cross_compiling" != no; then
-  AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-
-# Copyright (C) 2006-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# _AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
-# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
-# This macro is traced by Automake.
-AC_DEFUN([_AM_SUBST_NOTMAKE])
-
-# AM_SUBST_NOTMAKE(VARIABLE)
-# --------------------------
-# Public sister of _AM_SUBST_NOTMAKE.
-AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
-
-# Check how to create a tarball.                            -*- Autoconf -*-
-
-# Copyright (C) 2004-2021 Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# _AM_PROG_TAR(FORMAT)
-# --------------------
-# Check how to create a tarball in format FORMAT.
-# FORMAT should be one of 'v7', 'ustar', or 'pax'.
-#
-# Substitute a variable $(am__tar) that is a command
-# writing to stdout a FORMAT-tarball containing the directory
-# $tardir.
-#     tardir=directory && $(am__tar) > result.tar
-#
-# Substitute a variable $(am__untar) that extract such
-# a tarball read from stdin.
-#     $(am__untar) < result.tar
-#
-AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.  Yes, it's still used
-# in the wild :-(  We should find a proper way to deprecate it ...
-AC_SUBST([AMTAR], ['$${TAR-tar}'])
-
-# We'll loop over all known methods to create a tar archive until one works.
-_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-
-m4_if([$1], [v7],
-  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
-
-  [m4_case([$1],
-    [ustar],
-     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
-      # There is notably a 21 bits limit for the UID and the GID.  In fact,
-      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
-      # and bug#13588).
-      am_max_uid=2097151 # 2^21 - 1
-      am_max_gid=$am_max_uid
-      # The $UID and $GID variables are not portable, so we need to resort
-      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls
-      # below are definitely unexpected, so allow the users to see them
-      # (that is, avoid stderr redirection).
-      am_uid=`id -u || echo unknown`
-      am_gid=`id -g || echo unknown`
-      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
-      if test $am_uid -le $am_max_uid; then
-         AC_MSG_RESULT([yes])
-      else
-         AC_MSG_RESULT([no])
-         _am_tools=none
-      fi
-      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
-      if test $am_gid -le $am_max_gid; then
-         AC_MSG_RESULT([yes])
-      else
-        AC_MSG_RESULT([no])
-        _am_tools=none
-      fi],
-
-  [pax],
-    [],
-
-  [m4_fatal([Unknown tar format])])
-
-  AC_MSG_CHECKING([how to create a $1 tar archive])
-
-  # Go ahead even if we have the value already cached.  We do so because we
-  # need to set the values for the 'am__tar' and 'am__untar' variables.
-  _am_tools=${am_cv_prog_tar_$1-$_am_tools}
-
-  for _am_tool in $_am_tools; do
-    case $_am_tool in
-    gnutar)
-      for _am_tar in tar gnutar gtar; do
-        AM_RUN_LOG([$_am_tar --version]) && break
-      done
-      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
-      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
-      am__untar="$_am_tar -xf -"
-      ;;
-    plaintar)
-      # Must skip GNU tar: if it does not support --format= it doesn't create
-      # ustar tarball either.
-      (tar --version) >/dev/null 2>&1 && continue
-      am__tar='tar chf - "$$tardir"'
-      am__tar_='tar chf - "$tardir"'
-      am__untar='tar xf -'
-      ;;
-    pax)
-      am__tar='pax -L -x $1 -w "$$tardir"'
-      am__tar_='pax -L -x $1 -w "$tardir"'
-      am__untar='pax -r'
-      ;;
-    cpio)
-      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
-      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
-      am__untar='cpio -i -H $1 -d'
-      ;;
-    none)
-      am__tar=false
-      am__tar_=false
-      am__untar=false
-      ;;
-    esac
-
-    # If the value was cached, stop now.  We just wanted to have am__tar
-    # and am__untar set.
-    test -n "${am_cv_prog_tar_$1}" && break
-
-    # tar/untar a dummy directory, and stop if the command works.
-    rm -rf conftest.dir
-    mkdir conftest.dir
-    echo GrepMe > conftest.dir/file
-    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
-    rm -rf conftest.dir
-    if test -s conftest.tar; then
-      AM_RUN_LOG([$am__untar <conftest.tar])
-      AM_RUN_LOG([cat conftest.dir/file])
-      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
-    fi
-  done
-  rm -rf conftest.dir
-
-  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-  AC_MSG_RESULT([$am_cv_prog_tar_$1])])
-
-AC_SUBST([am__tar])
-AC_SUBST([am__untar])
-]) # _AM_PROG_TAR
-
-m4_include([m4/ax_compile_check_sizeof.m4])
-m4_include([m4/curl-amissl.m4])
-m4_include([m4/curl-bearssl.m4])
-m4_include([m4/curl-compilers.m4])
-m4_include([m4/curl-confopts.m4])
-m4_include([m4/curl-functions.m4])
-m4_include([m4/curl-gnutls.m4])
-m4_include([m4/curl-mbedtls.m4])
-m4_include([m4/curl-nss.m4])
-m4_include([m4/curl-openssl.m4])
-m4_include([m4/curl-override.m4])
-m4_include([m4/curl-reentrant.m4])
-m4_include([m4/curl-rustls.m4])
-m4_include([m4/curl-schannel.m4])
-m4_include([m4/curl-sectransp.m4])
-m4_include([m4/curl-sysconfig.m4])
-m4_include([m4/curl-wolfssl.m4])
-m4_include([m4/libtool.m4])
-m4_include([m4/ltoptions.m4])
-m4_include([m4/ltsugar.m4])
-m4_include([m4/ltversion.m4])
-m4_include([m4/lt~obsolete.m4])
-m4_include([m4/xc-am-iface.m4])
-m4_include([m4/xc-cc-check.m4])
-m4_include([m4/xc-lt-iface.m4])
-m4_include([m4/xc-translit.m4])
-m4_include([m4/xc-val-flgs.m4])
-m4_include([m4/zz40-xc-ovr.m4])
-m4_include([m4/zz50-xc-ovr.m4])
-m4_include([m4/zz60-xc-ovr.m4])
-m4_include([acinclude.m4])
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/buildconf 8.0.32-1/extra/curl/curl-7.83.1/buildconf
--- 8.0.31-1/extra/curl/curl-7.83.1/buildconf	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/buildconf	1970-01-01 00:00:00.000000000 +0000
@@ -1,4 +0,0 @@
-#!/bin/sh
-
-echo "*** Do not use buildconf. Instead, just use: autoreconf -fi" >&2
-exec ${AUTORECONF:-autoreconf} -fi "${@}"
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/buildconf.bat 8.0.32-1/extra/curl/curl-7.83.1/buildconf.bat
--- 8.0.31-1/extra/curl/curl-7.83.1/buildconf.bat	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/buildconf.bat	1970-01-01 00:00:00.000000000 +0000
@@ -1,317 +0,0 @@
-@echo off
-rem ***************************************************************************
-rem *                                  _   _ ____  _
-rem *  Project                     ___| | | |  _ \| |
-rem *                             / __| | | | |_) | |
-rem *                            | (__| |_| |  _ <| |___
-rem *                             \___|\___/|_| \_\_____|
-rem *
-rem * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
-rem *
-rem * This software is licensed as described in the file COPYING, which
-rem * you should have received as part of this distribution. The terms
-rem * are also available at https://curl.se/docs/copyright.html.
-rem *
-rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-rem * copies of the Software, and permit persons to whom the Software is
-rem * furnished to do so, under the terms of the COPYING file.
-rem *
-rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-rem * KIND, either express or implied.
-rem *
-rem ***************************************************************************
-
-rem NOTES
-rem
-rem This batch file must be used to set up a git tree to build on systems where
-rem there is no autotools support (i.e. DOS and Windows).
-rem
-
-:begin
-  rem Set our variables
-  if "%OS%" == "Windows_NT" setlocal
-  set MODE=GENERATE
-
-  rem Switch to this batch file's directory
-  cd /d "%~0\.." 1>NUL 2>&1
-
-  rem Check we are running from a curl git repository
-  if not exist GIT-INFO goto norepo
-
-  rem Detect programs. HAVE_<PROGNAME>
-  rem When not found the variable is set undefined. The undefined pattern
-  rem allows for statements like "if not defined HAVE_PERL (command)"
-  groff --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (set HAVE_GROFF=) else (set HAVE_GROFF=Y)
-  nroff --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (set HAVE_NROFF=) else (set HAVE_NROFF=Y)
-  perl --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (set HAVE_PERL=) else (set HAVE_PERL=Y)
-  gzip --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (set HAVE_GZIP=) else (set HAVE_GZIP=Y)
-
-:parseArgs
-  if "%~1" == "" goto start
-
-  if /i "%~1" == "-clean" (
-    set MODE=CLEAN
-  ) else if /i "%~1" == "-?" (
-    goto syntax
-  ) else if /i "%~1" == "-h" (
-    goto syntax
-  ) else if /i "%~1" == "-help" (
-    goto syntax
-  ) else (
-    goto unknown
-  )
-
-  shift & goto parseArgs
-
-:start
-  if "%MODE%" == "GENERATE" (
-    echo.
-    echo Generating prerequisite files
-
-    call :generate
-    if errorlevel 3 goto nogenhugehelp
-    if errorlevel 2 goto nogenmakefile
-    if errorlevel 1 goto warning
-
-  ) else (
-    echo.
-    echo Removing prerequisite files
-
-    call :clean
-    if errorlevel 2 goto nocleanhugehelp
-    if errorlevel 1 goto nocleanmakefile
-  )
-
-  goto success
-
-rem Main generate function.
-rem
-rem Returns:
-rem
-rem 0 - success
-rem 1 - success with simplified tool_hugehelp.c
-rem 2 - failed to generate Makefile
-rem 3 - failed to generate tool_hugehelp.c
-rem
-:generate
-  if "%OS%" == "Windows_NT" setlocal
-  set BASIC_HUGEHELP=0
-
-  rem Create Makefile
-  echo * %CD%\Makefile
-  if exist Makefile.dist (
-    copy /Y Makefile.dist Makefile 1>NUL 2>&1
-    if errorlevel 1 (
-      if "%OS%" == "Windows_NT" endlocal
-      exit /B 2
-    )
-  )
-
-  rem Create tool_hugehelp.c
-  echo * %CD%\src\tool_hugehelp.c
-  call :genHugeHelp
-  if errorlevel 2 (
-    if "%OS%" == "Windows_NT" endlocal
-    exit /B 3
-  )
-  if errorlevel 1 (
-    set BASIC_HUGEHELP=1
-  )
-  cmd /c exit 0
-
-  rem Setup c-ares git tree
-  if exist ares\buildconf.bat (
-    echo.
-    echo Configuring c-ares build environment
-    cd ares
-    call buildconf.bat
-    cd ..
-  )
-
-  if "%BASIC_HUGEHELP%" == "1" (
-    if "%OS%" == "Windows_NT" endlocal
-    exit /B 1
-  )
-
-  if "%OS%" == "Windows_NT" endlocal
-  exit /B 0
-
-rem Main clean function.
-rem
-rem Returns:
-rem
-rem 0 - success
-rem 1 - failed to clean Makefile
-rem 2 - failed to clean tool_hugehelp.c
-rem
-:clean
-  rem Remove Makefile
-  echo * %CD%\Makefile
-  if exist Makefile (
-    del Makefile 2>NUL
-    if exist Makefile (
-      exit /B 1
-    )
-  )
-
-  rem Remove tool_hugehelp.c
-  echo * %CD%\src\tool_hugehelp.c
-  if exist src\tool_hugehelp.c (
-    del src\tool_hugehelp.c 2>NUL
-    if exist src\tool_hugehelp.c (
-      exit /B 2
-    )
-  )
-
-  exit /B
-
-rem Function to generate src\tool_hugehelp.c
-rem
-rem Returns:
-rem
-rem 0 - full tool_hugehelp.c generated
-rem 1 - simplified tool_hugehelp.c
-rem 2 - failure
-rem
-:genHugeHelp
-  if "%OS%" == "Windows_NT" setlocal
-  set LC_ALL=C
-  set ROFFCMD=
-  set BASIC=1
-
-  if defined HAVE_PERL (
-    if defined HAVE_GROFF (
-      set ROFFCMD=groff -mtty-char -Tascii -P-c -man
-    ) else if defined HAVE_NROFF (
-      set ROFFCMD=nroff -c -Tascii -man
-    )
-  )
-
-  if defined ROFFCMD (
-    echo #include "tool_setup.h"> src\tool_hugehelp.c
-    echo #include "tool_hugehelp.h">> src\tool_hugehelp.c
-
-    if defined HAVE_GZIP (
-      echo #ifndef HAVE_LIBZ>> src\tool_hugehelp.c
-    )
-
-    %ROFFCMD% docs\curl.1 2>NUL | perl src\mkhelp.pl docs\MANUAL >> src\tool_hugehelp.c
-    if defined HAVE_GZIP (
-      echo #else>> src\tool_hugehelp.c
-      %ROFFCMD% docs\curl.1 2>NUL | perl src\mkhelp.pl -c docs\MANUAL >> src\tool_hugehelp.c
-      echo #endif /^* HAVE_LIBZ ^*/>> src\tool_hugehelp.c
-    )
-
-    set BASIC=0
-  ) else (
-    if exist src\tool_hugehelp.c.cvs (
-      copy /Y src\tool_hugehelp.c.cvs src\tool_hugehelp.c 1>NUL 2>&1
-    ) else (
-      echo #include "tool_setup.h"> src\tool_hugehelp.c
-      echo #include "tool_hugehelp.h">> src\tool_hugehelp.c
-      echo.>> src\tool_hugehelp.c
-      echo void hugehelp(void^)>> src\tool_hugehelp.c
-      echo {>> src\tool_hugehelp.c
-      echo #ifdef USE_MANUAL>> src\tool_hugehelp.c
-      echo   fputs("Built-in manual not included\n", stdout^);>> src\tool_hugehelp.c
-      echo #endif>> src\tool_hugehelp.c
-      echo }>> src\tool_hugehelp.c
-    )
-  )
-
-  findstr "/C:void hugehelp(void)" src\tool_hugehelp.c 1>NUL 2>&1
-  if errorlevel 1 (
-    if "%OS%" == "Windows_NT" endlocal
-    exit /B 2
-  )
-
-  if "%BASIC%" == "1" (
-    if "%OS%" == "Windows_NT" endlocal
-    exit /B 1
-  )
-
-  if "%OS%" == "Windows_NT" endlocal
-  exit /B 0
-
-rem Function to clean-up local variables under DOS, Windows 3.x and
-rem Windows 9x as setlocal isn't available until Windows NT
-rem
-:dosCleanup
-  set MODE=
-  set HAVE_GROFF=
-  set HAVE_NROFF=
-  set HAVE_PERL=
-  set HAVE_GZIP=
-  set BASIC_HUGEHELP=
-  set LC_ALL
-  set ROFFCMD=
-  set BASIC=
-
-  exit /B
-
-:syntax
-  rem Display the help
-  echo.
-  echo Usage: buildconf [-clean]
-  echo.
-  echo -clean    - Removes the files
-  goto error
-
-:unknown
-  echo.
-  echo Error: Unknown argument '%1'
-  goto error
-
-:norepo
-  echo.
-  echo Error: This batch file should only be used with a curl git repository
-  goto error
-
-:nogenmakefile
-  echo.
-  echo Error: Unable to generate Makefile
-  goto error
-
-:nogenhugehelp
-  echo.
-  echo Error: Unable to generate src\tool_hugehelp.c
-  goto error
-
-:nocleanmakefile
-  echo.
-  echo Error: Unable to clean Makefile
-  goto error
-
-:nocleanhugehelp
-  echo.
-  echo Error: Unable to clean src\tool_hugehelp.c
-  goto error
-
-:warning
-  echo.
-  echo Warning: The curl manual could not be integrated in the source. This means when
-  echo you build curl the manual will not be available (curl --man^). Integration of
-  echo the manual is not required and a summary of the options will still be available
-  echo (curl --help^). To integrate the manual your PATH is required to have
-  echo groff/nroff, perl and optionally gzip for compression.
-  goto success
-
-:error
-  if "%OS%" == "Windows_NT" (
-    endlocal
-  ) else (
-    call :dosCleanup
-  )
-  exit /B 1
-
-:success
-  if "%OS%" == "Windows_NT" (
-    endlocal
-  ) else (
-    call :dosCleanup
-  )
-  exit /B 0
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CHANGES 8.0.32-1/extra/curl/curl-7.83.1/CHANGES
--- 8.0.31-1/extra/curl/curl-7.83.1/CHANGES	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CHANGES	1970-01-01 00:00:00.000000000 +0000
@@ -1,7491 +0,0 @@
-                                  _   _ ____  _
-                              ___| | | |  _ \| |
-                             / __| | | | |_) | |
-                            | (__| |_| |  _ <| |___
-                             \___|\___/|_| \_\_____|
-
-                                  Changelog
-
-Version 7.83.1 (11 May 2022)
-
-Daniel Stenberg (11 May 2022)
-- RELEASE-NOTES: synced
-  
-  curl 7.83.1 release
-
-- THANKS: added contributors from 7.83.1
-
-- zuul: fix the ngtcp2-gnutls build
-  
-  Add packages and tweak the configure options.
-  
-  Use the GnuTLS 3.7.4 branch (not main).
-  
-  Closes #8829
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: add ca-fallback support for OpenSSL backend
-  
-  Closes #8828
-
-- url: check SSH config match on connection reuse
-  
-  CVE-2022-27782
-  
-  Reported-by: Harry Sintonen
-  Bug: https://curl.se/docs/CVE-2022-27782.html
-  Closes #8825
-
-- tls: check more TLS details for connection reuse
-  
-  CVE-2022-27782
-  
-  Reported-by: Harry Sintonen
-  Bug: https://curl.se/docs/CVE-2022-27782.html
-  Closes #8825
-
-- cookies: make bad_domain() not consider a trailing dot fine
-  
-  The check for a dot in the domain must not consider a single trailing
-  dot to be fine, as then TLD + trailing dot is fine and curl will accept
-  setting cookies for it.
-  
-  CVE-2022-27779
-  
-  Reported-by: Axel Chong
-  Bug: https://curl.se/docs/CVE-2022-27779.html
-  Closes #8820
-
-- test977: reproduce ability to set cookie on TLD
-  
-  When PSL is not enabled
-
-- scripts/contributors.sh: correct the copyright range
-
-- docs/RELEASE-PROCEDURE.md: refreshed and adjsuted the release dates
-
-- test379: verify --remove-on-error with --no-clobber
-
-- post_per_transfer: remove the updated file name
-  
-  When --remove-on-error is used with --no-clobber, it might have an
-  updated file name to remove.
-  
-  Bug: https://curl.se/docs/CVE-2022-27778.html
-  
-  CVE-2022-27778
-  
-  Reported-by: Harry Sintonen
-  
-  Closes #8824
-
-- hsts: ignore trailing dots when comparing hosts names
-  
-  CVE-2022-30115
-  
-  Reported-by: Axel Chong
-  Bug: https://curl.se/docs/CVE-2022-30115.html
-  Closes #8821
-
-- test440/441: verify HSTS with trailing dots
-
-- libtest/lib1560: verify the host name percent decode fix
-
-- urlapi: reject percent-decoding host name into separator bytes
-  
-  CVE-2022-27780
-  
-  Reported-by: Axel Chong
-  Bug: https://curl.se/docs/CVE-2022-27780.html
-  Closes #8826
-
-- nss: return error if seemingly stuck in a cert loop
-  
-  CVE-2022-27781
-  
-  Reported-by: Florian Kohnhäuser
-  Bug: https://curl.se/docs/CVE-2022-27781.html
-  Closes #8822
-
-- test412/413: verify alt-svc with trailing dots
-
-- altsvc: fix host name matching for trailing dots
-  
-  Closes #8819
-
-- [Garrett Squire brought this change]
-
-  hyper: fix test 357
-  
-  This change fixes the hyper API such that PUT requests that receive a
-  417 response can retry without the Expect header.
-  
-  Closes #8811
-
-- [Harry Sintonen brought this change]
-
-  sectransp: bail out if SSLSetPeerDomainName fails
-  
-  Before the code would just warn about SSLSetPeerDomainName() errors.
-  
-  Closes #8798
-
-- http_proxy/hyper: handle closed connections
-  
-  Enable test 1021 for hyper builds.
-  
-  Patched-by: Prithvi MK
-  Fixes #8700
-  Closes #8806
-
-- KNOWN_BUGS: timeout when reusing a http3 connection
-  
-  Closes #8764
-
-- KNOWN_BUGS: configure --with-ca-fallback is not supported by h3
-  
-  Closes #8696
-
-- [Ryan Schmidt brought this change]
-
-  Makefile: fix "make ca-firefox"
-  
-  Closes #8804
-
-Daniel Gustafsson (5 May 2022)
-- tests: fix markdown formatting in README
-  
-  The asterisk in the abbreviation *NIX (for UNIX/Linux) needs to be
-  escaped to not mean start of italic formatting. This is consistent
-  with docs/RELEASE-PROCEDURE.md.
-  
-  Closes: #8802
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (5 May 2022)
-- TODO: expand on "Expose tried IP addresses that failed"
-  
-  Ref: #8794
-
-Daniel Gustafsson (5 May 2022)
-- [Fabian Keil brought this change]
-
-  tests/server: declare variable 'reqlogfile' static
-  
-  Silences the warning:
-  
-       CC       socksd-socksd.o
-     socksd.c:143:13: warning: no previous extern declaration for
-      non-static variable 'reqlogfile' [-Wmissing-variable-declarations]
-     const char *reqlogfile = DEFAULT_REQFILE;
-                 ^
-     socksd.c:143:7: note: declare 'static' if the variable is not
-      intended to be used outside of this translation unit
-     const char *reqlogfile = DEFAULT_REQFILE;
-           ^
-     1 warning generated.
-  
-  ... when compiling with clang 13.
-  
-  Closes: #8799
-  Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
-
-- HTTP-COOKIES: add missing CURLOPT_COOKIESESSION
-  
-  Commit 980a47b42 added support for ignoring session cookies, but it
-  was never added to the documentation.
-  
-  Closes: #8795
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (5 May 2022)
-- docs/THANKS: remove name duplicate
-
-- [Philip H brought this change]
-
-  .mailmap: update
-  
-  Closes #8800
-
-Jay Satiro (5 May 2022)
-- mbedtls: fix some error messages
-  
-  Prior to this change some of the error messages misidentified the
-  function that failed.
-
-Daniel Stenberg (5 May 2022)
-- RELEASE-NOTES: synced
-
-- [Sergey Markelov brought this change]
-
-  x509asn1: make do_pubkey handle EC public keys
-  
-  Closes #8757
-
-- [Harry Sintonen brought this change]
-
-  mbedtls: bail out if rng init fails
-  
-  There was a failf() call but no actual error return.
-  
-  Closes #8796
-
-- [Sergey Markelov brought this change]
-
-  urlapi: address (harmless) UndefinedBehavior sanitizer warning
-  
-  `while(i--)` causes runtime error: unsigned integer overflow: 0 - 1
-  cannot be represented in type 'size_t' (aka 'unsigned long')
-  
-  Closes #8797
-
-- [Fabian Keil brought this change]
-
-  test{898,974,976}: add 'HTTP proxy' keywords
-  
-  ... so the tests can be automatically skipped when
-  testing external HTTP proxies like Privoxy.
-  
-  Closes #8791
-
-- [Harry Sintonen brought this change]
-
-  gskit_connect_step1: fixed bogus setsockopt calls
-  
-  setsockopt takes a reference to value, not value. With the current
-  code this just leads to -1 return value with errno EFAULT.
-  
-  Closes #8793
-
-- CURLOPT_SSH_AUTH_TYPES.3: fix the default
-  
-  The default is all possible methods.
-  
-  Closes #8792
-
-- CURLOPT_DOH_URL.3: mention the known bug
-  
-  It is mostly duplicating info from KNOWN_BUGS but make it easier to find
-  for users of this option.
-  
-  Closes #8790
-
-- CURLOPT_HSTS*FUNCTION.3: document the involved structs as well
-  
-  Reviewed-By: Daniel Gustafsson
-  Closes #8788
-
-- docs/SECURITY-PROCESS.md: "Visible command line arguments"
-
-- SECURITY-PROCESS: mention "URL inconsistencies"
-  
-  ... as common problems that are *not* vulns.
-
-Daniel Gustafsson (2 May 2022)
-- contributors: strip off final comma
-  
-  The final row of contributors should not end with a comma as it's the
-  end of the list.
-  
-  Closes: #8785
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (2 May 2022)
-- [Philip H brought this change]
-
-  misc: use "autoreconf -fi" instead buildconf
-  
-  Signed-off-by: Philip H <47042125+pheiduck@users.noreply.github.com>
-  Closes #8777
-
-Daniel Gustafsson (2 May 2022)
-- [Philip H brought this change]
-
-  cirrus: Use pip for Python packages on FreeBSD
-  
-  Using pip instead of easy_install is more in line with how other
-  CI images are being maintained.
-  
-  Closes: #8783
-  Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
-
-- [Philip H brought this change]
-
-  cirrus: Update to FreeBSD 12.3
-  
-  Closes: #8783
-  Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
-
-- tool_getparam: simplify conditional statement
-  
-  param_place cannot be NULL here since we immediately efter this block
-  perform arithmetic on it (and use it in order to get here) so there is
-  little reason to check.
-  
-  Closes: #8786
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-- RELEASE-NOTES: synced
-
-- gskit: remove unused function set_callback
-  
-  This function has been unused since the initial commit of the GSKit
-  backend in 0eba02fd4.  The motivation for the code was getting the
-  whole certificate chain: the only place where the latter is available
-  is as a callback parameter.  Unfortunately it is not possible to pass
-  a user pointer to this callback, which precludes the possibility to
-  associate the cert chain with a data/conn structure.
-  
-  For further information, search for pgsk_cert_validation_callback on:
-  https://www.ibm.com/docs/api/v1/content/ssw_ibm_i_71/apis/gsk_attribute_set_callback.htm
-  
-  As the upstream library never added a parameter like that to the API,
-  we give up the wait and remove the dead code.
-  
-  Closes: #8782
-  Reviewed-by: Patrick Monnerat <patrick@monnerat.net>
-
-- curl: free resource in error path
-  
-  If the new filename cannot be generated due to memory pressure, free
-  the allocated aname on the way out to avoid a small leak.
-  
-  Closes: #8770
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-- curl: guard against size_t wraparound in no-clobber code
-  
-  When generating the new filename, make sure we aren't overflowing the
-  size_t limit when calculating the new length. This is mostly academic
-  but good code hygeine nonetheless.
-  
-  Closes: #8771
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (30 Apr 2022)
-- gha: build msh3
-  
-  Closes #8779
-
-- scripts/cijobs.pl: try "current branch" first then "master"
-
-- [Yusuke Nakamura brought this change]
-
-  msh3: get msh3 version from MsH3Version
-  
-  Closes #8762
-
-- [Yusuke Nakamura brought this change]
-
-  msh3: psss remote_port to MsH3ConnectionOpen
-  
-  MsH3 supported additional "Port" parameter to connect not hosted on
-  443 port QUIC website.
-  
-  * https://github.com/nibanks/msh3/releases/tag/v0.3.0
-  * https://github.com/nibanks/msh3/pull/37
-  
-  Closes #8762
-
-- [Christian Weisgerber brought this change]
-
-  openssl: define HAVE_SSL_CTX_SET_EC_CURVES for libressl
-  
-  SSL_CTX_set1_curves_list() has been available since LibreSSL 2.5.3,
-  released five years ago.
-  
-  Bug: https://curl.se/mail/lib-2022-04/0059.html
-  Closes #8773
-
-- http: move Curl_allow_auth_to_host()
-  
-  It was mistakenly put within the CURL_DISABLE_HTTP_AUTH #ifdef
-  
-  Reported-by: Michael Olbrich
-  Fixes #8772
-  Closes #8775
-
-Daniel Gustafsson (29 Apr 2022)
-- msh3: print boolean value as text representation
-  
-  Print the boolean value as its string representation instead of with
-  %hhu which isn't a format we typically use.
-  
-  Closes: #8763
-  Reviewed-by: Nick Banks <nibanks@microsoft.com>
-
-Daniel Stenberg (29 Apr 2022)
-- data/test376: set a proper name
-
-- GHA/mbedtls: enabled nghttp2 in the build
-  
-  Closes #8767
-
-- mbedtls: fix compile when h2-enabled
-  
-  Fixes #8766
-  Reported-by: LigH-de on github
-  Closes #8768
-
-- RELEASE-NOTES: synced
-  
-  bumped curlver to 7.83.1-dev
-
-- SECURITY-PROCESS: extended
-  
-  Also clarify BUG-BOUNTY.md with IBB details.
-  
-  Closes #8754
-
-- [Adam Rosenfield brought this change]
-
-  conn: fix typo 'connnection' -> 'connection' in two function names
-  
-  Closes #8759
-
-Version 7.83.0 (27 Apr 2022)
-
-Daniel Stenberg (27 Apr 2022)
-- RELEASE-NOTES: synced
-  
-  The 7.83.0 release
-
-- docs/THANKS: contributors from 7.83.0
-
-- test 898/974/976: require proxy to run
-  
-  Fixes #8755
-  Reported-by: Marc Hörsken
-  Closes #8756
-
-- gnutls: don't leak the SRP credentials in redirects
-  
-  Follow-up to 620ea21410030 and 139a54ed0a172a
-  
-  Reported-by: Harry Sintonen
-  Closes #8752
-
-- CURLOPT*TLSAUTH: they only work with OpenSSL or GnuTLS
-  
-  Closes #8753
-
-- openssl: don't leak the SRP credentials in redirects either
-  
-  Follow-up to 620ea21410030
-  
-  Reported-by: Harry Sintonen
-  Closes #8751
-
-- [Liam Warfield brought this change]
-
-  hyper: fix tests 580 and 581 for hyper
-  
-  Hyper now has the ability to preserve header order. This commit adds a
-  few lines setting the connection options for this feature.
-  
-  Related to issue #8617
-  Closes #8707
-
-- conncache: remove name arg from Curl_conncache_find_bundle
-  
-  To simplify, and also since the returned name is not the full actual
-  name used for the check. The port number and zone id is also involved,
-  so just showing the name is misleading.
-  
-  Closes #8750
-
-- tests: verify the fix for CVE-2022-27774
-  
-   - Test 973 redirects from HTTP to FTP, clear auth
-   - Test 974 redirects from HTTP to HTTP different port, clear auth
-   - Test 975 redirects from HTTP to FTP, permitted to keep auth
-   - Test 976 redirects from HTTP to HTTP different port, permitted to keep
-     auth
-
-- transfer: redirects to other protocols or ports clear auth
-  
-  ... unless explicitly permitted.
-  
-  Bug: https://curl.se/docs/CVE-2022-27774.html
-  Reported-by: Harry Sintonen
-  Closes #8748
-
-- connect: store "conn_remote_port" in the info struct
-  
-  To make it available after the connection ended.
-
-- cookie.d: clarify when cookies are always sent
-
-- test898: verify the fix for CVE-2022-27776
-  
-  Do not pass on Authorization headers on redirects to another port
-
-- http: avoid auth/cookie on redirects same host diff port
-  
-  CVE-2022-27776
-  
-  Reported-by: Harry Sintonen
-  Bug: https://curl.se/docs/CVE-2022-27776.html
-  Closes #8749
-
-- libssh2: make the md5 comparison fail if wrong length
-  
-  Making it just skip the check unless exactly 32 is too brittle. Even if
-  the docs says it needs to be exactly 32, it is be safer to make the
-  comparison fail here instead.
-  
-  Reported-by: Harry Sintonen
-  Bug: https://hackerone.com/reports/1549461
-  Closes #8745
-
-- conncache: include the zone id in the "bundle" hashkey
-  
-  Make connections to two separate IPv6 zone ids create separate
-  connections.
-  
-  Reported-by: Harry Sintonen
-  Bug: https://curl.se/docs/CVE-2022-27775.html
-  Closes #8747
-
-- [Patrick Monnerat brought this change]
-
-  url: check sasl additional parameters for connection reuse.
-  
-  Also move static function safecmp() as non-static Curl_safecmp() since
-  its purpose is needed at several places.
-  
-  Bug: https://curl.se/docs/CVE-2022-22576.html
-  
-  CVE-2022-22576
-  
-  Closes #8746
-
-- libssh2: compare sha256 strings case sensitively
-  
-  Reported-by: Harry Sintonen
-  Bug: https://hackerone.com/reports/1549435
-  Closes #8744
-
-- tool_getparam: error out on missing -K file
-  
-  Add test 411 to verify.
-  
-  Reported-by: Median Median Stride
-  Bug: https://hackerone.com/reports/1542881
-  Closes #8731
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: deal with sub-millisecond timeout
-  
-  Closes #8738
-
-- misc: update copyright year ranges
-
-- c_escape: escape '?' in generated --libcurl code
-  
-  In order to avoid the risk of it being used in an accidental trigraph in
-  the generated code.
-  
-  Reported-by: Harry Sintonen
-  Bug: https://hackerone.com/reports/1548535
-  Closes #8742
-
-- [Philip H brought this change]
-
-  mlc: curl.zuul.vexxhost.dev is reachable again
-  
-  remove it from ignorelist for linkcheck
-  
-  Closes #8736
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: avoid busy loop in low CWND situation
-  
-  Closes #8739
-
-- TODO: telnet - exit immediately upon connection if stdin is /dev/null
-  
-  Suggested-by: Robin A. Meade
-  URL: https://curl.se/mail/archive-2022-04/0027.html
-
-- [Kushal Das brought this change]
-
-  docs: updates spellings with full words
-  
-  Closes #8730
-
-- tests/FILEFORMAT.md: spellfix
-
-Daniel Gustafsson (21 Apr 2022)
-- misc: fix typos
-  
-  Fix a few random typos is comments and workflow names.
-
-- macos: fix .plist installation into framework
-  
-  The copy command introduced in e498a9b1f had leftover '>' from the
-  previous sed command it replaced, which broke its syntax.  Fix by
-  removing.
-  
-  Reported-by: Emanuele Torre <torreemanuele6@gmail.com>
-
-Daniel Stenberg (21 Apr 2022)
-- [Christopher Degawa brought this change]
-
-  Makefile: fix ca-bundle due to mk-ca-bundle.pl being moved
-  
-  The script was moved in 8e22fc68e7dda43e9f but the lines that called it
-  was not changed to reflect it's new position
-  
-  Signed-off-by: Christopher Degawa <ccom@randomderp.com>
-  
-  Closes #8728
-
-Daniel Gustafsson (20 Apr 2022)
-- macos: set .plist version in autoconf
-  
-  Set the libcurl version in libcurl.plist like how libcurl.vers is
-  created.
-  
-  Closes: #8692
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-  Reviewed-by: Nick Zitzmann <nickzman@gmail.com>
-
-- cookies: Improve errorhandling for reading cookiefile
-  
-  The existing programming had some issues with errorhandling for reading
-  the cookie file. If the file failed to open, we would silently ignore it
-  and continue as if there was no file (or stdin) passed. In this case, we
-  would also call fclose() on the NULL FILE pointer, which is undefined
-  behavior. Fix by ensuring that the FILE pointer is set before calling
-  fclose on it, and issue a warning in case the file cannot be opened.
-  Erroring out on nonexisting file would break backwards compatibility of
-  very old behavior so we can't really go there.
-  
-  Closes: #8699
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-  Reviewed-by: Jay Satiro <raysatiro@yahoo.com>
-
-Daniel Stenberg (20 Apr 2022)
-- libcurl-tutorial.3: spellfix and minor polish
-
-- CURLINFO_PRIMARY_PORT.3: spellfix
-  
-  Reported-by: Patrick Monnerat
-
-- [Jay Dommaschk brought this change]
-
-  libssh: fix double close
-  
-  libssh closes the socket in ssh_diconnect() so make sure that libcurl
-  does not also close it.
-  
-  Fixes #8708
-  Closes #8718
-
-Jay Satiro (20 Apr 2022)
-- [Gisle Vanem brought this change]
-
-  unit1620: call global_init before calling Curl_open
-  
-  Curl_open calls the resolver init and on Windows if the resolver backend
-  is c-ares then the Windows sockets library (winsock) must already have
-  been initialized (via global init).
-  
-  Ref: https://github.com/curl/curl/pull/8540#issuecomment-1059771800
-  
-  Closes https://github.com/curl/curl/pull/8719
-
-Daniel Stenberg (19 Apr 2022)
-- CURLINFO_PRIMARY_PORT.3: clarify which port this is
-  
-  As it was not entirely clear previously.
-  
-  Closes #8725
-
-- CURLOPT_UNRESTRICTED_AUTH.3: extended explanation
-  
-  Include details about Authentication headers.
-  
-  Reported-by: Brad Spencer
-  Fixes #8724
-  Closes #8726
-
-- .github/workflows/macos.yml: add a libssh job with c-ares
-  
-  ... to enable the memdebug system
-  
-  Closes #8720
-
-- RELEASE-NOTES: synced
-
-Jay Satiro (17 Apr 2022)
-- [Gisle Vanem brought this change]
-
-  docs/HTTP3.md: fix typo
-  
-  also fix msh3 section formatting
-  
-  Ref: https://github.com/curl/curl/commit/37492ebb#r70980087
-
-Marc Hoersken (17 Apr 2022)
-- timediff.[ch]: add curlx helper functions for timeval conversions
-  
-  Also move timediff_t definitions from timeval.h to timediff.h and
-  then make timeval.h include the new standalone-capable timediff.h.
-  
-  Reviewed-by: Jay Satiro
-  Reviewed-by: Daniel Stenberg
-  
-  Supersedes #5888
-  Closes #8595
-
-Daniel Stenberg (17 Apr 2022)
-- [Balakrishnan Balasubramanian brought this change]
-
-  tests: refactor server/socksd.c to support --unix-socket
-  
-  Closes #8687
-
-- [Emanuele Torre brought this change]
-
-  tool_paramhlp: use feof(3) to identify EOF correctly when using fread(3)
-  
-  This loop was using the number of bytes read from the file as condition
-  to keep reading.
-  
-  From Linux's fread(3) man page:
-  > On success, fread() and fwrite() return the number of items read or
-  > written. This number equals the number of bytes transferred only when
-  > size is 1. If an error occurs, or the end of the file is reached, the
-  > return value is a short item count (or zero).
-  >
-  > The file position indicator for the stream is advanced by the number
-  > of bytes successfully read or written.
-  >
-  > fread() does not distinguish between end-of-file and error, and
-  > callers must use feof(3) and ferror(3) to determine which occurred.
-  
-  This means that nread!=0 doesn't make much sense as an end condition for
-  the loop: nread==0 doesn't necessarily mean that EOF has been reached or
-  an error has occured (but that is usually the case) and nread!=0 doesn't
-  necessarily mean that EOF has not been reached or that no read errors
-  have occured. feof(3) and ferror(3) should be uses when using fread(3).
-  
-  Currently curl has to performs an extra fread(3) call to get a return
-  value equal to 0 to stop looping.
-  
-  This usually "works" (even though nread==0 shouldn't be interpreted as
-  EOF) if stdin is a pipe because EOF usually marks the "real" end of the
-  stream, so the extra fread(3) call will return immediately and the extra
-  read syscall won't be noticeable:
-  
-      bash-5.1$ strace -e read curl -s -F file=@- 0x0.st <<< a 2>&1 |
-      > tail -n 5
-      read(0, "a\n", 4096)                    = 2
-      read(0, "", 4096)                       = 0
-      read(0, "", 4096)                       = 0
-      http://0x0.st/oRs.txt
-      +++ exited with 0 +++
-      bash-5.1$
-  
-  But this doesn't work if curl is reading from stdin, stdin is a
-  terminal, and the EOF is being emulated using a shell with ^D. Two
-  consecutive ^D will be required in this case to actually make curl stop
-  reading:
-  
-      bash-5.1$ curl -F file=@- 0x0.st
-      a
-      ^D^D
-      http://0x0.st/oRs.txt
-      bash-5.1$
-  
-  A possible workaround to this issue is to use a program that handles EOF
-  correctly to indirectly send data to curl's stdin:
-  
-      bash-5.1$ cat - | curl -F file=@- 0x0.st
-      a
-      ^D
-      http://0x0.st/oRs.txt
-      bash-5.1$
-  
-  This patch makes curl handle EOF properly when using fread(3) in
-  file2memory() so that the workaround is not necessary.
-  
-  Since curl was previously ignoring read errors caused by this fread(3),
-  ferror(3) is also used in the condition of the loop: read errors and EOF
-  will have the same meaning; this is done to somewhat preserve the old
-  behaviour instead of making the command fail when a read error occurs.
-  
-  Closes #8701
-
-- gen.pl: change wording for mutexed options
-  
-  Instead of saying "This option overrides NNN", now say "This option is
-  mutually exclusive to NNN" in the generated man page ouput, as the
-  option does not in all cases actually override the others but they are
-  always mutually exclusive.
-  
-  Ref: #8704
-  Closes #8716
-
-- curl: error out if -T and -d are used for the same URL
-  
-  As one implies PUT and the other POST, both cannot be used
-  simultaneously.
-  
-  Add test 378 to verify.
-  
-  Reported-by: Boris Verkhovskiy
-  Fixes #8704
-  Closes #8715
-
-- lib: remove exclamation marks
-  
-  ... from infof() and failf() calls. Make them less attention seeking.
-  
-  Closes #8713
-
-- fail.d: tweak the description
-  
-  Reviewed-by: Daniel Gustafsson
-  Suggested-by: Robert Charles Muir
-  Ref: https://twitter.com/rcmuir/status/1514915401574010887
-  
-  Closes #8714
-
-Daniel Gustafsson (15 Apr 2022)
-- docs: Fix missing semicolon in example code
-  
-  Multiple share examples were missing a semicolon on the line defining
-  the CURLSHcode variable.
-  
-  Closes: #8697
-  Reported-by: Michael Kaufmann <mail@michael-kaufmann.ch>
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-- infof: consistent capitalization of warning messages
-  
-  Ensure that all infof calls with a warning message are capitalized
-  in the same way.  At some point we should probably set up a style-
-  guide for infof but until then let's aim for a little consistenncy
-  where we can.
-  
-  Closes: #8711
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-- RELEASE-NOTES: synced
-
-- [Matteo Baccan brought this change]
-
-  perl: removed a double semicolon at end of line
-  
-  Remove double semicolons at end of line in Perl code.
-  
-  Closes: #8709
-  Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
-
-- curl_easy_header: fix typos in documentation
-  
-  Closes: #8694
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Marcel Raad (11 Apr 2022)
-- appveyor: add Cygwin build
-  
-  Closes https://github.com/curl/curl/pull/8693
-
-- appveyor: only add MSYS2 to PATH where required
-  
-  Closes https://github.com/curl/curl/pull/8693
-
-Daniel Stenberg (10 Apr 2022)
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: fix memory leak
-  
-  Closes #8691
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: remove remote_addr which is not used in a meaningful way
-  
-  Closes #8689
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: enlarge H3_SEND_SIZE
-  
-  Make h3_SEND_SIZE larger because current value (20KiB) is too small
-  for the high latency environment.
-  
-  Closes #8690
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: fix HTTP/3 upload stall and avoid busy loop
-  
-  This commit fixes HTTP/3 upload stall if upload data is larger than
-  H3_SEND_SIZE.  Only check writability of socket if a stream is
-  writable to avoid busy loop when QUIC flow control window is filled
-  up, or upload buffer is full.
-  
-  Closes #8688
-
-- [Nick Banks brought this change]
-
-  msh3: add support for QUIC and HTTP/3 using msh3
-  
-  Considered experimental, as the other HTTP/3 backends.
-  
-  Closes #8517
-
-- TODO: "SFTP with SCP://"
-
-- GHA: move bearssl jobs over from zuul
-  
-  Closes #8684
-
-- data/DISABLED: disable test 313 on bearssl builds
-  
-  Closes #8684
-
-- runtests: add 'bearssl' as testable feature
-  
-  Closes #8684
-
-- GHA: add openssl3 jobs moved over from zuul
-  
-  Closes #8683
-
-- schannel: remove dead code that will never run
-  
-  As the condition can't ever evaluate true
-  
-  Reported-by: Andrey Alifanov
-  Ref: #8675
-  Closes #8677
-
-- connecache: remove duplicate connc->closure_handle check
-  
-  The superfluous extra check could cause analyzer false positives
-  and doesn't serve any purpose.
-  
-  Closes #8676
-
-- [Michał Antoniak brought this change]
-
-  mbedtls: remove server_fd from backend
-  
-  Closes #8682
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: use token when detecting :status header field
-  
-  Closes #8679
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: make curl 1ms faster
-  
-  Pass 0 for an already expired timer.
-  
-  Closes #8678
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: fix QUIC_IDLE_TIMEOUT
-  
-  QUIC_IDLE_TIMEOUT should be of type ngtcp2_duration which is
-  nanoseconds resolution.
-  
-  Closes #8678
-
-- English: use American spelling consistently
-  
-  Authorization, Initialization, Organization etc.
-  
-  Closes #8673
-
-Daniel Gustafsson (5 Apr 2022)
-- [Sascha Zengler brought this change]
-
-  BUGS: Fix incorrect punctuation
-  
-  Closes #8672
-  Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
-
-Daniel Stenberg (4 Apr 2022)
-- tool_listhelp.c: uppercase URL
-
-- RELEASE-NOTES: synced
-
-- http: streamclose "already downloaded"
-  
-  Instead of connclose()ing, since when HTTP/2 is used it doesn't need to
-  close the connection as stopping the current transfer is enough.
-  
-  Reported-by: Evangelos Foutras
-  Closes #8665
-
-Jay Satiro (1 Apr 2022)
-- ftp: fix error message for partial file upload
-  
-  - Show the count of bytes written on partial file upload.
-  
-  Prior to this change the error message mistakenly showed the count of
-  bytes read, not written.
-  
-  Bug: https://github.com/curl/curl/discussions/8637
-  Reported-by: Taras Kushnir
-  
-  Closes https://github.com/curl/curl/pull/8649
-
-Daniel Stenberg (1 Apr 2022)
-- http: correct the header error message to say colon
-  
-  Not semicolon
-  
-  Reported-by: Gisle Vanem
-  Ref: #8666
-  Closes #8667
-
-- lib: #ifdef on USE_HTTP2 better
-  
-  ... as nghttp2 might not be the library that provides HTTP/2 support.
-  
-  Closes #8661
-
-- [Michał Antoniak brought this change]
-
-  mbedtls: remove 'protocols' array from backend when ALPN is not used
-  
-  Closes #8663
-
-- http2: RST the stream if we stop it on our own will
-  
-  For the "simulated 304" case the done-call isn't considered "premature"
-  but since the server didn't close the stream it needs to be reset to
-  stop delivering data.
-  
-  Closes #8664
-
-- http: close the stream (not connection) on time condition abort
-  
-  Closes #8664
-
-- http2: handle DONE called for the paused stream
-  
-  As it could otherwise stall all streams on the connection
-  
-  Reported-by: Evangelos Foutras
-  Fixes #8626
-  Closes #8664
-
-- tls: make mbedtls and NSS check for h2, not nghttp2
-  
-  This makes them able to also negotiate HTTP/2 even when built to use
-  hyper for h2.
-  
-  Closes #8656
-
-- tests/libtest/lib670.c: fixup the copyright year range
-  
-  follow-up to b54e18640ea4b7
-
-- [Leandro Coutinho brought this change]
-
-  lib670: avoid double check result
-  
-  Closes #8660
-
-- vtls: use a generic "ALPN, server accepted" message
-  
-  Closes #8657
-
-- vtls: use a backend standard message for "ALPN: offers %s"
-  
-  I call it VTLS_INFOF_ALPN_OFFER_1STR, the '1str' meaning that the
-  infof() call also needs a string argument: the ALPN ID.
-  
-  Closes #8657
-
-- [Christian Schmitz brought this change]
-
-  strcase.h: add comment about the return code
-  
-  Tool often we run into expecting this to work like strcmp, but it
-  returns 1 instead of 0 for match.
-  
-  Closes #8658
-
-- vtls: provide a unified APLN-disagree string for all backends
-  
-  Also rephrase to make it sound less dangerous:
-  
-   "ALPN: server did not agree on a protocol. Uses default."
-  
-  Reported-by: Nick Coghlan
-  Fixes #8643
-  Closes #8651
-
-- projects/README: converted to markdown
-  
-  Closes #8652
-
-- misc: spelling fixes
-  
-  Mostly in comments but also in the -w documentation for headers_json.
-  
-  Closes #8647
-
-- KNOW_BUGS: HTTP3/Transfer closed with n bytes remaining to read
-  
-  "HTTP/3 does not support client certs" considered fixed, at least with
-  the ngtcp2 backend.
-  
-  Closes #8523
-
-- CURLOPT_PREQUOTE.3: only works for FTP file transfers, not dirs
-  
-  Also add to quote.d. Add to TODO as something to add in a future.
-  
-  Reported-by: anon00000000 on github
-  Closes #8602
-  Closes #8648
-
-- RELEASE-NOTES: synced
-
-- pop3/smtp: return *WEIRD_SERVER_REPLY when not understood
-  
-  This leaves the CURLE_RECV_ERROR error code for explicit failure to
-  receive network data and allows users to better separate the problems.
-  
-  Ref #8356
-  Reported-by: Rianov Viacheslav
-  Closes #8506
-
-- docs: lots of minor language polish
-  
-  Mostly based on recent language decisions from "everything curl":
-  
-  - remove contractions (isn't => is not)
-  - *an* HTTP (consistency)
-  - runtime (no hyphen)
-  - backend (no hyphen)
-  - URL is uppercase
-  
-  Closes #8646
-
-Jay Satiro (29 Mar 2022)
-- projects: Update VC version names for VS2017, VS2022
-  
-  - Rename VC15 -> VC14.10, VC17 -> VC14.30.
-  
-  The projects directory that holds the pre-generated Visual Studio
-  project files uses VC<ver> to indicate the MSVC version. At some point
-  support for Visual Studio 2017 (Visual Studio version 15 which uses MSVC
-  14.10) was added as VC15. Visual Studio 2022 (Visual Studio version 17
-  which uses MSVC 14.30) project files were recently added and followed
-  that same format using VC17.
-  
-  There is no such MSVC version (yet) as VC15 or VC17.
-  
-  For VS 2017 for example, the name we use is correct as either VS17,
-  VS2017, VC14.10. I opted for the latter since we use VC for earlier
-  versions (eg VC10, VC12, etc).
-  
-  Ref: https://github.com/curl/curl/pull/8438#issuecomment-1037070192
-  
-  Closes https://github.com/curl/curl/pull/8447
-
-Daniel Stenberg (29 Mar 2022)
-- mqtt: better handling of TCP disconnect mid-message
-  
-  Reported-by: Jenny Heino
-  Bug: https://hackerone.com/reports/1521610
-  Closes #8644
-
-- CURLOPT_DISALLOW_USERNAME_IN_URL.3: use uppercase URL
-
-- [Ian Blanes brought this change]
-
-  docs/DYNBUF: clarify documentation for Curl_dyn_ptr and Curl_dyn_uptr
-  
-  Closes #8606
-
-- [Ian Blanes brought this change]
-
-  curl: fix segmentation fault for empty output file names.
-  
-  Function glob_match_url set *result to NULL when called with filename =
-  "", producing an indirect NULL pointer dereference.
-  
-  Closes #8606
-
-- TODO: Read keys from ~/.ssh/id_ecdsa, id_ed25519
-  
-  It would be nice to expand the list of key locations curl uses for the
-  newer key types supported by libssh2.
-  
-  Closes #8586
-
-- ngtcp2: update to work after recent ngtcp2 updates
-  
-  Assisted-by: Tatsuhiro Tsujikawa
-  Reported-by: jurisuk on github
-  Fixes #8638
-  Closes #8639
-
-- [Farzin brought this change]
-
-  CURLOPT_PROGRESSFUNCTION.3: fix typo in example
-  
-  Closes #8636
-
-- curl/header_json: output the header names in lowercase
-  
-  To better allow json[“header”].
-  
-  Reported-by: Peter Korsgaard
-  Bug: https://daniel.haxx.se/blog/2022/03/24/easier-header-picking-with-curl/comment-page-1/#comment-25878
-  Closes #8633
-
-- RELEASE-NOTES: synced
-
-- headers.h: make Curl_headers_push() be CURLE_OK when not built
-  
-  ... to avoid errors when the function isn't there.
-  
-  Reported-by: Marcel Raad
-  Fixes #8627
-  Closes #8628
-
-- scripts: move three scripts from lib/ to scripts/
-  
-  Move checksrc.pl, firefox-db2pem.sh and mk-ca-bundle.pl since they don't
-  particularly belong in lib/
-  
-  Also created an EXTRA_DIST= in scripts/Makefile.am instead of specifying
-  those files in the root Makefile.am
-  
-  Closes #8625
-
-Marc Hoersken (23 Mar 2022)
-- lib/warnless.[ch]: only check for WIN32 and ignore _WIN32
-  
-  curl_setup.h automatically defines WIN32 if just _WIN32 is defined.
-  
-  Therefore make sure curl_setup.h is included through warnless.h.
-  
-  Reviewed-by: Daniel Stenberg
-  Reviewed-by: Jay Satiro
-  
-  Closes #8594
-
-- tests/server/util.h: align WIN32 condition with util.c
-  
-  There is no need to test for both _WIN32 and WIN32 as curl_setup.h
-  automatically defines the later if the first one is defined.
-  
-  Also tests/server/util.c is only checking for WIN32 arouund the
-  implementation of win32_perror, so just defining _WIN32
-  would not be sufficient for a successful compilation.
-  
-  Reviewed-by: Daniel Stenberg
-  Reviewed-by: Jay Satiro
-  
-  Closes #8594
-
-Daniel Stenberg (22 Mar 2022)
-- [Philip H brought this change]
-
-  firefox-db2pem.sh: make the shell script safer
-  
-  Reported by lift
-  
-  Closes #8616
-
-Jay Satiro (22 Mar 2022)
-- gtls: fix build for disabled TLS-SRP
-  
-  Prior to this change if, at build time, the GnuTLS backend was found to
-  have TLS-SRP support (HAVE_GNUTLS_SRP) but TLS-SRP was disabled in curl
-  via --disable-tls-srp (!USE_TLS_SRP) then a build error would occur.
-  
-  Bug: https://curl.se/mail/lib-2022-03/0046.html
-  Reported-by: Robert Brose
-  
-  Closes https://github.com/curl/curl/pull/8604
-
-- winbuild: Add a Visual Studio example to the README
-  
-  - Add an example that explains in detail how the user can add libcurl to
-    their Visual Studio project.
-  
-  Ref: https://github.com/curl/curl/issues/8591
-  
-  Closes https://github.com/curl/curl/pull/8592
-
-- docs/opts: Mention Schannel client cert type is P12
-  
-  Schannel backend code behaves same as Secure Transport, it expects a P12
-  certificate file or the name of a certificate already in the user's OS
-  key store. Also, both backends ignore CURLOPT_SSLKEY (tool: --key)
-  because they expect the private key to already be available from the
-  keystore or P12 certificate.
-  
-  Ref: https://github.com/curl/curl/discussions/8581#discussioncomment-2337260
-  
-  Closes https://github.com/curl/curl/pull/8587
-
-Daniel Stenberg (22 Mar 2022)
-- lib1945: fix compiler warning 4706 on MSVC
-  
-  Follow-up from d1e4a677340c
-  
-  Closes #8623
-
-- [Philip H brought this change]
-
-  ci/event-based.yml: improve impacket install
-  
-  skip python3-pip
-  install impacket with library module
-  
-  Closes #8621
-
-- test1459: disable for oldlibssh
-  
-  This test with libssh 0.9.3 works fine on github but fails on circleci.
-  Might as well disable this test for oldlibssh installations.
-  
-  Closes #8622
-
-- test1135: sync with recent API updates
-  
-  This test verifies that the order of functions in public headers remain
-  the same but hasn't been updated to care for recently added header
-  files. The order is important for some few platforms - or VERSIONINFO
-  needs to updated.
-  
-  This fix also updates VERSIONINFO to be sure.
-  
-  Closes #8620
-
-- curl_easy_nextheader.3: fix two typos
-  
-  Reported-by: Timothe Litt
-  Bug: https://curl.se/mail/lib-2022-03/0060.html
-
-- options: remove mistaken space before paren in prototype
-
-- cirrus: add --enable-headers-api for some windows builds
-
-- GHA: --enable-headers-api in all workflows
-
-- lib: make the headers API depend on --enable-headers-api
-
-- configure: add --enable-headers-api to enable the headers API
-  
-  Defaults to disabled while labeled EXPERIMENTAL.
-  
-  Make all the headers API tests require 'headers-api' to run.
-
-- test1671: verify -w '%{header_json}
-
-- test1670: verify -w %header{}
-
-- curl: add %{header_json} support in -w handling
-  
-  Outputs all response headers as a JSON object.
-
-- curl: add %header{name} support in -w handling
-  
-  Outputs the response header 'name'
-
-- header api: add curl_easy_header and curl_easy_nextheader
-  
-  Add test 1940 to 1946 to verify.
-  
-  Closes #8593
-
-- test1459: remove the different exit code for oldlibssh
-  
-  When using libssh/0.9.3/openssl/zlib, we seem to be getting the "right"
-  error code.
-  
-  Closes #8490
-
-- libssh: unstick SFTP transfers when done event-based
-  
-  Test 604 and 606 (at least).
-  
-  Closes #8490
-
-- gha: move the event-based test over from Zuul
-  
-  Switched libssh2 to libssh
-  
-  Closes #8490
-
-- RELEASE-NOTES: synced
-
-- http: return error on colon-less HTTP headers
-  
-  It's a protocol violation and accepting them leads to no good.
-  
-  Add test case 398 to verify
-  
-  Closes #8610
-
-- test718: edited slightly to return better HTTP
-  
-  Since hyper is picky and won't play ball otherwise.
-  
-  Bug: https://github.com/hyperium/hyper/issues/2783
-  Reported-by: Daniel Valenzuela
-  Closes #8614
-
-- hyper: no h2c support
-  
-  Make tests require h2c feature present to run, and only set h2c if
-  nghttp2 is used in the build. Hyper does not support it.
-  
-  Remove those tests from DISABLED
-  
-  Fixes #8605
-  Closes #8613
-
-- configure: bump the copyright year range int the generated output
-
-- [Andreas Falkenhahn brought this change]
-
-  BINDINGS.md: add Hollywood binding
-  
-  Closes #8609
-
-- HISTORY: add some 2022 data
-
-- scripts/copyright.pl: ignore the new mlc_config.json file
-
-- [Philip H brought this change]
-
-  mlc_config.json: add file to ignore known troublesome URLs
-  
-  This is the config file for the CI markdown link checker and lets us
-  filter URLs that are known to cause problems. Like
-  https://curl.zuul.vexxhost.dev/ for now.
-  
-  Closes #8597
-
-- [Philip H brought this change]
-
-  winbuild/README.md: fixup dead link
-  
-  Closes #8597
-
-Jay Satiro (18 Mar 2022)
-- rtsp: don't let CSeq error override earlier errors
-  
-  - When done, if an error has already occurred then don't check the
-    sequence numbers for mismatch.
-  
-  A sequence number may not have been received if an error occurred.
-  
-  Prior to this change a sequence mismatch error would override earlier
-  errors. For example, a server that returns nothing would cause error
-  CURLE_GOT_NOTHING in Curl_http_done which was then overridden by
-  CURLE_RTSP_CSEQ_ERROR in rtsp_done.
-  
-  Closes https://github.com/curl/curl/pull/8525
-
-- lib: fix some misuse of curlx_convert_wchar_to_UTF8
-  
-  curlx_convert_wchar_to_UTF8 must be freed by curlx_unicodefree, but
-  prior to this change some uses mistakenly called free.
-  
-  I've reviewed all other uses of curlx_convert_wchar_to_UTF8 and
-  curlx_convert_UTF8_to_wchar.
-  
-  Ref: https://github.com/curl/curl/commit/1d5d0ae
-  
-  Closes https://github.com/curl/curl/pull/8521
-
-- mk-ca-bundle.pl: Use stricter logic to process the certificates
-  
-  .. and bump version to 1.29.
-  
-  This change makes the script properly ignore unknown blocks and
-  otherwise fail when Mozilla changes the certdata format in ways we
-  don't expect. Though this is less flexible behavior it makes it far less
-  likely that an invalid certificate can slip through.
-  
-  Prior to this change the state machine did not always properly reset,
-  and it was possible that a certificate marked as invalid could then
-  later be marked as valid when there was conflicting trust info or
-  an unknown block was erroneously processed as part of the certificate.
-  
-  Ref: https://github.com/curl/curl/pull/7801#pullrequestreview-768384569
-  
-  Closes https://github.com/curl/curl/pull/8411
-
-Marcel Raad (17 Mar 2022)
-- test375: fix line endings on Windows
-  
-  Closes https://github.com/curl/curl/pull/8599
-
-Daniel Stenberg (17 Mar 2022)
-- http: reject header contents with nul bytes
-  
-  They are not allowed by the protocol and allowing them risk that curl
-  misbehaves somewhere where C functions are used but won't work on the
-  full contents. Further, they are not supported by hyper and they cause
-  problems for the new coming headers API work.
-  
-  Updated test 262 to verify and enabled it for hyper as well
-  
-  Closes #8601
-
-- [Philip H brought this change]
-
-  CI: Do not use buildconf. Instead, just use: autoreconf -fi
-  
-  Closes #8596
-
-- RELEASE-NOTES: synced
-
-Jay Satiro (14 Mar 2022)
-- libssh: Improve fix for missing SSH_S_ stat macros
-  
-  - If building libcurl against an old libssh version missing SSH_S_IFMT
-    and SSH_S_IFLNK then use the values from a supported version.
-  
-  Prior to this change if libssh did not define SSH_S_IFMT and SSH_S_IFLNK
-  then S_IFMT and S_IFLNK, respectively, were used instead. The problem
-  with that is the user's S_ stat macros don't have the same values across
-  platforms. For example Windows has values different from Linux.
-  
-  Follow-up to 7b0fd39.
-  
-  Ref: https://github.com/curl/curl/pull/8511#discussion_r815292391
-  Ref: https://github.com/curl/curl/pull/8574
-  
-  Closes https://github.com/curl/curl/pull/8588
-
-Marc Hoersken (13 Mar 2022)
-- tool and tests: force flush of all buffers at end of program
-  
-  On Windows data can be lost in buffers in case of abnormal program
-  termination, especially in process chains as seen due to flaky tests.
-  Therefore flushing all buffers manually should avoid this data loss.
-  
-  In the curl tool we play the safe game by only flushing write buffers,
-  but in the testsuite where we manage all buffers, we flush everything.
-  
-  This should drastically reduce Windows CI and testsuite flakiness.
-  
-  Reviewed-by: Daniel Stenberg
-  
-  Supersedes #7833 and #6064
-  Closes #8516
-
-Daniel Stenberg (12 Mar 2022)
-- [Jan Venekamp brought this change]
-
-  BearSSL: add CURLOPT_SSL_CTX_FUNCTION support
-  
-  Closes #8478
-
-- [Jan Venekamp brought this change]
-
-  BearSSL: add CURLOPT_SSL_CIPHER_LIST support
-  
-  Closes #8477
-
-Dan Fandrich (11 Mar 2022)
-- tool_cb_hdr: Turn the Location: into a terminal hyperlink
-  
-  This turns even relative URLs into clickable hyperlinks in a supported
-  terminal when --styled-output is enabled. Many terminals already turn
-  URLs into clickable links but there is not enough information in a
-  relative URL to do this automatically otherwise.
-
-- keepalive-time.d: It takes many probes to detect brokenness
-
-Daniel Stenberg (11 Mar 2022)
-- [HexTheDragon brought this change]
-
-  curl: add --no-clobber
-  
-  Does not overwrite output files if they already exist
-  
-  Closes #7708
-  Co-authored-by: Daniel Stenberg
-
-- RELEASE-NOTES: synced
-  
-  also bump next pending version to become 7.83.0
-
-- [Jean-Philippe Menil brought this change]
-
-  openssl: check SSL_get_peer_cert_chain return value
-  
-  Signed-off-by: Jean-Philippe Menil <jpmenil@gmail.com>
-  Closes #8579
-
-- [Jay Satiro brought this change]
-
-  mk-ca-bundle.vbs: delete this script in favor of mk-ca-bundle.pl
-  
-  mk-ca-bundle.vbs is a Windows-specific script for Mozilla certificate
-  extraction, similar to mk-ca-bundle.pl which runs on any platform. The
-  vbs version has not been maintained while the perl version has been
-  maintained with improvements and security fixes. I don't think it's
-  worth the work to maintain both versions. Windows users should be able
-  to use mk-ca-bundle.pl without any problems, as long as they have perl.
-  
-  Closes #8412
-
-- CURLSHOPT_UNLOCKFUNC.3: fix the callback prototype
-  
-  Copy and paste error
-  
-  Reported-by: Francisco Olarte
-  Fixes #8573
-  Closes #8577
-
-- remove-on-error.d: typo
-  
-  Reported-by: Colin Leroy
-  Bug: https://github.com/curl/curl/pull/8503#pullrequestreview-906520081
-
-- curl: add --remove-on-error
-  
-  If a transfer returns an error, using this option makes curl remove the
-  leftover downloded (partial) local file before exiting.
-  
-  Added test 376 to verify
-  
-  Closes #8503
-
-- libssh: fix build with old libssh versions
-  
-  ... that don't have the SSH_S_* defines. Spotted on a machine using
-  libssh 0.7.3
-  
-  Closes #8574
-
-- hyper: fix status_line() return code
-  
-  Detected while working on #7708 that happened to trigger an error here
-  with a new test case.
-  
-  Closes #8572
-
-- [Alejandro R. Sedeño brought this change]
-
-  configure.ac: move -pthread CFLAGS setting back where it used to be
-  
-  The fix for #8276 proposed in #8374 set `CFLAGS="$CFLAGS -pthead"`
-  earlier than it used to be set, applying it in cases where it should not
-  have been applied.
-  
-  This moves the AIX XLC check to a new `case $host in` block inside of
-  the `if test "$USE_THREADS_POSIX" != "1"` block, where `CFLAGS="$CFLAGS
-  -pthead"` used to happen.
-  
-  Fixes #8541
-  Closes #8542
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: add client certificate authentication for OpenSSL
-  
-  Closes #8522
-
-- tool_operate: fix a scan-build warning
-  
-  ... and avoid the temp storing of the return code in a diff variable.
-  
-  Closes #8565
-
-- test375: verify that --proxy errors out if proxy is disabled in the build
-  
-  Closes #8565
-
-- curl: error out when options need features not present in libcurl
-  
-  Trying to use a proxy when libcurl was built with proxy support disabled
-  should make curl error out properly.
-  
-  Remove knowledge of disabled features from the tool code and instead
-  make it properly respond to what libcurl returns. Update all tests to
-  properly require the necessary features to be present/absent so that the
-  test suite can still be run even with libcurl builds with disabled
-  features.
-  
-  Ref: https://curl.se/mail/archive-2022-03/0013.html
-  Closes #8565
-
-- ngtcp2: disconnect the QUIC connection proper
-  
-  Reported-by: mehatzri on github
-  Reviewed-by: Tatsuhiro Tsujikawa
-  Fixes #8534
-  closes #8569
-
-Dan Fandrich (9 Mar 2022)
-- test386: Fix an incorrect test markup tag
-
-Daniel Stenberg (9 Mar 2022)
-- [Don J Olmstead brought this change]
-
-  nonblock: restore setsockopt method to curlx_nonblock
-  
-  The implementation using setsockopt was removed when BeOS support was
-  purged. However this functionality wasn't BeOS specific, it is still
-  used by for example Orbis OS (Playstation 4/5 OS).
-  
-  Closes #8562
-
-- openssl: fix CN check error code
-  
-  Due to a missing 'else' this returns error too easily.
-  
-  Regressed in: d15692ebb
-  
-  Reported-by: Kristoffer Gleditsch
-  Fixes #8559
-  Closes #8560
-
-- [Frank Meier brought this change]
-
-  connect: make Curl_getconnectinfo work with conn cache from share handle
-  
-  Closes #8524
-
-- [lwthiker brought this change]
-
-  openssl: enable CURLOPT_SSL_EC_CURVES with BoringSSL
-  
-  The CURLOPT_SSL_EC_CURVES option (used by the '--curves' flag) in
-  libcurl was ignored when compiling with BoringSSL because
-  HAVE_SSL_CTX_SET_EC_CURVES was explicitly disabled if BoringSSL was
-  detected.  However, this feature is supported in BoringSSL since
-  5fd1807d. This commit enables it, and also reduces the required minimal
-  OpenSSL version to 1.0.2 as per OpenSSL's official documentation.
-  
-  Fixes #8553
-  Closes #8556
-
-- [Samuel Henrique brought this change]
-
-  json.d: fix typo (overriden -> overridden)
-  
-  Closes #8557
-
-- wolfssl: fix compiler error without IPv6
-  
-  Reported-by: Joseph Chen
-  Fixes #8550
-  Closes #8552
-
-- RELEASE-NOTES: synced
-  
-  and bump pending version to 7.82.1
-
-- [Paul Howarth brought this change]
-
-  runtests: make 'oldlibssh' be before 0.9.4
-  
-  The 'oldlibssh' feature indicates that the error code returned by libssh
-  for a broken known_hosts file should be 67 rather than 60 (test1459).
-  This feature was added as part of #8444 with 'oldlibssh' mapping to
-  libssh versions prior to 0.9.6, and then refined as part of #8511 to map
-  to versions prior to 0.9.5.
-  
-  In Red Hat Enterprise Linux 8.5 there is a patched version of libssh
-  version 0.9.4 (https://git.centos.org/rpms/libssh/blob/c8/f/SOURCES) in
-  which test1459 fails because it returns the "new" value rather than the
-  "old" one. It's plausible that one of the patches is responsible for
-  this rather than the underlying code but I don't think so.
-  
-  This change therefore drops the 'oldlibssh' version check to map to
-  libssh versions older than 0.9.4, which fixes builds on RHEL-8.
-  
-  Closes #8548
-
-- ipv4/6.d: clarify that they are about using IP addresses
-  
-  ... they may still *resolve* other families, but not use those
-  addresses.
-  
-  Ref: #8530
-  Closes #8543
-
-- [r-a-sattarov brought this change]
-
-  curl/system.h: update ifdef condition for MCST-LCC compiler
-  
-  in mcst-lcc compiler => 1.25 added a new macro definition to determine
-  compiler
-  
-  Closes #8546
-
-Marc Hoersken (6 Mar 2022)
-- CI: install Python package impacket to run SMB test 1451
-  
-  Install Python package impacket in relevant CI workflows.
-  
-  Follow up to #7935
-  Supersedes #7940
-  Closes #8544
-
-Daniel Stenberg (5 Mar 2022)
-- [Michał Antoniak brought this change]
-
-  connect: use TCP_KEEPALIVE only if TCP_KEEPIDLE is not defined
-  
-  Closes #8539
-
-- docs/HYPER.md: updated to reflect current hyper build needs
-
-- GHA: build hyper with nightly rustc
-  
-  Closes #8545
-
-Version 7.82.0 (5 Mar 2022)
-
-Daniel Stenberg (5 Mar 2022)
-- RELEASE-NOTES: synced
-  
-  The 7.82.0 release
-
-- THANKS: updates from the 7.82.0 release notes
-
-- misc: update copyright year ranges
-
-Jay Satiro (5 Mar 2022)
-- unit1610: init SSL library before calling SHA256 functions
-  
-  The SSL library must be initialized (via global initialization) because
-  libcurl's SHA256 functions may call SHA256 functions in the SSL library.
-  
-  Reported-by: Gisle Vanem
-  
-  Fixes https://github.com/curl/curl/issues/8538
-  Closes https://github.com/curl/curl/pull/8540
-
-- examples/curlx: support building with OpenSSL 1.1.0+
-  
-  - Access members of X509_STORE_CTX in OpenSSL 1.1.0+ by using API
-    functions.
-  
-  The X509_STORE_CTX struct has been opaque since OpenSSL 1.1.0.
-  
-  Ref: https://curl.se/mail/lib-2022-03/0004.html
-  
-  Closes https://github.com/curl/curl/pull/8529
-
-- h2h3: fix typo
-  
-  Bug: https://github.com/curl/curl/issues/8381#issuecomment-1055440241
-  Reported-by: Michael Kaufmann
-
-- [Farzin brought this change]
-
-  CURLOPT_XFERINFOFUNCTION.3: fix example struct assignment
-  
-  Closes https://github.com/curl/curl/pull/8519
-
-Daniel Stenberg (26 Feb 2022)
-- azure-pipelines: add a build on Windows with libssh
-  
-  Closes #8511
-
-- runtests: make 'oldlibssh' be before 0.9.5
-  
-  Closes #8511
-
-- libssh: fix include files and defines use for Windows builds
-  
-  Reported-by: 梦终无痕
-  Bug: https://curl.se/mail/lib-2022-02/0131.html
-  Closes #8511
-
-- RELEASE-NOTES: synced
-
-- [illusory-dream brought this change]
-
-  winbuild: add parameter WITH_SSH
-  
-  For building with libssh
-  Closes #8514
-
-- configure: change output for cross-compiled alt-svc support
-  
-  It said 'no', while it actually is 'yes'
-  
-  Closes #8512
-
-- gha: add a macOS CI job with libssh
-  
-  Closes #8513
-
-- TODO: remove "Bring back libssh tests on Travis"
-  
-  The job was added to Circle CI in d8ddd0e7536
-
-- TODO: remove "better persistency for HTTP/1.0"
-  
-  Let's not bother.
-
-- TODO: remove "Option to ignore private IP"
-  
-  ... as curl ignores the IP entirely by default these days.
-
-- TODO: remove "hardcode the "localhost" addresses"
-  
-  This is implmented since 1a0ebf6632f88
-
-- TODO: 1.24 was a dupe of 1.1
-
-- TODO: remove "Typesafe curl_easy_setopt()"
-  
-  I don't consider this a serious TODO item
-
-- KNOWN_BUGS: remove "Uploading HTTP/3 files gets interrupted"
-  
-  This works now
-
-- KNOWN_BUGS: remove "HTTP/3 multipart POST with quiche fails"
-  
-  It works now
-
-- quiche: remove two leftover debug infof() outputs
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: Reset dynbuf when it is fully drained
-  
-  Reported-by: vl409 on github
-  Fixes #7351
-  Closes #8504
-
-- [Stewart Gebbie brought this change]
-
-  hostip: avoid unused parameter error in Curl_resolv_check
-  
-  When built without DNS-over-HTTP and without asynchronous resolvers,
-  neither the dns nor the data parameters are used.
-  
-  That is Curl_resolv_check appears to call
-  Curl_resolver_is_resolved(data, dns). But,
-  with CURL_DISABLE_DOH without CURLRES_ASYNCH, the call is actually
-  elided via a macro definition.
-  
-  This fix resolves the resultant: "unused parameter 'data'" error.
-  
-  Closes #8505
-
-- http2: move two infof calls to debug-h2-only
-  
-  and remove a superflous one
-  
-  Ref: https://github.com/curl/curl/discussions/8498
-  Closes #8502
-
-- [Jean-Philippe Menil brought this change]
-
-  quiche: fix upload for bigger content-length
-  
-  Signed-off-by: Jean-Philippe Menil <jpmenil@gmail.com>
-  Closes #8421
-
-Jay Satiro (23 Feb 2022)
-- [Farzin brought this change]
-
-  CURLOPT_PROGRESSFUNCTION.3: fix example struct assignment
-  
-  Closes https://github.com/curl/curl/pull/8500
-
-Daniel Stenberg (22 Feb 2022)
-- [Rob Boeckermann brought this change]
-
-  OS400/README: clarify compilation steps
-  
-  Closes #8494
-
-- [Rob Boeckermann brought this change]
-
-  OS400: fix typos in rpg include file
-  
-  This resolves issues compiling rpg code that includes the curl header
-  file.
-  
-  Closes #8494
-
-- [Michał Antoniak brought this change]
-
-  vtls: fix socket check conditions
-  
-  fix condition to check the second socket during associate and
-  disassociate connection
-  
-  Closes #8493
-
-- libssh2: don't typecast socket to int for libssh2_session_handshake
-  
-  Since libssh2_socket_t uses SOCKET on windows which can be larger than
-  int.
-  
-  Closes #8492
-
-- RELEASE-NOTES: fix typo and make one desc shorter
-
-- RELEASE-NOTES: synced
-
-- CURLOPT_XFERINFOFUNCTION.3: fix typo in example
-  
-  Reported-by: coralw on github
-  Fixes #8487
-  Closes #8488
-
-- README: disable linkchecks for the sponsor links
-  
-  Closes #8489
-
-Jay Satiro (21 Feb 2022)
-- openssl: check if sessionid flag is enabled before retrieving session
-  
-  Ideally, Curl_ssl_getsessionid should not be called unless sessionid
-  caching is enabled. There is a debug assertion in the function to help
-  ensure that. Therefore, the pattern in all vtls is basically:
-  
-    if(primary.sessionid) {lock(); Curl_ssl_getsessionid(...); unlock();}
-  
-  There was one instance in openssl.c where sessionid was not checked
-  beforehand and this change fixes that.
-  
-  Prior to this change an assertion would occur in openssl debug builds
-  during connection stage if session caching was disabled.
-  
-  Reported-by: Jim Beveridge
-  
-  Fixes https://github.com/curl/curl/issues/8472
-  Closes https://github.com/curl/curl/pull/8484
-
-- multi: allow user callbacks to call curl_multi_assign
-  
-  Several years ago a change was made to block user callbacks from calling
-  back into the API when not supported (recursive calls). One of the calls
-  blocked was curl_multi_assign. Recently the blocking was extended to the
-  multi interface API, however curl_multi_assign may need to be called
-  from within those user callbacks (eg CURLMOPT_SOCKETFUNCTION).
-  
-  I can't think of any callback where it would be unsafe to call
-  curl_multi_assign so I removed the restriction entirely.
-  
-  Reported-by: Michael Wallner
-  
-  Ref: https://github.com/curl/curl/commit/b46cfbc
-  Ref: https://github.com/curl/curl/commit/340bb19
-  
-  Fixes https://github.com/curl/curl/issues/8480
-  Closes https://github.com/curl/curl/pull/8483
-
-Daniel Stenberg (21 Feb 2022)
-- [Michał Antoniak brought this change]
-
-  ssl: reduce allocated space for ssl backend when FTP is disabled
-  
-  Add assert() for the backend pointer in many places
-  
-  Closes #8471
-
-- [Michał Antoniak brought this change]
-
-  checkprefix: remove strlen calls
-  
-  Closes #8481
-
-Jay Satiro (20 Feb 2022)
-- [1337vt brought this change]
-
-  curl.h: fix typo
-  
-  Closes https://github.com/curl/curl/pull/8482
-
-- [Jan Venekamp brought this change]
-
-  sectransp: mark a 3DES cipher as weak
-  
-  - Change TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA strength to weak.
-  
-  All other 3DES ciphers are already marked as weak.
-  
-  Closes https://github.com/curl/curl/pull/8479
-
-- [Jan Venekamp brought this change]
-
-  bearssl: fix EXC_BAD_ACCESS on incomplete CA cert
-  
-  - Do not create trust anchor object for a CA certificate until after it
-    is processed.
-  
-  Prior to this change the object was created at state BR_PEM_BEGIN_OBJ
-  (certificate processing begin state). An incomplete certificate (for
-  example missing a newline at the end) never reaches BR_PEM_END_OBJ
-  (certificate processing end state) and therefore the trust anchor data
-  was not set in those objects, which caused EXC_BAD_ACCESS.
-  
-  Ref: https://github.com/curl/curl/pull/8106
-  
-  Closes https://github.com/curl/curl/pull/8476
-
-- [Jan Venekamp brought this change]
-
-  bearssl: fix connect error on expired cert and no verify
-  
-  - When peer verification is disabled use the x509_decode engine instead
-    of the x509_minimal engine to parse and extract the public key from
-    the first cert of the chain.
-  
-  Prior to this change in such a case no key was extracted and that caused
-  CURLE_SSL_CONNECT_ERROR. The x509_minimal engine will stop parsing if
-  any validity check fails but the x509_decode won't.
-  
-  Ref: https://github.com/curl/curl/pull/8106
-  
-  Closes https://github.com/curl/curl/pull/8475
-
-- [Jan Venekamp brought this change]
-
-  bearssl: fix session resumption (session id)
-  
-  Prior to this change br_ssl_client_reset was mistakenly called with
-  resume_session param set to 0, which disabled session resumption.
-  
-  Ref: https://github.com/curl/curl/pull/8106
-  
-  Closes https://github.com/curl/curl/pull/8474
-
-Daniel Stenberg (18 Feb 2022)
-- [Michał Antoniak brought this change]
-
-  openssl: fix build for version < 1.1.0
-  
-  Closes #8470
-
-- [Joel Depooter brought this change]
-
-  schannel: move the algIds array out of schannel.h
-  
-  This array is only used by the SCHANNEL_CRED struct in the
-  schannel_acquire_credential_handle function. It can therefore be kept as
-  a local variable. This is a minor update to
-  bbb71507b7bab52002f9b1e0880bed6a32834511.
-  
-  This change also updates the NUM_CIPHERS value to accurately count the
-  number of ciphers options listed in schannel.c, which is 47 instead of
-  45. It is unlikely that anyone tries to set all 47 values, but if they
-  had tried, the last two would not have been set.
-  
-  Closes #8469
-
-- [Alejandro R. Sedeño brought this change]
-
-  configure.ac: use user-specified gssapi dir when using pkg-config
-  
-  Using the system pkg-config path in the face of a user-specified
-  library path is asking to link the wrong library.
-  
-  Reported-by: Michael Kaufmann
-  Fixes #8289
-  Closes #8456
-
-- [Kevin Adler brought this change]
-
-  os400: Add link to QADRT devkit to README.OS400
-  
-  Closes #8455
-
-- [Kevin Adler brought this change]
-
-  os400: Add function wrapper for system command
-  
-  The wrapper will exit if the system command failed instead of blindly
-  continuing on.
-  
-  In addition, only copy docs which exist, since now the copy failure will
-  cause the build to stop.
-  
-  Closes #8455
-
-- [Kevin Adler brought this change]
-
-  os400: Default build to target current release
-  
-  V6R1M0 is not available as a target release since IBM i 7.2. To keep
-  from having to keep this up to date in git, default to the current
-  release. Users can configure this to whatever release they want to
-  actually build for.
-  
-  Closes #8455
-
-- docs/INTERNALS.md: clean up, refer to the book
-  
-  The explanatory parts are now in the everything curl book (which can
-  also use images etc). This document now refers to that resource and only
-  leaves listings of supported versions of libs, tools and operating
-  systems. See https://everything.curl.dev/internals
-  
-  Closes #8467
-
-Marcel Raad (17 Feb 2022)
-- des: fix compile break for OpenSSL without DES
-  
-  When `USE_OPENSSL` was defined but OpenSSL had no DES support and a
-  different crypto library was used for that, `Curl_des_set_odd_parity`
-  was called but not defined. This could for example happen on Windows
-  and macOS when using OpenSSL v3 with deprecated features disabled.
-  
-  Use the same condition for the function definition as used at the
-  caller side, but leaving out the OpenSSL part to avoid including
-  OpenSSL headers.
-  
-  Closes https://github.com/curl/curl/pull/8459
-
-Daniel Stenberg (17 Feb 2022)
-- RELEASE-NOTES: synced
-
-- docs/DEPRECATE: remove NPN support in August 2022
-  
-  Closes #8458
-
-- ftp: provide error message for control bytes in path
-  
-  Closes #8460
-
-- http: fix "unused parameter ‘conn’" warning
-  
-  Follow-up from 7d600ad1c395
-  
-  Spotted on appveyor
-  
-  Closes #8465
-
-Jay Satiro (17 Feb 2022)
-- [Alejandro R. Sedeño brought this change]
-
-  sha256: Fix minimum OpenSSL version
-  
-  - Change the minimum OpenSSL version for using their SHA256
-    implementation from 0.9.7 to 0.9.8.
-  
-  EVP_sha256() does not appear in the OpenSSL source before 0.9.7h, and
-  does not get built by default until 0.9.8, so trying to use it for all
-  0.9.7 is wrong, and before 0.9.8 is unreliable.
-  
-  Closes https://github.com/curl/curl/pull/8464
-
-Daniel Stenberg (16 Feb 2022)
-- KNOWN_BUGS: remove "slow connect to localhost on Windows"
-  
-  localhost is not resolved anymore since 1a0ebf6632f88
-
-- KNOWN_BUGS: remove "HTTP/3 download is 5x times slower than HTTP/2"
-  
-  It's not actually a bug. More like room for improvement.
-
-- KNOWN_BUGS: remove "HTTP/3 download with quiche halts after a while"
-  
-  Follow-up to 96f85a0fef694
-
-- KNOWN_BUGS: remove "pulseUI vpn" as a problem
-  
-  We haven't heard about this for a long time and rumours have it they
-  might have fixed it.
-
-- urldata: remove conn->bits.user_passwd
-  
-  The authentication status should be told by the transfer and not the
-  connection.
-  
-  Reported-by: John H. Ayad
-  Fixes #8449
-  Closes #8451
-
-- [Kevin Adler brought this change]
-
-  gskit: Convert to using Curl_poll
-  
-  As mentioned in 32766cb, gskit was the last user of Curl_select which is
-  now gone. Convert to using Curl_poll to allow build to work on IBM i.
-  
-  Closes #8454
-
-- [Kevin Adler brought this change]
-
-  gskit: Fix initialization of Curl_ssl_gskit struct
-  
-  In c30bf22, Curl_ssl_getsock was factored out in to a member of
-  struct Curl_ssl but the gskit initialization was not updated to reflect
-  this new member.
-  
-  Closes #8454
-
-- [Kevin Adler brought this change]
-
-  gskit: Fix errors from Curl_strerror refactor
-  
-  2f0bb864c1 replaced sterror with Curl_strerror, but the strerror buffer
-  shadows the set_buffer "buffer" parameter. To keep consistency with the
-  other functions that use Curl_strerror, rename the parameter.
-  
-  In addition, strerror.h is needed for the definition of STRERROR_LEN.
-  
-  Closes #8454
-
-Marcel Raad (15 Feb 2022)
-- ntlm: remove unused feature defines
-  
-  They're not used anymore and always supported.
-  
-  Closes https://github.com/curl/curl/pull/8453
-
-Daniel Stenberg (15 Feb 2022)
-- [Kantanat Wannapaka brought this change]
-
-  README.md: fix link and layout
-  
-  replace <a></a> tags and <img></img> tags
-  
-  Closes #8448
-
-- KNOWN_BUGS: fix typo "libpsl"
-
-Jay Satiro (14 Feb 2022)
-- h2h3: fix compiler warning due to function prototype mismatch
-  
-  - Add missing const qualifier in Curl_pseudo_headers declaration.
-
-Daniel Stenberg (14 Feb 2022)
-- [Stefan Eissing brought this change]
-
-  urlapi: handle "redirects" smarter
-  
-    - avoid one malloc when setting a new url via curl_url_set()
-      and CURLUPART_URL.
-    - extract common pattern into a new static function.
-  
-  Closes #8450
-
-- cijobs: pick up circleci configure lines better
-
-- circleci: add a job using wolfSSH
-  
-  Build only, no tests.
-  
-  Closes #8445
-
-- scripts/ciconfig.pl: show used options not available
-
-- circleci: add a job using libssh
-  
-  Closes #8444
-
-- runtests: set 'oldlibssh' for libssh versions before 0.9.6
-  
-  ... and make test 1459 check for the different return code then.
-  
-  Closes #8444
-
-Jay Satiro (13 Feb 2022)
-- Makefile.am: Generate VS 2022 projects
-  
-  Follow-up to f13d4d0 which added VS 2022 project support.
-  
-  Ref: https://github.com/curl/curl/pull/8438
-
-- [Daniel Stenberg brought this change]
-
-  projects: remove support for MSVC before VC10 (Visual Studio 2010)
-  
-  - Remove Visual Studio project files for VC6, VC7, VC7.1, VC8 and VC9.
-  
-  Those versions are too old to be maintained any longer.
-  
-  Closes https://github.com/curl/curl/pull/8442
-
-- [Stav Nir brought this change]
-
-  projects: add support for Visual Studio 17 (2022)
-  
-  Closes https://github.com/curl/curl/pull/8438
-
-Daniel Stenberg (13 Feb 2022)
-- RELEASE-NOTES: synced
-
-- connect: follow-up fix the copyright year
-
-- [Michał Antoniak brought this change]
-
-  misc: remove unused data when IPv6 is not supported
-  
-  Closes #8430
-
-- scripts/ciconfig: show CI job config info
-  
-  Closes #8446
-
-- quiche: handle stream reset
-  
-  A stream reset now causes a CURLE_PARTIAL_FILE error. I'm not convinced
-  this is the right action nor the right error code.
-  
-  Reported-by: Lucas Pardue
-  Fixes #8437
-  Closes #8440
-
-- mime: use a define instead of the magic number 24
-  
-  MIME_BOUNDARY_DASHES is now the number of leading dashes in the
-  generated boundary string.
-  
-  Closes #8441
-
-- [Henrik Holst brought this change]
-
-  hostcheck: reduce strlen calls on chained certificates
-  
-  Closes #8428
-
-- [Patrick Monnerat brought this change]
-
-  mime: some more strlen() call removals.
-  
-  Closes #8423
-
-- scripts/cijobs.pl: detect zuul cmake jobs better
-
-- url: exclude zonefrom_url when no ipv6 is available
-  
-  Closes #8439
-
-- if2ip: make Curl_ipv6_scope a blank macro when IPv6-disabled
-  
-  Closes #8439
-
-- [Henrik Holst brought this change]
-
-  mprintf: remove strlen calls on empty strings in dprintf_formatf
-  
-  Turns out that in dprintf_formatf we did a strlen on empty strings, a
-  bit strange is how common this actually is, 24 alone when doing a simple
-  GET from https://curl.se
-  
-  Closes #8427
-
-- wolfssl: return CURLE_AGAIN for the SSL_ERROR_NONE case
-  
-  Closes #8431
-
-- wolfssl: when SSL_read() returns zero, check the error
-  
-  Returning zero indicates end of connection, so if there's no data read
-  but the connection is alive, it needs to return -1 with CURLE_AGAIN.
-  
-  Closes #8431
-
-- quiche: after leaving h3_recving state, poll again
-  
-  This could otherwise easily leave libcurl "hanging" after the entire
-  transfer is done but without noticing the end-of-transfer signal.
-  
-  Assisted-by: Lucas Pardue
-  Closes #8436
-
-- quiche: when *recv_body() returns data, drain it before polling again
-  
-  Assisted-by: Lucas Pardue
-  
-  Closes #8429
-
-- [gaoxingwang on github brought this change]
-
-  configure: fix '--enable-code-coverage' typo
-  
-  Fixes #8425
-  Closes #8426
-
-- lib/h2h3: #ifdef on ENABLE_QUIC, not the wrong define
-  
-  Otherwise the build fails when H3 is enabled but the build doesn't
-  include nghttp2.
-  
-  Closes #8424
-
-- hostcheck: pass in pattern length too, to avoid a strlen call
-  
-  Removes one strlen() call per SAN name in a cert-check.
-  
-  Closes #8418
-
-- [Henrik Holst brought this change]
-
-  misc: remove strlen for Curl_checkheaders + Curl_checkProxyheaders
-  
-  Closes #8409
-
-- configure: requires --with-nss-deprecated to build with NSS
-  
-  Add deprecation plans to docs/DEPRECATE.md
-  
-  Closes #8395
-
-- mqtt: free 'sendleftovers' in disconnect
-  
-  Fix a memory-leak
-  
-  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=43646
-  Closes #8415
-
-- [Patrick Monnerat brought this change]
-
-  openldap: pass string length arguments to client_write()
-  
-  This uses the new STRCONST() macro and saves 2 strlen() calls on short
-  string constants per LDIF output line.
-  
-  Closes #8404
-
-- [Henrik Holst brought this change]
-
-  misc: reduce strlen() calls with Curl_dyn_add()
-  
-  Use STRCONST() to switch from Curl_dyn_add() to Curl_dyn_addn() for
-  string literals.
-  
-  Closes #8398
-
-- http2: fix the array copy to nghttp2_nv
-  
-  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=44517
-  Follow-up to 9f985a11e794
-  Closes #8414
-
-- RELEASE-NOTES: synced
-
-- scripts/cijobs.pl: output data about all currect CI jobs
-  
-  This script parses the config files for all the CI services currently in
-  use and output the information in a uniform way. The idea is that the
-  output from this script should be possible to massage into informational
-  tables or graphs to help us visualize what they are all testing and NOT
-  testing.
-  
-  Closes #8408
-
-- maketgz: return error if 'make dist' fails
-  
-  To better detect this problem in CI jobs
-  
-  Reported-by: Marcel Raad
-  Bug: https://curl.se/mail/lib-2022-02/0070.html
-  Closes #8402
-
-- h2h3: pass correct argument types to infof()
-  
-  Detected by Coverity. CID 1497993
-  
-  Closes #8401
-
-- lib/Makefile: remove config-tpf.h from the dist
-  
-  Follow-up from da15443dddea2bfb. Missed before because the 'distcheck'
-  CI job was not working as intended.
-  
-  Reported-by: Marcel Raad
-  Bug: https://curl.se/mail/lib-2022-02/0070.html
-  Closes #8403
-
-- configure: remove support for "embedded ares"
-  
-  In March 2010 (commit 4259d2df7dd) we removed the embedded 'ares'
-  directory from the curl source tree but we have since supported
-  especially detecting and using that build directory. The time has come
-  to remove that kludge and ask users to specify the c-ares dir correctly
-  with --enable-ares.
-  
-  Closes #8397
-
-- [Sebastian Sterk brought this change]
-
-  github/workflows/mbedtls: fix indent & remove unnecessary line breaks
-  
-  Closes #8399
-
-- CI: move the NSS job from zuul to GHA
-  
-  Closes #8396
-
-- tests/unit/Makefile.am: add NSS_LIBS to build with NSS fine
-  
-  Closes #8396
-
-Marcel Raad (7 Feb 2022)
-- curl-openssl: fix SRP check for OpenSSL 3.0
-  
-  When OpenSSL 3.0 is built with `--api=3.0` and `no-deprecated`, the SRP
-  functions exist in the library, but are disabled for user code. Check
-  if they are actually usable instead of only if they exist. Also, check
-  for the functions actually required for TLS-SRP.
-  
-  TLS-SRP support is still enabled if OpenSSL is configured with just
-  `--api=3.0` or with `--api=1.1.1 no-deprecated`.
-  
-  Closes https://github.com/curl/curl/pull/8394
-
-Daniel Stenberg (7 Feb 2022)
-- [Henrik Holst brought this change]
-
-  http: make Curl_compareheader() take string length arguments too
-  
-  Also add STRCONST, a macro that returns a string literal and it's length
-  for functions that take "string,len"
-  
-  Removes unnecesary calls to strlen().
-  
-  Closes #8391
-
-- vquic/vquic.h: removed the unused H3 psuedo defines
-
-- ngtcp2: use Curl_pseudo_headers
-
-- quiche: use Curl_pseudo_headers
-
-- http2: use Curl_pseudo_headers
-
-- h2h3: added Curl_pseudo_headers()
-  
-  For use with both http2 and http3 requests.
-
-- ngtcp2/quiche: make :scheme possible to set
-
-- http2: allow CURLOPT_HTTPHEADER change ":scheme"
-  
-  The only h2 psuedo header that wasn't previously possible to change by a
-  user. This change also makes it impossible to send a HTTP/1 header that
-  starts with a colon, which I don't think anyone does anyway.
-  
-  The other pseudo headers are possible to change indirectly by doing the
-  rightly crafted request.
-  
-  Reported-by: siddharthchhabrap on github
-  Fixes #8381
-  Closes #8393
-
-- h2/h3: provide and refer to pseudo headers as defines
-  
-  ... and do sizeof() on the defines to use constants better.
-  
-  Closes #8389
-
-- [Michał Antoniak brought this change]
-
-  smb: passing a socket for writing and reading data instead of FIRSTSOCKET
-  
-  Closes #8383
-
-- x509asn1: toggle off functions not needed for diff tls backends
-  
-  ... and clean the header file from private defines/structs (move to C
-  file) and unused function prototypes.
-  
-  Closes #8386
-
-- lib: move hostcheck and x509sn1 sources to vtls/
-  
-  ... since they are used strictly by TLS code.
-  
-  Closes #8386
-
-Marcel Raad (4 Feb 2022)
-- version_win32: fix warning for `CURL_WINDOWS_APP`
-  
-  The build version is not supported by the UWP code.
-  
-  Closes https://github.com/curl/curl/pull/8385
-
-Daniel Stenberg (4 Feb 2022)
-- tests/disable-scan.pl: properly detect multiple symbols per line
-  
-  Test 1165 would fail on some systems because it didn't detect
-  CURL_DISABLE_* symbols that were used to the right of another one on the
-  same line! The script would only detect and extract the first one.
-  
-  Reported-by: Marcel Raad
-  Fixes #8384
-  Closes #8388
-
-Jay Satiro (4 Feb 2022)
-- config.d: Clarify _curlrc filename is still valid on Windows
-  
-  Recent changes added support for filename .curlrc on Windows, and
-  when it's not found curl falls back on the original Windows filename
-  _curlrc. _curlrc was removed from the doc, however it is still valid.
-  
-  Closes https://github.com/curl/curl/pull/8382
-
-Daniel Stenberg (4 Feb 2022)
-- lib: remove support for CURL_DOES_CONVERSIONS
-  
-  TPF was the only user and support for that was dropped.
-  
-  Closes #8378
-
-- TPF: drop support
-  
-  There has been no TPF related changes done since September 2010 (commit
-  7e1a45e224e57) and since this is a platform that is relatively different
-  than many others (== needs attention), I draw the conclusion that this
-  build is broken since a long time.
-  
-  Closes #8378
-
-- scripts/delta: check the file delta for current branch
-  
-  ... also polish the output style a little bit
-
-Jay Satiro (3 Feb 2022)
-- [Fabian Keil brought this change]
-
-  runtests.pl: tolerate test directories without Makefile.inc
-  
-  Silences the following warnings when using a Makefile.inc-free
-  TESTDIR using the "-o" argument:
-  
-     readline() on closed filehandle D at ./runtests.pl line 592.
-     Use of uninitialized value $disttests in pattern match (m//) at
-     ./runtests.pl line 3602.
-  
-  Closes https://github.com/curl/curl/pull/8379
-
-Daniel Stenberg (3 Feb 2022)
-- [Henrik Holst brought this change]
-
-  setopt: do bounds-check before strdup
-  
-  Curl_setstropt() allocated memory for the string before checking if the
-  string was within bounds. The bounds check should be done first.
-  
-  Closes #8377
-
-- [Michał Antoniak brought this change]
-
-  mbedtls: enable use of mbedtls without filesystem functions support
-  
-  Closes #8376
-
-- [Bernhard Walle brought this change]
-
-  configure: support specification of a nghttp2 library path
-  
-  This enables using --with-nghttp2=<dir> on systems without pkg-config.
-  
-  Closes #8375
-
-- scripts/release-notes.pl: remove leftover debug output
-
-- RELEASE-NOTES: synced
-
-- scripts/release-notes.pl: fix number extraction for full URLs
-
-- [Leah Neukirchen brought this change]
-
-  scripts/completion.pl: improve zsh completion
-  
-  - Detect all spellings of <file>, <file name> etc as well as <path>.
-  - Only complete directories for <dir>.
-  - Complete URLs for <URL>.
-  - Complete --request and --ftp-method.
-  
-  Closes #8363
-
-- [Davide Cassioli brought this change]
-
-  configure: use correct CFLAGS for threaded resolver with xlC on AIX
-  
-  Fixes #8276
-  Closes #8374
-
-- mailmap: Henrik Holst
-
-Jay Satiro (2 Feb 2022)
-- build: fix ngtcp2 crypto library detection
-  
-  - Change library link check for ngtcp2_crypto_{gnutls,openssl} to
-    to use function ngtcp2_crypto_recv_client_initial_cb instead of
-    ngtcp2_crypto_ctx_initial.
-  
-  The latter function is no longer external since two days ago in
-  ngtcp2/ngtcp2@533451f. curl HTTP/3 CI builds have been failing since
-  then because they would not link to the ngtcp2 crypto library.
-  
-  Ref: https://github.com/ngtcp2/ngtcp2/pull/356
-  
-  Closes https://github.com/curl/curl/pull/8372
-
-- [Henrik Holst brought this change]
-
-  urlapi: remove an unnecessary call to strlen
-  
-  - Use strcpy instead of strlen+memcpy to copy the url path.
-  
-  Ref: https://curl.se/mail/lib-2022-02/0006.html
-  
-  Closes https://github.com/curl/curl/pull/8370
-
-Daniel Stenberg (1 Feb 2022)
-- scripts/copyright.pl: fix for handling removed files better
-
-- vxworks: drop support
-  
-  No changes or fixes in vxworks related code since 2009 leads me to
-  believe that this doesn't work anymore.
-  
-  Closes #8362
-
-- [Henrik Holst brought this change]
-
-  base64: remove an unnecessary call to strlen
-  
-  Closes #8369
-
-- tool_getparam: initial --json support
-  
-  Adds these test cases:
-  
-   383 - simple single command line option
-   384 - reading it from stdin
-   385 - getting two --json options on command line
-   386 - --next works after --json
-  
-  Closes #8314
-
-- [Bjarni Ingi Gislason brought this change]
-
-  curl_getdate.3: remove pointless .PP line
-  
-  mandoc: WARNING: skipping paragraph macro: PP empty
-  
-  Reported-by: Samuel Henrique
-  Closes #8365
-
-- [Sebastian Sterk brought this change]
-
-  multi: grammar fix in comment
-  
-  After 'must', the verb is used without 'to'. Correct: "must" or "have
-  to"
-  
-  Closes #8368
-
-- openldap: fix compiler warning when built without SSL support
-  
-  openldap.c:841:52: error: unused parameter ‘data’ [-Werror=unused-parameter]
-  
-  Closes #8367
-
-- [Samuel Henrique brought this change]
-
-  CURLSHOPT_LOCKFUNC.3: fix typo "relased" -> "released"
-  
-  Found when packaging 7.81.0 for Debian.
-  
-  Closes #8364
-
-- netware: remove support
-  
-  There are no current users and no Netware related changes done in the
-  code for over 13 years is a clear sign this is abandoned.
-  
-  Closes #8358
-
-- CI: move two jobs from Zuul to Circle CI
-  
-   - openssl-no-verbose
-   - openssl-no-proxy
-  
-  Closes #8359
-
-- cirlceci: also run a c-ares job on arm with debug enabled
-  
-  Closes #8357
-
-- ci: move the OpenSSL + c-ares job from Zuul to Circle CI
-  
-  Closes #8357
-
-- mailmap: Jan-Piet Mens
-
-- [luminixinc on github brought this change]
-
-  multi: remember connection_id before returning connection to pool
-  
-  Fix a bug that does not require a new CVE as discussed on hackerone.com.
-  Previously `connection_id` was accessed after returning connection to
-  the shared pool.
-  
-  Bug: https://hackerone.com/reports/1463013
-  Closes #8355
-
-Jay Satiro (31 Jan 2022)
-- write-out.d: Fix num_headers formatting
-
-- [Jan-Piet Mens brought this change]
-
-  docs: capitalize the name 'Netscape'
-  
-  Closes https://github.com/curl/curl/pull/8354
-
-Daniel Stenberg (30 Jan 2022)
-- RELEASE-NOTES: synced
-
-- [Antoine Pietri brought this change]
-
-  docs: grammar proofread, typo fixes
-  
-  (Partially automated) proofread of most of the documentation, leading to
-  various typo fixes.
-  
-  Closes #8353
-
-- urldata: CONN_IS_PROXIED replaces bits.close when proxy can be disabled
-  
-  To remove run-time checks for such builds.
-  
-  Closes #8350
-
-- setopt: fix the TLSAUTH #ifdefs for proxy-disabled builds
-  
-  Closes #8350
-
-- conncache: make conncache_add_bundle return the pointer
-  
-  Simplifies the logic a little and avoids a ternary operator.
-  
-  Ref: #8346
-  Closes #8349
-
-- mailmap: neutric on github
-
-Jay Satiro (30 Jan 2022)
-- [neutric on github brought this change]
-
-  docs/TheArtOfHttpScripting: fix example POST URL
-  
-  Closes https://github.com/curl/curl/pull/8352
-
-Daniel Stenberg (28 Jan 2022)
-- nss: handshake callback during shutdown has no conn->bundle
-  
-  The callback gets called because of the call to PR_Recv() done to
-  attempt to avoid RST on the TCP connection. The conn->bundle pointer is
-  already cleared at this point so avoid dereferencing it.
-  
-  Reported-by: Eric Musser
-  Fixes #8341
-  Closes #8342
-
-- [Michał Antoniak brought this change]
-
-  mbedtls: remove #include <mbedtls/certs.h>
-  
-  mbedtls/certs.h file contains only certificates example (all definitions
-  is beginning by mbedtls_test_*). None of them is used so we can avoid
-  include the file.
-  
-  Closes #8343
-
-- [Michał Antoniak brought this change]
-
-  mbedtls: enable use of mbedtls without CRL support
-  
-  Closes #8344
-
-- [Bernhard Walle brought this change]
-
-  configure: set CURL_LIBRARY_PATH for nghttp2
-  
-  To execute the test program, we might need the library path so that the
-  lib is found at runtime.
-  
-  Closes #8340
-
-Jay Satiro (28 Jan 2022)
-- schannel: restore debug message in schannel_connect_step2
-  
-  This is a follow-up to recent commit 2218c3a which removed the debug
-  message to avoid an unused variable warning. The message has been
-  reworked to avoid the warning.
-  
-  Ref: https://github.com/curl/curl/pull/8320#issuecomment-1022957904
-  
-  Closes https://github.com/curl/curl/pull/8336
-
-- test3021: disable all msys2 path transformation
-  
-  - Disable all MSYS2 path transformation in test3021 and test3022.
-  
-  Prior to this change path transformation in those tests was disabled
-  only for arguments that start with forward slashes. However arguments
-  that are in base64 contain forward slashes at any position and caused
-  unwanted translations.
-  
-  == Info: Denied establishing ssh session: mismatch sha256 fingerprint.
-  Remote +/EYG2YDzDGm6yiwepEMSuExgRRMoTi8Di1UN3kixZw= is not equal to
-  +C:/msys64/EYG2YDzDGm6yiwepEMSuExgRRMoTi8Di1UN3kixZw
-  
-  In the above example an argument containing a base64 sha256 fingerprint
-  was passed to curl after MSYS2 translated +/ into +C:/msys64/, and then
-  the fingerprint didn't match what was expected.
-  
-  Ref: https://www.msys2.org/wiki/Porting/
-  
-  Fixes https://github.com/curl/curl/issues/8084
-  Closes https://github.com/curl/curl/pull/8325
-
-Daniel Stenberg (27 Jan 2022)
-- CI: move scan-build job from Zuul to Azure Pipelines
-  
-  Closes #8338
-
-Marcel Raad (27 Jan 2022)
-- openssl: fix `ctx_option_t` for OpenSSL v3+
-  
-  The options have been changed to `uint64_t` in
-  https://github.com/openssl/openssl/commit/56bd17830f2d5855b533d923d4e0649d3ed61d11.
-  
-  Closes https://github.com/curl/curl/pull/8331
-
-Daniel Stenberg (27 Jan 2022)
-- CI: move 'distcheck' job from zuul to azure pipelines
-  
-  Assisted-by: Kushal Das
-  
-  Closes #8334
-
-- vtls: pass on the right SNI name
-  
-  The TLS backends convert the host name to SNI name and need to use that.
-  This involves cutting off any trailing dot and lowercasing.
-  
-  Co-authored-by: Jay Satiro
-  Closes #8320
-
-- url: revert the removal of trailing dot from host name
-  
-  Reverts 5de8d84098db1bd24e (May 2014, shipped in 7.37.0) and the
-  follow-up changes done afterward.
-  
-  Keep the dot in names for everything except the SNI to make curl behave
-  more similar to current browsers. This means 'name' and 'name.' send the
-  same SNI for different 'Host:' headers.
-  
-  Updated test 1322 accordingly
-  
-  Fixes #8290
-  Reported-by: Charles Cazabon
-  Closes #8320
-
-- [neutric on github brought this change]
-
-  docs/TheArtOfHttpScripting: fix capitalization
-  
-  Closes #8333
-
-- tests/memanalyze.pl: also count and show "total allocations"
-  
-  This is the total number of bytes allocated, increasing for new
-  allocations and never reduced when freed. The existing "Maximum
-  allocated" is the high water mark.
-  
-  Closes #8330
-
-- mailmap: spellfix githuh => github
-
-- RELEASE-NOTES: synced
-
-- hostcheck: fixed to not touch used input strings
-  
-  Avoids the need to clone the strings before check, thus avoiding
-  mallocs, which for cases where there are many SAN names in a cert could
-  end up numerous.
-  
-  Closes #8321
-
-- ngtcp2: adapt to changed end of headers callback proto
-  
-  Closes #8322
-
-- [Xiaoke Wang brought this change]
-
-  openssl: check SSL_get_ex_data to prevent potential NULL dereference
-  
-  Closes #8268
-
-Jay Satiro (23 Jan 2022)
-- md5: check md5_init_func return value
-  
-  Prior to this change the md5_init_func (my_md5_init) return value was
-  ignored.
-  
-  Closes https://github.com/curl/curl/pull/8319
-
-- md5: refactor for standard compliance
-  
-  - Wrap OpenSSL / wolfSSL MD5 functions instead of taking their function
-    addresses during static initialization.
-  
-  Depending on how curl was built the old way may have used a dllimport
-  function address during static initialization, which is not standard
-  compliant, resulting in Visual Studio warning C4232 (nonstandard
-  extension). Instead the function pointers now point to the wrappers
-  which call the MD5 functions.
-  
-  This change only affects OpenSSL and wolfSSL because calls to other SSL
-  libraries' md5 functions were already wrapped. Also sha256.c already
-  does this for all SSL libraries.
-  
-  Ref: https://github.com/curl/curl/pull/8298
-  
-  Closes https://github.com/curl/curl/pull/8318
-
-Daniel Stenberg (21 Jan 2022)
-- [Lucas Pardue brought this change]
-
-  docs: update IETF links to use datatracker
-  
-  The tools.ietf.org domain has been deprecated a while now, with the
-  links being redirected to datatracker.ietf.org.
-  
-  Rather than make people eat that redirect time, this change switches the
-  URL to a more canonical source.
-  
-  Closes #8317
-
-- [Harry Sarson brought this change]
-
-  CI: test building wolfssl with --enable-opensslextra
-  
-  Closes #8315
-
-- [Harry Sarson brought this change]
-
-  misc: allow curl to build with wolfssl --enable-opensslextra
-  
-  put all #include of openssl files behind wolfssl ifdefs so that we can
-  use the wolfssl/ prefixed include paths. Without these curl only builds
-  when wolfssl is built with enable-all.
-  
-  Fixes #8292
-  Closes #8315
-
-- [Lucas Pardue brought this change]
-
-  quiche: change qlog file extension to `.sqlog`
-  
-  quiche has just switched it's qlog serialization format to JSON-SEQ by
-  default . The spec says this SHOULD use `.sqlog` extension.
-  
-  I believe ngtcp2 also supports JSON-SEQ by default as of
-  https://github.com/ngtcp2/ngtcp2/commit/9baf06fc3f352a1d062b6953ae1de22cae30639d
-  
-  Let's update curl so that tools know what format we are using!
-  
-  Closes #8316
-
-Jay Satiro (21 Jan 2022)
-- projects: Fix Visual Studio wolfSSL configurations
-  
-  - Change build-wolfssl.bat to disable SSLv3, enable TLSv1.3, enable
-    wolfSSL_DES_ecb_encrypt (needed by NTLM) and enable alt cert chains.
-  
-  - Disable warning C4214 'bit field types other than int'.
-  
-  - Add include directory wolfssl\wolfssl.
-  
-  wolfSSL offers OpenSSL API compatibility that libcurl uses, and some
-  recent change in libcurl included an include file for wolfSSL like
-  openssl/foo.h, which has a path like wolfssl\wolfssl\openssl\foo.h.
-  
-  The include directory issue was reported in #8292 but it's currently
-  unclear whether this type of change is needed for other build systems.
-  
-  Bug: https://github.com/curl/curl/issues/8292
-  Reported-by: Harry Sarson
-  
-  Closes https://github.com/curl/curl/pull/8298
-
-Daniel Stenberg (21 Jan 2022)
-- openssl: return error if TLS 1.3 is requested when not supported
-  
-  Previously curl would just silently ignore it if the necessary defines
-  are not present at build-time.
-  
-  Reported-by: Stefan Eissing
-  Fixes #8309
-  Closes #8310
-
-- TODO: Passing NOTIFY option to CURLOPT_MAIL_RCPT
-  
-  Closes #8232
-
-- [Philip H brought this change]
-
-  workflows/wolfssl: install impacket
-  
-  needed Python Package for SMB tests
-  
-  Closes #8307
-
-- url: make Curl_disconnect return void
-  
-   1. The function would only ever return CURLE_OK anyway
-   2. Only one caller actually used the return code
-   3. Most callers did (void)Curl_disconnect()
-  
-  Closes #8303
-
-- docs: document HTTP/2 not insisting on TLS 1.2
-  
-  Both for --http2 and CURLOPT_HTTP_VERSION.
-  
-  Reported-by: jhoyla on github
-  Fixes #8235
-  Closes #8300
-
-- cmdline-opts/gen.pl: fix option matching to improve references
-  
-  Previously it could mistakenly match partial names when there are
-  options that start with the same prefix, leading to the wrong references
-  used.
-  
-  Closes #8299
-
-- TODO: Less memory massaging with Schannel
-
-- [Patrick Monnerat brought this change]
-
-  runtests.pl: disable debuginfod
-  
-  Valgrind and gdb implement this feature: as this highly slows down tests,
-  disable it.
-  
-  Closes #8291
-
-- RELEASE-NOTES: synced
-
-- CURLMOPT_TIMERFUNCTION/DATA.3: fix the examples
-  
-  ... to not call libcurl recursively back.
-  
-  Closes #8286
-
-- multi: set in_callback for multi interface callbacks
-  
-  This makes most libcurl functions return error if called from within a
-  callback using the same multi handle. For example timer or socket
-  callbacks calling curl_multi_socket_action.
-  
-  Reported-by: updatede on github
-  Fixes #8282
-  Closes #8286
-
-- docs/HISTORY.md: mention alt-svc and HSTS
-
-- misc: remove the final watcom references
-  
-  Follow-up to bbf8cae44dedc495e6
-  
-  We removed support for the watcom builds files back in September
-  2020. This removes all remaining watcom references and ifdefs.
-  
-  Closes #8287
-
-- misc: remove BeOS code and references
-  
-  There has not been a mention of this OS in any commit since December
-  2004 (58f4af7973e3d2). The OS is also long gone.
-  
-  Closes #8288
-
-- tool_getparam: DNS options that need c-ares now fail without it
-  
-  Just silently accepting the options and then not having any effect is
-  not good.
-  
-  Ref: #8283
-  Closes #8285
-
-- curl: remove "separators" (when using globbed URLs)
-  
-  Unless muted (with -s) When doing globbing, curl would output mime-like
-  separators between the separate transfers. This is not documented
-  anywhere, surprises users and clobbers the output. Gone now.
-  
-  Updated test 18 and 1235
-  
-  Reported-by: jonny112 on github
-  Bug: https://github.com/curl/curl/discussions/8257
-  Closes #8278
-
-Jay Satiro (15 Jan 2022)
-- [Niels Martignène brought this change]
-
-  mbedtls: fix CURLOPT_SSLCERT_BLOB (again)
-  
-  - Increase the buffer length passed to mbedtls_x509_crt_parse to account
-    for the null byte appended to the temporary blob.
-  
-  Follow-up to 867ad1c which uses a null terminated copy of the
-  certificate blob, because mbedtls_x509_crt_parse requires PEM data
-  to be null terminated.
-  
-  Ref: https://github.com/curl/curl/commit/867ad1c#r63439893
-  Ref: https://github.com/curl/curl/pull/8146
-  
-  Closes https://github.com/curl/curl/pull/8260
-
-Daniel Stenberg (15 Jan 2022)
-- [Alessandro Ghedini brought this change]
-
-  quiche: verify the server cert on connect
-  
-  Similarly to c148f0f551f9bea0e3d0, make quiche correctly acknowledge
-  `CURLOPT_SSL_VERIFYPEER` and `CURLOPT_SSL_VERIFYHOST`.
-  
-  Fixes #8173
-  Closes #8275
-
-- [Ikko Ashimine brought this change]
-
-  checksrc: fix typo in comment
-  
-  enfore -> enforce
-  
-  Closes #8281
-
-- curl-openssl: remove the OpenSSL headers and library versions check
-  
-  It is more work to maintain that check than the (any?) benefit it
-  brings.
-  
-  Fixes #8279
-  Reported-by: Satadru Pramanik
-  Closes #8280
-
-- mqtt: free any leftover when done
-  
-  Oss-fuzz found an issue when the "sendleftovers" pointer could leak memory.
-  Fix this by always freeing it (if still assigned) in the done function.
-  
-  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=43515
-  Closes #8274
-
-- formdata: avoid size_t => long typecast overflows
-  
-  Typically a problem for platforms with 32 bit long and 64 bit size_t
-  
-  Reported-by: Fabian Yamaguchi
-  Bug: https://hackerone.com/reports/1444539
-  Closes #8272
-
-- RELEASE-NOTES: synced
-  
-  bump next release to become 7.82.0
-
-Marcel Raad (13 Jan 2022)
-- build: enable -Warith-conversion
-  
-  This makes the behavior consistent between GCC 10 and earlier versions.
-  
-  Closes https://github.com/curl/curl/pull/8271
-
-- build: fix -Wenum-conversion handling
-  
-  Don't enable that warning when warnings are disabled.
-  Also add it to CMake.
-  
-  Closes https://github.com/curl/curl/pull/8271
-
-- appveyor: use VS 2017 image for the autotools builds
-  
-  The newer images don't have all required MSYS2 packages.
-  
-  Fixes https://github.com/curl/curl/issues/8248
-  Closes https://github.com/curl/curl/pull/8265
-
-- appveyor: update images from VS 2019 to 2022
-  
-  Closes https://github.com/curl/curl/pull/8265
-
-Daniel Stenberg (12 Jan 2022)
-- [Michał Antoniak brought this change]
-
-  mbedtls: return CURLcode result instead of a mbedtls error code
-  
-  ... when a certificate fails to be loaded from a blob
-  
-  Closes #8266
-
-- curl_multi_socket.3: remove callback and typical usage descriptions
-  
-  1. The callback is better described in the option for setting it. Having
-  it in a single place reduces the risk that one of them is wrong.
-  
-  2. The "typical usage" is wrong since the functions described in this
-  man page are both deprecated so they cannot be used in any "typical" way
-  anymore.
-  
-  Closes #8262
-
-- curl-functions.m4: revert DYLD_LIBRARY_PATH tricks in CURL_RUN_IFELSE
-  
-  Mostly reverts ba0657c343f, but now instead just run the plain macro on
-  darwin. The approach as used on other platforms is simply not necessary
-  on macOS.
-  
-  Fixes #8229
-  Reported-by: Ryan Schmidt
-  Closes #8247
-
-- [Patrick Monnerat brought this change]
-
-  openldap: implement SASL authentication
-  
-  As credentials can be quite different depending on the mechanism used,
-  there are no default mechanisms for LDAP and simple bind with a DN is
-  then used.
-  
-  The caller has to provide mechanism(s) using CURLOPT_LOGIN_OPTIONS to
-  enable SASL authentication and disable simple bind.
-  
-  Closes #8152
-
-Jay Satiro (10 Jan 2022)
-- [Cameron Will brought this change]
-
-  CURLOPT_RESOLVE.3: change example port to 443
-  
-  83cc966 changed documentation from using http to https. However,
-  CURLOPT_RESOLVE being set to port 80 in the documentation means that it
-  isn't valid for the new URL. Update to 443.
-  
-  Closes https://github.com/curl/curl/pull/8258
-
-Daniel Stenberg (10 Jan 2022)
-- [Fabian Keil brought this change]
-
-  test374: gif data without new line at the end
-  
-  Closes #8239
-
-- [Fabian Keil brought this change]
-
-  runtests.pl: support the nonewline attribute for the data part
-  
-  Added to FILEFORMAT
-  
-  Closes #8239
-
-- [Patrick Monnerat brought this change]
-
-  curl tool: erase some more sensitive command line arguments
-  
-  As the ps command may reveal sensitive command line info, obfuscate
-  options --tlsuser, --tlspasswd, --proxy-tlsuser, --proxy-tlspassword and
-  --oauth2-bearer arguments.
-  
-  Reported-by: Stephen Boost <s.booth@epcc.ed.ac.uk>
-  
-  Closes #7964
-
-- mesalink: remove support
-  
-  Mesalink has ceased development. We can no longer encourage use of it.
-  It seems to be continued under the name TabbySSL, but no attempts have
-  (yet) been to make curl support it.
-  
-  Fixes #8188
-  Closes #8191
-
-- ldap: return CURLE_URL_MALFORMAT for bad URL
-  
-  For consistency, use the same return code for URL malformats,
-  independently of what scheme that is used. Previously this would return
-  CURLE_LDAP_INVALID_URL, but starting now that error cannot be returned.
-  
-  Closes #8170
-
-- docs/cmdline-opts: add "mutexed" options for more http versions
-  
-  Update four http version man page sections.
-  
-  Closes #8254
-
-- [Stephen M. Coakley brought this change]
-
-  rustls: add CURLOPT_CAINFO_BLOB support
-  
-  Add support for `CURLOPT_CAINFO_BLOB` `CURLOPT_PROXY_CAINFO_BLOB` to the
-  rustls TLS backend. Multiple certificates in a single PEM string are
-  supported just like OpenSSL does with this option.
-  
-  This is compatible at least with rustls-ffi 0.8+ which is our new
-  minimum version anyway.
-  
-  I was able to build and run this on Windows, pulling trusted certs from
-  the system and then add them to rustls by setting
-  `CURLOPT_CAINFO_BLOB`. Handy!
-  
-  Closes #8255
-
-- scripts/copyright.pl: ignore missing files
-
-- RELEASE-NOTES: synced
-
-- data/DISABLED: disable test 313 for wolfssl builds
-  
-  It was previously disabled only in the CI jobs yaml
-  
-  Closes #8252
-
-- runtests: make 'wolfssl' a testable feature
-  
-  Closes #8252
-
-- GHA: install stunnel in the medbtls + wolfssl CI jobs
-  
-  Closes #8252
-
-- CI: move the rustls CI job to GHA from Zuul
-  
-  Closes #8251
-
-- DISABLE: disable a dozen tests in the rustls build
-  
-  Disables tests that don't yet work with the rustls backend.
-  
-  Fixes #8004
-  Closes #8250
-
-- runtests: make 'rustls' a testable feature
-
-- remote-header-name.d: clarify
-  
-  - it strips off the path from the server provided name
-  - it saves in current directory or --output-dir
-  
-  Ref: https://curl.se/mail/archive-2022-01/0032.html
-  Closes #8249
-
-- url: given a user in the URL, find pwd for that user in netrc
-  
-  Add test 380 and 381 to verify, edited test 133
-  
-  Reported-by: Manfred Schwarb
-  Fixes #8241
-  Closes #8243
-
-- [Niels Martignène brought this change]
-
-  mbedtls: Fix ssl_init error with mbedTLS 3.1.0+
-  
-  Since mbedTLS 3.1.0, mbedtls_ssl_setup() fails if the provided
-  config struct is not valid.
-  
-  mbedtls_ssl_config_defaults() needs to be called before the config
-  struct is passed to mbedtls_ssl_setup().
-  
-  Closes #8238
-
-- [Filip Lundgren brought this change]
-
-  cmake: fix iOS CMake project generation error
-  
-  Closes #8244
-
-- ngtcp2: fix declaration of ‘result’ shadows a previous local
-  
-  Follow-up to 8fbd6feddfa587cfd3
-  
-  Closes #8245
-
-- openssl.h: avoid including OpenSSL headers here
-  
-  ... by instead using the struct version of the typedef'ed pointer. To
-  fix build errors when both Schannel and OpenSSL are enabled.
-  
-  Fixes #8240
-  Reported-by: Jan Ehrhardt
-  Closes #8246
-
-- curl_url_set.3: mention when CURLU_ALLOW_SPACE was added
-
-- tool_findfile: free mem properly
-  
-  Follow-up to 764e4f066d5
-  
-  Closes #8242
-
-- tool_findfile: check ~/.config/curlrc too
-  
-  ... after the initial checks for .curlrc and if XDG_CONFIG_HOME is not
-  set, use $HOME and $CURL_HOME to check if ~/.config/curlrc is present.
-  
-  Add test 436 to verify
-  
-  Reported-by: Sandro Jaeckel
-  Fixes #8208
-  Closes #8213
-
-- runtests: allow client/file to specify multiple directories
-  
-  ... and make sure to mkdir them all
-
-- scripts/copyright.pl: support many provided file names on the cmdline
-
-- [Fabian Keil brought this change]
-
-  tests/FILEFORMAT.md: fix typo
-
-- [Fabian Keil brought this change]
-
-  Add test373: multiple chunks with binary zeros
-
-- [Fabian Keil brought this change]
-
-  Add test372: binary zero in data element
-
-- [Fabian Keil brought this change]
-
-  tests/server/getpart.c: properly deal with binary data containing NUL bytes
-
-- [Fabian Keil brought this change]
-
-  runtests.pl: properly print the test if it contains binary zeros
-
-- mailmap: Xiaoke Wang
-
-- openssl: copyright year update
-  
-  Follow-up to 30aea2b1ede
-
-- scripts/copyright.pl: hush unless -v (for verbose) is used
-
-- [Xiaoke Wang brought this change]
-
-  openssl: check the return value of BIO_new_mem_buf()
-  
-  Closes #8233
-
-- examples/multi-app.c: call curl_multi_remove_handle as well
-  
-  Fixes #8234
-  Reported-by: Melroy van den Berg
-  Closes #8236
-
-- COPYING: bump copyright year range
-
-- RELEASE-NOTES: synced
-  
-  and bump curlver after release
-
-- docs: fix mandoc -T lint formatting complaints
-  
-  Closes #8228
-
-- next.d. remove .fi/.nf as they are handled by gen.pl
-  
-  Closes #8228
-
-- gen.pl: terminate "example" sections better
-  
-  If the example (section that is prefixed with spaces) ends the
-  description gen.pl would previously miss to output the terminating .fi
-  
-  Closes #8228
-
-- [Satadru Pramanik brought this change]
-
-  curl-functions.m4: fix LIBRARY_PATH adjustment to avoid eval
-  
-  $$ usage in a m4 file introduces the PID in linux.
-  Instead, just duplicate previous working code with a case switch.
-  
-  Fixes #8229
-  Closes #8230
-
-Version 7.81.0 (5 Jan 2022)
-
-Daniel Stenberg (5 Jan 2022)
-- RELEASE-NOTES: synced
-  
-  curl 7.81.0 release
-
-- THANKS: add names from 7.81.0 release
-
-- curl_multi_init.3: fix the copyright year range
-
-- test719-721: require "proxy" feature present to run
-  
-  Bug: https://github.com/curl/curl/pull/8223#issuecomment-1005188696
-  Reported-by: Marc Hörsken
-  
-  Closes #8226
-
-- test719: require ipv6 support to run
-  
-  Follow-up to effd2bd7ba2a5fd244
-  Reported-by: Marc Hörsken
-  Bug: https://github.com/curl/curl/pull/8217#issuecomment-1004681145
-  
-  Closes #8223
-
-- test719-721: verify SOCKS details
-  
-  Using the new verify/socks details
-
-- runtests: add verify/socks check
-  
-  If used, this data is compared with the data in log/socksd-request.log
-  which the socksd server logs.
-  
-  Added to FILEFORMAT.md
-
-- server/socksd: log atyp + address in a separate log
-  
-  To allow the test suite to verify that the right data arrived
-
-- socks5: use appropriate ATYP for numerical IP address host names
-  
-  When not resolving the address locallly (known as socks5h).
-  
-  Add test 719 and 720 to verify.
-  
-  Reported-by: Peter Piekarski
-  Fixes #8216
-  Closes #8217
-
-Jay Satiro (3 Jan 2022)
-- curl_multi_init.3: fix EXAMPLE formatting
-
-Daniel Stenberg (3 Jan 2022)
-- RELEASE-NOTES: synced
-
-- libtest: avoid "assignment within conditional expression"
-  
-  In lib530, lib540 and lib582
-  
-  Closes #8218
-
-- ftp: disable warning 4706 in MSVC
-  
-  Follow-up to 21248e052d
-  
-  Disabling "assignment within conditional expression" for MSVC needs to
-  be done before the function starts, for it to take effect.
-  
-  Closes #8218
-
-- tool_operate: warn if too many output arguments were found
-  
-  More output instructions than URLs is likely a user error.
-  
-  Add test case 371 to verify
-  
-  Closes #8210
-
-- .github/workflows/mbedtls.yml: bump to mbedtls 3.1.0
-  
-  Closes #8215
-
-- zuul: remove the mbedtls jobs
-  
-  Now running as github workflows
-  
-  Closes #8215
-
-- github/workflows: add mbedtls and mbedtls-clang
-  
-  Closes #8215
-
-- [Valentin Richter brought this change]
-
-  mbedtls: fix private member designations for v3.1.0
-  
-  "As a last resort, you can access the field foo of a structure bar by
-  writing bar.MBEDTLS_PRIVATE(foo). Note that you do so at your own risk,
-  since such code is likely to break in a future minor version of Mbed
-  TLS." -
-  https://github.com/ARMmbed/mbedtls/blob/f2d1199edc5834df4297f247f213e614f7782d1d/docs/3.0-migration-guide.md
-  
-  That future minor version is v3.1.0. I set the >= to == for the version
-  checks because v3.1.0 is a release, and I am not sure when the private
-  designation was reverted after v3.0.0.
-  
-  Closes #8214
-
-- [Valentin Richter brought this change]
-
-  cmake: prevent dev warning due to mismatched arg
-  
-  -- curl version=[7.81.0-DEV]
-  CMake Warning (dev) at /usr/share/cmake-3.22.1/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
-    The package name passed to `find_package_handle_standard_args` (MBEDTLS)
-    does not match the name of the calling package (MbedTLS).  This can lead to
-    problems in calling code that expects `find_package` result variables
-    (e.g., `_FOUND`) to follow a certain pattern.
-  Call Stack (most recent call first):
-    deps/curl/CMake/FindMbedTLS.cmake:31 (find_package_handle_standard_args)
-    deps/curl/CMakeLists.txt:473 (find_package)
-  This warning is for project developers.  Use -Wno-dev to suppress it.
-  
-  Closes #8207
-
-- urlapi: if possible, shorten given numerical IPv6 addresses
-  
-  Extended test 1560 to verify
-  
-  Closes #8206
-
-- [Michał Antoniak brought this change]
-
-  url: reduce ssl backend count for CURL_DISABLE_PROXY builds
-  
-  Closes #8212
-
-- KNOWN_BUGS: "Trying local ports fails on Windows"
-  
-  Reported-by: gclinch on github
-  Closes #8112
-
-- misc: update copyright year range
-
-- zuul: remove the wolfssl even more
-  
-  Follow-up to 1914465cf180d32b3d
-
-- examples/multi-single.c: remove WAITMS()
-  
-  As it isn't used.
-  
-  Reported-by: Melroy van den Berg
-  Fixes #8200
-  Closes #8201
-
-- gtls: add gnutls include for the session type
-  
-  Follow-up to 8fbd6feddfa5 to make it build more universally
-
-- m4/curl-compilers: tell clang -Wno-pointer-bool-conversion
-  
-  To hush compiler warnings we don't care for: error: address of function
-  'X' will always evaluate to 'true'
-  
-  Fixes #8197
-  Closes #8198
-
-- http_proxy: don't close the socket (too early)
-  
-  ... and double-check in the OpenSSL shutdown that the socket is actually
-  still there before it is used.
-  
-  Fixes #8193
-  Closes #8195
-  
-  Reported-by: Leszek Kubik
-
-- ngtcp2: verify the server certificate for the gnutls case
-  
-  Closes #8178
-
-- ngtcp2: verify the server cert on connect (quictls)
-  
-  Make ngtcp2+quictls correctly acknowledge `CURLOPT_SSL_VERIFYPEER` and
-  `CURLOPT_SSL_VERIFYHOST`.
-  
-  The name check now uses a function from lib/vtls/openssl.c which will
-  need attention for when TLS is not done by OpenSSL or is disabled while
-  QUIC is enabled.
-  
-  Possibly the servercert() function in openssl.c should be adjusted to be
-  able to use for both regular TLS and QUIC.
-  
-  Ref: #8173
-  Closes #8178
-
-- zuul: remove the wolfssl build
-
-- github workflow: add wolfssl
-  
-  Closes #8196
-
-- [Nicolas Sterchele brought this change]
-
-  zuul: fix quiche build pointing to wrong Cargo
-  
-  Fixes #8184
-  Closes #8189
-
-- checksrc: detect more kinds of NULL comparisons we avoid
-  
-  Co-authored-by: Jay Satiro
-  Closes #8180
-
-- RELEASE-NOTES: synced
-
-- mesalink: remove the BACKEND define kludge
-  
-  Closes #8183
-
-- schannel: remove the BACKEND define kludge
-  
-  Closes #8182
-
-- gtls: check return code for gnutls_alpn_set_protocols
-  
-  Closes #8181
-
-- [Stefan Huber brought this change]
-
-  README: label the link to the support document
-  
-  Closes #8185
-
-- docs/HTTP3: describe how to setup a h3 reverse-proxy for testing
-  
-  Assisted-by: Matt Holt
-  
-  Closes #8177
-
-- libcurl-multi.3: "SOCKS proxy handshakes" are not blocking
-  
-  Since 4a4b63daaa0
-
-- [Vladimir Panteleev brought this change]
-
-  tests: Add test for CURLOPT_HTTP200ALIASES
-
-- [Vladimir Panteleev brought this change]
-
-  http: Fix CURLOPT_HTTP200ALIASES
-  
-  The httpcode < 100 check was also triggered when none of the fields were
-  parsed, thus making the if(!nc) block unreachable.
-  
-  Closes #8171
-
-- RELEASE-NOTES: synced
-
-- language: "email"
-  
-  Missed three occurrences.
-  
-  Follow-up to 7a92f86
-
-- nss:set_cipher don't clobber the cipher list
-  
-  The string is set by the user and needs to remain intact for proper
-  connection reuse etc.
-  
-  Reported-by: Eric Musser
-  Fixes #8160
-  Closes #8161
-
-- misc: s/e-mail/email
-  
-  Consistency is king. Following the lead in everything curl.
-  
-  Closes #8159
-
-- [Tobias Nießen brought this change]
-
-  docs: fix typo in OpenSSL 3 build instructions
-  
-  Closes #8162
-
-- linkcheck.yml: add CI job that checks markdown links
-  
-  Closes #8158
-
-- RELEASE-PROCEDURE.md: remove ICAL link and old release dates
-
-- BINDINGS.md: "markdown-link-check-disable"
-  
-  It feels a bit unfortunate to litter an ugly tag for this functionality,
-  but if we get link scans of all markdown files, this might be worth the
-  price.
-
-- docs: fix dead links, remove ECH.md
-
-Jay Satiro (16 Dec 2021)
-- openssl: define HAVE_OPENSSL_VERSION for OpenSSL 1.1.0+
-  
-  Prior to this change OpenSSL_version was only detected in configure
-  builds. For other builds the old version parsing code was used which
-  would result in incorrect versioning for OpenSSL 3:
-  
-  Before:
-  
-  curl 7.80.0 (i386-pc-win32) libcurl/7.80.0 OpenSSL/3.0.0a zlib/1.2.11
-  WinIDN libssh2/1.9.0
-  
-  After:
-  
-  curl 7.80.0 (i386-pc-win32) libcurl/7.80.0 OpenSSL/3.0.1 zlib/1.2.11
-  WinIDN libssh2/1.9.0
-  
-  Reported-by: lllaffer@users.noreply.github.com
-  
-  Fixes https://github.com/curl/curl/issues/8154
-  Closes https://github.com/curl/curl/pull/8155
-
-Daniel Stenberg (16 Dec 2021)
-- [James Fuller brought this change]
-
-  docs: add known bugs list to HTTP3.md
-  
-  Closes #8156
-
-Dan Fandrich (15 Dec 2021)
-- BINDINGS: add one from Everything curl and update a link
-
-- libcurl-security.3: mention address and URL mitigations
-  
-  The new CURLOPT_PREREQFUNCTION callback is another way to sanitize
-  addresses.
-  Using the curl_url API is a way to mitigate against attacks relying on
-  URL parsing differences.
-
-Daniel Stenberg (15 Dec 2021)
-- RELEASE-NOTES: synced
-
-- x509asn1: return early on errors
-  
-  Overhaul to make sure functions that detect errors bail out early with
-  error rather than trying to continue and risk hiding the problem.
-  
-  Closes #8147
-
-- [Patrick Monnerat brought this change]
-
-  openldap: several minor improvements
-  
-  - Early check proper LDAP URL syntax. Reject URLs with a userinfo part.
-  - Use dynamic memory for ldap_init_fd() URL rather than a
-    stack-allocated buffer.
-  - Never chase referrals: supporting it would require additional parallel
-    connections and alternate authentication credentials.
-  - Do not wait 1 microsecond while polling/reading query response data.
-  - Store last received server code for retrieval with CURLINFO_RESPONSE_CODE.
-  
-  Closes #8140
-
-- [Michał Antoniak brought this change]
-
-  misc: remove unused doh flags when CURL_DISABLE_DOH is defined
-  
-  Closes #8148
-
-- mbedtls: fix CURLOPT_SSLCERT_BLOB
-  
-  The memory passed to mbedTLS for this needs to be null terminated.
-  
-  Reported-by: Florian Van Heghe
-  Closes #8146
-
-- asyn-ares: ares_getaddrinfo needs no happy eyeballs timer
-  
-  Closes #8142
-
-- mailmap: add Yongkang Huang
-  
-  From #8141
-
-- [Yongkang Huang brought this change]
-
-  check ssl_config when re-use proxy connection
-
-- mbedtls: do a separate malloc for ca_info_blob
-  
-  Since the mbedTLS API requires the data to the null terminated.
-  
-  Follow-up to 456c53730d21b1fad0c7f72c1817
-  
-  Fixes #8139
-  Closes #8145
-
-Marc Hoersken (14 Dec 2021)
-- CI: build examples for additional code verification
-  
-  Some CIs already build them, let's do it on more of them.
-  
-  Reviewed-by: Daniel Stenberg
-  
-  Follow up to #7690 and 77311f420a541a0de5b3014e0e40ff8b4205d4af
-  Replaces #7591
-  Closes #7922
-
-- docs/examples: workaround broken -Wno-pedantic-ms-format
-  
-  Avoid CURL_FORMAT_CURL_OFF_T by using unsigned long instead.
-  Improve size_t to long conversion in imap-append.c example.
-  
-  Ref: https://github.com/curl/curl/issues/6079
-  Ref: https://github.com/curl/curl/pull/6082
-  Assisted-by: Jay Satiro
-  Reviewed-by: Daniel Stenberg
-  
-  Preparation of #7922
-
-- tests/data/test302[12]: fix MSYS2 path conversion of hostpubsha256
-  
-  Ref: https://www.msys2.org/wiki/Porting/#filesystem-namespaces
-  
-  Reviewed-by: Marcel Raad
-  Reviewed-by: Jay Satiro
-  
-  Fixes #8084
-  Closes #8138
-
-Daniel Stenberg (13 Dec 2021)
-- [Patrick Monnerat brought this change]
-
-  openldap: simplify ldif generation code
-  
-  and take care of zero-length values, avoiding conversion to base64
-  and/or trailing spaces.
-  
-  Closes #8136
-
-- example/progressfunc: remove code for old libcurls
-  
-  7.61.0 is over three years old now, remove all #ifdefs for handling
-  ancient libcurl versions so that the example gets easier to read and
-  understand
-  
-  Closes #8137
-
-- [Xiaoke Wang brought this change]
-
-  sha256/md5: return errors when init fails
-  
-  Closes #8133
-
-- TODO: 13.3 Defeat TLS fingerprinting
-  
-  Closes #8119
-
-- RELEASE-NOTES: synced
-
-- [Patrick Monnerat brought this change]
-
-  openldap: process search query response messages one by one
-  
-  Upon receiving large result sets, this reduces memory consumption and
-  allows starting to output results while the transfer is still in
-  progress.
-  
-  Closes #8101
-
-- hash: lazy-alloc the table in Curl_hash_add()
-  
-  This makes Curl_hash_init() infallible which saves error paths.
-  
-  Closes #8132
-
-- multi: cleanup the socket hash when destroying it
-  
-  Since each socket hash entry may themselves have a hash table in them,
-  the destroying of the socket hash needs to make sure all the subhashes
-  are also correctly destroyed to avoid leaking memory.
-  
-  Fixes #8129
-  Closes #8131
-
-- test1156: fixup the stdout check for Windows
-  
-  It is not text mode.
-  
-  Follow-up to 6f73e68d182
-  
-  Closes #8134
-
-- test1528: enable for hyper
-  
-  Closes #8128
-
-- test1527: enable for hyper
-  
-  Closes #8128
-
-- test1526: enable for hyper
-  
-  Closes #8128
-
-- test1525: slightly tweaked for hyper
-  
-  Closes #8128
-
-- test1156: enable for hyper
-  
-  Minor reorg of the lib1156 code and it works fine for hyper.
-  
-  Closes #8127
-
-- test661: enable for hyper
-  
-  Closes #8126
-
-- docs: fix proselint nits
-  
-  - remove a lot of exclamation marks
-  - use consistent spaces (1, not 2)
-  - use better words at some places
-  
-  Closes #8123
-
-- [RekGRpth brought this change]
-
-  BINDINGS.md: add cURL client for PostgreSQL
-  
-  Closes #8125
-
-- [RekGRpth brought this change]
-
-  CURLSHOPT_USERDATA.3: fix copy-paste mistake
-  
-  Closes #8124
-
-- docs: fix minor nroff format nits
-  
-  Repairs test 1140
-  
-  Follow-up to 436cdf82041
-
-- docs/URL-SYNTAX.md: space is not fine in a given URL
-
-- curl_multi_perform/socket_action.3: clarify what errors mean
-  
-  An error returned from one of these funtions mean that ALL still ongoing
-  transfers are to be considered failed.
-  
-  Ref: #8114
-  Closes #8120
-
-- libcurl-errors.3: add CURLM_ABORTED_BY_CALLBACK
-  
-  Follow-up to #8089 (2b3dd01)
-  
-  Closes #8116
-
-- hash: add asserts to help detect bad usage
-  
-  For example trying to add entries after the hash has been "cleaned up"
-  
-  Closes #8115
-
-- lib530: abort on curl_multi errors
-  
-  This makes torture tests run more proper.
-  
-  Also add an assert to trap situations where it would end up with no
-  sockets to wait for.
-  
-  Closes #8121
-
-- FAQ: we never pronounced it "see URL", we say "kurl"
-
-- RELEASE-NOTES: synced
-
-- CURLOPT_RESOLVE.3: minor polish
-  
-  Minor rephrasing for some explanations.
-  
-  Put the format strings in stand-alone lines with .nf/.fi to be easier to spot.
-  
-  Move "added in" to AVAILABILITY
-  
-  Closed #8110
-
-- test1556: adjust for hyper
-  
-  Closes #8105
-
-- test1554: adjust for hyper
-  
-  Closes #8104
-
-- retry-all-errors.d: make the example complete
-  
-  ... as it needs --retry too to work
-
-- TODO: 5.7 Require HTTP version X or higher
-  
-  Closes #7980
-
-- CURLOPT_STDERR.3: does not work with libcurl as a win32 DLL
-  
-  This is the exact same limitation already documented for
-  CURLOPT_WRITEDATA but should be clarified here. It also has a different
-  work-around.
-  
-  Reported-by: Stephane Pellegrino
-  Bug: https://github.com/curl/curl/issues/8102
-  Closes #8103
-
-- multi: handle errors returned from socket/timer callbacks
-  
-  The callbacks were partially documented to support this. Now the
-  behavior is documented and returning error from either of these
-  callbacks will effectively kill all currently ongoing transfers.
-  
-  Added test 530 to verify
-  
-  Reported-by: Marcelo Juchem
-  Fixes #8083
-  Closes #8089
-
-- http2:set_transfer_url() return early on OOM
-  
-  If curl_url() returns NULL this should return early to avoid mistakes -
-  even if right now the subsequent function invokes are all OK.
-  
-  Coverity (wrongly) pointed out this as a NULL deref.
-  
-  Closes #8100
-
-- tool_parsecfg: use correct free() call to free memory
-  
-  Detected by Coverity. CID 1494642.
-  Follow-up from 2be1aa619bca
-  
-  Closes #8099
-
-- tool_operate: fix potential memory-leak
-  
-  A 'CURLU *' would leak if url_proto() is called with no URL.
-  
-  Detected by Coverity. CID 1494643.
-  Follow-up to 18270893abdb19
-  Closes #8098
-
-- [Patrick Monnerat brought this change]
-
-  openldap: implement STARTTLS
-  
-  As this introduces use of CURLOPT_USE_SSL option for LDAP, also check
-  this option in ldap.c as it is not supported by this backend.
-  
-  Closes #8065
-
-- [Jun Tseng brought this change]
-
-  curl_easy_unescape.3: call curl_easy_cleanup in example
-  
-  Closes #8097
-
-- [Jun Tseng brought this change]
-
-  curl_easy_escape.3: call curl_easy_cleanup in example
-  
-  Closes #8097
-
-- tool_listhelp: sync
-  
-  Follow-up to 172068b76f
-
-- [Damien Walsh brought this change]
-
-  request.d: refer to 'method' rather than 'command'
-  
-  Closes #8094
-
-- RELEASE-NOTES: synced
-
-- writeout: fix %{http_version} for HTTP/3
-  
-  Output "3" properly when HTTP/3 was used.
-  
-  Reported-by: Bernat Mut
-  Fixes #8072
-  Closes #8092
-
-- urlapi: accept port number zero
-  
-  This is a regression since 7.62.0 (fb30ac5a2d).
-  
-  Updated test 1560 accordingly
-  
-  Reported-by: Brad Fitzpatrick
-  Fixes #8090
-  Closes #8091
-
-- [Mark Dodgson brought this change]
-
-  lift: ignore is a deprecated config option, use ignoreRules
-  
-  Closes #8082
-
-- [Alessandro Ghedini brought this change]
-
-  HTTP3: update quiche build instructions
-  
-  The repo repo was re-organized a bit, so the build instructions need to
-  be updated.
-  
-  Closes #8076
-
-- CURLMOPT_TIMERFUNCTION.3: call it expire time, not interval
-  
-  Since we say it is a non-repating timer
-
-- [Florian Van Heghe brought this change]
-
-  mbedTLS: include NULL byte in blob data length for CURLOPT_CAINFO_BLOB
-  
-  Fixes #8079
-  Closes #8081
-
-Jay Satiro (2 Dec 2021)
-- [Wyatt O'Day brought this change]
-
-  version_win32: Check build number and platform id
-  
-  Prior to this change the build number was not checked during version
-  comparison, and the platform id was supposed to be checked but wasn't.
-  
-  Checking the build number is required for enabling "evergreen"
-  Windows 10/11 features (like TLS 1.3).
-  
-  Ref: https://github.com/curl/curl/pull/7784
-  
-  Closes https://github.com/curl/curl/pull/7824
-  Closes https://github.com/curl/curl/pull/7867
-
-- libssh2: fix error message for sha256 mismatch
-  
-  - On mismatch error show sha256 fingerprint in base64 format.
-  
-  Prior to this change the fingerprint was mistakenly printed in binary.
-
-Daniel Stenberg (1 Dec 2021)
-- [Xiaoke Wang brought this change]
-
-  openssl: check the return value of BIO_new()
-  
-  Closes #8078
-
-Dan Fandrich (30 Nov 2021)
-- docs: Update the Reducing Size section
-  
-  Add many more options that can reduce the size of the binary that were
-  added since the last update. Update the sample minimal binary size for
-  version 7.80.0.
-
-- tests: Add some missing keywords to tests
-  
-  These are needed to skip some tests when configure options have disabled
-  certain features.
-
-Daniel Stenberg (30 Nov 2021)
-- [Florian Van Heghe brought this change]
-
-  mbedTLS: add support for CURLOPT_CAINFO_BLOB
-  
-  Closes #8071
-
-- [Glenn Strauss brought this change]
-
-  digest: compute user:realm:pass digest w/o userhash
-  
-  https://datatracker.ietf.org/doc/html/rfc7616#section-3.4.4
-    ... the client MUST calculate a hash of the username after
-        any other hash calculation ...
-  
-  Signed-off-by: Glenn Strauss <gstrauss@gluelogic.com>
-  Closes #8066
-
-- config.d: update documentation to match the path search
-  
-  Assisted-by: Jay Satiro
-
-- tool_findfile: search for a file in the homedir
-  
-  The homedir() function is now renamed into findfile() and iterates over
-  all the environment variables trying to access the file in question
-  until it finds it. Last resort is then getpwuid() if
-  available. Previously it would first try to find a home directory and if
-  that was set, insist on checking only that directory for the file. This
-  now returns the full file name it finds.
-  
-  The Windows specific checks are now done differently too and in this
-  order:
-  
-  1 - %USERPROFILE%
-  2 - %APPDATA%
-  3 - %USERPROFILE%\\Application Data
-  
-  The windows order is modified to match how the Windows 10 ssh tool works
-  when it searches for .ssh/known_hosts.
-  
-  Reported-by: jeffrson on github
-  Co-authored-by: Jay Satiro
-  Fixes #8033
-  Closes #8035
-
-- docs: consistent manpage SYNOPSIS
-  
-  Make all libcurl related options use .nf (no fill) for the SYNOPSIS
-  section - for consistent look. roffit then renders that section using
-  <pre> (monospace font) in html for the website.
-  
-  Extended manpage-syntax (test 1173) with a basic check for it.
-  
-  Closes #8062
-
-- RELEASE-NOTES: synced
-
-- [Patrick Monnerat brought this change]
-
-  openldap: handle connect phase with a state machine
-  
-  Closes #8054
-
-- docs: address proselint nits
-  
-  - avoid exclamation marks
-  - use consistent number of spaces after periods: one
-  - avoid clichés
-  - avoid using 'very'
-  
-  Closes #8060
-
-- [Bruno Baguette brought this change]
-
-  FAQ: typo fix : "yout" ➤ "your"
-  
-  Closes #8059
-
-- [Bruno Baguette brought this change]
-
-  docs/INSTALL.md: typo fix : added missing "get" verb
-  
-  Closes #8058
-
-- insecure.d: detail its use for SFTP and SCP as well
-  
-  Closes #8056
-
-Viktor Szakats (25 Nov 2021)
-- Makefile.m32: rename -winssl option to -schannel and tidy up
-  
-  - accept `-schannel` as an alternative to `CFG` option `-winssl`
-    (latter still accepted, but deprecated)
-  - rename internal variable `WINSSL` to `SCHANNEL`
-  - make the `CFG` option evaluation shorter, without repeating the option
-    name
-  
-  Reviewed-by: Marcel Raad
-  Reviewed-by: Daniel Stenberg
-  Closes #8053
-
-Daniel Stenberg (25 Nov 2021)
-- KNOWN_BUGS: 5.6 make distclean loops forever
-  
-  Reported-by: David Bohman
-  Closes #7716
-
-- KNOWN_BUGS: add one, remove one
-  
-  - 5.10 SMB tests fail with Python 2
-  
-  Just use python 3.
-  
-  + 5.10 curl hangs on SMB upload over stdin
-  
-  Closes #7896
-
-- urlapi: provide more detailed return codes
-  
-  Previously, the return code CURLUE_MALFORMED_INPUT was used for almost
-  30 different URL format violations. This made it hard for users to
-  understand why a particular URL was not acceptable. Since the API cannot
-  point out a specific position within the URL for the problem, this now
-  instead introduces a number of additional and more fine-grained error
-  codes to allow the API to return more exactly in what "part" or section
-  of the URL a problem was detected.
-  
-  Also bug-fixes curl_url_get() with CURLUPART_ZONEID, which previously
-  returned CURLUE_OK even if no zoneid existed.
-  
-  Test cases in 1560 have been adjusted and extended. Tests 1538 and 1559
-  have been updated.
-  
-  Updated libcurl-errors.3 and curl_url_strerror() accordingly.
-  
-  Closes #8049
-
-- urlapi: make Curl_is_absolute_url always use MAX_SCHEME_LEN
-  
-  Instad of having all callers pass in the maximum length, always use
-  it. The passed in length is instead used only as the length of the
-  target buffer for to storing the scheme name in, if used.
-  
-  Added the scheme max length restriction to the curl_url_set.3 man page.
-  
-  Follow-up to 45bcb2eaa78c79
-  
-  Closes #8047
-
-- [Jay Satiro brought this change]
-
-  cmake: warn on use of the now deprecated symbols
-  
-  Follow-up to 9108da2c26d
-  
-  Closes #8052
-
-- [Kevin Burke brought this change]
-
-  tests/CI.md: add more information on CI environments
-  
-  Fixes #8012
-  Closes #8022
-
-- cmake: private identifiers use CURL_ instead of CMAKE_ prefix
-  
-  Since the 'CMAKE_' prefix is reserved for cmake's own private use.
-  Ref: https://cmake.org/cmake/help/latest/manual/cmake-variables.7.html
-  
-  Reported-by: Boris Rasin
-  Fixes #7988
-  Closes #8044
-
-- urlapi: reject short file URLs
-  
-  file URLs that are 6 bytes or shorter are not complete. Return
-  CURLUE_MALFORMED_INPUT for those. Extended test 1560 to verify.
-  
-  Triggered by #8041
-  Closes #8042
-
-- curl: improve error message for --head with -J
-  
-  ... it now focuses on the "output of headers" combined with the
-  --remote-header-name option, as that is actually the problem. Both
-  --head and --include can output headers.
-  
-  Reported-by: nimaje on github
-  Fixes #7987
-  Closes #8045
-
-- RELEASE-NOTES: synced
-
-- [Stefan Eissing brought this change]
-
-  urlapi: cleanup scheme parsing
-  
-  Makea Curl_is_absolute_url() always leave a defined 'buf' and avoids
-  copying on urls that do not start with a scheme.
-  
-  Closes #8043
-
-- tool_operate: only set SSH related libcurl options for SSH URLs
-  
-  For example, this avoids trying to find and set the known_hosts file (or
-  warn for its absence) if SFTP or SCP are not used.
-  
-  Closes #8040
-
-- [Jacob Hoffman-Andrews brought this change]
-
-  rustls: remove comment about checking handshaking
-  
-  The comment is incorrect in two ways:
-   - It says the check needs to be last, but the check is actually first.
-   - is_handshaking actually starts out true.
-  
-  Closes #8038
-
-Marcel Raad (20 Nov 2021)
-- openssl: use non-deprecated API to read key parameters
-  
-  With OpenSSL 3.0, the parameters are read directly from the `EVP_PKEY`
-  using `EVP_PKEY_get_bn_param`.
-  
-  Closes https://github.com/curl/curl/pull/7893
-
-- openssl: reduce code duplication
-  
-  `BN_print`'s `BIGNUM` parameter has been `const` since OpenSSL 0.9.4.
-  
-  Closes https://github.com/curl/curl/pull/7893
-
-- openssl: remove `RSA_METHOD_FLAG_NO_CHECK` handling if unavailable
-  
-  The flag has been deprecated without replacement in OpenSSL 3.0.
-  
-  Closes https://github.com/curl/curl/pull/7893
-
-- openssl: remove usage of deprecated `SSL_get_peer_certificate`
-  
-  The function name was changed to `SSL_get1_peer_certificate` in OpenSSL
-  3.0.
-  
-  Closes https://github.com/curl/curl/pull/7893
-
-Daniel Stenberg (19 Nov 2021)
-- page-footer: fix typo
-  
-  Closes #8036
-
-- http: enable haproxy support for hyper backend
-  
-  This is done by having native code do the haproxy header output before
-  hyper issues its request. The little downside with this approach is that
-  we need the entire Curl_buffer_send() function built, which is otherwise
-  not used for hyper builds.
-  
-  If hyper ends up getting native support for the haproxy protocols we can
-  backpedal on this.
-  
-  Enables test 1455 and 1456
-  
-  Closes #8034
-
-- [Bernhard Walle brought this change]
-
-  configure: fix runtime-lib detection on macOS
-  
-  With a non-standard installation of openssl we get this error:
-  
-      checking run-time libs availability... failed
-      configure: error: one or more libs available at link-time are not available run-time. Libs used at link-time: -lnghttp2 -lssl -lcrypto -lssl -lcrypto -lz
-  
-  There's already code to set LD_LIBRARY_PATH on Linux, so set
-  DYLD_LIBRARY_PATH equivalent on macOS.
-  
-  Closes #8028
-
-- [Don J Olmstead brought this change]
-
-  cmake: don't set _USRDLL on a static Windows build
-  
-  Closes #8030
-
-- page-footer: document more environment variables
-  
-  ... that curl might use.
-  
-  Closes #8027
-
-- netrc.d: edit the .netrc example to look nicer
-  
-  Works nicely thanks to d1828b470f43d
-  
-  Closes #8025
-
-- tftp: mark protocol as not possible to do over CONNECT
-  
-  ... and make connect_init() refusing trying to tunnel protocols marked
-  as not working. Avoids a double-free.
-  
-  Reported-by: Even Rouault
-  Fixes #8018
-  Closes #8020
-
-- docs/cmdline-opts: do not say "protocols: all"
-  
-  Remove the lines saying "protocols: all". It makes the output in the
-  manpage look funny, and the expectation is probably by default that if
-  not anything is mentioned about protocols the option apply to them all.
-  
-  Closes #8021
-
-- curl.1: require "see also" for every documented option
-  
-  gen.pl now generates a warning if the "See Also" field is not filled in for a
-  command line option
-  
-  All command line options now provide one or more related options. 167
-  "See alsos" added!
-  
-  Closes #8019
-
-- insecure.d: expand and clarify
-  
-  Closes #8017
-
-- gen.pl: improve example output format
-  
-  Treat consecutive lines that start with a space to be "examples". They
-  are output enclosed by .nf and .fi
-  
-  Updated form.d to use this new fanciness
-  
-  Closes #8016
-
-- Revert "form-escape.d: double the back-slashes for proper man page output"
-  
-  This reverts commit a2d8eac04a4eb1d5a98cf24b4e5cec5cec565d27.
-  
-  silly me, it was intended to be one backslash!
-
-- form-escape.d: double the back-slashes for proper man page output
-
-- page-footer: add a mention of how to report bugs to the man page
-
-- RELEASE-NOTES: synced
-  
-  and bump to 7.81.0-DEV
-
-- [Patrick Monnerat brought this change]
-
-  mime: use percent-escaping for multipart form field and file names
-  
-  Until now, form field and file names where escaped using the
-  backslash-escaping algorithm defined for multipart mails. This commit
-  replaces this with the percent-escaping method for URLs.
-  
-  As this may introduce incompatibilities with server-side applications, a
-  new libcurl option CURLOPT_MIME_OPTIONS with bitmask
-  CURLMIMEOPT_FORMESCAPE is introduced to revert to legacy use of
-  backslash-escaping. This is controlled by new cli tool option
-  --form-escape.
-  
-  New tests and documentation are provided for this feature.
-  
-  Reported by: Ryan Sleevi
-  Fixes #7789
-  Closes #7805
-
-- [Kevin Burke brought this change]
-
-  zuul.d: update rustls-ffi to version 0.8.2
-  
-  This version fixes errors with ALPN negotiation in rustls, which is
-  necessary for HTTP/2 support. For more information see the rustls-ffi
-  changelog.
-  
-  Closes #8013
-
-- configure: better diagnostics if hyper is built wrong
-  
-  If hyper is indeed present in the specified directory but couldn't be
-  used to find the correct symbol, then offer a different error message to
-  better help the user understand the issue.
-  
-  Suggested-by: Jacob Hoffman-Andrews
-  Fixes #8001
-  Closes #8005
-
-- test1939: require proxy support to run
-  
-  Follow-up to f0b7099a10d1a
-  
-  Closes #8011
-
-- test302[12]: run only with the libssh2 backend
-  
-  ... as the others don't support --hostpubsha256
-  
-  Reported-by: Paul Howarth
-  Fixes #8009
-  Closes #8010
-
-- runtests: make the SSH library a testable feature
-  
-  libssh2, libssh and wolfssh
-
-- [Jacob Hoffman-Andrews brought this change]
-
-  rustls: read of zero bytes might be okay
-  
-  When we're reading out plaintext from rustls' internal buffers, we might
-  get a read of zero bytes (meaning a clean TCP close, including
-  close_notify). However, we shouldn't return immediately when that
-  happens, since we may have already copied out some plaintext bytes.
-  Break out of the loop when we get a read of zero bytes, and figure out
-  which path we're dealing with.
-  
-  Acked-by: Kevin Burke
-  
-  Closes #8003
-
-- [Jacob Hoffman-Andrews brought this change]
-
-  rustls: remove incorrect EOF check
-  
-  The update to rustls-ffi 0.8.0 changed handling of EOF and close_notify.
-  From the CHANGELOG:
-  
-  > Handling of unclean close and the close_notify TLS alert. Mirroring
-  > upstream changes, a rustls_connection now tracks TCP closed state like
-  > so: rustls_connection_read_tls considers a 0-length read from its
-  > callback to mean "TCP stream was closed by peer."  If that happens
-  > before the peer sent close_notify, rustls_connection_read will return
-  > RUSTLS_RESULT_UNEXPECTED_EOF once the available plaintext bytes are
-  > exhausted. This is useful to protect against truncation attacks. Note:
-  > some TLS implementations don't send close_notify. If you are already
-  > getting length information from your protocol (e.g. Content-Length in
-  > HTTP) you may choose to ignore UNEXPECTED_EOF so long as the number of
-  > plaintext bytes was as expected.
-  
-  That means we don't need to check for unclean EOF in `cr_recv()`,
-  because `process_new_packets()` will give us an error if appropriate.
-  
-  Closes #8003
-
-- lib1939: make it endure torture tests
-  
-  Follow-up to f0b7099a10d1a
-  
-  Closes #8007
-
-- azure: make the "w/o HTTP/SMTP/IMAP" build disable SSL proper
-  
-  The configure line would previously depend on a configure mistake using
-  --without-openssl that is fixed and now this configure line needs
-  adjusting to use --without-ssl.
-  
-  Follow-up to b589696f0312d
-  
-  Closes #8006
-
-- [Jacob Hoffman-Andrews brought this change]
-
-  configure: add -lm to configure for rustls build.
-  
-  Note: The list of libraries that rustc tells us we need to include is
-  longer, but also includes some more platform-specific libraries that I
-  am not sure how to effectively incorporate. Adding just -lm seems to
-  solve an immediate problem, so I'm adding just that.
-  
-  Closes #8002
-
-- curl_share_setopt.3: refer to CURLSHOPT_USERDATA(3) properly
-
-- curl_share_setopt.3: split out options into their own manpages
-  
-  CURLSHOPT_LOCKFUNC.3
-  CURLSHOPT_SHARE.3
-  CURLSHOPT_UNLOCKFUNC.3
-  CURLSHOPT_UNSHARE.3
-  CURLSHOPT_USERDATA.3
-  
-  Closes #7998
-
-- http_proxy: make Curl_connect_done() work for proxy disabled builds
-  
-  ... by making it an empty macro then.
-  
-  Follow-up to f0b7099a10d1a
-  Reported-by: Vincent Grande
-  Fixes #7995
-  Closes #7996
-
-- Curl_connect_done: handle being called twice
-  
-  Follow-up to f0b7099a10d1a7c
-  
-  When torture testing 1021, it turns out the Curl_connect_done function
-  might be called twice and that previously then wrongly cleared the HTTP
-  pointer in the second invoke.
-  
-  Closes #7999
-
-- [Stan Hu brought this change]
-
-  configure: don't enable TLS when --without-* flags are used
-  
-  Previously specifying `--without-gnutls` would unexpectedly attempt to
-  compile with GnuTLS, effectively interpreting this as
-  `--with-gnutls`. This caused a significant amount of confusion when
-  `libcurl` was built with SSL disabled since GnuTLS wasn't present.
-  
-  68d89f24 dropped the `--without-*` options from the configure help, but
-  `AC_ARG_WITH` still defines these flags automatically. As
-  https://www.gnu.org/software/autoconf/manual/autoconf-2.60/html_node/External-Software.html
-  describes, the `action-if-given` is called when the user specifies
-  `--with-*` or `--without-*` options.
-  
-  To prevent this confusion, we make the `--without` flag do the right
-  thing by ignoring the value if it set to "no".
-  
-  Closes #7994
-
-- [Rikard Falkeborn brought this change]
-
-  docs/checksrc: Add documentation for STRERROR
-  
-  Closes #7991
-
-- vtls/rustls: adapt to the updated rustls_version proto
-  
-  Closes #7956
-
-- [Kevin Burke brought this change]
-
-  vtls/rustls: handle RUSTLS_RESULT_PLAINTEXT_EMPTY
-  
-  Previously we'd return CURLE_READ_ERROR if we received this, instead
-  of triggering the error handling logic that's present in the next if
-  block down.
-  
-  After this change, curl requests to https://go.googlesource.com using
-  HTTP/2 complete successfully.
-  
-  Fixes #7949
-  Closes #7948
-
-- [Kevin Burke brought this change]
-
-  zuul: update build environment for rustls-ffi 0.8.0
-
-- [Kevin Burke brought this change]
-
-  vtls/rustls: update to compile with rustls-ffi v0.8.0
-  
-  Some method names, as well as the generated library name, were changed
-  in a recent refactoring.
-  
-  Further, change the default configuration instructions to check for
-  Hyper in either "target/debug" or "target/release" - the latter
-  contains an optimized build configuration.
-  
-  Fixes #7947
-  Closes #7948
-
-- RELEASE-NOTES: synced
-  
-  and bump the version to 7.80.1
-
-- multi: shut down CONNECT in Curl_detach_connnection
-  
-  ... to prevent a lingering pointer that would lead to a double-free.
-  
-  Added test 1939 to verify.
-  
-  Reported-by: Stephen M. Coakley
-  Fixes #7982
-  Closes #7986
-
-- curl_easy_cleanup.3: remove from multi handle first
-  
-  Easy handles that are used by the multi interface should be removed from
-  the multi handle before they are cleaned up.
-  
-  Reported-by: Stephen M. Coakley
-  Ref: #7982
-  Closes #7983
-
-- url.c: fix the SIGPIPE comment for Curl_close
-  
-  Closes #7984
-
-Version 7.80.0 (10 Nov 2021)
-
-Daniel Stenberg (10 Nov 2021)
-- RELEASE-NOTES: synced
-  
-  for curl 7.80.0
-
-- THANKS: add contributors from the 7.80.0 cycle
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: advertise h3 as well as h3-29
-  
-  Advertise h3 as well as h3-29 since some servers out there require h3
-  for QUIC v1.
-  
-  Closes #7979
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: use QUIC v1 consistently
-  
-  Since we switched to v1 quic_transport_parameters codepoint in #7960
-  with quictls, lets use QUIC v1 consistently.
-  
-  Closes #7979
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: compile with the latest nghttp3
-  
-  Closes #7978
-
-Marc Hoersken (9 Nov 2021)
-- tests: add Schannel-specific tests and disable unsupported ones
-  
-  Adds Schannel variants of SSLpinning tests that include the option
-  --ssl-revoke-best-effort to ignore certificate revocation check
-  failures which is required due to our custom test CA certificate.
-  
-  Disable the original variants if the Schannel backend is enabled.
-  
-  Also skip all IDN tests which are broken while using an msys shell.
-  
-  This is a step to simplify test exclusions for Windows and MinGW.
-  
-  Reviewed-by: Jay Satiro
-  Reviewed-by: Marcel Raad
-  Reviewed-by: Daniel Stenberg
-  Closes #7968
-
-Daniel Stenberg (8 Nov 2021)
-- docs: NAME fixes in easy option man pages
-  
-  Closes #7975
-
-- [Roger Young brought this change]
-
-  ftp: make the MKD retry to retry once per directory
-  
-  Reported-by: Roger Young
-  Fixes #7967
-  Closes #7976
-
-- tool_operate: reorder code to avoid compiler warning
-  
-  tool_operate.c(889) : warning C4701: potentially uninitialized local
-  variable 'per' use
-  
-  Follow-up to cc71d352651a0d95
-  Reported-by: Marc Hörsken
-  Bug: https://github.com/curl/curl/pull/7922#issuecomment-963042676
-  Closes #7971
-
-- curl_easy_perform.3: add a para about recv and send data
-  
-  Reported-by: Godwin Stewart
-  Fixes #7973
-  Closes #7974
-
-- tool_operate: fclose stream only if fopened
-  
-  Fixes torture test failures
-  Follow-up to cc71d352651
-  
-  Closes #7972
-
-- libcurl-easy.3: language polish
-
-- limit-rate.d: this is average over several seconds
-  
-  Closes #7970
-
-- docs: reduce/avoid English contractions
-  
-  You're => You are
-  Hasn't => Has not
-  Doesn't => Does not
-  Don't => Do not
-  You'll => You will
-  etc
-  
-  Closes #7930
-
-- tool_operate: fix torture leaks with etags
-  
-  Spotted by torture testing 343 344 345 347.
-  
-  Follow-up from cc71d352651a0
-  Pointed-out-by: Dan Fandrich
-  
-  Closes #7969
-
-- [Amaury Denoyelle brought this change]
-
-  ngtcp2: support latest QUIC TLS RFC9001
-  
-  QUIC Transport Parameters Extension has been changed between draft-29
-  and latest RFC9001. Most notably, its identifier has been updated from
-  0xffa5 to 0x0039. The version is selected through the QUIC TLS library
-  via the legacy codepoint.
-  
-  Disable the usage of legacy codepoint in curl to switch to latest
-  RFC9001. This is required to be able to keep up with latest QUIC
-  implementations.
-  
-  Acked-by: Tatsuhiro Tsujikawa
-  Closes #7960
-
-- test1173: make manpage-syntax.pl spot \n errors in examples
-
-- man pages: fix backslash-n in examples
-  
-  ... to be proper backslash-backslash-n sequences to render nicely in man
-  and on website.
-  
-  Follow-up to 24155569d8a
-  Reported-by: Sergey Markelov
-  
-  Fixes https://github.com/curl/curl-www/issues/163
-  Closes #7962
-
-- scripts/release-notes.pl: use out of repo links verbatim in refs
-
-- tool_operate: a failed etag save now only fails that transfer
-  
-  When failing to create the output file for saving an etag, only fail
-  that particular single transfer and allow others to follow.
-  
-  In a serial transfer setup, if no transfer at all is done due to them
-  all being skipped because of this error, curl will output an error
-  message and return exit code 26.
-  
-  Added test 369 and 370 to verify.
-  
-  Reported-by: Earnestly on github
-  Ref: #7942
-  Closes #7945
-
-- [Kevin Burke brought this change]
-
-  .github: retry macos "brew install" command on failure
-  
-  Previously we saw errors attempting to run "brew install", see
-  https://github.com/curl/curl/runs/4095721123?check_suite_focus=true for
-  an example, since this command is idempotent, it is safe to run again.
-  
-  Closes #7955
-
-- CURLOPT_ALTSVC_CTRL.3: mention conn reuse is preferred
-  
-  Ref: https://github.com/curl/curl/discussions/7954
-  
-  Closes #7957
-
-- RELEASE-NOTES: synced
-
-- zuul: pin the quiche build to use an older cmake-rs
-  
-  The latest cmake-rs assumes cmake's --parallel works. That was added in
-  cmake 3.12, but a lot of our CI builds run on Ubuntu Bionic which only
-  has cmake 3.10.
-  
-  Fixes #7927
-  Closes #7952
-
-- [Marc Hoersken brought this change]
-
-  Revert "src/tool_filetime: disable -Wformat on mingw for this file"
-  
-  This reverts commit 7c88fe375b15c44d77bccc9ab733b8069d228e6f.
-  
-  Follow up to #6535 as the pragma is obsolete with warnf
-  
-  Closes #7941
-
-Jay Satiro (2 Nov 2021)
-- schannel: fix memory leak due to failed SSL connection
-  
-  - Call schannel_shutdown if the SSL connection fails.
-  
-  Prior to this change schannel_shutdown (which shuts down the SSL
-  connection as well as memory cleanup) was not called when the SSL
-  connection failed (eg due to failed handshake).
-  
-  Co-authored-by: Gisle Vanem
-  
-  Fixes https://github.com/curl/curl/issues/7877
-  Closes https://github.com/curl/curl/pull/7878
-
-Daniel Stenberg (2 Nov 2021)
-- Curl_updateconninfo: store addresses for QUIC connections too
-  
-  So that CURLINFO_PRIMARY_IP etc work for HTTP/3 like for other HTTP
-  versions.
-  
-  Reported-by: Jerome Mao
-  Fixes #7939
-  Closes #7944
-
-- [Sergio Durigan Junior brought this change]
-
-  curl.1: fix typos in the manpage
-  
-  s/transfering/transferring/
-  s/transfered/transferred/
-  
-  Signed-off-by: Sergio Durigan Junior <sergiodj@sergiodj.net>
-  Closes #7937
-
-Marc Hoersken (1 Nov 2021)
-- tests/smbserver.py: fix compatibility with impacket 0.9.23+
-  
-  impacket now performs sanity checks if the requested and to
-  be served file path actually is inside the real share path.
-  
-  Ref: https://github.com/SecureAuthCorp/impacket/pull/1066
-  
-  Fixes #7924
-  Closes #7935
-
-Daniel Stenberg (1 Nov 2021)
-- docs: reduce use of "very"
-  
-  "Very" should be avoided in most texts. If intensifiers are needed, try
-  find better words instead.
-  
-  Closes #7936
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: specify the missing required callback functions
-  
-  Closes #7929
-
-- CURLOPT_[PROXY]_SSL_CIPHER_LIST.3: bold instead of quote
-  
-  Bold the example ciphers instead of using single quotes, which then also
-  avoids the problem of how to use single quotes when first in a line.
-  
-  Also rephrased the pages a little.
-  
-  Reported-by: Sergio Durigan Junior
-  Ref: #7928
-  Closes #7934
-
-- gen.pl: replace leading single quotes with \(aq
-  
-  ... and allow single quotes to be used "normally" in the .d files.
-  
-  Makes the output curl.1 use better nroff.
-  
-  Reported-by: Sergio Durigan Junior
-  Ref: #7928
-  Closes #7933
-
-Marc Hoersken (1 Nov 2021)
-- tests: kill some test servers afterwards to avoid locked logfiles
-  
-  Reviewed-by: Daniel Stenberg
-  Closes #7925
-
-Daniel Stenberg (1 Nov 2021)
-- smooth-gtk-thread.c: enhance the mutex lock use
-  
-  Reported-by: ryancaicse on github
-  Fixes #7926
-  Closes #7931
-
-Marc Hoersken (31 Oct 2021)
-- CI/runtests.pl: restore -u flag, but remove it from CI runs
-  
-  This makes it possible to use -u again for local testing,
-  but removes the flag from CI config files and make targets.
-  
-  Reviewed-by: Daniel Stenberg
-  
-  Partially reverts #7841
-  Closes #7921
-
-Daniel Stenberg (29 Oct 2021)
-- [Jonathan Cardoso Machado brought this change]
-
-  CURLOPT_HSTSWRITEFUNCTION.3: using CURLOPT_HSTS_CTRL is required
-  
-  Closes #7923
-
-- [Axel Morawietz brought this change]
-
-  imap: display quota information
-  
-  Show response to "GETQUOTAROOT INBOX" command.
-  
-  Closes #6973
-
-- RELEASE-NOTES: synced
-
-- [Boris Rasin brought this change]
-
-  cmake: fix error getting LOCATION property on non-imported target
-  
-  Closes #7885
-
-- [Xiaoke Wang brought this change]
-
-  url: check the return value of curl_url()
-  
-  Closes #7917
-
-- [Roy Li brought this change]
-
-  configure.ac: replace krb5-config with pkg-config
-  
-  The rationale is that custom *-config tools don't work well when
-  cross-compiling or using sysroots (such as when using Yocto project) and
-  require custom fixing for each of them; pkg-config on the other hand
-  works similarly everywhere.
-  
-  Signed-off-by: Roy Li <rongqing.li@windriver.com>
-  Signed-off-by: Alexander Kanavin <alex@linutronix.de>
-  
-  Closes #7916
-
-- test1160: edited to work with hyper
-  
-  Closes #7912
-
-- data/DISABLED: enable tests that now work with hyper
-  
-  Closes #7911
-
-- test559: add 'HTTP' in keywords
-  
-  Makes it run fine with hyper
-  
-  Closes #7911
-
-- test552: updated to work with hyper
-  
-  Closes #7911
-
-Marc Hoersken (27 Oct 2021)
-- github: fix incomplete permission to label PRs for Hacktoberfest
-  
-  Unfortunately the GitHub API requires a token with write permission
-  for both issues and pull-requests to edit labels on even just PRs.
-  
-  Follow up to #7897
-
-Daniel Stenberg (27 Oct 2021)
-- opt-manpages: use 'Added in' instead of 'Since'
-  
-  Closes #7913
-
-Marc Hoersken (27 Oct 2021)
-- github: fix missing permission to label PRs for Hacktoberfest
-  
-  Follow up to #7897
-  
-  Test references to see if permissions are now sufficient:
-  
-  Closes #7832
-  Closes #7897
-
-- CI: more use of test-ci make target and verbose output
-  
-  Replace test-nonflaky with test-ci and enable verbose output
-  in all remaining CIs except Zuul which is customized a lot.
-  
-  Reviewed-by: Daniel Stenberg
-  Reviewed-by: Jay Satiro
-  
-  Follow up to #7785
-  Closes #7832
-
-- github: add support for Hacktoberfest using labels
-  
-  Automatically add hacktoberfest-accepted label to PRs opened between
-  September 30th and November 1st once a commit with a close reference
-  to it is pushed onto the master branch.
-  
-  With this workflow we can participate in Hacktoberfest while not
-  relying on GitHub to identify PRs as merged due to our rebasing.
-  
-  Requires hacktoberfest-accepted labels to exist for PRs on the
-  participating repository. Also requires hacktoberfest topic on
-  the participating repository to avoid applying to forked repos.
-  
-  Reviewed-by: Daniel Stenberg
-  
-  Fixes #7865
-  Closes #7897
-
-Daniel Stenberg (27 Oct 2021)
-- http: reject HTTP response codes < 100
-  
-  ... which then also includes negative ones as test 1430 uses.
-  
-  This makes native + hyper backend act identically on this and therefore
-  test 1430 can now be enabled when building with hyper. Adjust test 1431
-  as well.
-  
-  Closes #7909
-
-- [Kerem Kat brought this change]
-
-  docs: fix typo in CURLOPT_TRAILERFUNCTION example
-  
-  Closes #7910
-
-- docs/HYPER: remove some remaining issues, add HTTP/0.9 limitation
-
-- configure: when hyper is selected, deselect nghttp2
-  
-  Closes #7908
-
-- [Patrick Monnerat brought this change]
-
-  sendf: accept zero-length data in Curl_client_write()
-  
-  Historically, Curl_client_write() used a length value of 0 as a marker
-  for a null-terminated data string. This feature has been removed in
-  commit f4b85d2. To detect leftover uses of the feature, a DEBUGASSERT
-  statement rejecting a length with value 0 was introduced, effectively
-  precluding use of this function with zero-length data.
-  
-  The current commit removes the DEBUGASSERT and makes the function to
-  return immediately if length is 0.
-  
-  A direct effect is to fix trying to output a zero-length distinguished
-  name in openldap.
-  
-  Another DEBUGASSERT statement is also rephrased for better readability.
-  
-  Closes #7898
-
-- hyper: disable test 1294 since hyper doesn't allow such crazy headers
-  
-  Closes #7905
-
-- c-hyper: make CURLOPT_SUPPRESS_CONNECT_HEADERS work
-  
-  Verified by the enabled test 1288
-  
-  Closes #7905
-
-- test1287: make work on hyper
-  
-  Closes #7905
-
-- test1266/1267: disabled on hyper: no HTTP/0.9 support
-  
-  Closes #7905
-
-Viktor Szakats (25 Oct 2021)
-- Makefile.m32: fix to not require OpenSSL with -libssh2 or -rtmp options
-  
-  Previously, -libssh2/-rtmp options assumed that OpenSSL is also enabled
-  (and then failed with an error when not finding expected OpenSSL headers),
-  but this isn't necessarly true, e.g. when building both libssh2 and curl
-  against Schannel. This patch makes sure to only enable the OpenSSL backend
-  with -libssh2/-rtmp, when there was no SSL option explicitly selected.
-  
-  - Re-implement the logic as a single block of script.
-  - Also fix an indentation while there.
-  
-  Assisted-by: Jay Satiro
-  
-  Closes #7895
-
-Daniel Stenberg (25 Oct 2021)
-- docs: consistent use of "Added in"
-  
-  Make them all say "Added in [version]" without using 'curl' or 'libcurl'
-  in that phrase.
-
-- man pages: require all to use the same section header order
-  
-  This is the same order we already enforce among the options' man pages:
-  consistency is good. Add lots of previously missing examples.
-  
-  Adjust the manpage-syntax script for this purpose, used in test 1173.
-  
-  Closes #7904
-
-- [David Hu brought this change]
-
-  docs/HTTP3: improve build instructions
-  
-  1. If writing to a system path if the command is not prefixed with
-  `sudo` it will cause a permission denied error
-  
-  2. The patched OpenSSL branch has been updated to `openssl-3.0.0+quic`
-  to match upstream OpenSSL version.
-  
-  3. We should not disable GnuTLS docs.
-  
-  Updated some commands about `make install`
-  
-  Closes #7842
-
-- [Ricardo Martins brought this change]
-
-  CMake: restore support for SecureTransport on iOS
-  
-  Restore support for building curl for iOS with SecureTransport enabled.
-  
-  Closes #7501
-
-- tests: enable more tests with hyper
-  
-  Adjusted 1144, 1164 and 1176.
-  
-  Closes #7900
-
-- docs: provide "RETURN VALUE" section for more func manpages
-  
-  Three were missing, one used a non-standard name for the header.
-  
-  Closes #7902
-
-Jay Satiro (25 Oct 2021)
-- curl_multi_socket_action.3: add a "RETURN VALUE" section
-  
-  .. because it may not be immediately clear to the user what
-  curl_multi_socket_action returns.
-  
-  Ref: https://curl.se/mail/lib-2021-10/0035.html
-  
-  Closes https://github.com/curl/curl/pull/7901
-
-Daniel Stenberg (24 Oct 2021)
-- RELEASE-NOTES: synced
-
-- [Samuel Henrique brought this change]
-
-  tests: use python3 in test 1451
-  
-  This is a continuation of commit ec91b5a69000bea0794bbb3 in which
-  changing this test was missed.  There are no other python2 leftovers
-  now.
-  
-  Based on a Debian patch originally written by Alessandro Ghedini
-  <ghedo@debian.org>
-  
-  Closes #7899
-
-- [Eddie Lumpkin brought this change]
-
-  lib: fixing comment spelling typos in lib files
-  
-  Closes #7894
-  Signed-off-by: ewlumpkin <ewlumpkin@gmail.com>
-
-- openssl: if verifypeer is not requested, skip the CA loading
-  
-  It was previously done mostly to show a match/non-match in the verbose
-  output even when verification was not asked for. This change skips the
-  loading of the CA certs unless verifypeer is set to save memory and CPU.
-  
-  Closes #7892
-
-- curl-confopts.m4:  remove --enable/disable-hidden-symbols
-  
-  These configure options have been saying "deprecated" since 9e24b9c7af
-  (April 2012). It was about time we remove them.
-  
-  Closes #7891
-
-- c-hyper: don't abort CONNECT responses early when auth-in-progress
-  
-  ... and make sure to stop ignoring the body once the CONNECT is done.
-  
-  This should make test 206 work proper again and not be flaky.
-  
-  Closes #7889
-
-- hyper: does not support disabling CURLOPT_HTTP_TRANSFER_DECODING
-  
-  Simply because hyper doesn't have this ability. Mentioned in docs now.
-  
-  Skip test 326 then
-  
-  Closes #7889
-
-- test262: don't attempt with hyper
-  
-  This test verifies that curl works with binary zeroes in HTTP response
-  headers and hyper refuses such. They're not kosher http.
-  
-  Closes #7889
-
-- c-hyper: make test 217 run
-  
-  Closes #7889
-
-- DISABLED: enable test 209+213 for hyper
-  
-  Follow-up to 823d3ab855c
-  
-  Closes #7889
-
-- test207: accept a different error code for hyper
-  
-  It returns HYPERE_UNEXPECTED_EOF for this case which we convert to the
-  somewhat generic CURLE_RECV_ERROR.
-  
-  Closes #7889
-
-- [Érico Nogueira brought this change]
-
-  INSTALL: update symbol hiding option
-  
-  --enable-hidden-symbols was deprecated in
-  9e24b9c7afbcb81120af4cf3f6cdee49a06d8224.
-  
-  Closes #7890
-
-- http_proxy: multiple CONNECT with hyper done better
-  
-  Enabled test 206
-  
-  Closes #7888
-
-- hyper: pass the CONNECT line to the debug callback
-  
-  Closes #7887
-
-- mailmap: Malik Idrees Hasan Khan
-
-Jay Satiro (21 Oct 2021)
-- [Malik Idrees Hasan Khan brought this change]
-
-  build: fix typos
-  
-  Closes https://github.com/curl/curl/pull/7886
-
-- URL-SYNTAX: add IMAP UID SEARCH example
-  
-  - Explain the difference between IMAP search via URL (which returns
-    message sequence numbers) and IMAP search via custom request (which
-    can return UID numbers if prefixed with UID, eg "UID SEARCH ...").
-  
-  Bug: https://github.com/curl/curl/issues/7626
-  Reported-by: orycho@users.noreply.github.com
-  
-  Ref: https://github.com/curl/curl/issues/2789
-  
-  Closes https://github.com/curl/curl/pull/7881
-
-Daniel Stenberg (20 Oct 2021)
-- manpage: adjust the asterisk in some SYNOPSIS sections
-  
-  Closes #7884
-
-- curl_multi_perform.3: polish wording
-  
-   - simplify the example by using curl_multi_poll
-  
-   - mention curl_multi_add_handle in the text
-  
-   - cut out the description of pre-7.20.0 return code behavior - that version
-     is now more than eleven years old and is basically no longer out there
-  
-   - adjust the "typical usage" to mention curl_multi_poll
-  
-  Closes #7883
-
-- docs/THANKS: removed on request
-
-- FAQ: polish the explanation of libcurl
-
-- curl_easy_perform.3: minor wording tweak
-
-- [Erik Stenlund brought this change]
-
-  mime: mention CURL_DISABLE_MIME in comment
-  
-  CURL_DISABLE_MIME is not mentioned in the comment describing the if else
-  preprocessor directive.
-  
-  Closes #7882
-
-- tls: remove newline from three infof() calls
-  
-  Follow-up to e7416cf
-  
-  Reported-by: billionai on github
-  Fixes #7879
-  Closes #7880
-
-- RELEASE-NOTES: synced
-
-- curl_gssapi: fix build warnings by removing const
-  
-  Follow-up to 20e980f85b0ea6
-  
-  In #7875 these inits were modified but I get two warnings that these new
-  typecasts are necessary for.
-  
-  Closes #7876
-
-- [Bo Anderson brought this change]
-
-  curl_gssapi: fix link error on macOS Monterey
-  
-  Fixes #7657
-  Closes #7875
-
-- test1185: verify checksrc
-  
-  Closes #7866
-
-- checksrc: improve the SPACESEMICOLON error message
-  
-  and adjust the MULTISPACE one to use plural
-  
-  Closes #7866
-
-- url: set "k->size" -1 at start of request
-  
-  The size of the transfer is unknown at that point.
-  
-  Fixes #7871
-  Closes #7872
-
-Daniel Gustafsson (18 Oct 2021)
-- doh: remove experimental code for DoH with GET
-  
-  The code for sending DoH requests with GET was never enabled in a way
-  such that it could be used or tested. As there haven't been requests
-  for this feature, and since it at this is effectively dead, remove it
-  and favor reimplementing the feature in case anyone is interested.
-  
-  Closes #7870
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (18 Oct 2021)
-- cirrus: remove FreeBSD 11.4 from the matrix
-  
-  It has reached End-Of-Life and causes some LDAP CI issues.
-  
-  Closes #7869
-
-- cirrus: switch to openldap24-client
-  
-  ... as it seems openldap-client doesn't exist anymore.
-  
-  Reported-by: Jay Satiro
-  Fixes #7868
-  Closes #7869
-
-- checksrc: ignore preprocessor lines
-  
-  In order to check the actual code better, checksrc now ignores
-  everything that look like preprocessor instructions. It also means
-  that code in macros are now longer checked.
-  
-  Note that some rules then still don't need to be followed when code is
-  exactly below a cpp instruction.
-  
-  Removes two checksrc exceptions we needed previously because of
-  preprocessor lines being checked.
-  
-  Reported-by: Marcel Raad
-  Fixes #7863
-  Closes #7864
-
-- urlapi: skip a strlen(), pass in zero
-  
-  ... to let curl_easy_escape() itself do the strlen. This avoids a (false
-  positive) Coverity warning and it avoids us having to store the strlen()
-  return value in an int variable.
-  
-  Reviewed-by: Daniel Gustafsson
-  Closes #7862
-
-- misc: update copyright years
-
-- examples/htmltidy: correct wrong printf() use
-  
-  ... and update the includes to match how current htmltidy wants them
-  used.
-  
-  Reported-by: Stathis Kapnidis
-  Fixes #7860
-  Closes #7861
-
-Jay Satiro (15 Oct 2021)
-- http: set content length earlier
-  
-  - Make content length (ie download size) accessible to the user in the
-    header callback, but only after all headers have been processed (ie
-    only in the final call to the header callback).
-  
-  Background:
-  
-  For a long time the content length could be retrieved in the header
-  callback via CURLINFO_CONTENT_LENGTH_DOWNLOAD_T as soon as it was parsed
-  by curl.
-  
-  Changes were made in 8a16e54 (precedes 7.79.0) to ignore content length
-  if any transfer encoding is used. A side effect of that was that
-  content length was not set by libcurl until after the header callback
-  was called the final time, because until all headers are processed it
-  cannot be determined if content length is valid.
-  
-  This change keeps the same intention --all headers must be processed--
-  but now the content length is available before the final call to the
-  header function that indicates all headers have been processed (ie
-  a blank header).
-  
-  Bug: https://github.com/curl/curl/commit/8a16e54#r57374914
-  Reported-by: sergio-nsk@users.noreply.github.com
-  
-  Co-authored-by: Daniel Stenberg
-  
-  Fixes https://github.com/curl/curl/issues/7804
-  Closes https://github.com/curl/curl/pull/7803
-
-Daniel Stenberg (15 Oct 2021)
-- [Abhinav Singh brought this change]
-
-  aws-sigv4: make signature work when post data is binary
-  
-  User sets the post fields size for binary data.  Hence, we should not be
-  using strlen on it.
-  
-  Added test 1937 and 1938 to verify.
-  
-  Closes #7844
-
-- [a1346054 brought this change]
-
-  MacOSX-Framework: remove redundant ';'
-  
-  Closes #7859
-
-- RELEASE-NOTES: synced
-
-- openssl: with OpenSSL 1.1.0+ a failed RAND_status means goaway
-  
-  One reason we know it can fail is if a provider is used that doesn't do
-  a proper job or is wrongly configured.
-  
-  Reported-by: Michael Baentsch
-  Fixes #7840
-  Closes #7856
-
-Marcel Raad (14 Oct 2021)
-- [Ryan Mast brought this change]
-
-  cmake: add CURL_ENABLE_SSL option and make CMAKE_USE_* SSL backend options depend on it
-  
-  Closes https://github.com/curl/curl/pull/7822
-
-Daniel Stenberg (14 Oct 2021)
-- http: remove assert that breaks hyper
-  
-  Reported-by: Jay Satiro
-  Fixes #7852
-  Closes #7855
-
-- http_proxy: fix one more result assign for hyper
-  
-  and remove the bad assert again, since it was run even with no error!
-  
-  Closes #7854
-
-Jay Satiro (14 Oct 2021)
-- sws: fix memory leak on exit
-  
-  - Free the allocated http request struct on cleanup.
-  
-  Prior to this change if sws was built with leak sanitizer it would
-  report a memory leak error during testing.
-  
-  Closes https://github.com/curl/curl/pull/7849
-
-Daniel Stenberg (14 Oct 2021)
-- c-hyper: make Curl_http propagate errors better
-  
-  Pass on better return codes when errors occur within Curl_http instead
-  of insisting that CURLE_OUT_OF_MEMORY is the only possible one.
-  
-  Pointed-out-by: Jay Satiro
-  Closes #7851
-
-- http_proxy: make hyper CONNECT() return the correct error code
-  
-  For every 'goto error', make sure the result variable holds the error
-  code for what went wrong.
-  
-  Reported-by: Rafał Mikrut
-  Fixes #7825
-  Closes #7846
-
-- docs/Makefile.am: repair 'make html'
-  
-  by removing index.html which isn't around anymore
-  
-  Closes #7853
-
-- [Борис Верховский brought this change]
-
-  curl: correct grammar in generated libcurl code
-  
-  Closes #7802
-
-- tests: disable test 2043
-  
-  It uses revoked.badssl.com which now is expired and therefor this now
-  permafails. We should not use external sites for tests, this test should
-  be converted to use our own infra.
-  
-  Closes #7845
-
-- runtests: split out ignored tests
-  
-  Report ignore tests separately from the actual fails.
-  
-  Don't exit non-zero if test servers couldn't get killed.
-  
-  Assisted-by: Jay Satiro
-  
-  Fixes #7818
-  Closes #7841
-
-- http2: make getsock not wait for write if there's no remote window
-  
-  While uploading, check for remote window availability in the getsock
-  function so that we don't wait for a writable socket if no data can be
-  sent.
-  
-  Reported-by: Steini2000 on github
-  Fixes #7821
-  Closes #7839
-
-- test368: verify dash is appended for "-r [num]"
-  
-  Follow-up to 8758a26f8878
-
-- [Борис Верховский brought this change]
-
-  curl: actually append "-" to --range without number only
-  
-  Closes #7837
-
-- RELEASE-NOTES: synced
-
-- urlapi: URL decode percent-encoded host names
-  
-  The host name is stored decoded and can be encoded when used to extract
-  the full URL. By default when extracting the URL, the host name will not
-  be URL encoded to work as similar as possible as before. When not URL
-  encoding the host name, the '%' character will however still be encoded.
-  
-  Getting the URL with the CURLU_URLENCODE flag set will percent encode
-  the host name part.
-  
-  As a bonus, setting the host name part with curl_url_set() no longer
-  accepts a name that contains space, CR or LF.
-  
-  Test 1560 has been extended to verify percent encodings.
-  
-  Reported-by: Noam Moshe
-  Reported-by: Sharon Brizinov
-  Reported-by: Raul Onitza-Klugman
-  Reported-by: Kirill Efimov
-  Fixes #7830
-  Closes #7834
-
-Marc Hoersken (8 Oct 2021)
-- CI/makefiles: introduce dedicated test target
-  
-  Make it easy to use the same set of test flags
-  throughout all current and future CI builds.
-  
-  Reviewed-by: Jay Satiro
-  
-  Follow up to #7690
-  Closes #7785
-
-Daniel Stenberg (8 Oct 2021)
-- maketgz: redirect updatemanpages.pl output to /dev/null
-
-- CURLOPT_HTTPHEADER.3: add descripion for specific headers
-  
-  Settting Host: or Transfer-Encoding: chunked actually have special
-  meanings to libcurl. This change tries to document them
-  
-  Closes #7829
-
-- c-hyper: use hyper_request_set_uri_parts to make h2 better
-  
-  and make sure to not send Host: over h2.
-  
-  Fixes #7679
-  Reported-by: David Cook
-  Closes #7827
-
-- [Michael Afanasiev brought this change]
-
-  curl-openssl.m4: modify library order for openssl linking
-  
-  lcrypto may depend on lz, and configure corrently fails with when
-  statically linking as the order is "-lz -lcrypto". This commit switches
-  the order to "-lcrypto -lz".
-  
-  Closes #7826
-
-Marcel Raad (7 Oct 2021)
-- sha256: use high-level EVP interface for OpenSSL
-  
-  Available since OpenSSL 0.9.7. The low-level SHA256 interface is
-  deprecated in OpenSSL v3, and its usage was discouraged even before.
-  
-  Closes https://github.com/curl/curl/pull/7808
-
-- curl_ntlm_core: use OpenSSL only if DES is available
-  
-  This selects another SSL backend then if available, or otherwise at
-  least gives a meaningful error message.
-  
-  Closes https://github.com/curl/curl/pull/7808
-
-- md5: fix compilation with OpenSSL 3.0 API
-  
-  Only use OpenSSL's MD5 code if it's available.
-  
-  Also fix wolfSSL build with `NO_MD5`, in which case neither the
-  wolfSSL/OpenSSL implementation nor the fallback implementation was
-  used.
-  
-  Closes https://github.com/curl/curl/pull/7808
-
-Daniel Stenberg (7 Oct 2021)
-- print_category: printf %*s needs an int argument
-  
-  ... not a size_t!
-  
-  Detected by Coverity: CID 1492331.
-  Closes #7823
-
-Jay Satiro (7 Oct 2021)
-- version_win32: use actual version instead of manifested version
-  
-  - Use RtlVerifyVersionInfo instead of VerifyVersionInfo, when possible.
-  
-  Later versions of Windows have normal version functions that compare and
-  return versions based on the way the application is manifested, instead
-  of the actual version of Windows the application is running on. We
-  prefer the actual version of Windows so we'll now call the Rtl variant
-  of version functions (RtlVerifyVersionInfo) which does a proper
-  comparison of the actual version.
-  
-  Reported-by: Wyatt O'Day
-  
-  Ref: https://github.com/curl/curl/pull/7727
-  
-  Fixes https://github.com/curl/curl/issues/7742
-  Closes https://github.com/curl/curl/pull/7810
-
-Daniel Stenberg (6 Oct 2021)
-- RELEASE-NOTES: synced
-
-- http: fix Basic auth with empty name field in URL
-  
-  Add test 367 to verify.
-  
-  Reported-by: Rick Lane
-  Fixes #7819
-  Closes #7820
-
-- [Jeffrey Tolar brought this change]
-
-  CURLOPT_MAXLIFETIME_CONN: maximum allowed lifetime for conn reuse
-  
-  ... and close connections that are too old instead of reusing them.
-  
-  By default, this behavior is disabled.
-  
-  Bug: https://curl.se/mail/lib-2021-09/0058.html
-  Closes #7751
-
-Daniel Gustafsson (6 Oct 2021)
-- docs/examples: add missing binaries to gitignore
-  
-  Commit f65d7889b added getreferrer, and commit ae8e11ed5 multi-legacy,
-  both of which missed adding .gitignore clauses for the built binaries.
-  
-  Closes #7817
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (5 Oct 2021)
-- [Josip Medved brought this change]
-
-  HTTP3: fix the HTTP/3 Explained book link
-  
-  Closes #7813
-
-- [Lucas Holt brought this change]
-
-  misc: fix a few issues on MidnightBSD
-  
-  Closes #7812
-
-Daniel Gustafsson (4 Oct 2021)
-- [8U61ife brought this change]
-
-  tool_main: fix typo in comment
-  
-  Closes: #7811
-  Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
-
-Daniel Stenberg (4 Oct 2021)
-- [Ryan Mast brought this change]
-
-  BINDINGS: URL updates
-  
-  For cpr, BBHTTP, Eiffel, Harbour, Haskell, Mono, and Rust
-  
-  Closes #7809
-
-- scripts/delta: hide a git error message we don't care about
-  
-  fatal: path 'src/tool_listhelp.c' exists on disk, but not in [tag]
-
-- [Patrick Monnerat brought this change]
-
-  sasl: binary messages
-  
-  Capabilities of sasl module are extended to exchange messages in binary
-  as an alternative to base64.
-  
-  If http authentication flags have been set, those are used as sasl
-  default preferred mechanisms.
-  
-  Closes #6930
-
-- [Hayden Roche brought this change]
-
-  wolfssl: use for SHA256, MD4, MD5, and setting DES odd parity
-  
-  Prior to this commit, OpenSSL could be used for all these functions, but
-  not wolfSSL. This commit makes it so wolfSSL will be used if USE_WOLFSSL
-  is defined.
-  
-  Closes #7806
-
-- scripts/delta: count command line options in the new file
-  
-  ... which makes the shown delta number wrong until next release.
-
-- RELEASE-NOTES: synced
-
-- print_category: print help descriptions aligned
-  
-  Adjust the description position to make an aligned column when doing
-  help listings, which is more pleasing to the eye.
-  
-  Suggested-by: Gisle Vanem
-  Closes #7792
-
-- lib/mk-ca-bundle.pl: skip certs passed Not Valid After date
-  
-  With this change applied, the now expired 'DST Root CA X3' cert will no
-  longer be included in the output.
-  
-  Details: https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/
-  
-  Closes #7801
-
-- tool_listhelp: easier to generate with gen.pl
-  
-  tool_listhelp.c is now a separate file with only the command line --help
-  output, exactly as generated by gen.pl. This makes it easier to generate
-  updates according to what's in the docs/cmdline-opts docs.
-  
-    cd $srcroot/docs/cmdline-opts
-    ./gen.pl listhelp *.d > $srcroot/src/tool_listhelp.c
-  
-  With a configure build, this also works:
-  
-    make -C src listhelp
-  
-  Closes #7787
-
-- [Anthony Hu brought this change]
-
-  wolfssl: allow setting of groups/curves
-  
-  In particular, the quantum safe KEM and hybrid curves if wolfSSL is
-  built to support them.
-  
-  Closes #7728
-
-- [Jan Mazur brought this change]
-
-  connnect: use sysaddr_un fron sys/un.h or custom-defined for windows
-  
-  Closes #7737
-
-Jay Satiro (30 Sep 2021)
-- [Rikard Falkeborn brought this change]
-
-  hostip: Move allocation to clarify there is no memleak
-  
-  By just glancing at the code, it looks like there is a memleak if the
-  call to Curl_inet_pton() fails. Looking closer, it is clear that the
-  call to Curl_inet_pton() can not fail, so the code will never leak
-  memory. However, we can make this obvious by moving the allocation
-  after the if-statement.
-  
-  Closes https://github.com/curl/curl/pull/7796
-
-Daniel Stenberg (30 Sep 2021)
-- gen.pl: make the output date format work better
-  
-  Follow-up to 15910dfd143dd
-  
-  The previous strftime format used didn't work correctly on Windows, so
-  change to %B %d %Y which today looks like "September 29 2021".
-  
-  Reported-by: Gisle Vanem
-  Bug: #7782
-  Closes #7793
-
-- typecheck-gcc.h: add CURLOPT_PREREQDATA awareness
-  
-  Follow-up to a517378de58358a
-  
-  To make test 1912 happy again
-  
-  Closes #7799
-
-Marcel Raad (29 Sep 2021)
-- configure: remove `HAVE_WINSOCK_H` definition
-  
-  It's not used anymore.
-  
-  Closes https://github.com/curl/curl/pull/7795
-
-- CMake: remove `HAVE_WINSOCK_H` definition
-  
-  It's not used anymore.
-  
-  Closes https://github.com/curl/curl/pull/7795
-
-- config: remove `HAVE_WINSOCK_H` definition
-  
-  It's not used anymore.
-  
-  Closes https://github.com/curl/curl/pull/7795
-
-- lib: remove `HAVE_WINSOCK_H` usage
-  
-  WinSock v1 is not supported anymore. Exclusively use `HAVE_WINSOCK2_H`
-  instead.
-  
-  Closes https://github.com/curl/curl/pull/7795
-
-Daniel Stenberg (29 Sep 2021)
-- easyoptions: add the two new PRE* options
-  
-  Follow-up to a517378de58358a
-  
-  Also fix optiontable.pl to do the correct remainder on the entry.
-  
-  Reported-by: Gisle Vanem
-  Bug: https://github.com/curl/curl/commit/a517378de58358a85b7cfe9efecb56051268f629#commitcomment-57224830
-  Closes #7791
-
-- Revert "build: remove checks for WinSock 1"
-  
-  Due to CI issues
-  
-  This reverts commit c2ea04f92b00b6271627cb218647527b5a50f2fc.
-  
-  Closes #7790
-
-Daniel Gustafsson (29 Sep 2021)
-- lib: avoid fallthrough cases in switch statements
-  
-  Commit b5a434f7f0ee4d64857f8592eced5b9007d83620 inhibits the warning
-  on implicit fallthrough cases, since the current coding of indicating
-  fallthrough with comments is falling out of fashion with new compilers.
-  This attempts to make the issue smaller by rewriting fallthroughs to no
-  longer fallthrough, via either breaking the cases or turning switch
-  statements into if statements.
-  
-    lib/content_encoding.c: the fallthrough codepath is simply copied
-      into the case as it's a single line.
-    lib/http_ntlm.c: the fallthrough case skips a state in the state-
-      machine and fast-forwards to NTLMSTATE_LAST. Do this before the
-      switch statement instead to set up the states that we actually
-      want.
-    lib/http_proxy.c: the fallthrough is just falling into exiting the
-      switch statement which can be done easily enough in the case.
-    lib/mime.c: switch statement rewritten as if statement.
-    lib/pop3.c: the fallthrough case skips to the next state in the
-      statemachine, do this explicitly instead.
-    lib/urlapi.c: switch statement rewritten as if statement.
-    lib/vssh/wolfssh.c: the fallthrough cases fast-forwards the state
-      machine, do this by running another iteration of the switch
-      statement instead.
-    lib/vtls/gtls.c: switch statement rewritten as if statement.
-    lib/vtls/nss.c: the fallthrough codepath is simply copied into the
-      case as it's a single line. Also twiddle a comment to not be
-      inside a non-brace if statement.
-  
-  Closes: #7322
-  See-also: #7295
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Marcel Raad (28 Sep 2021)
-- config-win32ce: enable WinSock 2
-  
-  WinSock 2.2 is supported by Windows CE .NET 4.1 (from 2002, out of
-  support since 2013).
-  
-  Ref: https://docs.microsoft.com/en-us/previous-versions/windows/embedded/ms899586(v=msdn.10)
-  
-  Closes https://github.com/curl/curl/pull/7778
-
-- externalsocket: use WinSock 2.2
-  
-  That's the only version we support.
-  
-  Closes https://github.com/curl/curl/pull/7778
-
-- build: remove checks for WinSock 1
-  
-  It's not supported anymore.
-  
-  Closes https://github.com/curl/curl/pull/7778
-
-Daniel Stenberg (28 Sep 2021)
-- scripts/copyright: .muse is .lift now
-  
-  And update 5 files with old copyright year range
-
-- cmdline-opts: made the 'Added:' field mandatory
-  
-  Since "too old" versions are no longer included in the generated man
-  page, this field is now mandatory so that it won't be forgotten and then
-  not included in the documentation.
-  
-  Closes #7786
-
-- curl.1: remove mentions of really old version changes
-  
-  To make the man page more readable, this change removes all references
-  to changes in support/versions etc that happened before 7.30.0 from the
-  curl.1 output file. 7.30.0 was released on Apr 12 2013. This particular
-  limit is a bit arbitrary but was fairly easy to grep for.
-  
-  It is handled like this: the 'Added' keyword is only used in output if
-  it refers to 7.30.0 or later. All occurances of "(Added in $VERSION)" in
-  description will be stripped out if the mentioned $VERSION is from
-  before 7.30.0. It is therefore important that the "Added in..."
-  references are always written exactly like that - and on a single line,
-  not split over two.
-  
-  This change removes about 80 version number references from curl.1, down
-  to 138 from 218.
-  
-  Closes #7786
-
-- RELEASE-NOTES: synced
-
-- tool_cb_prg: make resumed upload progress bar show better
-  
-  This is a regression that was *probably* injected in the larger progress
-  bar overhaul in 2018.
-  
-  Reported-by: beslick5 on github
-  Fixes #7760
-  Closes #7777
-
-- gen.pl: insert the current date and version in generated man page
-  
-  Reported-by: Gisle Vanem
-  Ref: #7780
-  Closes #7782
-
-- NTLM: use DES_set_key_unchecked with OpenSSL
-  
-  ... as the previously used function DES_set_key() will in some cases
-  reject using a key that it deems "weak" which will cause curl to
-  continue using the unitialized buffer content as key instead.
-  
-  Assisted-by: Harry Sintonen
-  Fixes #7779
-  Closes #7781
-
-Marc Hoersken (27 Sep 2021)
-- CI: align make and test flags in various config files
-  
-  1. Use Makefile target to run tests in autotools builds on AppVeyor.
-  2. Disable testing of SCP protocol on native Windows environments.
-  3. Remove redundant parameters -a -p from target test-nonflaky.
-  4. Don't use -vc parameter which is reserved for debugging.
-  
-  Replaces #7591
-  Closes #7690
-
-Daniel Stenberg (27 Sep 2021)
-- mailmap: unify Max!
-
-- [Max Dymond brought this change]
-
-  CURLOPT_PREREQFUNCTION: add new callback
-  
-  Triggered before a request is made but after a connection is set up
-  
-  Changes:
-  
-  - callback: Update docs and callback for pre-request callback
-  - Add documentation for CURLOPT_PREREQDATA and CURLOPT_PREREQFUNCTION,
-  - Add redirect test and callback failure test
-  - Note that the function may be called multiple times on a redirection
-  - Disable new 2086 test due to Windows weirdness
-  
-  Closes #7477
-
-- KNOWN_BUGS: HTTP/2 connections through HTTPS proxy frequently stall
-  
-  Closes #6936
-
-- TODO: make configure use --cache-file more and better
-  
-  Closes #7753
-
-- [Sergey Markelov brought this change]
-
-  urlapi: support UNC paths in file: URLs on Windows
-  
-  - file://host.name/path/file.txt is a valid UNC path
-    \\host.name\path\files.txt to a non-local file transformed into URI
-    (RFC 8089 Appendix E.3)
-  
-  - UNC paths on other OSs must be smb: URLs
-  
-  Closes #7366
-
-- [Gleb Ivanovsky brought this change]
-
-  urlapi: add curl_url_strerror()
-  
-  Add curl_url_strerror() to convert CURLUcode into readable string and
-  facilitate easier troubleshooting in programs using URL API.
-  Extend CURLUcode with CURLU_LAST for iteration in unit tests.
-  Update man pages with a mention of new function.
-  Update example code and tests with new functionality where it fits.
-  
-  Closes #7605
-
-- RELEASE-NOTES: synced
-
-- [Mats Lindestam brought this change]
-
-  libssh2: add SHA256 fingerprint support
-  
-  Added support for SHA256 fingerprint in command line curl and in
-  libcurl.
-  
-  Closes #7646
-
-- libcurl.rc: switch out the copyright symbol for plain ASCII
-  
-  Reported-by: Vitaly Varyvdin
-  Assisted-by: Viktor Szakats
-  Fixes #7765
-  Closes #7776
-
-- [Jun-ya Kato brought this change]
-
-  ngtcp2: fix QUIC transport parameter version
-  
-  fix inappropriate version setting for QUIC transport parameters.
-  this patch keeps curl with ngtcp2 uses QUIC draft version (h3-29).
-  
-  Closes #7771
-
-- examples/imap-append: fix end-of-data check
-  
-  Reported-by: Alexander Chuykov
-  Fixes #7774
-  Closes #7775
-
-Michael Kaufmann (24 Sep 2021)
-- vtls: Fix a memory leak if an SSL session cannot be added to the cache
-  
-  On connection shutdown, a new TLS session ticket may arrive after the
-  SSL session cache has already been destructed. In this case, the new
-  SSL session cannot be added to the SSL session cache.
-  
-  The callers of Curl_ssl_addsessionid() need to know whether the SSL
-  session has been added to the cache. If it has not been added, the
-  reference counter of the SSL session must not be incremented, or memory
-  used by the SSL session must be freed. This is now possible with the new
-  output parameter "added" of Curl_ssl_addsessionid().
-  
-  Fixes #7683
-  Closes #7752
-
-Daniel Stenberg (24 Sep 2021)
-- [Momoka Yamamoto brought this change]
-
-  HTTP3.md: use 'autoreconf -fi' instead of buildconf
-  
-  buildconf is not used since #5853
-  
-  Closes #7746
-
-- GIT-INFO: rephrase to adapt to s/buildconf/autoreconf
-
-- [h1zzz brought this change]
-
-  llist: remove redundant code, branch will not be executed
-  
-  Closes #7770
-
-- [tlahn brought this change]
-
-  HTTP-COOKIES.md: remove duplicate 'each'
-  
-  Closes #7772
-
-Jay Satiro (24 Sep 2021)
-- [Joel Depooter brought this change]
-
-  libssh2: Get the version at runtime if possible
-  
-  Previously this code used a compile time constant, meaning that libcurl
-  always reported the libssh2 version that libcurl was built with. This
-  could differ from the libssh2 version actually being used. The new code
-  uses the CURL_LIBSSH2_VERSION macro, which is defined in ssh.h. The
-  macro calls the libssh2_version function if it is available, otherwise
-  it falls back to the compile time version.
-  
-  Closes https://github.com/curl/curl/pull/7768
-
-- [Joel Depooter brought this change]
-
-  schannel: fix typo
-  
-  Closes https://github.com/curl/curl/pull/7769
-
-Daniel Stenberg (23 Sep 2021)
-- cmake: with OpenSSL, define OPENSSL_SUPPRESS_DEPRECATED
-  
-  To avoid the "... is deprecated" warnings brought by OpenSSL v3.
-  (We need to address the underlying code at some point of course.)
-  
-  Assisted-by: Jakub Zakrzewski
-  Closes #7767
-
-- curl-openssl: pass argument to sed single-quoted
-  
-  ... instead of using an escaped double-quote. This is an attempt to make
-  this work better with ksh that otherwise would insist on a double
-  escape!
-  
-  Reported-by: Randall S. Becker
-  Fixes #7758
-  Closes #7764
-
-- RELEASE-NOTES: synced
-  
-  Bumped curlver to 7.80.0-dev
-
-- [a1346054 brought this change]
-
-  misc: fix typos in docs and comments
-  
-  No user facing output from curl/libcurl is changed by this, just
-  comments.
-  
-  Closes #7747
-
-- [Thomas M. DuBuisson brought this change]
-
-  ci: update Lift config to match requirements of curl build
-  
-  Also renamed Muse -> Lift, the new tool name.
-  
-  Closes #7761
-
-- [Rikard Falkeborn brought this change]
-
-  cleanup: constify unmodified static structs
-  
-  Constify a number of static structs that are never modified. Make them
-  const to show this.
-  
-  Closes #7759
-
-Version 7.79.1 (22 Sep 2021)
-
-Daniel Stenberg (22 Sep 2021)
-- RELEASE-NOTES: synced
-  
-  curl 7.79.1 release
-
-- THANKS: added names from the 7.79.1 release
-
-- test897: verify delivery of IMAP post-body header content
-  
-  The "content" is delivered as "body" by curl, but the envelope continues
-  after the body and the rest of it should be delivered as header.
-  
-  The IMAP server can now get 'POSTFETCH' set to include more data to
-  include after the body and test 897 is done to verify that such "extra"
-  header data is in fact delivered by curl as header.
-  
-  Ref: #7284 but fails to reproduce the issue
-  
-  Closes #7748
-
-- KNOWN_BUGS: connection migration doesn't work
-  
-  Closes #7695
-
-- RELEASE-NOTES: synced
-
-- http: fix the broken >3 digit response code detection
-  
-  When the "reason phrase" in the HTTP status line starts with a digit,
-  that was treated as the forth response code digit and curl would claim
-  the response to be non-compliant.
-  
-  Added test 1466 to verify this case.
-  
-  Regression brought by 5dc594e44f73b17
-  Reported-by: Glenn de boer
-  Fixes #7738
-  Closes #7739
-
-Jay Satiro (17 Sep 2021)
-- strerror: use sys_errlist instead of strerror on Windows
-  
-  - Change Curl_strerror to use sys_errlist[errnum] instead of strerror to
-    retrieve the error message on Windows.
-  
-  Windows' strerror writes to a static buffer and is not thread-safe.
-  
-  Follow-up to 2f0bb86 which removed most instances of strerror in favor
-  of calling Curl_strerror (which calls strerror_r for other platforms).
-  
-  Ref: https://github.com/curl/curl/pull/7685
-  Ref: https://github.com/curl/curl/commit/2f0bb86
-  
-  Closes https://github.com/curl/curl/pull/7735
-
-Daniel Stenberg (16 Sep 2021)
-- dist: provide lib/.checksrc in the tarball
-  
-  So that debug builds work (checksrc really)
-  
-  Reported-by: Marcel Raad
-  Reported-by: tawmoto on github
-  Fixes #7733
-  Closes #7734
-
-- TODO: Improve documentation about fork safety
-  
-  Closes #6968
-
-- hsts: CURLSTS_FAIL from hsts read callback should fail transfer
-  
-  ... and have CURLE_ABORTED_BY_CALLBACK returned.
-  
-  Extended test 1915 to verify.
-  
-  Reported-by: Jonathan Cardoso
-  Fixes #7726
-  Closes #7729
-
-- test1184: disable
-  
-  The test should be fine and it works for me repeated when run manually,
-  but clearly it causes CI failures and it needs more research.
-  
-  Reported-by: RiderALT on github
-  Fixes #7725
-  Closes #7732
-
-- Curl_http2_setup: don't change connection data on repeat invokes
-  
-  Regression from 3cb8a748670ab88c (releasde in 7.79.0). That change moved
-  transfer oriented inits to before the check but also erroneously moved a
-  few connection oriented ones, which causes problems.
-  
-  Reported-by: Evangelos Foutras
-  Fixes #7730
-  Closes #7731
-
-- RELEASE-NOTES: synced
-  
-  and bump to 7.79.1
-
-Kamil Dudka (16 Sep 2021)
-- tests/sshserver.pl: make it work with openssh-8.7p1
-  
-  ... by not using options with no argument where an argument is required:
-  
-  === Start of file tests/log/ssh_server.log
-  curl_sshd_config line 6: no argument after keyword "DenyGroups"
-  curl_sshd_config line 7: no argument after keyword "AllowGroups"
-  curl_sshd_config line 10: Deprecated option AuthorizedKeysFile2
-  curl_sshd_config line 29: Deprecated option KeyRegenerationInterval
-  curl_sshd_config line 39: Deprecated option RhostsRSAAuthentication
-  curl_sshd_config line 40: Deprecated option RSAAuthentication
-  curl_sshd_config line 41: Deprecated option ServerKeyBits
-  curl_sshd_config line 45: Deprecated option UseLogin
-  curl_sshd_config line 56: no argument after keyword "AcceptEnv"
-  curl_sshd_config: terminating, 3 bad configuration options
-  === End of file tests/log/ssh_server.log
-  
-  === Start of file log/sftp_server.log
-  curl_sftp_config line 33: Unsupported option "rhostsrsaauthentication"
-  curl_sftp_config line 34: Unsupported option "rsaauthentication"
-  curl_sftp_config line 52: no argument after keyword "sendenv"
-  curl_sftp_config: terminating, 1 bad configuration options
-  Connection closed.
-  Connection closed
-  === End of file log/sftp_server.log
-  
-  Closes #7724
-
-Daniel Stenberg (15 Sep 2021)
-- hsts: handle unlimited expiry
-  
-  When setting a blank expire string, meaning unlimited, curl would pass
-  TIME_T_MAX to getime_r() when creating the output, while on 64 bit
-  systems such a large value cannot be convetered to a tm struct making
-  curl to exit the loop with an error instead. It can't be converted
-  because the year it would represent doesn't fit in the 'int tm_year'
-  field!
-  
-  Starting now, unlimited expiry is instead handled differently by using a
-  human readable expiry date spelled out as "unlimited" instead of trying
-  to use a distant actual date.
-  
-  Test 1660 and 1915 have been updated to help verify this change.
-  
-  Reported-by: Jonathan Cardoso
-  Fixes #7720
-  Closes #7721
-
-- curl_multi_fdset: make FD_SET() not operate on sockets out of range
-  
-  The VALID_SOCK() macro was made to only check for FD_SETSIZE if curl was
-  built to use select(), even though the curl_multi_fdset() function
-  always and unconditionally uses FD_SET and needs the check.
-  
-  Reported-by: 0xee on github
-  Fixes #7718
-  Closes #7719
-
-- FAQ: add GOPHERS + curl works on data, not files
-
-Version 7.79.0 (14 Sep 2021)
-
-Daniel Stenberg (14 Sep 2021)
-- RELEASE-NOTES: synced
-  
-  For the 7.79.0 release
-
-- THANKS: add contributors from 7.79.0 release cycle
-
-- FAQ: add two dev related questions
-  
-    8.1 Why does curl use C89?
-    8.2 Will curl be rewritten?
-  
-  Spell-checked-by: Paul Johnson
-  Closes #7715
-
-- zuul.d/jobs: disable three tests for *-openssl-disable-proxy
-  
-  ... as they mysteriously seem to permfail without being related to
-  proxy.
-  
-  Closes #7714
-
-- [Patrick Monnerat brought this change]
-
-  ftp,imap,pop3,smtp: reject STARTTLS server response pipelining
-  
-  If a server pipelines future responses within the STARTTLS response, the
-  former are preserved in the pingpong cache across TLS negotiation and
-  used as responses to the encrypted commands.
-  
-  This fix detects pipelined STARTTLS responses and rejects them with an
-  error.
-  
-  CVE-2021-22947
-  
-  Bug: https://curl.se/docs/CVE-2021-22947.html
-
-- [Patrick Monnerat brought this change]
-
-  ftp,imap,pop3: do not ignore --ssl-reqd
-  
-  In imap and pop3, check if TLS is required even when capabilities
-  request has failed.
-  
-  In ftp, ignore preauthentication (230 status of server greeting) if TLS
-  is required.
-  
-  Bug: https://curl.se/docs/CVE-2021-22946.html
-  
-  CVE-2021-22946
-
-- [z2_ on hackerone brought this change]
-
-  mqtt: clear the leftovers pointer when sending succeeds
-  
-  CVE-2021-22945
-  
-  Bug: https://curl.se/docs/CVE-2021-22945.html
-
-- zuul: bump the rustls job to use v0.7.2
-  
-  ... and add -lm when using a rust library.
-  
-  Closes #7701
-
-- RELEASE-PROCEDURE: add release dates from now to 8.0.0 in 2023
-
-- SECURITY-PROCESS: tweak a little to match current practices
-  
-  Closes #7713
-
-- http_proxy: fix the User-Agent inclusion in CONNECT
-  
-  It should not refer to the uagent string that is allocated and created
-  for the end server http request, as that pointer may be cleared on
-  subsequent CONNECT requests.
-  
-  Added test case 1184 to verify.
-  
-  Reported-by: T200proX7 on github
-  Fixes #7705
-  Closes #7707
-
-- Curl_hsts_loadcb: don't attempt to load if hsts wasn't inited
-  
-  Reported-by: Jonathan Cardoso
-  Fixes #7710
-  Closes #7711
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: fix build with ngtcp2 and nghttp3
-  
-  ngtcp2_conn_client_new and nghttp3_conn_client_new are now macros.
-  Check the wrapped functions instead.
-  
-  ngtcp2_stream_close callback now takes flags parameter.
-  
-  Closes #7709
-
-- write-out.d: clarify size_download/upload
-  
-  They show the number of "body" bytes transfered.
-  Fixes #7702
-  Closes #7706
-
-- http2: Curl_http2_setup needs to init stream data in all invokes
-  
-  Thus function was written to avoid doing multiple connection data
-  initializations, which is fine, but since it also initiates stream
-  related data it is crucial that it doesn't skip those even if called
-  again for the same connection. Solved by moving the stream
-  initializations before the "doing-it-again" check.
-  
-  Reported-by: Inho Oh
-  Fixes #7630
-  Closes #7692
-
-- url: fix compiler warning in no-verbose builds
-  
-  Follow-up from 2f0bb864c12
-  
-  Closes #7700
-
-- non-ascii: fix build errors from strerror fix
-  
-  Follow-up to 2f0bb864c12
-  
-  Closes #7697
-
-- parse_args: redo the warnings for --remote-header-name combos
-  
-  ... to avoid the memory leak risk pointed out by scan-build.
-  
-  Follow-up from 7a3e981781d6c18a
-  
-  Closes #7698
-
-- ngtcp2: adapt to new size defintions upstream
-  
-  Reviewed-by: Tatsuhiro Tsujikawa
-  Closes #7699
-
-- rustls: add strerror.h include
-  
-  Follow-up to 2f0bb864c12
-
-- docs: the security list is reached at security at curl.se now
-  
-  Also update the FAQ section a bit to encourage users to rather submit
-  security issues on hackerone than sending email.
-  
-  Closes #7689
-
-Marc Hoersken (9 Sep 2021)
-- runtests: add option -u to error on server unexpectedly alive
-  
-  Let's try to actually handle the server unexpectedly alive
-  case by first making them visible on CI builds as failures.
-  
-  This is needed to detect issues with killing of the test
-  servers completely including nested process chains with
-  multiple PIDs per test server (including bash and perl).
-  
-  On Windows/cygwin platforms this is especially helpful with
-  debugging PID mixups due to cygwin using its own PID space.
-  
-  Reviewed-by: Daniel Stenberg
-  Closes #7180
-
-Daniel Stenberg (9 Sep 2021)
-- opts docs: unify phrasing in NAME header
-  
-  - avoid writing "set ..." or "enable/disable ..." or "specify ..."
-    *All* options for curl_easy_setopt() are about setting or enabling
-    things and most of the existing options didn't use that way of
-    description.
-  
-  - start with lowercase letter, unless abbreviation. For consistency.
-  
-  - Some additional touch-ups
-  
-  Closes #7688
-
-- strerror.h: remove the #include from files not using it
-
-- lib: don't use strerror()
-  
-  We have and provide Curl_strerror() internally for a reason: strerror()
-  is not necessarily thread-safe so we should always try to avoid it.
-  
-  Extended checksrc to warn for this, but feature the check disabled by
-  default and only enable it in lib/
-  
-  Closes #7685
-
-Daniel Gustafsson (8 Sep 2021)
-- cirrus: Add FreeBSD 13.0 job and disable sanitizer build
-  
-  As alluded to the in the now removed comment, a 13.0 image became
-  available and is now ready to be used.
-  
-  The sanitizer builds were running on the 12.1 image which since has
-  been removed from the config, leaving the builds not running at all.
-  When enabled it turns out that they don't actually work due to very
-  long timeouts in executing the tests, so keep the disabled for now
-  but a bit more controlled.
-  
-  Closes #7592
-
-Daniel Stenberg (8 Sep 2021)
-- copyrights: update copyright year ranges
-
-- RELEASE-NOTES: synced
-
-- INTERNALS: c-ares has a new home: c-ares.org
-
-- docs: remove experimental mentions from HSTS and MQTT
-  
-  Reported-by: Jonathan Cardoso
-  Bug: https://github.com/curl/curl/pull/6700#issuecomment-913792863
-  Closes #7681
-
-- [Cao ZhenXiang brought this change]
-
-  curl: add warning for incompatible parameters usage
-  
-  --continue-at - and --remote-header-name are known incompatible parameters
-  
-  Closes #7674
-
-- [git-bruh brought this change]
-
-  examples/*hiperfifo.c: fix calloc arguments to match function proto
-  
-  Closes #7678
-
-- INTERNALS: bump c-ares requirement to 1.16.0
-  
-  Since ba904db0705c93 we use ares_getaddrinfo, added in c-ares 1.16.0
-
-- curl: stop retry if Retry-After: is longer than allowed
-  
-  If Retry-After: specifies a period that is longer than what fits within
-  --retry-max-time, then stop retrying immediately.
-  
-  Added test 366 to verify.
-  
-  Reported-by: Kari Pahula
-  Fixes #7675
-  Closes #7676
-
-- [Michał Antoniak brought this change]
-
-  mbedtls: avoid using a large buffer on the stack
-  
-  Use dynamic memory allocation for the buffer used in checking "pinned
-  public key". The PUB_DER_MAX_BYTES parameter with default settings is
-  set to a value greater than 2kB.
-  
-  Co-authored-by: Daniel Stenberg
-  Closes #7586
-
-- configure: make --disable-hsts work
-  
-  The AC_ARG_ENABLE() macro itself uses a variable called
-  'enable_[option]', so when our script also used a variable with that
-  name for the purpose of storing what the user wants, it also
-  accidentally made it impossible to switch off the feature with
-  --disable-hsts. Fix this by renaming our variable.
-  
-  Reported-by: Michał Antoniak
-  Fixes #7669
-  Closes #7672
-
-Jay Satiro (5 Sep 2021)
-- config.d: note that curlrc is used even when --config
-  
-  Bug: https://github.com/curl/curl/pull/7666#issuecomment-912214751
-  Reported-by: Viktor Szakats
-  
-  Closes https://github.com/curl/curl/pull/7667
-
-Daniel Stenberg (4 Sep 2021)
-- RELEASE-NOTES: synced
-
-- test1173: check references to libcurl options
-  
-  ... that they refer to actual existing libcurl options.
-  
-  Reviewed-by: Daniel Gustafsson
-  Closes #7656
-
-- CURLOPT_UNIX_SOCKET_PATH.3: remove nginx reference, add see also
-  
-  Closes #7656
-
-- opt-docs: verify man page sections + order
-  
-  In every libcurl option man page there are now 8 mandatory sections that
-  must use the right name in the correct order and test 1173 verifies
-  this. Only 14 man pages needed adjustments.
-  
-  The sections and the order is as follows:
-  
-   - NAME
-   - SYNOPSIS
-   - DESCRIPTION
-   - PROTOCOLS
-   - EXAMPLE
-   - AVAILABILITY
-   - RETURN VALUE
-   - SEE ALSO
-  
-  Reviewed-by: Daniel Gustafsson
-  Closes #7656
-
-- opt-docs: make sure all man pages have examples
-  
-  Extended manpage-syntax.pl (run by test 1173) to check that every man
-  page for a libcurl option has an EXAMPLE section that is more than two
-  lines. Then fixed all errors it found and added examples.
-  
-  Reviewed-by: Daniel Gustafsson
-  Closes #7656
-
-- get.d: provide more useful examples
-  
-  Closes #7668
-
-- page-header: add GOPHERS, simplify wording in the 1st para
-  
-  Closes #7665
-
-- connect: get local port + ip also when reusing connections
-  
-  Regression. In d6a37c23a3c (7.75.0) we removed the duplicated storage
-  (connection + easy handle), so this info needs be extracted again even
-  for re-used connections.
-  
-  Add test 435 to verify
-  
-  Reported-by: Max Dymond
-  Fixes #7660
-  Closes #7662
-
-Marcel Raad (2 Sep 2021)
-- multi: fix compiler warning with `CURL_DISABLE_WAKEUP`
-  
-  `use_wakeup` is unused in this case.
-  
-  Closes https://github.com/curl/curl/pull/7661
-
-Daniel Stenberg (1 Sep 2021)
-- tests: adjust the tftpd output to work with hyper mode
-  
-  By making them look less like http headers, the hyper mode "tweak"
-  doesn't interfere.
-  
-  Enable test 2002 and 2003 in hyper builds (and 1280 which is unrelated
-  but should be enabled).
-  
-  Closes #7658
-
-Daniel Gustafsson (1 Sep 2021)
-- [Gisle Vanem brought this change]
-
-  openssl: annotate SSL3_MT_SUPPLEMENTAL_DATA
-  
-  This adds support for the previously unhandled supplemental data which
-  in -v output was printed like:
-  
-      TLSv1.2 (IN), TLS header, Unknown (23):
-  
-  These will now be printed with proper annotation:
-  
-      TLSv1.2 (OUT), TLS header, Supplemental data (23):
-  
-  Closes #7652
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (1 Sep 2021)
-- curl.1: provide examples for each option
-  
-  The file format for each option now features a "Example:" header that
-  can provide one or more examples that get rendered appropriately in the
-  output. All options MUST have at least one example or gen.pl complains
-  at build-time.
-  
-  This fix also does a few other minor format and consistency cleanups.
-  
-  Closes #7654
-
-- progress: make trspeed avoid floats
-  
-  and compiler warnings for data conversions.
-  
-  Reported-by: Michał Antoniak
-  Fixes #7645
-  Closes #7653
-
-- test365: verify response with chunked AND Content-Length headers
-
-- http: ignore content-length if any transfer-encoding is used
-  
-  Fixes #7643
-  Closes #7649
-
-- RELEASE-NOTES: synced
-
-- Revert "http2: skip immediate parsing of payload following protocol switch"
-  
-  This reverts commit 455a63c66f188598275e87d32de2c4e8e26b80cb.
-  
-  Reported-by: Tk Xiong
-  Fixes #7633
-  Closes #7648
-
-- KNOWN_BUGS: HTTP/3 doesn't support client certs
-  
-  Closes #7625
-
-- mailing lists: move from cool.haxx.se to lists.haxx.se
-
-- http_proxy: only wait for writable socket while sending request
-  
-  Otherwise it would wait socket writability even after the entire CONNECT
-  request has sent and make curl basically busy-loop while waiting for a
-  response to come back.
-  
-  The previous fix attempt in #7484 (c27a70a591a4) was inadequate.
-  
-  Reported-by: zloi-user on github
-  Reported-by: Oleguer Llopart
-  Fixes #7589
-  Closes #7647
-
-- http: disallow >3-digit response codes
-  
-  Make the built-in HTTP parser behave similar to hyper and reject any
-  HTTP response using more than 3 digits for the response code.
-  
-  Updated test 1432 accordingly.
-  Enabled test 1432 in the hyper builds.
-  
-  Closes #7641
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: stop buffering crypto data
-  
-  Stop buffering crypto data because libngtcp2 now buffers submitted
-  crypto data.
-  
-  Closes #7637
-
-- test1280: CRLFify the response to please hyper
-  
-  Closes #7639
-
-- tests: enable test 1129 for hyper builds
-  
-  Closes #7638
-
-- curl: better error message when -O fails to get a good name
-  
-  Due to how this currently works internally, it needs a working initial
-  file name to store contents in, so it may still fail even with -J is
-  used (and thus accepting a name from content-disposition:) if the file
-  name part of the URL isn't "good enough".
-  
-  Fixes #7628
-  Closes #7635
-
-- curl_easy_setopt: tweak the string copy wording
-  
-  Reported-by: Yaobin Wen
-  Fixes #7632
-  Closes #7634
-
-- RELEASE-NOTES: synced
-
-- [Don J Olmstead brought this change]
-
-  cmake: sync CURL_DISABLE options
-  
-  Adds the full listing of CURL_DISABLE options to the CMake build. Moves
-  all option code, except for CURL_DISABLE_OPENSSL_AUTO_LOA_CONFIG which
-  resides near OpenSSL configuration, to the same block of code. Also
-  sorts the options here and in the cmake config header.
-  
-  Additionally sorted the CURL-DISABLE listing and fixed the
-  CURL_DISABLE_POP3 option.
-  
-  Closes #7624
-
-Jay Satiro (25 Aug 2021)
-- KNOWN_BUGS: FTPS upload data loss with TLS 1.3
-  
-  Bug: https://github.com/curl/curl/issues/6149
-  Reported-by: Bylon2@users.noreply.github.com
-  
-  Closes https://github.com/curl/curl/pull/7623
-
-Daniel Stenberg (24 Aug 2021)
-- cmake: avoid poll() on macOS
-  
-  ... like we do in configure builds. Since poll() on macOS is not
-  reliable enough.
-  
-  Reported-by: marc-groundctl
-  Fixes #7595
-  Closes #7619
-
-- c-hyper: handle HTTP/1.1 => HTTP/1.0 downgrade on reused connection
-  
-  Enable test 1074
-  
-  Closes #7617
-
-- c-hyper: deal with Expect: 100-continue combined with POSTFIELDS
-  
-  Enable test 1130 and 1131
-  
-  Closes #7616
-
-- [a1346054 brought this change]
-
-  tests: be explicit about using 'python3' instead of 'python'
-  
-  This fixes running tests in virtualenvs (or on distros) that no longer
-  have a symlink from python to python2 or python3.
-  
-  Closes #7602
-
-- [a1346054 brought this change]
-
-  scripts: invoke interpreters through /usr/bin/env
-  
-  Closes #7602
-
-- DISABLED: enable 11 more tests for hyper builds
-  
-  Closes #7612
-
-- setopt: enable CURLOPT_IGNORE_CONTENT_LENGTH for hyper
-  
-  Since this option is also used for FTP, it needs to work to set for
-  applications even if hyper doesn't support it for HTTP. Verified by test
-  1137.
-  
-  Updated docs to specify that the option doesn't work for HTTP when using
-  the hyper backend.
-  
-  Closes #7614
-
-- test1138: remove trailing space to make work with hyper
-  
-  Closes #7613
-
-- libcurl-errors.3: clarify two CURLUcode errors
-  
-  CURLUE_BAD_HANDLE and CURLUE_BAD_PARTPOINTER should be for "bad" or
-  wrong pointers in a generic sense, not just for NULL pointers.
-  
-  Reviewed-by: Jay Satiro
-  
-  Ref: #7605
-  Closes #7611
-
-Jay Satiro (23 Aug 2021)
-- symbols-in-versions: fix CURLSSLBACKEND_QSOSSL last used version
-  
-  ... and also change the 'Removed' column name to 'Last' since that
-  column is for the last version to contain the symbol.
-  
-  Closes https://github.com/curl/curl/pull/7609
-
-Daniel Stenberg (23 Aug 2021)
-- urlapi.c:seturl: assert URL instead of using if-check
-  
-  There's no code flow possible where this can happen. The assert makes
-  sure it also won't be introduced undetected in the future.
-  
-  Closes #7610
-
-- curl-openssl.m4: show correct output for OpenSSL v3
-  
-  Using 3.0.0 versions configure should now show this:
-  
-  checking for OpenSSL headers version... 3.0.0 - 0x300
-  checking for OpenSSL library version... 3.0.0
-  checking for OpenSSL headers and library versions matching... yes
-  
-  This output doesn't actually change what configure generates but is only
-  "cosmetic".
-  
-  Reported-by: Randall S. Becker
-  Fixes #7606
-  Closes #7608
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/CMakeConfigurableFile.in 8.0.32-1/extra/curl/curl-7.83.1/CMake/CMakeConfigurableFile.in
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/CMakeConfigurableFile.in	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/CMakeConfigurableFile.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,22 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-@CMAKE_CONFIGURABLE_FILE_CONTENT@
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/cmake_uninstall.cmake.in 8.0.32-1/extra/curl/curl-7.83.1/CMake/cmake_uninstall.cmake.in
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/cmake_uninstall.cmake.in	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/cmake_uninstall.cmake.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,47 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-if(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
-  message(FATAL_ERROR "Cannot find install manifest: @CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
-endif()
-
-if(NOT DEFINED CMAKE_INSTALL_PREFIX)
-  set(CMAKE_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@")
-endif()
-message(${CMAKE_INSTALL_PREFIX})
-
-file(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
-string(REGEX REPLACE "\n" ";" files "${files}")
-foreach(file ${files})
-  message(STATUS "Uninstalling $ENV{DESTDIR}${file}")
-  if(IS_SYMLINK "$ENV{DESTDIR}${file}" OR EXISTS "$ENV{DESTDIR}${file}")
-    exec_program(
-      "@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
-      OUTPUT_VARIABLE rm_out
-      RETURN_VALUE rm_retval
-      )
-    if(NOT "${rm_retval}" STREQUAL 0)
-      message(FATAL_ERROR "Problem when removing $ENV{DESTDIR}${file}")
-    endif()
-  else()
-    message(STATUS "File $ENV{DESTDIR}${file} does not exist.")
-  endif()
-endforeach()
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/curl-config.cmake.in 8.0.32-1/extra/curl/curl-7.83.1/CMake/curl-config.cmake.in
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/curl-config.cmake.in	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/curl-config.cmake.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,33 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-@PACKAGE_INIT@
-
-include(CMakeFindDependencyMacro)
-if(@USE_OPENSSL@)
-  find_dependency(OpenSSL @OPENSSL_VERSION_MAJOR@)
-endif()
-if(@USE_ZLIB@)
-  find_dependency(ZLIB @ZLIB_VERSION_MAJOR@)
-endif()
-
-include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake")
-check_required_components("@PROJECT_NAME@")
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/CurlSymbolHiding.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/CurlSymbolHiding.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/CurlSymbolHiding.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/CurlSymbolHiding.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,76 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-include(CheckCSourceCompiles)
-
-option(CURL_HIDDEN_SYMBOLS "Set to ON to hide libcurl internal symbols (=hide all symbols that aren't officially external)." ON)
-mark_as_advanced(CURL_HIDDEN_SYMBOLS)
-
-if(CURL_HIDDEN_SYMBOLS)
-  set(SUPPORTS_SYMBOL_HIDING FALSE)
-
-  if(CMAKE_C_COMPILER_ID MATCHES "Clang" AND NOT MSVC)
-    set(SUPPORTS_SYMBOL_HIDING TRUE)
-    set(_SYMBOL_EXTERN "__attribute__ ((__visibility__ (\"default\")))")
-    set(_CFLAG_SYMBOLS_HIDE "-fvisibility=hidden")
-  elseif(CMAKE_COMPILER_IS_GNUCC)
-    if(NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 3.4)
-      # note: this is considered buggy prior to 4.0 but the autotools don't care, so let's ignore that fact
-      set(SUPPORTS_SYMBOL_HIDING TRUE)
-      set(_SYMBOL_EXTERN "__attribute__ ((__visibility__ (\"default\")))")
-      set(_CFLAG_SYMBOLS_HIDE "-fvisibility=hidden")
-    endif()
-  elseif(CMAKE_C_COMPILER_ID MATCHES "SunPro" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 8.0)
-    set(SUPPORTS_SYMBOL_HIDING TRUE)
-    set(_SYMBOL_EXTERN "__global")
-    set(_CFLAG_SYMBOLS_HIDE "-xldscope=hidden")
-  elseif(CMAKE_C_COMPILER_ID MATCHES "Intel" AND NOT CMAKE_C_COMPILER_VERSION VERSION_LESS 9.0)
-    # note: this should probably just check for version 9.1.045 but I'm not 100% sure
-    #       so let's do it the same way autotools do.
-    set(SUPPORTS_SYMBOL_HIDING TRUE)
-    set(_SYMBOL_EXTERN "__attribute__ ((__visibility__ (\"default\")))")
-    set(_CFLAG_SYMBOLS_HIDE "-fvisibility=hidden")
-    check_c_source_compiles("#include <stdio.h>
-        int main (void) { printf(\"icc fvisibility bug test\"); return 0; }" _no_bug)
-    if(NOT _no_bug)
-      set(SUPPORTS_SYMBOL_HIDING FALSE)
-      set(_SYMBOL_EXTERN "")
-      set(_CFLAG_SYMBOLS_HIDE "")
-    endif()
-  elseif(MSVC)
-    set(SUPPORTS_SYMBOL_HIDING TRUE)
-  endif()
-
-  set(HIDES_CURL_PRIVATE_SYMBOLS ${SUPPORTS_SYMBOL_HIDING})
-elseif(MSVC)
-  if(NOT CMAKE_VERSION VERSION_LESS 3.7)
-    set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS TRUE) #present since 3.4.3 but broken
-    set(HIDES_CURL_PRIVATE_SYMBOLS FALSE)
-  else()
-    message(WARNING "Hiding private symbols regardless CURL_HIDDEN_SYMBOLS being disabled.")
-    set(HIDES_CURL_PRIVATE_SYMBOLS TRUE)
-  endif()
-else()
-  set(HIDES_CURL_PRIVATE_SYMBOLS FALSE)
-endif()
-
-set(CURL_CFLAG_SYMBOLS_HIDE ${_CFLAG_SYMBOLS_HIDE})
-set(CURL_EXTERN_SYMBOL ${_SYMBOL_EXTERN})
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/CurlTests.c 8.0.32-1/extra/curl/curl-7.83.1/CMake/CurlTests.c
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/CurlTests.c	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/CurlTests.c	1970-01-01 00:00:00.000000000 +0000
@@ -1,516 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2022, 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.
- *
- ***************************************************************************/
-#ifdef TIME_WITH_SYS_TIME
-/* Time with sys/time test */
-
-#include <sys/types.h>
-#include <sys/time.h>
-#include <time.h>
-
-int
-main ()
-{
-if ((struct tm *) 0)
-return 0;
-  ;
-  return 0;
-}
-
-#endif
-
-#ifdef HAVE_FCNTL_O_NONBLOCK
-
-/* headers for FCNTL_O_NONBLOCK test */
-#include <sys/types.h>
-#include <unistd.h>
-#include <fcntl.h>
-/* */
-#if defined(sun) || defined(__sun__) || \
-    defined(__SUNPRO_C) || defined(__SUNPRO_CC)
-# if defined(__SVR4) || defined(__srv4__)
-#  define PLATFORM_SOLARIS
-# else
-#  define PLATFORM_SUNOS4
-# endif
-#endif
-#if (defined(_AIX) || defined(__xlC__)) && !defined(_AIX41)
-# define PLATFORM_AIX_V3
-#endif
-/* */
-#if defined(PLATFORM_SUNOS4) || defined(PLATFORM_AIX_V3)
-#error "O_NONBLOCK does not work on this platform"
-#endif
-
-int
-main ()
-{
-      /* O_NONBLOCK source test */
-      int flags = 0;
-      if(0 != fcntl(0, F_SETFL, flags | O_NONBLOCK))
-          return 1;
-      return 0;
-}
-#endif
-
-/* tests for gethostbyname_r */
-#if defined(HAVE_GETHOSTBYNAME_R_3_REENTRANT) || \
-    defined(HAVE_GETHOSTBYNAME_R_5_REENTRANT) || \
-    defined(HAVE_GETHOSTBYNAME_R_6_REENTRANT)
-#   define _REENTRANT
-    /* no idea whether _REENTRANT is always set, just invent a new flag */
-#   define TEST_GETHOSTBYFOO_REENTRANT
-#endif
-#if defined(HAVE_GETHOSTBYNAME_R_3) || \
-    defined(HAVE_GETHOSTBYNAME_R_5) || \
-    defined(HAVE_GETHOSTBYNAME_R_6) || \
-    defined(TEST_GETHOSTBYFOO_REENTRANT)
-#include <sys/types.h>
-#include <netdb.h>
-int main(void)
-{
-  char *address = "example.com";
-  int length = 0;
-  int type = 0;
-  struct hostent h;
-  int rc = 0;
-#if defined(HAVE_GETHOSTBYNAME_R_3) || \
-    defined(HAVE_GETHOSTBYNAME_R_3_REENTRANT)
-  struct hostent_data hdata;
-#elif defined(HAVE_GETHOSTBYNAME_R_5) || \
-      defined(HAVE_GETHOSTBYNAME_R_5_REENTRANT) || \
-      defined(HAVE_GETHOSTBYNAME_R_6) || \
-      defined(HAVE_GETHOSTBYNAME_R_6_REENTRANT)
-  char buffer[8192];
-  int h_errnop;
-  struct hostent *hp;
-#endif
-
-#if   defined(HAVE_GETHOSTBYNAME_R_3) || \
-      defined(HAVE_GETHOSTBYNAME_R_3_REENTRANT)
-  rc = gethostbyname_r(address, &h, &hdata);
-#elif defined(HAVE_GETHOSTBYNAME_R_5) || \
-      defined(HAVE_GETHOSTBYNAME_R_5_REENTRANT)
-  rc = gethostbyname_r(address, &h, buffer, 8192, &h_errnop);
-  (void)hp; /* not used for test */
-#elif defined(HAVE_GETHOSTBYNAME_R_6) || \
-      defined(HAVE_GETHOSTBYNAME_R_6_REENTRANT)
-  rc = gethostbyname_r(address, &h, buffer, 8192, &hp, &h_errnop);
-#endif
-
-  (void)length;
-  (void)type;
-  (void)rc;
-  return 0;
-}
-#endif
-
-#ifdef HAVE_SOCKLEN_T
-#ifdef _WIN32
-#include <ws2tcpip.h>
-#else
-#include <sys/types.h>
-#include <sys/socket.h>
-#endif
-int
-main ()
-{
-if ((socklen_t *) 0)
-  return 0;
-if (sizeof (socklen_t))
-  return 0;
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IN_ADDR_T
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <arpa/inet.h>
-
-int
-main ()
-{
-if ((in_addr_t *) 0)
-  return 0;
-if (sizeof (in_addr_t))
-  return 0;
-  ;
-  return 0;
-}
-#endif
-
-#ifdef HAVE_BOOL_T
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-int
-main ()
-{
-if (sizeof (bool *) )
-  return 0;
-  ;
-  return 0;
-}
-#endif
-
-#ifdef STDC_HEADERS
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-int main() { return 0; }
-#endif
-#ifdef HAVE_GETADDRINFO
-#include <netdb.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-
-int main(void) {
-    struct addrinfo hints, *ai;
-    int error;
-
-    memset(&hints, 0, sizeof(hints));
-    hints.ai_family = AF_UNSPEC;
-    hints.ai_socktype = SOCK_STREAM;
-#ifndef getaddrinfo
-    (void)getaddrinfo;
-#endif
-    error = getaddrinfo("127.0.0.1", "8080", &hints, &ai);
-    if (error) {
-        return 1;
-    }
-    return 0;
-}
-#endif
-#ifdef HAVE_FILE_OFFSET_BITS
-#ifdef _FILE_OFFSET_BITS
-#undef _FILE_OFFSET_BITS
-#endif
-#define _FILE_OFFSET_BITS 64
-#include <sys/types.h>
- /* Check that off_t can represent 2**63 - 1 correctly.
-    We can't simply define LARGE_OFF_T to be 9223372036854775807,
-    since some C++ compilers masquerading as C compilers
-    incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62))
-  int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
-                       && LARGE_OFF_T % 2147483647 == 1)
-                      ? 1 : -1];
-int main () { ; return 0; }
-#endif
-#ifdef HAVE_IOCTLSOCKET
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  endif
-#endif
-
-int
-main ()
-{
-
-/* ioctlsocket source code */
- int socket;
- unsigned long flags = ioctlsocket(socket, FIONBIO, &flags);
-
-  ;
-  return 0;
-}
-
-#endif
-#ifdef HAVE_IOCTLSOCKET_CAMEL
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  endif
-#endif
-
-int
-main ()
-{
-
-/* IoctlSocket source code */
-    if(0 != IoctlSocket(0, 0, 0))
-      return 1;
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IOCTLSOCKET_CAMEL_FIONBIO
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  endif
-#endif
-
-int
-main ()
-{
-
-/* IoctlSocket source code */
-        long flags = 0;
-        if(0 != IoctlSocket(0, FIONBIO, &flags))
-          return 1;
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IOCTLSOCKET_FIONBIO
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  endif
-#endif
-
-int
-main ()
-{
-
-        int flags = 0;
-        if(0 != ioctlsocket(0, FIONBIO, &flags))
-          return 1;
-
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IOCTL_FIONBIO
-/* headers for FIONBIO test */
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-
-int
-main ()
-{
-
-        int flags = 0;
-        if(0 != ioctl(0, FIONBIO, &flags))
-          return 1;
-
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_IOCTL_SIOCGIFADDR
-/* headers for FIONBIO test */
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-#ifdef HAVE_SYS_IOCTL_H
-#  include <sys/ioctl.h>
-#endif
-#ifdef HAVE_STROPTS_H
-#  include <stropts.h>
-#endif
-#include <net/if.h>
-
-int
-main ()
-{
-        struct ifreq ifr;
-        if(0 != ioctl(0, SIOCGIFADDR, &ifr))
-          return 1;
-
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_SETSOCKOPT_SO_NONBLOCK
-/* includes start */
-#ifdef HAVE_WINDOWS_H
-#  ifndef WIN32_LEAN_AND_MEAN
-#    define WIN32_LEAN_AND_MEAN
-#  endif
-#  include <windows.h>
-#  ifdef HAVE_WINSOCK2_H
-#    include <winsock2.h>
-#  endif
-#endif
-/* includes start */
-#ifdef HAVE_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-/* includes end */
-
-int
-main ()
-{
-        if(0 != setsockopt(0, SOL_SOCKET, SO_NONBLOCK, 0, 0))
-          return 1;
-  ;
-  return 0;
-}
-#endif
-#ifdef HAVE_GLIBC_STRERROR_R
-#include <string.h>
-#include <errno.h>
-
-void check(char c) {}
-
-int
-main () {
-  char buffer[1024];
-  /* This will not compile if strerror_r does not return a char* */
-  check(strerror_r(EACCES, buffer, sizeof(buffer))[0]);
-  return 0;
-}
-#endif
-#ifdef HAVE_POSIX_STRERROR_R
-#include <string.h>
-#include <errno.h>
-
-/* float, because a pointer can't be implicitly cast to float */
-void check(float f) {}
-
-int
-main () {
-  char buffer[1024];
-  /* This will not compile if strerror_r does not return an int */
-  check(strerror_r(EACCES, buffer, sizeof(buffer)));
-  return 0;
-}
-#endif
-#ifdef HAVE_FSETXATTR_6
-#include <sys/xattr.h> /* header from libc, not from libattr */
-int
-main() {
-  fsetxattr(0, 0, 0, 0, 0, 0);
-  return 0;
-}
-#endif
-#ifdef HAVE_FSETXATTR_5
-#include <sys/xattr.h> /* header from libc, not from libattr */
-int
-main() {
-  fsetxattr(0, 0, 0, 0, 0);
-  return 0;
-}
-#endif
-#ifdef HAVE_CLOCK_GETTIME_MONOTONIC
-#include <time.h>
-int
-main() {
-  struct timespec ts = {0, 0};
-  clock_gettime(CLOCK_MONOTONIC, &ts);
-  return 0;
-}
-#endif
-#ifdef HAVE_BUILTIN_AVAILABLE
-int
-main() {
-  if(__builtin_available(macOS 10.12, *)) {}
-  return 0;
-}
-#endif
-#ifdef HAVE_VARIADIC_MACROS_C99
-#define c99_vmacro3(first, ...) fun3(first, __VA_ARGS__)
-#define c99_vmacro2(first, ...) fun2(first, __VA_ARGS__)
-
-int fun3(int arg1, int arg2, int arg3);
-int fun2(int arg1, int arg2);
-
-int fun3(int arg1, int arg2, int arg3) {
-  return arg1 + arg2 + arg3;
-}
-int fun2(int arg1, int arg2) {
-  return arg1 + arg2;
-}
-
-int
-main() {
-  int res3 = c99_vmacro3(1, 2, 3);
-  int res2 = c99_vmacro2(1, 2);
-  (void)res3;
-  (void)res2;
-  return 0;
-}
-#endif
-#ifdef HAVE_VARIADIC_MACROS_GCC
-#define gcc_vmacro3(first, args...) fun3(first, args)
-#define gcc_vmacro2(first, args...) fun2(first, args)
-
-int fun3(int arg1, int arg2, int arg3);
-int fun2(int arg1, int arg2);
-
-int fun3(int arg1, int arg2, int arg3) {
-  return arg1 + arg2 + arg3;
-}
-int fun2(int arg1, int arg2) {
-  return arg1 + arg2;
-}
-
-int
-main() {
-  int res3 = gcc_vmacro3(1, 2, 3);
-  int res2 = gcc_vmacro2(1, 2);
-  (void)res3;
-  (void)res2;
-  return 0;
-}
-#endif
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindBearSSL.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindBearSSL.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindBearSSL.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindBearSSL.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,30 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-find_path(BEARSSL_INCLUDE_DIRS bearssl.h)
-
-find_library(BEARSSL_LIBRARY bearssl)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(BEARSSL DEFAULT_MSG
-    BEARSSL_INCLUDE_DIRS BEARSSL_LIBRARY)
-
-mark_as_advanced(BEARSSL_INCLUDE_DIRS BEARSSL_LIBRARY)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindBrotli.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindBrotli.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindBrotli.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindBrotli.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,41 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-include(FindPackageHandleStandardArgs)
-
-find_path(BROTLI_INCLUDE_DIR "brotli/decode.h")
-
-find_library(BROTLICOMMON_LIBRARY NAMES brotlicommon)
-find_library(BROTLIDEC_LIBRARY NAMES brotlidec)
-
-find_package_handle_standard_args(BROTLI
-    FOUND_VAR
-      BROTLI_FOUND
-    REQUIRED_VARS
-      BROTLIDEC_LIBRARY
-      BROTLICOMMON_LIBRARY
-      BROTLI_INCLUDE_DIR
-    FAIL_MESSAGE
-      "Could NOT find BROTLI"
-)
-
-set(BROTLI_INCLUDE_DIRS ${BROTLI_INCLUDE_DIR})
-set(BROTLI_LIBRARIES ${BROTLICOMMON_LIBRARY} ${BROTLIDEC_LIBRARY})
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindCARES.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindCARES.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindCARES.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindCARES.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,45 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-# - Find c-ares
-# Find the c-ares includes and library
-# This module defines
-#  CARES_INCLUDE_DIR, where to find ares.h, etc.
-#  CARES_LIBRARIES, the libraries needed to use c-ares.
-#  CARES_FOUND, If false, do not try to use c-ares.
-# also defined, but not for general use are
-# CARES_LIBRARY, where to find the c-ares library.
-
-find_path(CARES_INCLUDE_DIR ares.h)
-
-set(CARES_NAMES ${CARES_NAMES} cares)
-find_library(CARES_LIBRARY
-  NAMES ${CARES_NAMES}
-  )
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(CARES
-    REQUIRED_VARS CARES_LIBRARY CARES_INCLUDE_DIR)
-
-mark_as_advanced(
-  CARES_LIBRARY
-  CARES_INCLUDE_DIR
-  )
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindGSS.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindGSS.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindGSS.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindGSS.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,310 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-# - Try to find the GSS Kerberos library
-# Once done this will define
-#
-#  GSS_ROOT_DIR - Set this variable to the root installation of GSS
-#
-# Read-Only variables:
-#  GSS_FOUND - system has the Heimdal library
-#  GSS_FLAVOUR - "MIT" or "Heimdal" if anything found.
-#  GSS_INCLUDE_DIR - the Heimdal include directory
-#  GSS_LIBRARIES - The libraries needed to use GSS
-#  GSS_LINK_DIRECTORIES - Directories to add to linker search path
-#  GSS_LINKER_FLAGS - Additional linker flags
-#  GSS_COMPILER_FLAGS - Additional compiler flags
-#  GSS_VERSION - This is set to version advertised by pkg-config or read from manifest.
-#                In case the library is found but no version info available it'll be set to "unknown"
-
-set(_MIT_MODNAME mit-krb5-gssapi)
-set(_HEIMDAL_MODNAME heimdal-gssapi)
-
-include(CheckIncludeFile)
-include(CheckIncludeFiles)
-include(CheckTypeSize)
-
-set(_GSS_ROOT_HINTS
-    "${GSS_ROOT_DIR}"
-    "$ENV{GSS_ROOT_DIR}"
-)
-
-# try to find library using system pkg-config if user didn't specify root dir
-if(NOT GSS_ROOT_DIR AND NOT "$ENV{GSS_ROOT_DIR}")
-  if(UNIX)
-    find_package(PkgConfig QUIET)
-    pkg_search_module(_GSS_PKG ${_MIT_MODNAME} ${_HEIMDAL_MODNAME})
-    list(APPEND _GSS_ROOT_HINTS "${_GSS_PKG_PREFIX}")
-  elseif(WIN32)
-    list(APPEND _GSS_ROOT_HINTS "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MIT\\Kerberos;InstallDir]")
-  endif()
-endif()
-
-if(NOT _GSS_FOUND) #not found by pkg-config. Let's take more traditional approach.
-  find_file(_GSS_CONFIGURE_SCRIPT
-      NAMES
-          "krb5-config"
-      HINTS
-          ${_GSS_ROOT_HINTS}
-      PATH_SUFFIXES
-          bin
-      NO_CMAKE_PATH
-      NO_CMAKE_ENVIRONMENT_PATH
-  )
-
-  # if not found in user-supplied directories, maybe system knows better
-  find_file(_GSS_CONFIGURE_SCRIPT
-      NAMES
-          "krb5-config"
-      PATH_SUFFIXES
-          bin
-  )
-
-  if(_GSS_CONFIGURE_SCRIPT)
-    execute_process(
-          COMMAND ${_GSS_CONFIGURE_SCRIPT} "--cflags" "gssapi"
-          OUTPUT_VARIABLE _GSS_CFLAGS
-          RESULT_VARIABLE _GSS_CONFIGURE_FAILED
-          OUTPUT_STRIP_TRAILING_WHITESPACE
-      )
-    message(STATUS "CFLAGS: ${_GSS_CFLAGS}")
-    if(NOT _GSS_CONFIGURE_FAILED) # 0 means success
-      # should also work in an odd case when multiple directories are given
-      string(STRIP "${_GSS_CFLAGS}" _GSS_CFLAGS)
-      string(REGEX REPLACE " +-I" ";" _GSS_CFLAGS "${_GSS_CFLAGS}")
-      string(REGEX REPLACE " +-([^I][^ \\t;]*)" ";-\\1" _GSS_CFLAGS "${_GSS_CFLAGS}")
-
-      foreach(_flag ${_GSS_CFLAGS})
-        if(_flag MATCHES "^-I.*")
-          string(REGEX REPLACE "^-I" "" _val "${_flag}")
-          list(APPEND _GSS_INCLUDE_DIR "${_val}")
-        else()
-          list(APPEND _GSS_COMPILER_FLAGS "${_flag}")
-        endif()
-      endforeach()
-    endif()
-
-    execute_process(
-        COMMAND ${_GSS_CONFIGURE_SCRIPT} "--libs" "gssapi"
-        OUTPUT_VARIABLE _GSS_LIB_FLAGS
-        RESULT_VARIABLE _GSS_CONFIGURE_FAILED
-        OUTPUT_STRIP_TRAILING_WHITESPACE
-    )
-    message(STATUS "LDFLAGS: ${_GSS_LIB_FLAGS}")
-
-    if(NOT _GSS_CONFIGURE_FAILED) # 0 means success
-      # this script gives us libraries and link directories. Blah. We have to deal with it.
-      string(STRIP "${_GSS_LIB_FLAGS}" _GSS_LIB_FLAGS)
-      string(REGEX REPLACE " +-(L|l)" ";-\\1" _GSS_LIB_FLAGS "${_GSS_LIB_FLAGS}")
-      string(REGEX REPLACE " +-([^Ll][^ \\t;]*)" ";-\\1" _GSS_LIB_FLAGS "${_GSS_LIB_FLAGS}")
-
-      foreach(_flag ${_GSS_LIB_FLAGS})
-        if(_flag MATCHES "^-l.*")
-          string(REGEX REPLACE "^-l" "" _val "${_flag}")
-          list(APPEND _GSS_LIBRARIES "${_val}")
-        elseif(_flag MATCHES "^-L.*")
-          string(REGEX REPLACE "^-L" "" _val "${_flag}")
-          list(APPEND _GSS_LINK_DIRECTORIES "${_val}")
-        else()
-          list(APPEND _GSS_LINKER_FLAGS "${_flag}")
-        endif()
-      endforeach()
-    endif()
-
-    execute_process(
-        COMMAND ${_GSS_CONFIGURE_SCRIPT} "--version"
-        OUTPUT_VARIABLE _GSS_VERSION
-        RESULT_VARIABLE _GSS_CONFIGURE_FAILED
-        OUTPUT_STRIP_TRAILING_WHITESPACE
-    )
-
-    # older versions may not have the "--version" parameter. In this case we just don't care.
-    if(_GSS_CONFIGURE_FAILED)
-      set(_GSS_VERSION 0)
-    endif()
-
-    execute_process(
-        COMMAND ${_GSS_CONFIGURE_SCRIPT} "--vendor"
-        OUTPUT_VARIABLE _GSS_VENDOR
-        RESULT_VARIABLE _GSS_CONFIGURE_FAILED
-        OUTPUT_STRIP_TRAILING_WHITESPACE
-    )
-
-    # older versions may not have the "--vendor" parameter. In this case we just don't care.
-    if(_GSS_CONFIGURE_FAILED)
-      set(GSS_FLAVOUR "Heimdal") # most probably, shouldn't really matter
-    else()
-      if(_GSS_VENDOR MATCHES ".*H|heimdal.*")
-        set(GSS_FLAVOUR "Heimdal")
-      else()
-        set(GSS_FLAVOUR "MIT")
-      endif()
-    endif()
-
-  else() # either there is no config script or we are on a platform that doesn't provide one (Windows?)
-
-    find_path(_GSS_INCLUDE_DIR
-        NAMES
-            "gssapi/gssapi.h"
-        HINTS
-            ${_GSS_ROOT_HINTS}
-        PATH_SUFFIXES
-            include
-            inc
-    )
-
-    if(_GSS_INCLUDE_DIR) #jay, we've found something
-      set(CMAKE_REQUIRED_INCLUDES "${_GSS_INCLUDE_DIR}")
-      check_include_files( "gssapi/gssapi_generic.h;gssapi/gssapi_krb5.h" _GSS_HAVE_MIT_HEADERS)
-
-      if(_GSS_HAVE_MIT_HEADERS)
-        set(GSS_FLAVOUR "MIT")
-      else()
-        # prevent compiling the header - just check if we can include it
-        set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D__ROKEN_H__")
-        check_include_file( "roken.h" _GSS_HAVE_ROKEN_H)
-
-        check_include_file( "heimdal/roken.h" _GSS_HAVE_HEIMDAL_ROKEN_H)
-        if(_GSS_HAVE_ROKEN_H OR _GSS_HAVE_HEIMDAL_ROKEN_H)
-          set(GSS_FLAVOUR "Heimdal")
-        endif()
-        set(CMAKE_REQUIRED_DEFINITIONS "")
-      endif()
-    else()
-      # I'm not convinced if this is the right way but this is what autotools do at the moment
-      find_path(_GSS_INCLUDE_DIR
-          NAMES
-              "gssapi.h"
-          HINTS
-              ${_GSS_ROOT_HINTS}
-          PATH_SUFFIXES
-              include
-              inc
-      )
-
-      if(_GSS_INCLUDE_DIR)
-        set(GSS_FLAVOUR "Heimdal")
-      endif()
-    endif()
-
-    # if we have headers, check if we can link libraries
-    if(GSS_FLAVOUR)
-      set(_GSS_LIBDIR_SUFFIXES "")
-      set(_GSS_LIBDIR_HINTS ${_GSS_ROOT_HINTS})
-      get_filename_component(_GSS_CALCULATED_POTENTIAL_ROOT "${_GSS_INCLUDE_DIR}" PATH)
-      list(APPEND _GSS_LIBDIR_HINTS ${_GSS_CALCULATED_POTENTIAL_ROOT})
-
-      if(WIN32)
-        if(CMAKE_SIZEOF_VOID_P EQUAL 8)
-          list(APPEND _GSS_LIBDIR_SUFFIXES "lib/AMD64")
-          if(GSS_FLAVOUR STREQUAL "MIT")
-            set(_GSS_LIBNAME "gssapi64")
-          else()
-            set(_GSS_LIBNAME "libgssapi")
-          endif()
-        else()
-          list(APPEND _GSS_LIBDIR_SUFFIXES "lib/i386")
-          if(GSS_FLAVOUR STREQUAL "MIT")
-            set(_GSS_LIBNAME "gssapi32")
-          else()
-            set(_GSS_LIBNAME "libgssapi")
-          endif()
-        endif()
-      else()
-        list(APPEND _GSS_LIBDIR_SUFFIXES "lib;lib64") # those suffixes are not checked for HINTS
-        if(GSS_FLAVOUR STREQUAL "MIT")
-          set(_GSS_LIBNAME "gssapi_krb5")
-        else()
-          set(_GSS_LIBNAME "gssapi")
-        endif()
-      endif()
-
-      find_library(_GSS_LIBRARIES
-          NAMES
-              ${_GSS_LIBNAME}
-          HINTS
-              ${_GSS_LIBDIR_HINTS}
-          PATH_SUFFIXES
-              ${_GSS_LIBDIR_SUFFIXES}
-      )
-
-    endif()
-  endif()
-else()
-  if(_GSS_PKG_${_MIT_MODNAME}_VERSION)
-    set(GSS_FLAVOUR "MIT")
-    set(_GSS_VERSION _GSS_PKG_${_MIT_MODNAME}_VERSION)
-  else()
-    set(GSS_FLAVOUR "Heimdal")
-    set(_GSS_VERSION _GSS_PKG_${_MIT_HEIMDAL}_VERSION)
-  endif()
-endif()
-
-set(GSS_INCLUDE_DIR ${_GSS_INCLUDE_DIR})
-set(GSS_LIBRARIES ${_GSS_LIBRARIES})
-set(GSS_LINK_DIRECTORIES ${_GSS_LINK_DIRECTORIES})
-set(GSS_LINKER_FLAGS ${_GSS_LINKER_FLAGS})
-set(GSS_COMPILER_FLAGS ${_GSS_COMPILER_FLAGS})
-set(GSS_VERSION ${_GSS_VERSION})
-
-if(GSS_FLAVOUR)
-  if(NOT GSS_VERSION AND GSS_FLAVOUR STREQUAL "Heimdal")
-    if(CMAKE_SIZEOF_VOID_P EQUAL 8)
-      set(HEIMDAL_MANIFEST_FILE "Heimdal.Application.amd64.manifest")
-    else()
-      set(HEIMDAL_MANIFEST_FILE "Heimdal.Application.x86.manifest")
-    endif()
-
-    if(EXISTS "${GSS_INCLUDE_DIR}/${HEIMDAL_MANIFEST_FILE}")
-      file(STRINGS "${GSS_INCLUDE_DIR}/${HEIMDAL_MANIFEST_FILE}" heimdal_version_str
-           REGEX "^.*version=\"[0-9]\\.[^\"]+\".*$")
-
-      string(REGEX MATCH "[0-9]\\.[^\"]+"
-             GSS_VERSION "${heimdal_version_str}")
-    endif()
-
-    if(NOT GSS_VERSION)
-      set(GSS_VERSION "Heimdal Unknown")
-    endif()
-  elseif(NOT GSS_VERSION AND GSS_FLAVOUR STREQUAL "MIT")
-    get_filename_component(_MIT_VERSION "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MIT\\Kerberos\\SDK\\CurrentVersion;VersionString]" NAME CACHE)
-    if(WIN32 AND _MIT_VERSION)
-      set(GSS_VERSION "${_MIT_VERSION}")
-    else()
-      set(GSS_VERSION "MIT Unknown")
-    endif()
-  endif()
-endif()
-
-include(FindPackageHandleStandardArgs)
-
-set(_GSS_REQUIRED_VARS GSS_LIBRARIES GSS_FLAVOUR)
-
-find_package_handle_standard_args(GSS
-    REQUIRED_VARS
-        ${_GSS_REQUIRED_VARS}
-    VERSION_VAR
-        GSS_VERSION
-    FAIL_MESSAGE
-        "Could NOT find GSS, try to set the path to GSS root folder in the system variable GSS_ROOT_DIR"
-)
-
-mark_as_advanced(GSS_INCLUDE_DIR GSS_LIBRARIES)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindLibSSH2.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindLibSSH2.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindLibSSH2.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindLibSSH2.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,43 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-# - Try to find the libssh2 library
-# Once done this will define
-#
-# LIBSSH2_FOUND - system has the libssh2 library
-# LIBSSH2_INCLUDE_DIR - the libssh2 include directory
-# LIBSSH2_LIBRARY - the libssh2 library name
-
-find_path(LIBSSH2_INCLUDE_DIR libssh2.h)
-
-find_library(LIBSSH2_LIBRARY NAMES ssh2 libssh2)
-
-if(LIBSSH2_INCLUDE_DIR)
-  file(STRINGS "${LIBSSH2_INCLUDE_DIR}/libssh2.h" libssh2_version_str REGEX "^#define[\t ]+LIBSSH2_VERSION[\t ]+\"(.*)\"")
-  string(REGEX REPLACE "^.*\"([^\"]+)\"" "\\1"  LIBSSH2_VERSION "${libssh2_version_str}")
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(LibSSH2
-    REQUIRED_VARS LIBSSH2_LIBRARY LIBSSH2_INCLUDE_DIR
-    VERSION_VAR LIBSSH2_VERSION)
-
-mark_as_advanced(LIBSSH2_INCLUDE_DIR LIBSSH2_LIBRARY)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindMbedTLS.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindMbedTLS.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindMbedTLS.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindMbedTLS.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,34 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2022, 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.
-#
-###########################################################################
-find_path(MBEDTLS_INCLUDE_DIRS mbedtls/ssl.h)
-
-find_library(MBEDTLS_LIBRARY mbedtls)
-find_library(MBEDX509_LIBRARY mbedx509)
-find_library(MBEDCRYPTO_LIBRARY mbedcrypto)
-
-set(MBEDTLS_LIBRARIES "${MBEDTLS_LIBRARY}" "${MBEDX509_LIBRARY}" "${MBEDCRYPTO_LIBRARY}")
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(MbedTLS DEFAULT_MSG
-    MBEDTLS_INCLUDE_DIRS MBEDTLS_LIBRARY MBEDX509_LIBRARY MBEDCRYPTO_LIBRARY)
-
-mark_as_advanced(MBEDTLS_INCLUDE_DIRS MBEDTLS_LIBRARY MBEDX509_LIBRARY MBEDCRYPTO_LIBRARY)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindMSH3.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindMSH3.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindMSH3.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindMSH3.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,68 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2022, 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.
-#
-###########################################################################
-
-#[=======================================================================[.rst:
-FindMSH3
-----------
-
-Find the msh3 library
-
-Result Variables
-^^^^^^^^^^^^^^^^
-
-``MSH3_FOUND``
-  System has msh3
-``MSH3_INCLUDE_DIRS``
-  The msh3 include directories.
-``MSH3_LIBRARIES``
-  The libraries needed to use msh3
-#]=======================================================================]
-if(UNIX)
-  find_package(PkgConfig QUIET)
-  pkg_search_module(PC_MSH3 libmsh3)
-endif()
-
-find_path(MSH3_INCLUDE_DIR msh3.h
-  HINTS
-    ${PC_MSH3_INCLUDEDIR}
-    ${PC_MSH3_INCLUDE_DIRS}
-)
-
-find_library(MSH3_LIBRARY NAMES msh3
-  HINTS
-    ${PC_MSH3_LIBDIR}
-    ${PC_MSH3_LIBRARY_DIRS}
-)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(MSH3
-  REQUIRED_VARS
-    MSH3_LIBRARY
-    MSH3_INCLUDE_DIR
-)
-
-if(MSH3_FOUND)
-  set(MSH3_LIBRARIES    ${MSH3_LIBRARY})
-  set(MSH3_INCLUDE_DIRS ${MSH3_INCLUDE_DIR})
-endif()
-
-mark_as_advanced(MSH3_INCLUDE_DIRS MSH3_LIBRARIES)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindNGHTTP2.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindNGHTTP2.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindNGHTTP2.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindNGHTTP2.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,39 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-include(FindPackageHandleStandardArgs)
-
-find_path(NGHTTP2_INCLUDE_DIR "nghttp2/nghttp2.h")
-
-find_library(NGHTTP2_LIBRARY NAMES nghttp2)
-
-find_package_handle_standard_args(NGHTTP2
-    FOUND_VAR
-      NGHTTP2_FOUND
-    REQUIRED_VARS
-      NGHTTP2_LIBRARY
-      NGHTTP2_INCLUDE_DIR
-)
-
-set(NGHTTP2_INCLUDE_DIRS ${NGHTTP2_INCLUDE_DIR})
-set(NGHTTP2_LIBRARIES ${NGHTTP2_LIBRARY})
-
-mark_as_advanced(NGHTTP2_INCLUDE_DIRS NGHTTP2_LIBRARIES)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindNGHTTP3.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindNGHTTP3.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindNGHTTP3.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindNGHTTP3.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,76 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-
-#[=======================================================================[.rst:
-FindNGHTTP3
-----------
-
-Find the nghttp3 library
-
-Result Variables
-^^^^^^^^^^^^^^^^
-
-``NGHTTP3_FOUND``
-  System has nghttp3
-``NGHTTP3_INCLUDE_DIRS``
-  The nghttp3 include directories.
-``NGHTTP3_LIBRARIES``
-  The libraries needed to use nghttp3
-``NGHTTP3_VERSION``
-  version of nghttp3.
-#]=======================================================================]
-
-if(UNIX)
-  find_package(PkgConfig QUIET)
-  pkg_search_module(PC_NGHTTP3 libnghttp3)
-endif()
-
-find_path(NGHTTP3_INCLUDE_DIR nghttp3/nghttp3.h
-  HINTS
-    ${PC_NGHTTP3_INCLUDEDIR}
-    ${PC_NGHTTP3_INCLUDE_DIRS}
-)
-
-find_library(NGHTTP3_LIBRARY NAMES nghttp3
-  HINTS
-    ${PC_NGHTTP3_LIBDIR}
-    ${PC_NGHTTP3_LIBRARY_DIRS}
-)
-
-if(PC_NGHTTP3_VERSION)
-  set(NGHTTP3_VERSION ${PC_NGHTTP3_VERSION})
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(NGHTTP3
-  REQUIRED_VARS
-    NGHTTP3_LIBRARY
-    NGHTTP3_INCLUDE_DIR
-  VERSION_VAR NGHTTP3_VERSION
-)
-
-if(NGHTTP3_FOUND)
-  set(NGHTTP3_LIBRARIES    ${NGHTTP3_LIBRARY})
-  set(NGHTTP3_INCLUDE_DIRS ${NGHTTP3_INCLUDE_DIR})
-endif()
-
-mark_as_advanced(NGHTTP3_INCLUDE_DIRS NGHTTP3_LIBRARIES)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindNGTCP2.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindNGTCP2.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindNGTCP2.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindNGTCP2.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,113 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-
-#[=======================================================================[.rst:
-FindNGTCP2
-----------
-
-Find the ngtcp2 library
-
-This module accepts optional COMPONENTS to control the crypto library (these are
-mutually exclusive)::
-
-  OpenSSL:  Use libngtcp2_crypto_openssl
-  GnuTLS:   Use libngtcp2_crypto_gnutls
-
-Result Variables
-^^^^^^^^^^^^^^^^
-
-``NGTCP2_FOUND``
-  System has ngtcp2
-``NGTCP2_INCLUDE_DIRS``
-  The ngtcp2 include directories.
-``NGTCP2_LIBRARIES``
-  The libraries needed to use ngtcp2
-``NGTCP2_VERSION``
-  version of ngtcp2.
-#]=======================================================================]
-
-if(UNIX)
-  find_package(PkgConfig QUIET)
-  pkg_search_module(PC_NGTCP2 libngtcp2)
-endif()
-
-find_path(NGTCP2_INCLUDE_DIR ngtcp2/ngtcp2.h
-  HINTS
-    ${PC_NGTCP2_INCLUDEDIR}
-    ${PC_NGTCP2_INCLUDE_DIRS}
-)
-
-find_library(NGTCP2_LIBRARY NAMES ngtcp2
-  HINTS
-    ${PC_NGTCP2_LIBDIR}
-    ${PC_NGTCP2_LIBRARY_DIRS}
-)
-
-if(PC_NGTCP2_VERSION)
-  set(NGTCP2_VERSION ${PC_NGTCP2_VERSION})
-endif()
-
-if(NGTCP2_FIND_COMPONENTS)
-  set(NGTCP2_CRYPTO_BACKEND "")
-  foreach(component IN LISTS NGTCP2_FIND_COMPONENTS)
-    if(component MATCHES "^(OpenSSL|GnuTLS)")
-      if(NGTCP2_CRYPTO_BACKEND)
-        message(FATAL_ERROR "NGTCP2: Only one crypto library can be selected")
-      endif()
-      set(NGTCP2_CRYPTO_BACKEND ${component})
-    endif()
-  endforeach()
-
-  if(NGTCP2_CRYPTO_BACKEND)
-    string(TOLOWER "ngtcp2_crypto_${NGTCP2_CRYPTO_BACKEND}" _crypto_library)
-    if(UNIX)
-      pkg_search_module(PC_${_crypto_library} lib${_crypto_library})
-    endif()
-    find_library(${_crypto_library}_LIBRARY
-      NAMES
-        ${_crypto_library}
-      HINTS
-        ${PC_${_crypto_library}_LIBDIR}
-        ${PC_${_crypto_library}_LIBRARY_DIRS}
-    )
-    if(${_crypto_library}_LIBRARY)
-      set(NGTCP2_${NGTCP2_CRYPTO_BACKEND}_FOUND TRUE)
-      set(NGTCP2_CRYPTO_LIBRARY ${${_crypto_library}_LIBRARY})
-    endif()
-  endif()
-endif()
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(NGTCP2
-  REQUIRED_VARS
-    NGTCP2_LIBRARY
-    NGTCP2_INCLUDE_DIR
-  VERSION_VAR NGTCP2_VERSION
-  HANDLE_COMPONENTS
-)
-
-if(NGTCP2_FOUND)
-  set(NGTCP2_LIBRARIES    ${NGTCP2_LIBRARY} ${NGTCP2_CRYPTO_LIBRARY})
-  set(NGTCP2_INCLUDE_DIRS ${NGTCP2_INCLUDE_DIR})
-endif()
-
-mark_as_advanced(NGTCP2_INCLUDE_DIRS NGTCP2_LIBRARIES)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindNSS.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindNSS.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindNSS.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindNSS.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,38 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-if(UNIX)
-  find_package(PkgConfig QUIET)
-  pkg_search_module(PC_NSS nss)
-endif()
-if(NOT PC_NSS_FOUND)
-  return()
-endif()
-
-set(NSS_LIBRARIES ${PC_NSS_LINK_LIBRARIES})
-set(NSS_INCLUDE_DIRS ${PC_NSS_INCLUDE_DIRS})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(NSS
-    REQUIRED_VARS NSS_LIBRARIES NSS_INCLUDE_DIRS
-    VERSION_VAR PC_NSS_VERSION)
-
-mark_as_advanced(NSS_INCLUDE_DIRS NSS_LIBRARIES)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindQUICHE.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindQUICHE.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindQUICHE.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindQUICHE.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,68 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-
-#[=======================================================================[.rst:
-FindQUICHE
-----------
-
-Find the quiche library
-
-Result Variables
-^^^^^^^^^^^^^^^^
-
-``QUICHE_FOUND``
-  System has quiche
-``QUICHE_INCLUDE_DIRS``
-  The quiche include directories.
-``QUICHE_LIBRARIES``
-  The libraries needed to use quiche
-#]=======================================================================]
-if(UNIX)
-  find_package(PkgConfig QUIET)
-  pkg_search_module(PC_QUICHE quiche)
-endif()
-
-find_path(QUICHE_INCLUDE_DIR quiche.h
-  HINTS
-    ${PC_QUICHE_INCLUDEDIR}
-    ${PC_QUICHE_INCLUDE_DIRS}
-)
-
-find_library(QUICHE_LIBRARY NAMES quiche
-  HINTS
-    ${PC_QUICHE_LIBDIR}
-    ${PC_QUICHE_LIBRARY_DIRS}
-)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(QUICHE
-  REQUIRED_VARS
-    QUICHE_LIBRARY
-    QUICHE_INCLUDE_DIR
-)
-
-if(QUICHE_FOUND)
-  set(QUICHE_LIBRARIES    ${QUICHE_LIBRARY})
-  set(QUICHE_INCLUDE_DIRS ${QUICHE_INCLUDE_DIR})
-endif()
-
-mark_as_advanced(QUICHE_INCLUDE_DIRS QUICHE_LIBRARIES)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindWolfSSL.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindWolfSSL.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindWolfSSL.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindWolfSSL.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,34 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-find_path(WolfSSL_INCLUDE_DIR NAMES wolfssl/ssl.h)
-find_library(WolfSSL_LIBRARY NAMES wolfssl)
-mark_as_advanced(WolfSSL_INCLUDE_DIR WolfSSL_LIBRARY)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(WolfSSL
-  REQUIRED_VARS WolfSSL_INCLUDE_DIR WolfSSL_LIBRARY
-  )
-
-if(WolfSSL_FOUND)
-  set(WolfSSL_INCLUDE_DIRS ${WolfSSL_INCLUDE_DIR})
-  set(WolfSSL_LIBRARIES ${WolfSSL_LIBRARY})
-endif()
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindZstd.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindZstd.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/FindZstd.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/FindZstd.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,69 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-
-#[=======================================================================[.rst:
-FindZstd
-----------
-
-Find the zstd library
-
-Result Variables
-^^^^^^^^^^^^^^^^
-
-``Zstd_FOUND``
-  System has zstd
-``Zstd_INCLUDE_DIRS``
-  The zstd include directories.
-``Zstd_LIBRARIES``
-  The libraries needed to use zstd
-#]=======================================================================]
-
-if(UNIX)
-  find_package(PkgConfig QUIET)
-  pkg_search_module(PC_Zstd libzstd)
-endif()
-
-find_path(Zstd_INCLUDE_DIR zstd.h
-  HINTS
-    ${PC_Zstd_INCLUDEDIR}
-    ${PC_Zstd_INCLUDE_DIRS}
-)
-
-find_library(Zstd_LIBRARY NAMES zstd
-  HINTS
-    ${PC_Zstd_LIBDIR}
-    ${PC_Zstd_LIBRARY_DIRS}
-)
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Zstd
-  REQUIRED_VARS
-    Zstd_LIBRARY
-    Zstd_INCLUDE_DIR
-)
-
-if(Zstd_FOUND)
-  set(Zstd_LIBRARIES    ${Zstd_LIBRARY})
-  set(Zstd_INCLUDE_DIRS ${Zstd_INCLUDE_DIR})
-endif()
-
-mark_as_advanced(Zstd_INCLUDE_DIRS Zstd_LIBRARIES)
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/Macros.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/Macros.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/Macros.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/Macros.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,120 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-#File defines convenience macros for available feature testing
-
-# This macro checks if the symbol exists in the library and if it
-# does, it prepends library to the list.  It is intended to be called
-# multiple times with a sequence of possibly dependent libraries in
-# order of least-to-most-dependent.  Some libraries depend on others
-# to link correctly.
-macro(check_library_exists_concat LIBRARY SYMBOL VARIABLE)
-  check_library_exists("${LIBRARY};${CURL_LIBS}" ${SYMBOL} "${CMAKE_LIBRARY_PATH}"
-    ${VARIABLE})
-  if(${VARIABLE})
-    set(CURL_LIBS ${LIBRARY} ${CURL_LIBS})
-  endif()
-endmacro()
-
-# Check if header file exists and add it to the list.
-# This macro is intended to be called multiple times with a sequence of
-# possibly dependent header files.  Some headers depend on others to be
-# compiled correctly.
-macro(check_include_file_concat FILE VARIABLE)
-  check_include_files("${CURL_INCLUDES};${FILE}" ${VARIABLE})
-  if(${VARIABLE})
-    set(CURL_INCLUDES ${CURL_INCLUDES} ${FILE})
-    set(CURL_TEST_DEFINES "${CURL_TEST_DEFINES} -D${VARIABLE}")
-  endif()
-endmacro()
-
-# For other curl specific tests, use this macro.
-macro(curl_internal_test CURL_TEST)
-  if(NOT DEFINED "${CURL_TEST}")
-    set(MACRO_CHECK_FUNCTION_DEFINITIONS
-      "-D${CURL_TEST} ${CURL_TEST_DEFINES} ${CMAKE_REQUIRED_FLAGS}")
-    if(CMAKE_REQUIRED_LIBRARIES)
-      set(CURL_TEST_ADD_LIBRARIES
-        "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}")
-    endif()
-
-    message(STATUS "Performing Curl Test ${CURL_TEST}")
-    try_compile(${CURL_TEST}
-      ${CMAKE_BINARY_DIR}
-      ${CMAKE_CURRENT_SOURCE_DIR}/CMake/CurlTests.c
-      CMAKE_FLAGS -DCOMPILE_DEFINITIONS:STRING=${MACRO_CHECK_FUNCTION_DEFINITIONS}
-      "${CURL_TEST_ADD_LIBRARIES}"
-      OUTPUT_VARIABLE OUTPUT)
-    if(${CURL_TEST})
-      set(${CURL_TEST} 1 CACHE INTERNAL "Curl test ${FUNCTION}")
-      message(STATUS "Performing Curl Test ${CURL_TEST} - Success")
-      file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
-        "Performing Curl Test ${CURL_TEST} passed with the following output:\n"
-        "${OUTPUT}\n")
-    else()
-      message(STATUS "Performing Curl Test ${CURL_TEST} - Failed")
-      set(${CURL_TEST} "" CACHE INTERNAL "Curl test ${FUNCTION}")
-      file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
-        "Performing Curl Test ${CURL_TEST} failed with the following output:\n"
-        "${OUTPUT}\n")
-    endif()
-  endif()
-endmacro()
-
-macro(curl_nroff_check)
-  find_program(NROFF NAMES gnroff nroff)
-  if(NROFF)
-    # Need a way to write to stdin, this will do
-    file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/nroff-input.txt" "test")
-    # Tests for a valid nroff option to generate a manpage
-    foreach(_MANOPT "-man" "-mandoc")
-      execute_process(COMMAND "${NROFF}" ${_MANOPT}
-        OUTPUT_VARIABLE NROFF_MANOPT_OUTPUT
-        INPUT_FILE "${CMAKE_CURRENT_BINARY_DIR}/nroff-input.txt"
-        ERROR_QUIET)
-      # Save the option if it was valid
-      if(NROFF_MANOPT_OUTPUT)
-        message("Found *nroff option: -- ${_MANOPT}")
-        set(NROFF_MANOPT ${_MANOPT})
-        set(NROFF_USEFUL ON)
-        break()
-      endif()
-    endforeach()
-    # No need for the temporary file
-    file(REMOVE "${CMAKE_CURRENT_BINARY_DIR}/nroff-input.txt")
-    if(NOT NROFF_USEFUL)
-      message(WARNING "Found no *nroff option to get plaintext from man pages")
-    endif()
-  else()
-    message(WARNING "Found no *nroff program")
-  endif()
-endmacro()
-
-macro(optional_dependency DEPENDENCY)
-  set(CURL_${DEPENDENCY} AUTO CACHE STRING "Build curl with ${DEPENDENCY} support (AUTO, ON or OFF)")
-  set_property(CACHE CURL_${DEPENDENCY} PROPERTY STRINGS AUTO ON OFF)
-
-  if(CURL_${DEPENDENCY} STREQUAL AUTO)
-    find_package(${DEPENDENCY})
-  elseif(CURL_${DEPENDENCY})
-    find_package(${DEPENDENCY} REQUIRED)
-  endif()
-endmacro()
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/OtherTests.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/OtherTests.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/OtherTests.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/OtherTests.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,286 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2022, 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.
-#
-###########################################################################
-include(CheckCSourceCompiles)
-# The begin of the sources (macros and includes)
-set(_source_epilogue "#undef inline")
-
-macro(add_header_include check header)
-  if(${check})
-    set(_source_epilogue "${_source_epilogue}\n#include <${header}>")
-  endif()
-endmacro()
-
-set(signature_call_conv)
-if(HAVE_WINDOWS_H)
-  add_header_include(HAVE_WINSOCK2_H "winsock2.h")
-  add_header_include(HAVE_WINDOWS_H "windows.h")
-  set(_source_epilogue
-      "${_source_epilogue}\n#ifndef WIN32_LEAN_AND_MEAN\n#define WIN32_LEAN_AND_MEAN\n#endif")
-  set(signature_call_conv "PASCAL")
-  if(HAVE_LIBWS2_32)
-    set(CMAKE_REQUIRED_LIBRARIES ws2_32)
-  endif()
-else()
-  add_header_include(HAVE_SYS_TYPES_H "sys/types.h")
-  add_header_include(HAVE_SYS_SOCKET_H "sys/socket.h")
-endif()
-
-set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)
-
-function(curl_cv_func_recv_run_test recv_retv recv_arg1 recv_arg2 recv_arg3 recv_arg4)
-  unset(curl_cv_func_recv_test CACHE)
-  check_c_source_compiles("
-    ${_source_epilogue}
-    #ifdef WINSOCK_API_LINKAGE
-    WINSOCK_API_LINKAGE
-    #endif
-    extern ${recv_retv} ${signature_call_conv}
-    recv(${recv_arg1}, ${recv_arg2}, ${recv_arg3}, ${recv_arg4});
-    int main(void) {
-      ${recv_arg1} s=0;
-      ${recv_arg2} buf=0;
-      ${recv_arg3} len=0;
-      ${recv_arg4} flags=0;
-      ${recv_retv} res = recv(s, buf, len, flags);
-      (void) res;
-      return 0;
-    }"
-    curl_cv_func_recv_test)
-  message(STATUS
-    "Tested: ${recv_retv} recv(${recv_arg1}, ${recv_arg2}, ${recv_arg3}, ${recv_arg4})")
-  if(curl_cv_func_recv_test)
-    set(curl_cv_func_recv_args
-      "${recv_arg1},${recv_arg2},${recv_arg3},${recv_arg4},${recv_retv}" PARENT_SCOPE)
-    set(RECV_TYPE_ARG1 "${recv_arg1}" PARENT_SCOPE)
-    set(RECV_TYPE_ARG2 "${recv_arg2}" PARENT_SCOPE)
-    set(RECV_TYPE_ARG3 "${recv_arg3}" PARENT_SCOPE)
-    set(RECV_TYPE_ARG4 "${recv_arg4}" PARENT_SCOPE)
-    set(RECV_TYPE_RETV "${recv_retv}" PARENT_SCOPE)
-    set(HAVE_RECV 1 PARENT_SCOPE)
-    set(curl_cv_func_recv_done 1 PARENT_SCOPE)
-  endif()
-endfunction()
-
-check_c_source_compiles("${_source_epilogue}
-int main(void) {
-    recv(0, 0, 0, 0);
-    return 0;
-}" curl_cv_recv)
-if(curl_cv_recv)
-  if(NOT DEFINED curl_cv_func_recv_args OR curl_cv_func_recv_args STREQUAL "unknown")
-    if(APPLE)
-      curl_cv_func_recv_run_test("ssize_t" "int" "void *" "size_t" "int")
-    endif()
-    foreach(recv_retv "int" "ssize_t" )
-      foreach(recv_arg1 "SOCKET" "int" )
-        foreach(recv_arg2 "char *" "void *" )
-          foreach(recv_arg3 "int" "size_t" "socklen_t" "unsigned int")
-            foreach(recv_arg4 "int" "unsigned int")
-              if(NOT curl_cv_func_recv_done)
-                curl_cv_func_recv_run_test(${recv_retv} ${recv_arg1} ${recv_arg2} ${recv_arg3} ${recv_arg4})
-              endif()
-            endforeach()
-          endforeach()
-        endforeach()
-      endforeach()
-    endforeach()
-  else()
-    string(REGEX REPLACE "^([^,]*),[^,]*,[^,]*,[^,]*,[^,]*$" "\\1" RECV_TYPE_ARG1 "${curl_cv_func_recv_args}")
-    string(REGEX REPLACE "^[^,]*,([^,]*),[^,]*,[^,]*,[^,]*$" "\\1" RECV_TYPE_ARG2 "${curl_cv_func_recv_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,([^,]*),[^,]*,[^,]*$" "\\1" RECV_TYPE_ARG3 "${curl_cv_func_recv_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,([^,]*),[^,]*$" "\\1" RECV_TYPE_ARG4 "${curl_cv_func_recv_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,[^,]*,([^,]*)$" "\\1" RECV_TYPE_RETV "${curl_cv_func_recv_args}")
-  endif()
-
-  if(curl_cv_func_recv_args STREQUAL "unknown")
-    message(FATAL_ERROR "Cannot find proper types to use for recv args")
-  endif()
-else()
-  message(FATAL_ERROR "Unable to link function recv")
-endif()
-set(curl_cv_func_recv_args "${curl_cv_func_recv_args}" CACHE INTERNAL "Arguments for recv")
-set(HAVE_RECV 1)
-
-function(curl_cv_func_send_run_test send_retv send_arg1 send_arg2 send_arg3 send_arg4)
-  unset(curl_cv_func_send_test CACHE)
-  check_c_source_compiles("
-    ${_source_epilogue}
-    #ifdef WINSOCK_API_LINKAGE
-    WINSOCK_API_LINKAGE
-    #endif
-    extern ${send_retv} ${signature_call_conv}
-    send(${send_arg1}, ${send_arg2}, ${send_arg3}, ${send_arg4});
-    int main(void) {
-      ${send_arg1} s=0;
-      ${send_arg2} buf=0;
-      ${send_arg3} len=0;
-      ${send_arg4} flags=0;
-      ${send_retv} res = send(s, buf, len, flags);
-      (void) res;
-      return 0;
-    }"
-    curl_cv_func_send_test)
-  message(STATUS
-    "Tested: ${send_retv} send(${send_arg1}, ${send_arg2}, ${send_arg3}, ${send_arg4})")
-  if(curl_cv_func_send_test)
-    string(REGEX REPLACE "(const) .*" "\\1" send_qual_arg2 "${send_arg2}")
-    string(REGEX REPLACE "const (.*)" "\\1" send_arg2 "${send_arg2}")
-    set(curl_cv_func_send_args
-      "${send_arg1},${send_arg2},${send_arg3},${send_arg4},${send_retv},${send_qual_arg2}" PARENT_SCOPE)
-    set(SEND_TYPE_ARG1 "${send_arg1}" PARENT_SCOPE)
-    set(SEND_TYPE_ARG2 "${send_arg2}" PARENT_SCOPE)
-    set(SEND_TYPE_ARG3 "${send_arg3}" PARENT_SCOPE)
-    set(SEND_TYPE_ARG4 "${send_arg4}" PARENT_SCOPE)
-    set(SEND_TYPE_RETV "${send_retv}" PARENT_SCOPE)
-    set(HAVE_SEND 1 PARENT_SCOPE)
-    set(curl_cv_func_send_done 1 PARENT_SCOPE)
-  endif()
-endfunction()
-
-check_c_source_compiles("${_source_epilogue}
-int main(void) {
-    send(0, 0, 0, 0);
-    return 0;
-}" curl_cv_send)
-if(curl_cv_send)
-  if(NOT DEFINED curl_cv_func_send_args OR "${curl_cv_func_send_args}" STREQUAL "unknown")
-    if(APPLE)
-      curl_cv_func_send_run_test("ssize_t" "int" "const void *" "size_t" "int")
-    endif()
-    foreach(send_retv "int" "ssize_t" )
-      foreach(send_arg1 "SOCKET" "int" "ssize_t" )
-        foreach(send_arg2 "const char *" "const void *" "void *" "char *")
-          foreach(send_arg3 "int" "size_t" "socklen_t" "unsigned int")
-            foreach(send_arg4 "int" "unsigned int")
-              if(NOT curl_cv_func_send_done)
-                curl_cv_func_send_run_test("${send_retv}" "${send_arg1}" "${send_arg2}" "${send_arg3}" "${send_arg4}")
-              endif()
-            endforeach()
-          endforeach()
-        endforeach()
-      endforeach()
-    endforeach()
-  else()
-    string(REGEX REPLACE "^([^,]*),[^,]*,[^,]*,[^,]*,[^,]*,[^,]*$" "\\1" SEND_TYPE_ARG1 "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,([^,]*),[^,]*,[^,]*,[^,]*,[^,]*$" "\\1" SEND_TYPE_ARG2 "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,([^,]*),[^,]*,[^,]*,[^,]*$" "\\1" SEND_TYPE_ARG3 "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,([^,]*),[^,]*,[^,]*$" "\\1" SEND_TYPE_ARG4 "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,[^,]*,([^,]*),[^,]*$" "\\1" SEND_TYPE_RETV "${curl_cv_func_send_args}")
-    string(REGEX REPLACE "^[^,]*,[^,]*,[^,]*,[^,]*,[^,]*,([^,]*)$" "\\1" SEND_QUAL_ARG2 "${curl_cv_func_send_args}")
-  endif()
-
-  if("${curl_cv_func_send_args}" STREQUAL "unknown")
-    message(FATAL_ERROR "Cannot find proper types to use for send args")
-  endif()
-  set(SEND_QUAL_ARG2 "const")
-else()
-  message(FATAL_ERROR "Unable to link function send")
-endif()
-set(curl_cv_func_send_args "${curl_cv_func_send_args}" CACHE INTERNAL "Arguments for send")
-set(HAVE_SEND 1)
-
-check_c_source_compiles("${_source_epilogue}
-  int main(void) {
-    int flag = MSG_NOSIGNAL;
-    (void)flag;
-    return 0;
-  }" HAVE_MSG_NOSIGNAL)
-
-if(NOT HAVE_WINDOWS_H)
-  add_header_include(HAVE_SYS_TIME_H "sys/time.h")
-  add_header_include(TIME_WITH_SYS_TIME "time.h")
-  add_header_include(HAVE_TIME_H "time.h")
-endif()
-check_c_source_compiles("${_source_epilogue}
-int main(void) {
-  struct timeval ts;
-  ts.tv_sec  = 0;
-  ts.tv_usec = 0;
-  (void)ts;
-  return 0;
-}" HAVE_STRUCT_TIMEVAL)
-
-if(HAVE_WINDOWS_H)
-  set(CMAKE_EXTRA_INCLUDE_FILES winsock2.h)
-else()
-  set(CMAKE_EXTRA_INCLUDE_FILES)
-  if(HAVE_SYS_SOCKET_H)
-    set(CMAKE_EXTRA_INCLUDE_FILES sys/socket.h)
-  endif()
-endif()
-
-check_type_size("struct sockaddr_storage" SIZEOF_STRUCT_SOCKADDR_STORAGE)
-if(HAVE_SIZEOF_STRUCT_SOCKADDR_STORAGE)
-  set(HAVE_STRUCT_SOCKADDR_STORAGE 1)
-endif()
-
-unset(CMAKE_TRY_COMPILE_TARGET_TYPE)
-
-if(NOT DEFINED CMAKE_TOOLCHAIN_FILE)
-  if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin" AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "iOS")
-  # only try this on non-apple platforms
-
-  # if not cross-compilation...
-  include(CheckCSourceRuns)
-  set(CMAKE_REQUIRED_FLAGS "")
-  if(HAVE_SYS_POLL_H)
-    set(CMAKE_REQUIRED_FLAGS "-DHAVE_SYS_POLL_H")
-  elseif(HAVE_POLL_H)
-    set(CMAKE_REQUIRED_FLAGS "-DHAVE_POLL_H")
-  endif()
-  check_c_source_runs("
-    #include <stdlib.h>
-    #include <sys/time.h>
-
-    #ifdef HAVE_SYS_POLL_H
-    #  include <sys/poll.h>
-    #elif  HAVE_POLL_H
-    #  include <poll.h>
-    #endif
-
-    int main(void)
-    {
-        if(0 != poll(0, 0, 10)) {
-          return 1; /* fail */
-        }
-        else {
-          /* detect the 10.12 poll() breakage */
-          struct timeval before, after;
-          int rc;
-          size_t us;
-
-          gettimeofday(&before, NULL);
-          rc = poll(NULL, 0, 500);
-          gettimeofday(&after, NULL);
-
-          us = (after.tv_sec - before.tv_sec) * 1000000 +
-            (after.tv_usec - before.tv_usec);
-
-          if(us < 400000) {
-            return 1;
-          }
-        }
-        return 0;
-    }" HAVE_POLL_FINE)
-  endif()
-endif()
-
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/Platforms/WindowsCache.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/Platforms/WindowsCache.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/Platforms/WindowsCache.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/Platforms/WindowsCache.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,127 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2021, 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.
-#
-###########################################################################
-if(NOT UNIX)
-  if(WIN32)
-    set(HAVE_LIBDL 0)
-    set(HAVE_LIBUCB 0)
-    set(HAVE_LIBSOCKET 0)
-    set(NOT_NEED_LIBNSL 0)
-    set(HAVE_LIBNSL 0)
-    set(HAVE_GETHOSTNAME 1)
-    set(HAVE_LIBZ 0)
-
-    set(HAVE_DLOPEN 0)
-
-    set(HAVE_ALLOCA_H 0)
-    set(HAVE_ARPA_INET_H 0)
-    set(HAVE_DLFCN_H 0)
-    set(HAVE_FCNTL_H 1)
-    set(HAVE_INTTYPES_H 0)
-    set(HAVE_IO_H 1)
-    set(HAVE_MALLOC_H 1)
-    set(HAVE_MEMORY_H 1)
-    set(HAVE_NETDB_H 0)
-    set(HAVE_NETINET_IF_ETHER_H 0)
-    set(HAVE_NETINET_IN_H 0)
-    set(HAVE_NET_IF_H 0)
-    set(HAVE_PROCESS_H 1)
-    set(HAVE_PWD_H 0)
-    set(HAVE_SETJMP_H 1)
-    set(HAVE_SIGNAL_H 1)
-    set(HAVE_SOCKIO_H 0)
-    set(HAVE_STDINT_H 0)
-    set(HAVE_STDLIB_H 1)
-    set(HAVE_STRINGS_H 0)
-    set(HAVE_STRING_H 1)
-    set(HAVE_SYS_PARAM_H 0)
-    set(HAVE_SYS_POLL_H 0)
-    set(HAVE_SYS_SELECT_H 0)
-    set(HAVE_SYS_SOCKET_H 0)
-    set(HAVE_SYS_SOCKIO_H 0)
-    set(HAVE_SYS_STAT_H 1)
-    set(HAVE_SYS_TIME_H 0)
-    set(HAVE_SYS_TYPES_H 1)
-    set(HAVE_SYS_UTIME_H 1)
-    set(HAVE_TERMIOS_H 0)
-    set(HAVE_TERMIO_H 0)
-    set(HAVE_TIME_H 1)
-    set(HAVE_UNISTD_H 0)
-    set(HAVE_UTIME_H 0)
-    set(HAVE_X509_H 0)
-    set(HAVE_ZLIB_H 0)
-
-    set(HAVE_SIZEOF_LONG_DOUBLE 1)
-    set(SIZEOF_LONG_DOUBLE 8)
-
-    set(HAVE_SOCKET 1)
-    set(HAVE_POLL 0)
-    set(HAVE_SELECT 1)
-    set(HAVE_STRDUP 1)
-    set(HAVE_STRSTR 1)
-    set(HAVE_STRTOK_R 0)
-    set(HAVE_STRFTIME 1)
-    set(HAVE_UNAME 0)
-    set(HAVE_STRCASECMP 0)
-    set(HAVE_STRICMP 1)
-    set(HAVE_STRCMPI 1)
-    set(HAVE_GETTIMEOFDAY 0)
-    set(HAVE_INET_ADDR 1)
-    set(HAVE_CLOSESOCKET 1)
-    set(HAVE_SETVBUF 0)
-    set(HAVE_SIGSETJMP 0)
-    set(HAVE_GETPASS_R 0)
-    set(HAVE_STRLCAT 0)
-    set(HAVE_GETPWUID 0)
-    set(HAVE_GETEUID 0)
-    set(HAVE_UTIME 1)
-    set(HAVE_RAND_EGD 0)
-    set(HAVE_RAND_SCREEN 0)
-    set(HAVE_RAND_STATUS 0)
-    set(HAVE_GMTIME_R 0)
-    set(HAVE_LOCALTIME_R 0)
-    set(HAVE_GETHOSTBYNAME_R 0)
-    set(HAVE_SIGNAL_FUNC 1)
-    set(HAVE_SIGNAL_MACRO 0)
-
-    set(HAVE_GETHOSTBYNAME_R_3 0)
-    set(HAVE_GETHOSTBYNAME_R_3_REENTRANT 0)
-    set(HAVE_GETHOSTBYNAME_R_5 0)
-    set(HAVE_GETHOSTBYNAME_R_5_REENTRANT 0)
-    set(HAVE_GETHOSTBYNAME_R_6 0)
-    set(HAVE_GETHOSTBYNAME_R_6_REENTRANT 0)
-
-    set(TIME_WITH_SYS_TIME 0)
-    set(HAVE_O_NONBLOCK 0)
-    set(HAVE_IN_ADDR_T 0)
-    if(ENABLE_IPV6)
-      set(HAVE_GETADDRINFO 1)
-    else()
-      set(HAVE_GETADDRINFO 0)
-    endif()
-    set(STDC_HEADERS 1)
-
-    set(HAVE_SIGACTION 0)
-    set(HAVE_MACRO_SIGSETJMP 0)
-  else()
-    message("This file should be included on Windows platform only")
-  endif()
-endif()
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMake/Utilities.cmake 8.0.32-1/extra/curl/curl-7.83.1/CMake/Utilities.cmake
--- 8.0.31-1/extra/curl/curl-7.83.1/CMake/Utilities.cmake	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMake/Utilities.cmake	1970-01-01 00:00:00.000000000 +0000
@@ -1,33 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-# File containing various utilities
-
-# Returns a list of arguments that evaluate to true
-function(count_true output_count_var)
-  set(lst_len 0)
-  foreach(option_var IN LISTS ARGN)
-    if(${option_var})
-      math(EXPR lst_len "${lst_len} + 1")
-    endif()
-  endforeach()
-  set(${output_count_var} ${lst_len} PARENT_SCOPE)
-endfunction()
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/CMakeLists.txt 8.0.32-1/extra/curl/curl-7.83.1/CMakeLists.txt
--- 8.0.31-1/extra/curl/curl-7.83.1/CMakeLists.txt	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/CMakeLists.txt	1970-01-01 00:00:00.000000000 +0000
@@ -1,1618 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2022, 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.
-#
-###########################################################################
-# curl/libcurl CMake script
-# by Tetetest and Sukender (Benoit Neil)
-
-# TODO:
-# The output .so file lacks the soname number which we currently have within the lib/Makefile.am file
-# Add full (4 or 5 libs) SSL support
-# Add INSTALL target (EXTRA_DIST variables in Makefile.am may be moved to Makefile.inc so that CMake/CPack is aware of what's to include).
-# Check on all possible platforms
-# Test with as many configurations possible (With or without any option)
-# Create scripts that help keeping the CMake build system up to date (to reduce maintenance). According to Tetetest:
-#  - lists of headers that 'configure' checks for;
-#  - curl-specific tests (the ones that are in m4/curl-*.m4 files);
-#  - (most obvious thing:) curl version numbers.
-# Add documentation subproject
-#
-# To check:
-# (From Daniel Stenberg) The cmake build selected to run gcc with -fPIC on my box while the plain configure script did not.
-# (From Daniel Stenberg) The gcc command line use neither -g nor any -O options. As a developer, I also treasure our configure scripts's --enable-debug option that sets a long range of "picky" compiler options.
-
-## cmake_minimum_required(VERSION 3.2...3.16 FATAL_ERROR)
-
-set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake;${CMAKE_MODULE_PATH}")
-include(Utilities)
-include(Macros)
-include(CMakeDependentOption)
-include(CheckCCompilerFlag)
-
-project(CURL C)
-
-file(STRINGS ${CURL_SOURCE_DIR}/include/curl/curlver.h CURL_VERSION_H_CONTENTS REGEX "#define LIBCURL_VERSION( |_NUM )")
-string(REGEX MATCH "#define LIBCURL_VERSION \"[^\"]*"
-  CURL_VERSION ${CURL_VERSION_H_CONTENTS})
-string(REGEX REPLACE "[^\"]+\"" "" CURL_VERSION ${CURL_VERSION})
-string(REGEX MATCH "#define LIBCURL_VERSION_NUM 0x[0-9a-fA-F]+"
-  CURL_VERSION_NUM ${CURL_VERSION_H_CONTENTS})
-string(REGEX REPLACE "[^0]+0x" "" CURL_VERSION_NUM ${CURL_VERSION_NUM})
-
-
-# Setup package meta-data
-# SET(PACKAGE "curl")
-message(STATUS "curl version=[${CURL_VERSION}]")
-# SET(PACKAGE_TARNAME "curl")
-# SET(PACKAGE_NAME "curl")
-# SET(PACKAGE_VERSION "-")
-# SET(PACKAGE_STRING "curl-")
-# SET(PACKAGE_BUGREPORT "a suitable curl mailing list => https://curl.se/mail/")
-set(OPERATING_SYSTEM "${CMAKE_SYSTEM_NAME}")
-set(OS "\"${CMAKE_SYSTEM_NAME}\"")
-
-include_directories(${CURL_SOURCE_DIR}/include)
-
-option(CURL_WERROR "Turn compiler warnings into errors" OFF)
-option(PICKY_COMPILER "Enable picky compiler options" ON)
-option(BUILD_CURL_EXE "Set to ON to build curl executable." ON)
-## option(BUILD_SHARED_LIBS "Build shared libraries" ON)
-option(ENABLE_ARES "Set to ON to enable c-ares support" OFF)
-if(WIN32)
-  option(CURL_STATIC_CRT "Set to ON to build libcurl with static CRT on Windows (/MT)." OFF)
-  option(ENABLE_INET_PTON "Set to OFF to prevent usage of inet_pton when building against modern SDKs while still requiring compatibility with older Windows versions, such as Windows XP, Windows Server 2003 etc." ON)
-  option(ENABLE_UNICODE "Set to ON to use the Unicode version of the Windows API functions" OFF)
-  set(CURL_TARGET_WINDOWS_VERSION "" CACHE STRING "Minimum target Windows version as hex string")
-  if(CURL_TARGET_WINDOWS_VERSION)
-    add_definitions(-D_WIN32_WINNT=${CURL_TARGET_WINDOWS_VERSION})
-    set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_WIN32_WINNT=${CURL_TARGET_WINDOWS_VERSION}")
-  elseif(ENABLE_INET_PTON)
-    # _WIN32_WINNT_VISTA (0x0600)
-    add_definitions(-D_WIN32_WINNT=0x0600)
-    set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_WIN32_WINNT=0x0600")
-  else()
-    # _WIN32_WINNT_WINXP (0x0501)
-    add_definitions(-D_WIN32_WINNT=0x0501)
-    set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_WIN32_WINNT=0x0501")
-  endif()
-  if(ENABLE_UNICODE)
-    add_definitions(-DUNICODE -D_UNICODE)
-    if(MINGW)
-      add_compile_options(-municode)
-    endif()
-  endif()
-endif()
-option(CURL_LTO "Turn on compiler Link Time Optimizations" OFF)
-
-cmake_dependent_option(ENABLE_THREADED_RESOLVER "Set to ON to enable threaded DNS lookup"
-        ON "NOT ENABLE_ARES"
-        OFF)
-
-option(ENABLE_DEBUG "Set to ON to enable curl debug features" OFF)
-option(ENABLE_CURLDEBUG "Set to ON to build with TrackMemory feature enabled" OFF)
-
-if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_CLANG)
-  if(PICKY_COMPILER)
-    foreach(_CCOPT -pedantic -Wall -W -Wpointer-arith -Wwrite-strings -Wunused -Wshadow -Winline -Wnested-externs -Wmissing-declarations -Wmissing-prototypes -Wfloat-equal -Wsign-compare -Wundef -Wendif-labels -Wstrict-prototypes -Wdeclaration-after-statement -Wstrict-aliasing=3 -Wcast-align -Wtype-limits -Wold-style-declaration -Wmissing-parameter-type -Wempty-body -Wclobbered -Wignored-qualifiers -Wconversion -Wvla -Wdouble-promotion -Wenum-conversion -Warith-conversion)
-      # surprisingly, CHECK_C_COMPILER_FLAG needs a new variable to store each new
-      # test result in.
-      string(MAKE_C_IDENTIFIER "OPT${_CCOPT}" _optvarname)
-      check_c_compiler_flag(${_CCOPT} ${_optvarname})
-      if(${_optvarname})
-        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_CCOPT}")
-      endif()
-    endforeach()
-    foreach(_CCOPT long-long multichar format-nonliteral sign-conversion system-headers pedantic-ms-format)
-      # GCC only warns about unknown -Wno- options if there are also other diagnostic messages,
-      # so test for the positive form instead
-      string(MAKE_C_IDENTIFIER "OPT${_CCOPT}" _optvarname)
-      check_c_compiler_flag("-W${_CCOPT}" ${_optvarname})
-      if(${_optvarname})
-        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-${_CCOPT}")
-      endif()
-    endforeach()
-  endif()
-endif()
-
-if(ENABLE_DEBUG)
-  # DEBUGBUILD will be defined only for Debug builds
-  set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS $<$<CONFIG:Debug>:DEBUGBUILD>)
-  set(ENABLE_CURLDEBUG ON)
-endif()
-
-if(ENABLE_CURLDEBUG)
-  set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS CURLDEBUG)
-endif()
-
-# For debug libs and exes, add "-d" postfix
-if(NOT DEFINED CMAKE_DEBUG_POSTFIX)
-#  set(CMAKE_DEBUG_POSTFIX "-d")
-endif()
-
-# initialize CURL_LIBS
-set(CURL_LIBS "")
-
-if(ENABLE_ARES)
-  set(USE_ARES 1)
-  find_package(CARES REQUIRED)
-  list(APPEND CURL_LIBS ${CARES_LIBRARY})
-endif()
-
-include(CurlSymbolHiding)
-
-option(CURL_ENABLE_EXPORT_TARGET "to enable cmake export target" ON)
-mark_as_advanced(CURL_ENABLE_EXPORT_TARGET)
-
-option(CURL_DISABLE_ALTSVC "disables alt-svc support" OFF)
-mark_as_advanced(CURL_DISABLE_ALTSVC)
-option(CURL_DISABLE_COOKIES "disables cookies support" OFF)
-mark_as_advanced(CURL_DISABLE_COOKIES)
-option(CURL_DISABLE_CRYPTO_AUTH "disables cryptographic authentication" OFF)
-mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH)
-option(CURL_DISABLE_DICT "disables DICT" OFF)
-mark_as_advanced(CURL_DISABLE_DICT)
-option(CURL_DISABLE_DOH "disables DNS-over-HTTPS" OFF)
-mark_as_advanced(CURL_DISABLE_DOH)
-option(CURL_DISABLE_FILE "disables FILE" OFF)
-mark_as_advanced(CURL_DISABLE_FILE)
-option(CURL_DISABLE_FTP "disables FTP" OFF)
-mark_as_advanced(CURL_DISABLE_FTP)
-option(CURL_DISABLE_GETOPTIONS "disables curl_easy_options API for existing options to curl_easy_setopt" OFF)
-mark_as_advanced(CURL_DISABLE_GETOPTIONS)
-option(CURL_DISABLE_GOPHER "disables Gopher" OFF)
-mark_as_advanced(CURL_DISABLE_GOPHER)
-option(CURL_DISABLE_HSTS "disables HSTS support" OFF)
-mark_as_advanced(CURL_DISABLE_HSTS)
-option(CURL_DISABLE_HTTP "disables HTTP" OFF)
-mark_as_advanced(CURL_DISABLE_HTTP)
-option(CURL_DISABLE_HTTP_AUTH "disables all HTTP authentication methods" OFF)
-mark_as_advanced(CURL_DISABLE_HTTP_AUTH)
-option(CURL_DISABLE_IMAP "disables IMAP" OFF)
-mark_as_advanced(CURL_DISABLE_IMAP)
-option(CURL_DISABLE_LDAP "disables LDAP" OFF)
-mark_as_advanced(CURL_DISABLE_LDAP)
-option(CURL_DISABLE_LDAPS "disables LDAPS" OFF)
-mark_as_advanced(CURL_DISABLE_LDAPS)
-option(CURL_DISABLE_LIBCURL_OPTION "disables --libcurl option from the curl tool" OFF)
-mark_as_advanced(CURL_DISABLE_LIBCURL_OPTION)
-option(CURL_DISABLE_MIME "disables MIME support" OFF)
-mark_as_advanced(CURL_DISABLE_MIME)
-option(CURL_DISABLE_MQTT "disables MQTT" OFF)
-mark_as_advanced(CURL_DISABLE_MQTT)
-option(CURL_DISABLE_NETRC "disables netrc parser" OFF)
-mark_as_advanced(CURL_DISABLE_NETRC)
-option(CURL_DISABLE_NTLM "disables NTLM support" OFF)
-mark_as_advanced(CURL_DISABLE_NTLM)
-option(CURL_DISABLE_PARSEDATE "disables date parsing" OFF)
-mark_as_advanced(CURL_DISABLE_PARSEDATE)
-option(CURL_DISABLE_POP3 "disables POP3" OFF)
-mark_as_advanced(CURL_DISABLE_POP3)
-option(CURL_DISABLE_PROGRESS_METER "disables built-in progress meter" OFF)
-mark_as_advanced(CURL_DISABLE_PROGRESS_METER)
-option(CURL_DISABLE_PROXY "disables proxy support" OFF)
-mark_as_advanced(CURL_DISABLE_PROXY)
-option(CURL_DISABLE_RTSP "disables RTSP" OFF)
-mark_as_advanced(CURL_DISABLE_RTSP)
-option(CURL_DISABLE_SHUFFLE_DNS "disables shuffle DNS feature" OFF)
-mark_as_advanced(CURL_DISABLE_SHUFFLE_DNS)
-option(CURL_DISABLE_SMB "disables SMB" OFF)
-mark_as_advanced(CURL_DISABLE_SMB)
-option(CURL_DISABLE_SMTP "disables SMTP" OFF)
-mark_as_advanced(CURL_DISABLE_SMTP)
-option(CURL_DISABLE_SOCKETPAIR "disables use of socketpair for curl_multi_poll" OFF)
-mark_as_advanced(CURL_DISABLE_SOCKETPAIR)
-option(CURL_DISABLE_TELNET "disables Telnet" OFF)
-mark_as_advanced(CURL_DISABLE_TELNET)
-option(CURL_DISABLE_TFTP "disables TFTP" OFF)
-mark_as_advanced(CURL_DISABLE_TFTP)
-option(CURL_DISABLE_VERBOSE_STRINGS "disables verbose strings" OFF)
-mark_as_advanced(CURL_DISABLE_VERBOSE_STRINGS)
-
-# Corresponds to HTTP_ONLY in lib/curl_setup.h
-option(HTTP_ONLY "disables all protocols except HTTP (This overrides all CURL_DISABLE_* options)" OFF)
-mark_as_advanced(HTTP_ONLY)
-
-if(HTTP_ONLY)
-  set(CURL_DISABLE_DICT ON)
-  set(CURL_DISABLE_FILE ON)
-  set(CURL_DISABLE_FTP ON)
-  set(CURL_DISABLE_GOPHER ON)
-  set(CURL_DISABLE_IMAP ON)
-  set(CURL_DISABLE_LDAP ON)
-  set(CURL_DISABLE_LDAPS ON)
-  set(CURL_DISABLE_MQTT ON)
-  set(CURL_DISABLE_POP3 ON)
-  set(CURL_DISABLE_RTSP ON)
-  set(CURL_DISABLE_SMB ON)
-  set(CURL_DISABLE_SMTP ON)
-  set(CURL_DISABLE_TELNET ON)
-  set(CURL_DISABLE_TFTP ON)
-endif()
-
-option(ENABLE_IPV6 "Define if you want to enable IPv6 support" ON)
-mark_as_advanced(ENABLE_IPV6)
-if(ENABLE_IPV6 AND NOT WIN32)
-  include(CheckStructHasMember)
-  check_struct_has_member("struct sockaddr_in6" sin6_addr "netinet/in.h"
-                          HAVE_SOCKADDR_IN6_SIN6_ADDR)
-  check_struct_has_member("struct sockaddr_in6" sin6_scope_id "netinet/in.h"
-                          HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID)
-  if(NOT HAVE_SOCKADDR_IN6_SIN6_ADDR)
-    message(WARNING "struct sockaddr_in6 not available, disabling IPv6 support")
-    # Force the feature off as this name is used as guard macro...
-    set(ENABLE_IPV6 OFF
-        CACHE BOOL "Define if you want to enable IPv6 support" FORCE)
-  endif()
-
-  if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND NOT ENABLE_ARES)
-    set(use_core_foundation ON)
-
-    find_library(SYSTEMCONFIGURATION_FRAMEWORK "SystemConfiguration")
-    if(NOT SYSTEMCONFIGURATION_FRAMEWORK)
-      message(FATAL_ERROR "SystemConfiguration framework not found")
-    endif()
-
-    list(APPEND CURL_LIBS "-framework SystemConfiguration")
-  endif()
-endif()
-
-if(USE_MANUAL)
-    #nroff is currently only used when USE_MANUAL is set, so we can prevent the warning of no *NROFF if USE_MANUAL is OFF (or not defined), by not even looking for NROFF..
-    curl_nroff_check()
-endif()
-find_package(Perl)
-
-cmake_dependent_option(ENABLE_MANUAL "to provide the built-in manual"
-    ON "NROFF_USEFUL;PERL_FOUND"
-    OFF)
-
-if(ENABLE_MANUAL)
-  set(USE_MANUAL ON)
-endif()
-
-if(CURL_STATIC_CRT)
-  set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
-  set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MT")
-  set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MTd")
-endif()
-
-# Disable warnings on Borland to avoid changing 3rd party code.
-if(BORLAND)
-  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w-")
-endif()
-
-# If we are on AIX, do the _ALL_SOURCE magic
-if(${CMAKE_SYSTEM_NAME} MATCHES AIX)
-  set(_ALL_SOURCE 1)
-endif()
-
-# Include all the necessary files for macros
-include(CMakePushCheckState)
-include(CheckFunctionExists)
-include(CheckIncludeFile)
-include(CheckIncludeFiles)
-include(CheckLibraryExists)
-include(CheckSymbolExists)
-include(CheckTypeSize)
-include(CheckCSourceCompiles)
-
-# On windows preload settings
-if(WIN32)
-  set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_WINSOCKAPI_=")
-  include(${CMAKE_CURRENT_SOURCE_DIR}/CMake/Platforms/WindowsCache.cmake)
-endif()
-
-if(ENABLE_THREADED_RESOLVER)
-  find_package(Threads REQUIRED)
-  if(WIN32)
-    set(USE_THREADS_WIN32 ON)
-  else()
-    set(USE_THREADS_POSIX ${CMAKE_USE_PTHREADS_INIT})
-    set(HAVE_PTHREAD_H ${CMAKE_USE_PTHREADS_INIT})
-  endif()
-  set(CURL_LIBS ${CURL_LIBS} ${CMAKE_THREAD_LIBS_INIT})
-endif()
-
-# Check for all needed libraries
-check_library_exists_concat("${CMAKE_DL_LIBS}" dlopen HAVE_LIBDL)
-check_library_exists_concat("socket" connect      HAVE_LIBSOCKET)
-check_library_exists("c" gethostbyname "" NOT_NEED_LIBNSL)
-
-if(NOT NOT_NEED_LIBNSL)
-  check_library_exists_concat("nsl"    gethostbyname  HAVE_LIBNSL)
-endif()
-
-check_function_exists(gethostname HAVE_GETHOSTNAME)
-
-if(WIN32)
-  check_library_exists_concat("ws2_32" getch        HAVE_LIBWS2_32)
-  check_library_exists_concat("winmm"  getch        HAVE_LIBWINMM)
-endif()
-
-# This check below for use of deprecated symbols is only temporary and is to
-# be removed again after a year's service. Remove after November 25, 2022.
-set(CURL_RECONFIG_REQUIRED 0)
-foreach(_LIB GSSAPI OPENLDAP LIBSSH LIBSSH2 BEARSSL MBEDTLS NSS OPENSSL
-        SCHANNEL SECTRANSP WOLFSSL)
-  if(CMAKE_USE_${_LIB})
-    set(CURL_RECONFIG_REQUIRED 1)
-    message(SEND_ERROR "The option CMAKE_USE_${_LIB} was renamed to CURL_USE_${_LIB}.")
-  endif()
-endforeach()
-if(CMAKE_USE_WINSSL)
-  set(CURL_RECONFIG_REQUIRED 1)
-  message(SEND_ERROR "The option CMAKE_USE_WINSSL was renamed to CURL_USE_SCHANNEL.")
-endif()
-if(CURL_RECONFIG_REQUIRED)
-  message(FATAL_ERROR "Reconfig required")
-endif()
-
-# check SSL libraries
-# TODO support GnuTLS
-option(CURL_ENABLE_SSL "Enable SSL support" ON)
-
-if(APPLE)
-  cmake_dependent_option(CURL_USE_SECTRANSP "enable Apple OS native SSL/TLS" OFF CURL_ENABLE_SSL OFF)
-endif()
-if(WIN32)
-  cmake_dependent_option(CURL_USE_SCHANNEL "enable Windows native SSL/TLS" OFF CURL_ENABLE_SSL OFF)
-  cmake_dependent_option(CURL_WINDOWS_SSPI "Use windows libraries to allow NTLM authentication without openssl" ON
-    CURL_USE_SCHANNEL OFF)
-endif()
-cmake_dependent_option(CURL_USE_MBEDTLS "Enable mbedTLS for SSL/TLS" OFF CURL_ENABLE_SSL OFF)
-cmake_dependent_option(CURL_USE_BEARSSL "Enable BearSSL for SSL/TLS" OFF CURL_ENABLE_SSL OFF)
-cmake_dependent_option(CURL_USE_NSS "Enable NSS for SSL/TLS" OFF CURL_ENABLE_SSL OFF)
-cmake_dependent_option(CURL_USE_WOLFSSL "enable wolfSSL for SSL/TLS" OFF CURL_ENABLE_SSL OFF)
-
-set(openssl_default ON)
-if(WIN32 OR CURL_USE_SECTRANSP OR CURL_USE_SCHANNEL OR CURL_USE_MBEDTLS OR CURL_USE_NSS OR CURL_USE_WOLFSSL)
-  set(openssl_default OFF)
-endif()
-cmake_dependent_option(CURL_USE_OPENSSL "Use OpenSSL code. Experimental" ${openssl_default} CURL_ENABLE_SSL OFF)
-option(CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG "Disable automatic loading of OpenSSL configuration" OFF)
-
-count_true(enabled_ssl_options_count
-  CURL_USE_SCHANNEL
-  CURL_USE_SECTRANSP
-  CURL_USE_OPENSSL
-  CURL_USE_MBEDTLS
-  CURL_USE_BEARSSL
-  CURL_USE_NSS
-  CURL_USE_WOLFSSL
-)
-if(enabled_ssl_options_count GREATER "1")
-  set(CURL_WITH_MULTI_SSL ON)
-endif()
-
-if(CURL_USE_SCHANNEL)
-  set(SSL_ENABLED ON)
-  set(USE_SCHANNEL ON) # Windows native SSL/TLS support
-  set(USE_WINDOWS_SSPI ON) # CURL_USE_SCHANNEL implies CURL_WINDOWS_SSPI
-endif()
-if(CURL_WINDOWS_SSPI)
-  set(USE_WINDOWS_SSPI ON)
-  set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -DSECURITY_WIN32")
-endif()
-
-if(CURL_USE_SECTRANSP)
-  set(use_core_foundation ON)
-
-  find_library(SECURITY_FRAMEWORK "Security")
-  if(NOT SECURITY_FRAMEWORK)
-     message(FATAL_ERROR "Security framework not found")
-  endif()
-
-  set(SSL_ENABLED ON)
-  set(USE_SECTRANSP ON)
-  list(APPEND CURL_LIBS "-framework Security")
-endif()
-
-if(use_core_foundation)
-  find_library(COREFOUNDATION_FRAMEWORK "CoreFoundation")
-  if(NOT COREFOUNDATION_FRAMEWORK)
-      message(FATAL_ERROR "CoreFoundation framework not found")
-  endif()
-
-  list(APPEND CURL_LIBS "-framework CoreFoundation")
-endif()
-
-if(CURL_USE_OPENSSL)
-# find_package(OpenSSL REQUIRED)
-  set(SSL_ENABLED ON)
-  set(USE_OPENSSL ON)
-
-  # Depend on OpenSSL via imported targets if supported by the running
-  # version of CMake.  This allows our dependents to get our dependencies
-  # transitively.
-  if(NOT CMAKE_VERSION VERSION_LESS 3.4)
-    list(APPEND CURL_LIBS OpenSSL::SSL OpenSSL::Crypto)
-  else()
-    list(APPEND CURL_LIBS ${OPENSSL_LIBRARIES})
-    include_directories(${OPENSSL_INCLUDE_DIR})
-  endif()
-
-  set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR})
-  check_include_file("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
-  check_include_file("openssl/err.h"    HAVE_OPENSSL_ERR_H)
-  check_include_file("openssl/pem.h"    HAVE_OPENSSL_PEM_H)
-  check_include_file("openssl/rsa.h"    HAVE_OPENSSL_RSA_H)
-  check_include_file("openssl/ssl.h"    HAVE_OPENSSL_SSL_H)
-  check_include_file("openssl/x509.h"   HAVE_OPENSSL_X509_H)
-  check_include_file("openssl/rand.h"   HAVE_OPENSSL_RAND_H)
-  check_symbol_exists(RAND_status "${CURL_INCLUDES}" HAVE_RAND_STATUS)
-  check_symbol_exists(RAND_screen "${CURL_INCLUDES}" HAVE_RAND_SCREEN)
-  check_symbol_exists(RAND_egd    "${CURL_INCLUDES}" HAVE_RAND_EGD)
-
-  add_definitions(-DOPENSSL_SUPPRESS_DEPRECATED)
-endif()
-
-if(CURL_USE_MBEDTLS)
-  find_package(MbedTLS REQUIRED)
-  set(SSL_ENABLED ON)
-  set(USE_MBEDTLS ON)
-  list(APPEND CURL_LIBS ${MBEDTLS_LIBRARIES})
-  include_directories(${MBEDTLS_INCLUDE_DIRS})
-endif()
-
-if(CURL_USE_BEARSSL)
-  find_package(BearSSL REQUIRED)
-  set(SSL_ENABLED ON)
-  set(USE_BEARSSL ON)
-  list(APPEND CURL_LIBS ${BEARSSL_LIBRARY})
-  include_directories(${BEARSSL_INCLUDE_DIRS})
-endif()
-
-if(CURL_USE_WOLFSSL)
-  find_package(WolfSSL REQUIRED)
-  set(SSL_ENABLED ON)
-  set(USE_WOLFSSL ON)
-  list(APPEND CURL_LIBS ${WolfSSL_LIBRARIES})
-  include_directories(${WolfSSL_INCLUDE_DIRS})
-endif()
-
-if(CURL_USE_NSS)
-  find_package(NSS REQUIRED)
-  include_directories(${NSS_INCLUDE_DIRS})
-  list(APPEND CURL_LIBS ${NSS_LIBRARIES})
-  set(SSL_ENABLED ON)
-  set(USE_NSS ON)
-  cmake_push_check_state()
-  set(CMAKE_REQUIRED_INCLUDES ${NSS_INCLUDE_DIRS})
-  set(CMAKE_REQUIRED_LIBRARIES ${NSS_LIBRARIES})
-  check_symbol_exists(PK11_CreateManagedGenericObject "pk11pub.h" HAVE_PK11_CREATEMANAGEDGENERICOBJECT)
-  cmake_pop_check_state()
-endif()
-
-option(USE_NGHTTP2 "Use Nghttp2 library" OFF)
-if(USE_NGHTTP2)
-  find_package(NGHTTP2 REQUIRED)
-  include_directories(${NGHTTP2_INCLUDE_DIRS})
-  list(APPEND CURL_LIBS ${NGHTTP2_LIBRARIES})
-endif()
-
-function(CheckQuicSupportInOpenSSL)
-  # Be sure that the OpenSSL library actually supports QUIC.
-  cmake_push_check_state()
-  set(CMAKE_REQUIRED_INCLUDES   "${OPENSSL_INCLUDE_DIR}")
-  set(CMAKE_REQUIRED_LIBRARIES  "${OPENSSL_LIBRARIES}")
-  check_symbol_exists(SSL_CTX_set_quic_method "openssl/ssl.h" HAVE_SSL_CTX_SET_QUIC_METHOD)
-  if(NOT HAVE_SSL_CTX_SET_QUIC_METHOD)
-    message(FATAL_ERROR "QUIC support is missing in OpenSSL/boringssl. Try setting -DOPENSSL_ROOT_DIR")
-  endif()
-  cmake_pop_check_state()
-endfunction()
-
-option(USE_NGTCP2 "Use ngtcp2 and nghttp3 libraries for HTTP/3 support" OFF)
-if(USE_NGTCP2)
-  if(USE_OPENSSL)
-    find_package(NGTCP2 REQUIRED OpenSSL)
-    CheckQuicSupportInOpenSSL()
-  elseif(USE_GNUTLS)
-    # TODO add GnuTLS support as vtls library.
-    find_package(NGTCP2 REQUIRED GnuTLS)
-  else()
-    message(FATAL_ERROR "ngtcp2 requires OpenSSL or GnuTLS")
-  endif()
-  set(USE_NGTCP2 ON)
-  include_directories(${NGTCP2_INCLUDE_DIRS})
-  list(APPEND CURL_LIBS ${NGTCP2_LIBRARIES})
-
-  find_package(NGHTTP3 REQUIRED)
-  set(USE_NGHTTP3 ON)
-  include_directories(${NGHTTP3_INCLUDE_DIRS})
-  list(APPEND CURL_LIBS ${NGHTTP3_LIBRARIES})
-endif()
-
-option(USE_QUICHE "Use quiche library for HTTP/3 support" OFF)
-if(USE_QUICHE)
-  if(USE_NGTCP2)
-    message(FATAL_ERROR "Only one HTTP/3 backend can be selected!")
-  endif()
-  find_package(QUICHE REQUIRED)
-  CheckQuicSupportInOpenSSL()
-  set(USE_QUICHE ON)
-  include_directories(${QUICHE_INCLUDE_DIRS})
-  list(APPEND CURL_LIBS ${QUICHE_LIBRARIES})
-  cmake_push_check_state()
-  set(CMAKE_REQUIRED_INCLUDES   "${QUICHE_INCLUDE_DIRS}")
-  set(CMAKE_REQUIRED_LIBRARIES  "${QUICHE_LIBRARIES}")
-  check_symbol_exists(quiche_conn_set_qlog_fd "quiche.h" HAVE_QUICHE_CONN_SET_QLOG_FD)
-  cmake_pop_check_state()
-endif()
-
-option(USE_MSH3 "Use msquic library for HTTP/3 support" OFF)
-if(USE_MSH3)
-  if(USE_NGTCP2 OR USE_QUICHE)
-    message(FATAL_ERROR "Only one HTTP/3 backend can be selected!")
-  endif()
-  set(USE_MSH3 ON)
-  include_directories(${MSH3_INCLUDE_DIRS})
-  list(APPEND CURL_LIBS ${MSH3_LIBRARIES})
-endif()
-
-if(NOT CURL_DISABLE_LDAP)
-  if(WIN32)
-    option(USE_WIN32_LDAP "Use Windows LDAP implementation" ON)
-    if(USE_WIN32_LDAP)
-      check_library_exists_concat("wldap32" cldap_open HAVE_WLDAP32)
-      if(NOT HAVE_WLDAP32)
-        set(USE_WIN32_LDAP OFF)
-      endif()
-    endif()
-  endif()
-
-  option(CURL_USE_OPENLDAP "Use OpenLDAP code." OFF)
-  mark_as_advanced(CURL_USE_OPENLDAP)
-  set(CMAKE_LDAP_LIB "ldap" CACHE STRING "Name or full path to ldap library")
-  set(CMAKE_LBER_LIB "lber" CACHE STRING "Name or full path to lber library")
-
-  if(CURL_USE_OPENLDAP AND USE_WIN32_LDAP)
-    message(FATAL_ERROR "Cannot use USE_WIN32_LDAP and CURL_USE_OPENLDAP at the same time")
-  endif()
-
-  # Now that we know, we're not using windows LDAP...
-  if(USE_WIN32_LDAP)
-    check_include_file_concat("winldap.h" HAVE_WINLDAP_H)
-    check_include_file_concat("winber.h"  HAVE_WINBER_H)
-  else()
-    # Check for LDAP
-    set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_LIBRARIES})
-    check_library_exists_concat(${CMAKE_LDAP_LIB} ldap_init HAVE_LIBLDAP)
-    check_library_exists_concat(${CMAKE_LBER_LIB} ber_init HAVE_LIBLBER)
-
-    set(CMAKE_REQUIRED_INCLUDES_BAK ${CMAKE_REQUIRED_INCLUDES})
-    set(CMAKE_LDAP_INCLUDE_DIR "" CACHE STRING "Path to LDAP include directory")
-    if(CMAKE_LDAP_INCLUDE_DIR)
-      list(APPEND CMAKE_REQUIRED_INCLUDES ${CMAKE_LDAP_INCLUDE_DIR})
-    endif()
-    check_include_file_concat("ldap.h"           HAVE_LDAP_H)
-    check_include_file_concat("lber.h"           HAVE_LBER_H)
-
-    if(NOT HAVE_LDAP_H)
-      message(STATUS "LDAP_H not found CURL_DISABLE_LDAP set ON")
-      set(CURL_DISABLE_LDAP ON CACHE BOOL "" FORCE)
-      set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_BAK}) #LDAP includes won't be used
-    elseif(NOT HAVE_LIBLDAP)
-      message(STATUS "LDAP library '${CMAKE_LDAP_LIB}' not found CURL_DISABLE_LDAP set ON")
-      set(CURL_DISABLE_LDAP ON CACHE BOOL "" FORCE)
-      set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_BAK}) #LDAP includes won't be used
-    else()
-      if(CURL_USE_OPENLDAP)
-        set(USE_OPENLDAP ON)
-      endif()
-      if(CMAKE_LDAP_INCLUDE_DIR)
-        include_directories(${CMAKE_LDAP_INCLUDE_DIR})
-      endif()
-      set(NEED_LBER_H ON)
-      set(_HEADER_LIST)
-      if(HAVE_WINDOWS_H)
-        list(APPEND _HEADER_LIST "windows.h")
-      endif()
-      if(HAVE_SYS_TYPES_H)
-        list(APPEND _HEADER_LIST "sys/types.h")
-      endif()
-      list(APPEND _HEADER_LIST "ldap.h")
-
-      set(_SRC_STRING "")
-      foreach(_HEADER ${_HEADER_LIST})
-        set(_INCLUDE_STRING "${_INCLUDE_STRING}#include <${_HEADER}>\n")
-      endforeach()
-
-      set(_SRC_STRING
-        "
-        ${_INCLUDE_STRING}
-        int main(int argc, char ** argv)
-        {
-          BerValue *bvp = NULL;
-          BerElement *bep = ber_init(bvp);
-          ber_free(bep, 1);
-          return 0;
-        }"
-      )
-      set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -DLDAP_DEPRECATED=1")
-      list(APPEND CMAKE_REQUIRED_LIBRARIES ${CMAKE_LDAP_LIB})
-      if(HAVE_LIBLBER)
-        list(APPEND CMAKE_REQUIRED_LIBRARIES ${CMAKE_LBER_LIB})
-      endif()
-      check_c_source_compiles("${_SRC_STRING}" NOT_NEED_LBER_H)
-      unset(CMAKE_REQUIRED_LIBRARIES)
-
-      if(NOT_NEED_LBER_H)
-        set(NEED_LBER_H OFF)
-      else()
-        set(CURL_TEST_DEFINES "${CURL_TEST_DEFINES} -DNEED_LBER_H")
-      endif()
-    endif()
-  endif()
-endif()
-
-# No ldap, no ldaps.
-if(CURL_DISABLE_LDAP)
-  if(NOT CURL_DISABLE_LDAPS)
-    message(STATUS "LDAP needs to be enabled to support LDAPS")
-    set(CURL_DISABLE_LDAPS ON CACHE BOOL "" FORCE)
-  endif()
-endif()
-
-if(NOT CURL_DISABLE_LDAPS)
-  check_include_file_concat("ldap_ssl.h" HAVE_LDAP_SSL_H)
-  check_include_file_concat("ldapssl.h"  HAVE_LDAPSSL_H)
-endif()
-
-# Check for idn
-option(USE_LIBIDN2 "Use libidn2 for IDN support" ON)
-set(HAVE_LIBIDN2 OFF)
-if(USE_LIBIDN2)
-  check_library_exists_concat("idn2" idn2_lookup_ul HAVE_LIBIDN2)
-endif()
-
-if(WIN32)
-  option(USE_WIN32_IDN "Use WinIDN for IDN support" OFF)
-  if(USE_WIN32_IDN)
-    list(APPEND CURL_LIBS "Normaliz")
-    set(WANT_IDN_PROTOTYPES ON)
-  endif()
-endif()
-
-# Check for symbol dlopen (same as HAVE_LIBDL)
-check_library_exists("${CURL_LIBS}" dlopen "" HAVE_DLOPEN)
-
-set(HAVE_LIBZ OFF)
-set(HAVE_ZLIB_H OFF)
-set(USE_ZLIB OFF)
-optional_dependency(ZLIB)
-if(ZLIB_FOUND)
-  set(HAVE_ZLIB_H ON)
-  set(HAVE_LIBZ ON)
-  set(USE_ZLIB ON)
-
-  # Depend on ZLIB via imported targets if supported by the running
-  # version of CMake.  This allows our dependents to get our dependencies
-  # transitively.
-  if(NOT CMAKE_VERSION VERSION_LESS 3.4)
-    list(APPEND CURL_LIBS ZLIB::ZLIB)
-  else()
-    list(APPEND CURL_LIBS ${ZLIB_LIBRARIES})
-    include_directories(${ZLIB_INCLUDE_DIRS})
-  endif()
-  list(APPEND CMAKE_REQUIRED_INCLUDES ${ZLIB_INCLUDE_DIRS})
-endif()
-
-option(CURL_BROTLI "Set to ON to enable building curl with brotli support." OFF)
-set(HAVE_BROTLI OFF)
-if(CURL_BROTLI)
-  find_package(Brotli QUIET)
-  if(BROTLI_FOUND)
-    set(HAVE_BROTLI ON)
-    list(APPEND CURL_LIBS ${BROTLI_LIBRARIES})
-    include_directories(${BROTLI_INCLUDE_DIRS})
-    list(APPEND CMAKE_REQUIRED_INCLUDES ${BROTLI_INCLUDE_DIRS})
-  endif()
-endif()
-
-option(CURL_ZSTD "Set to ON to enable building curl with zstd support." OFF)
-set(HAVE_ZSTD OFF)
-if(CURL_ZSTD)
-  find_package(Zstd REQUIRED)
-  cmake_push_check_state()
-  set(CMAKE_REQUIRED_INCLUDES ${Zstd_INCLUDE_DIRS})
-  set(CMAKE_REQUIRED_LIBRARIES ${Zstd_LIBRARIES})
-  check_symbol_exists(ZSTD_createDStream "zstd.h" HAVE_ZSTD_CREATEDSTREAM)
-  cmake_pop_check_state()
-  if(Zstd_FOUND AND HAVE_ZSTD_CREATEDSTREAM)
-    set(HAVE_ZSTD ON)
-    list(APPEND CURL_LIBS ${Zstd_LIBRARIES})
-    include_directories(${Zstd_INCLUDE_DIRS})
-  endif()
-endif()
-
-#libSSH2
-option(CURL_USE_LIBSSH2 "Use libSSH2" ON)
-mark_as_advanced(CURL_USE_LIBSSH2)
-set(USE_LIBSSH2 OFF)
-set(HAVE_LIBSSH2 OFF)
-set(HAVE_LIBSSH2_H OFF)
-
-if(CURL_USE_LIBSSH2)
-  find_package(LibSSH2)
-  if(LIBSSH2_FOUND)
-    list(APPEND CURL_LIBS ${LIBSSH2_LIBRARY})
-    set(CMAKE_REQUIRED_LIBRARIES ${LIBSSH2_LIBRARY})
-    list(APPEND CMAKE_REQUIRED_INCLUDES "${LIBSSH2_INCLUDE_DIR}")
-    include_directories("${LIBSSH2_INCLUDE_DIR}")
-    set(HAVE_LIBSSH2 ON)
-    set(USE_LIBSSH2 ON)
-
-    # find_package has already found the headers
-    set(HAVE_LIBSSH2_H ON)
-    set(CURL_INCLUDES ${CURL_INCLUDES} "${LIBSSH2_INCLUDE_DIR}/libssh2.h")
-    set(CURL_TEST_DEFINES "${CURL_TEST_DEFINES} -DHAVE_LIBSSH2_H")
-    unset(CMAKE_REQUIRED_LIBRARIES)
-  endif()
-endif()
-
-# libssh
-option(CURL_USE_LIBSSH "Use libSSH" OFF)
-mark_as_advanced(CURL_USE_LIBSSH)
-if(NOT HAVE_LIBSSH2 AND CURL_USE_LIBSSH)
-  find_package(libssh CONFIG)
-  if(libssh_FOUND)
-    message(STATUS "Found libssh ${libssh_VERSION}")
-    # Use imported target for include and library paths.
-    list(APPEND CURL_LIBS ssh)
-    set(USE_LIBSSH ON)
-    set(HAVE_LIBSSH_LIBSSH_H 1)
-  endif()
-endif()
-
-option(CURL_USE_GSSAPI "Use GSSAPI implementation (right now only Heimdal is supported with CMake build)" OFF)
-mark_as_advanced(CURL_USE_GSSAPI)
-
-if(CURL_USE_GSSAPI)
-  find_package(GSS)
-
-  set(HAVE_GSSAPI ${GSS_FOUND})
-  if(GSS_FOUND)
-
-    message(STATUS "Found ${GSS_FLAVOUR} GSSAPI version: \"${GSS_VERSION}\"")
-
-    list(APPEND CMAKE_REQUIRED_INCLUDES ${GSS_INCLUDE_DIR})
-    check_include_file_concat("gssapi/gssapi.h"  HAVE_GSSAPI_GSSAPI_H)
-    check_include_file_concat("gssapi/gssapi_generic.h" HAVE_GSSAPI_GSSAPI_GENERIC_H)
-    check_include_file_concat("gssapi/gssapi_krb5.h" HAVE_GSSAPI_GSSAPI_KRB5_H)
-
-    if(GSS_FLAVOUR STREQUAL "Heimdal")
-      set(HAVE_GSSHEIMDAL ON)
-    else() # MIT
-      set(HAVE_GSSMIT ON)
-      set(_INCLUDE_LIST "")
-      if(HAVE_GSSAPI_GSSAPI_H)
-        list(APPEND _INCLUDE_LIST "gssapi/gssapi.h")
-      endif()
-      if(HAVE_GSSAPI_GSSAPI_GENERIC_H)
-        list(APPEND _INCLUDE_LIST "gssapi/gssapi_generic.h")
-      endif()
-      if(HAVE_GSSAPI_GSSAPI_KRB5_H)
-        list(APPEND _INCLUDE_LIST "gssapi/gssapi_krb5.h")
-      endif()
-
-      string(REPLACE ";" " " _COMPILER_FLAGS_STR "${GSS_COMPILER_FLAGS}")
-      string(REPLACE ";" " " _LINKER_FLAGS_STR "${GSS_LINKER_FLAGS}")
-
-      foreach(_dir ${GSS_LINK_DIRECTORIES})
-        set(_LINKER_FLAGS_STR "${_LINKER_FLAGS_STR} -L\"${_dir}\"")
-      endforeach()
-
-      set(CMAKE_REQUIRED_FLAGS "${_COMPILER_FLAGS_STR} ${_LINKER_FLAGS_STR}")
-      set(CMAKE_REQUIRED_LIBRARIES ${GSS_LIBRARIES})
-      check_symbol_exists("GSS_C_NT_HOSTBASED_SERVICE" ${_INCLUDE_LIST} HAVE_GSS_C_NT_HOSTBASED_SERVICE)
-      if(NOT HAVE_GSS_C_NT_HOSTBASED_SERVICE)
-        set(HAVE_OLD_GSSMIT ON)
-      endif()
-      unset(CMAKE_REQUIRED_LIBRARIES)
-
-    endif()
-
-    include_directories(${GSS_INCLUDE_DIR})
-    link_directories(${GSS_LINK_DIRECTORIES})
-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${GSS_COMPILER_FLAGS}")
-    set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${GSS_LINKER_FLAGS}")
-    set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${GSS_LINKER_FLAGS}")
-    set(CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} ${GSS_LINKER_FLAGS}")
-    list(APPEND CURL_LIBS ${GSS_LIBRARIES})
-
-  else()
-    message(WARNING "GSSAPI support has been requested but no supporting libraries found. Skipping.")
-  endif()
-endif()
-
-option(ENABLE_UNIX_SOCKETS "Define if you want Unix domain sockets support" ON)
-if(ENABLE_UNIX_SOCKETS)
-  include(CheckStructHasMember)
-  if(WIN32)
-    set(USE_UNIX_SOCKETS ON)
-  else()
-    check_struct_has_member("struct sockaddr_un" sun_path "sys/un.h" USE_UNIX_SOCKETS)
-  endif()
-else()
-  unset(USE_UNIX_SOCKETS CACHE)
-endif()
-
-
-#
-# CA handling
-#
-set(CURL_CA_BUNDLE "auto" CACHE STRING
-    "Path to the CA bundle. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.")
-set(CURL_CA_FALLBACK OFF CACHE BOOL
-    "Set ON to use built-in CA store of TLS backend. Defaults to OFF")
-set(CURL_CA_PATH "auto" CACHE STRING
-    "Location of default CA path. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.")
-
-if("${CURL_CA_BUNDLE}" STREQUAL "")
-  message(FATAL_ERROR "Invalid value of CURL_CA_BUNDLE. Use 'none', 'auto' or file path.")
-elseif("${CURL_CA_BUNDLE}" STREQUAL "none")
-  unset(CURL_CA_BUNDLE CACHE)
-elseif("${CURL_CA_BUNDLE}" STREQUAL "auto")
-  unset(CURL_CA_BUNDLE CACHE)
-  set(CURL_CA_BUNDLE_AUTODETECT TRUE)
-else()
-  set(CURL_CA_BUNDLE_SET TRUE)
-endif()
-
-if("${CURL_CA_PATH}" STREQUAL "")
-  message(FATAL_ERROR "Invalid value of CURL_CA_PATH. Use 'none', 'auto' or directory path.")
-elseif("${CURL_CA_PATH}" STREQUAL "none")
-  unset(CURL_CA_PATH CACHE)
-elseif("${CURL_CA_PATH}" STREQUAL "auto")
-  unset(CURL_CA_PATH CACHE)
-  if(NOT USE_NSS)
-    set(CURL_CA_PATH_AUTODETECT TRUE)
-  endif()
-else()
-  set(CURL_CA_PATH_SET TRUE)
-endif()
-
-if(CURL_CA_BUNDLE_SET AND CURL_CA_PATH_AUTODETECT)
-  # Skip autodetection of unset CA path because CA bundle is set explicitly
-elseif(CURL_CA_PATH_SET AND CURL_CA_BUNDLE_AUTODETECT)
-  # Skip autodetection of unset CA bundle because CA path is set explicitly
-elseif(CURL_CA_PATH_AUTODETECT OR CURL_CA_BUNDLE_AUTODETECT)
-  # first try autodetecting a CA bundle, then a CA path
-
-  if(CURL_CA_BUNDLE_AUTODETECT)
-    set(SEARCH_CA_BUNDLE_PATHS
-        /etc/ssl/certs/ca-certificates.crt
-        /etc/pki/tls/certs/ca-bundle.crt
-        /usr/share/ssl/certs/ca-bundle.crt
-        /usr/local/share/certs/ca-root-nss.crt
-        /etc/ssl/cert.pem)
-
-    foreach(SEARCH_CA_BUNDLE_PATH ${SEARCH_CA_BUNDLE_PATHS})
-      if(EXISTS "${SEARCH_CA_BUNDLE_PATH}")
-        message(STATUS "Found CA bundle: ${SEARCH_CA_BUNDLE_PATH}")
-        set(CURL_CA_BUNDLE "${SEARCH_CA_BUNDLE_PATH}" CACHE STRING
-            "Path to the CA bundle. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.")
-        set(CURL_CA_BUNDLE_SET TRUE CACHE BOOL "Path to the CA bundle has been set")
-        break()
-      endif()
-    endforeach()
-  endif()
-
-  if(CURL_CA_PATH_AUTODETECT AND (NOT CURL_CA_PATH_SET))
-    if(EXISTS "/etc/ssl/certs")
-      set(CURL_CA_PATH "/etc/ssl/certs" CACHE STRING
-          "Location of default CA path. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.")
-      set(CURL_CA_PATH_SET TRUE CACHE BOOL "Path to the CA bundle has been set")
-    endif()
-  endif()
-endif()
-
-if(CURL_CA_PATH_SET AND NOT USE_OPENSSL AND NOT USE_MBEDTLS)
-  message(STATUS
-          "CA path only supported by OpenSSL, GnuTLS or mbed TLS. "
-          "Set CURL_CA_PATH=none or enable one of those TLS backends.")
-endif()
-
-# Check for header files
-if(NOT UNIX)
-  check_include_file_concat("windows.h"      HAVE_WINDOWS_H)
-  check_include_file_concat("ws2tcpip.h"     HAVE_WS2TCPIP_H)
-  check_include_file_concat("winsock2.h"     HAVE_WINSOCK2_H)
-  check_include_file_concat("wincrypt.h"     HAVE_WINCRYPT_H)
-endif()
-
-check_include_file_concat("stdio.h"          HAVE_STDIO_H)
-check_include_file_concat("inttypes.h"       HAVE_INTTYPES_H)
-check_include_file_concat("sys/filio.h"      HAVE_SYS_FILIO_H)
-check_include_file_concat("sys/ioctl.h"      HAVE_SYS_IOCTL_H)
-check_include_file_concat("sys/param.h"      HAVE_SYS_PARAM_H)
-check_include_file_concat("sys/poll.h"       HAVE_SYS_POLL_H)
-check_include_file_concat("sys/resource.h"   HAVE_SYS_RESOURCE_H)
-check_include_file_concat("sys/select.h"     HAVE_SYS_SELECT_H)
-check_include_file_concat("sys/socket.h"     HAVE_SYS_SOCKET_H)
-check_include_file_concat("sys/sockio.h"     HAVE_SYS_SOCKIO_H)
-check_include_file_concat("sys/stat.h"       HAVE_SYS_STAT_H)
-check_include_file_concat("sys/time.h"       HAVE_SYS_TIME_H)
-check_include_file_concat("sys/types.h"      HAVE_SYS_TYPES_H)
-check_include_file_concat("sys/uio.h"        HAVE_SYS_UIO_H)
-check_include_file_concat("sys/un.h"         HAVE_SYS_UN_H)
-check_include_file_concat("sys/utime.h"      HAVE_SYS_UTIME_H)
-check_include_file_concat("sys/xattr.h"      HAVE_SYS_XATTR_H)
-check_include_file_concat("alloca.h"         HAVE_ALLOCA_H)
-check_include_file_concat("arpa/inet.h"      HAVE_ARPA_INET_H)
-check_include_file_concat("arpa/tftp.h"      HAVE_ARPA_TFTP_H)
-check_include_file_concat("assert.h"         HAVE_ASSERT_H)
-check_include_file_concat("errno.h"          HAVE_ERRNO_H)
-check_include_file_concat("fcntl.h"          HAVE_FCNTL_H)
-check_include_file_concat("idn2.h"           HAVE_IDN2_H)
-check_include_file_concat("ifaddrs.h"        HAVE_IFADDRS_H)
-check_include_file_concat("io.h"             HAVE_IO_H)
-check_include_file_concat("krb.h"            HAVE_KRB_H)
-check_include_file_concat("libgen.h"         HAVE_LIBGEN_H)
-check_include_file_concat("locale.h"         HAVE_LOCALE_H)
-check_include_file_concat("net/if.h"         HAVE_NET_IF_H)
-check_include_file_concat("netdb.h"          HAVE_NETDB_H)
-check_include_file_concat("netinet/in.h"     HAVE_NETINET_IN_H)
-check_include_file_concat("netinet/tcp.h"    HAVE_NETINET_TCP_H)
-check_include_file("linux/tcp.h"      HAVE_LINUX_TCP_H)
-
-check_include_file_concat("pem.h"            HAVE_PEM_H)
-check_include_file_concat("poll.h"           HAVE_POLL_H)
-check_include_file_concat("pwd.h"            HAVE_PWD_H)
-check_include_file_concat("setjmp.h"         HAVE_SETJMP_H)
-check_include_file_concat("signal.h"         HAVE_SIGNAL_H)
-check_include_file_concat("ssl.h"            HAVE_SSL_H)
-check_include_file_concat("stdbool.h"        HAVE_STDBOOL_H)
-check_include_file_concat("stdint.h"         HAVE_STDINT_H)
-check_include_file_concat("stdio.h"          HAVE_STDIO_H)
-check_include_file_concat("stdlib.h"         HAVE_STDLIB_H)
-check_include_file_concat("string.h"         HAVE_STRING_H)
-check_include_file_concat("strings.h"        HAVE_STRINGS_H)
-check_include_file_concat("stropts.h"        HAVE_STROPTS_H)
-check_include_file_concat("termio.h"         HAVE_TERMIO_H)
-check_include_file_concat("termios.h"        HAVE_TERMIOS_H)
-check_include_file_concat("time.h"           HAVE_TIME_H)
-check_include_file_concat("unistd.h"         HAVE_UNISTD_H)
-check_include_file_concat("utime.h"          HAVE_UTIME_H)
-check_include_file_concat("x509.h"           HAVE_X509_H)
-
-check_include_file_concat("process.h"        HAVE_PROCESS_H)
-check_include_file_concat("stddef.h"         HAVE_STDDEF_H)
-check_include_file_concat("dlfcn.h"          HAVE_DLFCN_H)
-check_include_file_concat("malloc.h"         HAVE_MALLOC_H)
-check_include_file_concat("memory.h"         HAVE_MEMORY_H)
-check_include_file_concat("netinet/if_ether.h" HAVE_NETINET_IF_ETHER_H)
-check_include_file_concat("stdint.h"        HAVE_STDINT_H)
-check_include_file_concat("sockio.h"        HAVE_SOCKIO_H)
-check_include_file_concat("sys/utsname.h"   HAVE_SYS_UTSNAME_H)
-
-check_type_size(size_t  SIZEOF_SIZE_T)
-check_type_size(ssize_t  SIZEOF_SSIZE_T)
-check_type_size("long long"  SIZEOF_LONG_LONG)
-check_type_size("long"  SIZEOF_LONG)
-check_type_size("short"  SIZEOF_SHORT)
-check_type_size("int"  SIZEOF_INT)
-check_type_size("__int64"  SIZEOF___INT64)
-check_type_size("long double"  SIZEOF_LONG_DOUBLE)
-check_type_size("time_t"  SIZEOF_TIME_T)
-if(NOT HAVE_SIZEOF_SSIZE_T)
-  if(SIZEOF_LONG EQUAL SIZEOF_SIZE_T)
-    set(ssize_t long)
-  endif()
-  if(NOT ssize_t AND SIZEOF___INT64 EQUAL SIZEOF_SIZE_T)
-    set(ssize_t __int64)
-  endif()
-endif()
-# off_t is sized later, after the HAVE_FILE_OFFSET_BITS test
-
-if(HAVE_SIZEOF_LONG_LONG)
-  set(HAVE_LONGLONG 1)
-  set(HAVE_LL 1)
-endif()
-
-find_file(RANDOM_FILE urandom /dev)
-mark_as_advanced(RANDOM_FILE)
-
-# Check for some functions that are used
-if(HAVE_LIBWS2_32)
-  set(CMAKE_REQUIRED_LIBRARIES ws2_32)
-elseif(HAVE_LIBSOCKET)
-  set(CMAKE_REQUIRED_LIBRARIES socket)
-endif()
-
-check_symbol_exists(basename      "${CURL_INCLUDES}" HAVE_BASENAME)
-check_symbol_exists(socket        "${CURL_INCLUDES}" HAVE_SOCKET)
-check_symbol_exists(select        "${CURL_INCLUDES}" HAVE_SELECT)
-check_symbol_exists(poll          "${CURL_INCLUDES}" HAVE_POLL)
-check_symbol_exists(strdup        "${CURL_INCLUDES}" HAVE_STRDUP)
-check_symbol_exists(strstr        "${CURL_INCLUDES}" HAVE_STRSTR)
-check_symbol_exists(strtok_r      "${CURL_INCLUDES}" HAVE_STRTOK_R)
-check_symbol_exists(strftime      "${CURL_INCLUDES}" HAVE_STRFTIME)
-check_symbol_exists(uname         "${CURL_INCLUDES}" HAVE_UNAME)
-check_symbol_exists(strcasecmp    "${CURL_INCLUDES}" HAVE_STRCASECMP)
-check_symbol_exists(stricmp       "${CURL_INCLUDES}" HAVE_STRICMP)
-check_symbol_exists(strcmpi       "${CURL_INCLUDES}" HAVE_STRCMPI)
-check_symbol_exists(strncmpi      "${CURL_INCLUDES}" HAVE_STRNCMPI)
-check_symbol_exists(alarm         "${CURL_INCLUDES}" HAVE_ALARM)
-if(NOT HAVE_STRNCMPI)
-  set(HAVE_STRCMPI)
-endif()
-check_symbol_exists(getppid       "${CURL_INCLUDES}" HAVE_GETPPID)
-check_symbol_exists(utimes        "${CURL_INCLUDES}" HAVE_UTIMES)
-
-check_symbol_exists(gettimeofday  "${CURL_INCLUDES}" HAVE_GETTIMEOFDAY)
-check_symbol_exists(inet_addr     "${CURL_INCLUDES}" HAVE_INET_ADDR)
-check_symbol_exists(closesocket   "${CURL_INCLUDES}" HAVE_CLOSESOCKET)
-check_symbol_exists(sigsetjmp     "${CURL_INCLUDES}" HAVE_SIGSETJMP)
-check_symbol_exists(getpass_r     "${CURL_INCLUDES}" HAVE_GETPASS_R)
-check_symbol_exists(getpwuid      "${CURL_INCLUDES}" HAVE_GETPWUID)
-check_symbol_exists(getpwuid_r    "${CURL_INCLUDES}" HAVE_GETPWUID_R)
-check_symbol_exists(geteuid       "${CURL_INCLUDES}" HAVE_GETEUID)
-check_symbol_exists(usleep        "${CURL_INCLUDES}" HAVE_USLEEP)
-check_symbol_exists(utime         "${CURL_INCLUDES}" HAVE_UTIME)
-check_symbol_exists(gmtime_r      "${CURL_INCLUDES}" HAVE_GMTIME_R)
-check_symbol_exists(localtime_r   "${CURL_INCLUDES}" HAVE_LOCALTIME_R)
-
-check_symbol_exists(gethostbyname   "${CURL_INCLUDES}" HAVE_GETHOSTBYNAME)
-check_symbol_exists(gethostbyname_r "${CURL_INCLUDES}" HAVE_GETHOSTBYNAME_R)
-
-check_symbol_exists(signal        "${CURL_INCLUDES}" HAVE_SIGNAL_FUNC)
-check_symbol_exists(SIGALRM       "${CURL_INCLUDES}" HAVE_SIGNAL_MACRO)
-if(HAVE_SIGNAL_FUNC AND HAVE_SIGNAL_MACRO)
-  set(HAVE_SIGNAL 1)
-endif()
-check_symbol_exists(uname          "${CURL_INCLUDES}" HAVE_UNAME)
-check_symbol_exists(strtoll        "${CURL_INCLUDES}" HAVE_STRTOLL)
-check_symbol_exists(_strtoi64      "${CURL_INCLUDES}" HAVE__STRTOI64)
-check_symbol_exists(strerror_r     "${CURL_INCLUDES}" HAVE_STRERROR_R)
-check_symbol_exists(siginterrupt   "${CURL_INCLUDES}" HAVE_SIGINTERRUPT)
-check_symbol_exists(getaddrinfo    "${CURL_INCLUDES}" HAVE_GETADDRINFO)
-check_symbol_exists(freeaddrinfo   "${CURL_INCLUDES}" HAVE_FREEADDRINFO)
-check_symbol_exists(pipe           "${CURL_INCLUDES}" HAVE_PIPE)
-check_symbol_exists(ftruncate      "${CURL_INCLUDES}" HAVE_FTRUNCATE)
-check_symbol_exists(getprotobyname "${CURL_INCLUDES}" HAVE_GETPROTOBYNAME)
-check_symbol_exists(getpeername    "${CURL_INCLUDES}" HAVE_GETPEERNAME)
-check_symbol_exists(getsockname    "${CURL_INCLUDES}" HAVE_GETSOCKNAME)
-check_symbol_exists(if_nametoindex "${CURL_INCLUDES}" HAVE_IF_NAMETOINDEX)
-check_symbol_exists(getrlimit      "${CURL_INCLUDES}" HAVE_GETRLIMIT)
-check_symbol_exists(setlocale      "${CURL_INCLUDES}" HAVE_SETLOCALE)
-check_symbol_exists(setmode        "${CURL_INCLUDES}" HAVE_SETMODE)
-check_symbol_exists(setrlimit      "${CURL_INCLUDES}" HAVE_SETRLIMIT)
-check_symbol_exists(fcntl          "${CURL_INCLUDES}" HAVE_FCNTL)
-check_symbol_exists(ioctl          "${CURL_INCLUDES}" HAVE_IOCTL)
-check_symbol_exists(setsockopt     "${CURL_INCLUDES}" HAVE_SETSOCKOPT)
-check_function_exists(mach_absolute_time HAVE_MACH_ABSOLUTE_TIME)
-check_symbol_exists(inet_pton      "${CURL_INCLUDES}" HAVE_INET_PTON)
-
-check_symbol_exists(fsetxattr "${CURL_INCLUDES}" HAVE_FSETXATTR)
-if(HAVE_FSETXATTR)
-  foreach(CURL_TEST HAVE_FSETXATTR_5 HAVE_FSETXATTR_6)
-    curl_internal_test(${CURL_TEST})
-  endforeach()
-endif()
-
-set(CMAKE_EXTRA_INCLUDE_FILES   "sys/socket.h")
-check_type_size("sa_family_t"   SIZEOF_SA_FAMILY_T)
-set(HAVE_SA_FAMILY_T            ${HAVE_SIZEOF_SA_FAMILY_T})
-set(CMAKE_EXTRA_INCLUDE_FILES   "")
-
-set(CMAKE_EXTRA_INCLUDE_FILES   "ws2def.h")
-check_type_size("ADDRESS_FAMILY"    SIZEOF_ADDRESS_FAMILY)
-set(HAVE_ADDRESS_FAMILY         ${HAVE_SIZEOF_ADDRESS_FAMILY})
-set(CMAKE_EXTRA_INCLUDE_FILES   "")
-
-# sigaction and sigsetjmp are special. Use special mechanism for
-# detecting those, but only if previous attempt failed.
-if(HAVE_SIGNAL_H)
-  check_symbol_exists(sigaction "signal.h" HAVE_SIGACTION)
-endif()
-
-if(NOT HAVE_SIGSETJMP)
-  if(HAVE_SETJMP_H)
-    check_symbol_exists(sigsetjmp "setjmp.h" HAVE_MACRO_SIGSETJMP)
-    if(HAVE_MACRO_SIGSETJMP)
-      set(HAVE_SIGSETJMP 1)
-    endif()
-  endif()
-endif()
-
-# If there is no stricmp(), do not allow LDAP to parse URLs
-if(NOT HAVE_STRICMP)
-  set(HAVE_LDAP_URL_PARSE 1)
-endif()
-
-# Do curl specific tests
-foreach(CURL_TEST
-    HAVE_FCNTL_O_NONBLOCK
-    HAVE_IOCTLSOCKET
-    HAVE_IOCTLSOCKET_CAMEL
-    HAVE_IOCTLSOCKET_CAMEL_FIONBIO
-    HAVE_IOCTLSOCKET_FIONBIO
-    HAVE_IOCTL_FIONBIO
-    HAVE_IOCTL_SIOCGIFADDR
-    HAVE_SETSOCKOPT_SO_NONBLOCK
-    HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
-    TIME_WITH_SYS_TIME
-    HAVE_O_NONBLOCK
-    HAVE_GETHOSTBYNAME_R_3
-    HAVE_GETHOSTBYNAME_R_5
-    HAVE_GETHOSTBYNAME_R_6
-    HAVE_GETHOSTBYNAME_R_3_REENTRANT
-    HAVE_GETHOSTBYNAME_R_5_REENTRANT
-    HAVE_GETHOSTBYNAME_R_6_REENTRANT
-    HAVE_IN_ADDR_T
-    HAVE_BOOL_T
-    STDC_HEADERS
-    HAVE_GETADDRINFO
-    HAVE_FILE_OFFSET_BITS
-    HAVE_VARIADIC_MACROS_C99
-    HAVE_VARIADIC_MACROS_GCC
-    )
-  curl_internal_test(${CURL_TEST})
-endforeach()
-
-if(HAVE_FILE_OFFSET_BITS)
-  set(_FILE_OFFSET_BITS 64)
-  set(CMAKE_REQUIRED_FLAGS "-D_FILE_OFFSET_BITS=64")
-endif()
-check_type_size("off_t"  SIZEOF_OFF_T)
-
-# include this header to get the type
-set(CMAKE_REQUIRED_INCLUDES "${CURL_SOURCE_DIR}/include")
-set(CMAKE_EXTRA_INCLUDE_FILES "curl/system.h")
-check_type_size("curl_off_t"  SIZEOF_CURL_OFF_T)
-set(CMAKE_EXTRA_INCLUDE_FILES "")
-
-set(CMAKE_REQUIRED_FLAGS)
-
-foreach(CURL_TEST
-    HAVE_GLIBC_STRERROR_R
-    HAVE_POSIX_STRERROR_R
-    )
-  curl_internal_test(${CURL_TEST})
-endforeach()
-
-# Check for reentrant
-foreach(CURL_TEST
-    HAVE_GETHOSTBYNAME_R_3
-    HAVE_GETHOSTBYNAME_R_5
-    HAVE_GETHOSTBYNAME_R_6)
-  if(NOT ${CURL_TEST})
-    if(${CURL_TEST}_REENTRANT)
-      set(NEED_REENTRANT 1)
-    endif()
-  endif()
-endforeach()
-
-if(NEED_REENTRANT)
-  foreach(CURL_TEST
-      HAVE_GETHOSTBYNAME_R_3
-      HAVE_GETHOSTBYNAME_R_5
-      HAVE_GETHOSTBYNAME_R_6)
-    set(${CURL_TEST} 0)
-    if(${CURL_TEST}_REENTRANT)
-      set(${CURL_TEST} 1)
-    endif()
-  endforeach()
-endif()
-
-# Check clock_gettime(CLOCK_MONOTONIC, x) support
-curl_internal_test(HAVE_CLOCK_GETTIME_MONOTONIC)
-
-# Check compiler support of __builtin_available()
-curl_internal_test(HAVE_BUILTIN_AVAILABLE)
-
-# Some other minor tests
-
-if(NOT HAVE_IN_ADDR_T)
-  set(in_addr_t "unsigned long")
-endif()
-
-# Fix libz / zlib.h
-
-if(NOT CURL_SPECIAL_LIBZ)
-  if(NOT HAVE_LIBZ)
-    set(HAVE_ZLIB_H 0)
-  endif()
-
-  if(NOT HAVE_ZLIB_H)
-    set(HAVE_LIBZ 0)
-  endif()
-endif()
-
-# Check for nonblocking
-set(HAVE_DISABLED_NONBLOCKING 1)
-if(HAVE_FIONBIO OR
-    HAVE_IOCTLSOCKET OR
-    HAVE_IOCTLSOCKET_CASE OR
-    HAVE_O_NONBLOCK)
-  set(HAVE_DISABLED_NONBLOCKING)
-endif()
-
-if(CMAKE_COMPILER_IS_GNUCC AND APPLE)
-  include(CheckCCompilerFlag)
-  check_c_compiler_flag(-Wno-long-double HAVE_C_FLAG_Wno_long_double)
-  if(HAVE_C_FLAG_Wno_long_double)
-    # The Mac version of GCC warns about use of long double.  Disable it.
-    get_source_file_property(MPRINTF_COMPILE_FLAGS mprintf.c COMPILE_FLAGS)
-    if(MPRINTF_COMPILE_FLAGS)
-      set(MPRINTF_COMPILE_FLAGS "${MPRINTF_COMPILE_FLAGS} -Wno-long-double")
-    else()
-      set(MPRINTF_COMPILE_FLAGS "-Wno-long-double")
-    endif()
-    set_source_files_properties(mprintf.c PROPERTIES
-      COMPILE_FLAGS ${MPRINTF_COMPILE_FLAGS})
-  endif()
-endif()
-
-# TODO test which of these headers are required
-if(WIN32)
-  set(CURL_PULL_WS2TCPIP_H ${HAVE_WS2TCPIP_H})
-else()
-  set(CURL_PULL_SYS_TYPES_H ${HAVE_SYS_TYPES_H})
-  set(CURL_PULL_SYS_SOCKET_H ${HAVE_SYS_SOCKET_H})
-  set(CURL_PULL_SYS_POLL_H ${HAVE_SYS_POLL_H})
-endif()
-set(CURL_PULL_STDINT_H ${HAVE_STDINT_H})
-set(CURL_PULL_INTTYPES_H ${HAVE_INTTYPES_H})
-
-include(CMake/OtherTests.cmake)
-
-add_definitions(-DHAVE_CONFIG_H)
-
-# For Windows, all compilers used by CMake should support large files
-if(WIN32)
-  set(USE_WIN32_LARGE_FILES ON)
-
-  # Use the manifest embedded in the Windows Resource
-  set(CMAKE_RC_FLAGS "${CMAKE_RC_FLAGS} -DCURL_EMBED_MANIFEST")
-
-  # Check if crypto functions in wincrypt.h are actually available
-  if(HAVE_WINCRYPT_H)
-    check_symbol_exists(CryptAcquireContext "${CURL_INCLUDES}" USE_WINCRYPT)
-  endif()
-  if(USE_WINCRYPT)
-    set(USE_WIN32_CRYPTO ON)
-  endif()
-
-  # Link required libraries for USE_WIN32_CRYPTO or USE_SCHANNEL
-  if(USE_WIN32_CRYPTO OR USE_SCHANNEL)
-    list(APPEND CURL_LIBS "advapi32" "crypt32")
-  endif()
-endif()
-
-if(MSVC)
-  # Disable default manifest added by CMake
-  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /MANIFEST:NO")
-
-  add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE)
-  if(CMAKE_C_FLAGS MATCHES "/W[0-4]")
-    string(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
-  else()
-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W4")
-  endif()
-
-  # Use multithreaded compilation on VS 2008+
-  if(MSVC_VERSION GREATER_EQUAL 1500)
-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /MP")
-  endif()
-endif()
-
-if(CURL_WERROR)
-  if(MSVC_VERSION)
-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /WX")
-  else()
-    # this assumes clang or gcc style options
-    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
-  endif()
-endif()
-
-if(CURL_LTO)
-  if(CMAKE_VERSION VERSION_LESS 3.9)
-    message(FATAL_ERROR "Requested LTO but your cmake version ${CMAKE_VERSION} is to old. You need at least 3.9")
-  endif()
-
-  cmake_policy(SET CMP0069 NEW)
-
-  include(CheckIPOSupported)
-  check_ipo_supported(RESULT CURL_HAS_LTO OUTPUT CURL_LTO_ERROR LANGUAGES C)
-  if(CURL_HAS_LTO)
-    message(STATUS "LTO supported and enabled")
-  else()
-    message(FATAL_ERROR "LTO was requested - but compiler doesn't support it\n${CURL_LTO_ERROR}")
-  endif()
-endif()
-
-
-# Ugly (but functional) way to include "Makefile.inc" by transforming it (= regenerate it).
-function(transform_makefile_inc INPUT_FILE OUTPUT_FILE)
-  file(READ ${INPUT_FILE} MAKEFILE_INC_TEXT)
-  string(REPLACE "$(top_srcdir)"   "\${CURL_SOURCE_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-  string(REPLACE "$(top_builddir)" "\${CURL_BINARY_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-
-  string(REGEX REPLACE "\\\\\n" "!π!α!" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-  string(REGEX REPLACE "([a-zA-Z_][a-zA-Z0-9_]*)[\t ]*=[\t ]*([^\n]*)" "SET(\\1 \\2)" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-  string(REPLACE "!π!α!" "\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})
-
-  string(REGEX REPLACE "\\$\\(([a-zA-Z_][a-zA-Z0-9_]*)\\)" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})    # Replace $() with ${}
-  string(REGEX REPLACE "@([a-zA-Z_][a-zA-Z0-9_]*)@" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT})    # Replace @@ with ${}, even if that may not be read by CMake scripts.
-  file(WRITE ${OUTPUT_FILE} ${MAKEFILE_INC_TEXT})
-  set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS "${INPUT_FILE}")
-endfunction()
-
-include(GNUInstallDirs)
-
-set(CURL_INSTALL_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
-set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets")
-set(generated_dir "${CMAKE_CURRENT_BINARY_DIR}/generated")
-set(project_config "${generated_dir}/${PROJECT_NAME}Config.cmake")
-set(version_config "${generated_dir}/${PROJECT_NAME}ConfigVersion.cmake")
-
-if(USE_MANUAL)
-  add_subdirectory(docs)
-endif()
-
-add_subdirectory(lib)
-
-if(BUILD_CURL_EXE)
-  add_subdirectory(src)
-endif()
-
-cmake_dependent_option(BUILD_TESTING "Build tests"
-  ON "PERL_FOUND;NOT CURL_DISABLE_TESTS"
-  OFF)
-if(BUILD_TESTING)
-  add_subdirectory(tests)
-endif()
-
-# Helper to populate a list (_items) with a label when conditions (the remaining
-# args) are satisfied
-macro(_add_if label)
-  # needs to be a macro to allow this indirection
-  if(${ARGN})
-    set(_items ${_items} "${label}")
-  endif()
-endmacro()
-
-# NTLM support requires crypto function adaptions from various SSL libs
-# TODO alternative SSL libs tests for SSP1, GNUTLS, NSS
-if(NOT (CURL_DISABLE_CRYPTO_AUTH OR CURL_DISABLE_NTLM) AND
-    (USE_OPENSSL OR USE_MBEDTLS OR USE_DARWINSSL OR USE_WIN32_CRYPTO))
-  set(use_curl_ntlm_core ON)
-endif()
-
-# Clear list and try to detect available features
-set(_items)
-_add_if("SSL"           SSL_ENABLED)
-_add_if("IPv6"          ENABLE_IPV6)
-_add_if("unixsockets"   USE_UNIX_SOCKETS)
-_add_if("libz"          HAVE_LIBZ)
-_add_if("brotli"        HAVE_BROTLI)
-_add_if("zstd"          HAVE_ZSTD)
-_add_if("AsynchDNS"     USE_ARES OR USE_THREADS_POSIX OR USE_THREADS_WIN32)
-_add_if("IDN"           HAVE_LIBIDN2 OR USE_WIN32_IDN)
-_add_if("Largefile"     (SIZEOF_CURL_OFF_T GREATER 4) AND
-                        ((SIZEOF_OFF_T GREATER 4) OR USE_WIN32_LARGE_FILES))
-# TODO SSP1 (Schannel) check is missing
-_add_if("SSPI"          USE_WINDOWS_SSPI)
-_add_if("GSS-API"       HAVE_GSSAPI)
-_add_if("alt-svc"       NOT CURL_DISABLE_ALTSVC)
-_add_if("HSTS"          NOT CURL_DISABLE_HSTS)
-# TODO SSP1 missing for SPNEGO
-_add_if("SPNEGO"        NOT CURL_DISABLE_CRYPTO_AUTH AND
-                        (HAVE_GSSAPI OR USE_WINDOWS_SSPI))
-_add_if("Kerberos"      NOT CURL_DISABLE_CRYPTO_AUTH AND
-                        (HAVE_GSSAPI OR USE_WINDOWS_SSPI))
-# NTLM support requires crypto function adaptions from various SSL libs
-# TODO alternative SSL libs tests for SSP1, GNUTLS, NSS
-_add_if("NTLM"          NOT (CURL_DISABLE_CRYPTO_AUTH OR CURL_DISABLE_NTLM) AND
-                        (use_curl_ntlm_core OR USE_WINDOWS_SSPI))
-# TODO missing option (autoconf: --enable-ntlm-wb)
-_add_if("NTLM_WB"       NOT (CURL_DISABLE_CRYPTO_AUTH OR CURL_DISABLE_NTLM) AND
-                        (use_curl_ntlm_core OR USE_WINDOWS_SSPI) AND
-                        NOT CURL_DISABLE_HTTP AND NTLM_WB_ENABLED)
-# TODO missing option (--enable-tls-srp), depends on GNUTLS_SRP/OPENSSL_SRP
-_add_if("TLS-SRP"       USE_TLS_SRP)
-# TODO option --with-nghttp2 tests for nghttp2 lib and nghttp2/nghttp2.h header
-_add_if("HTTP2"         USE_NGHTTP2)
-_add_if("HTTP3"         USE_NGTCP2 OR USE_QUICHE)
-_add_if("MultiSSL"      CURL_WITH_MULTI_SSL)
-_add_if("HTTPS-proxy"   SSL_ENABLED AND (USE_OPENSSL OR USE_GNUTLS OR USE_NSS))
-_add_if("unicode"       ENABLE_UNICODE)
-string(REPLACE ";" " " SUPPORT_FEATURES "${_items}")
-message(STATUS "Enabled features: ${SUPPORT_FEATURES}")
-
-# Clear list and try to detect available protocols
-set(_items)
-_add_if("HTTP"          NOT CURL_DISABLE_HTTP)
-_add_if("HTTPS"         NOT CURL_DISABLE_HTTP AND SSL_ENABLED)
-_add_if("FTP"           NOT CURL_DISABLE_FTP)
-_add_if("FTPS"          NOT CURL_DISABLE_FTP AND SSL_ENABLED)
-_add_if("FILE"          NOT CURL_DISABLE_FILE)
-_add_if("TELNET"        NOT CURL_DISABLE_TELNET)
-_add_if("LDAP"          NOT CURL_DISABLE_LDAP)
-# CURL_DISABLE_LDAP implies CURL_DISABLE_LDAPS
-# TODO check HAVE_LDAP_SSL (in autoconf this is enabled with --enable-ldaps)
-_add_if("LDAPS"         NOT CURL_DISABLE_LDAPS AND
-                        ((USE_OPENLDAP AND SSL_ENABLED) OR
-                        (NOT USE_OPENLDAP AND HAVE_LDAP_SSL)))
-_add_if("DICT"          NOT CURL_DISABLE_DICT)
-_add_if("TFTP"          NOT CURL_DISABLE_TFTP)
-_add_if("GOPHER"        NOT CURL_DISABLE_GOPHER)
-_add_if("GOPHERS"       NOT CURL_DISABLE_GOPHER AND SSL_ENABLED)
-_add_if("POP3"          NOT CURL_DISABLE_POP3)
-_add_if("POP3S"         NOT CURL_DISABLE_POP3 AND SSL_ENABLED)
-_add_if("IMAP"          NOT CURL_DISABLE_IMAP)
-_add_if("IMAPS"         NOT CURL_DISABLE_IMAP AND SSL_ENABLED)
-_add_if("SMB"           NOT CURL_DISABLE_SMB AND
-                        use_curl_ntlm_core AND (SIZEOF_CURL_OFF_T GREATER 4))
-_add_if("SMBS"          NOT CURL_DISABLE_SMB AND SSL_ENABLED AND
-                        use_curl_ntlm_core AND (SIZEOF_CURL_OFF_T GREATER 4))
-_add_if("SMTP"          NOT CURL_DISABLE_SMTP)
-_add_if("SMTPS"         NOT CURL_DISABLE_SMTP AND SSL_ENABLED)
-_add_if("SCP"           USE_LIBSSH2 OR USE_LIBSSH)
-_add_if("SFTP"          USE_LIBSSH2 OR USE_LIBSSH)
-_add_if("RTSP"          NOT CURL_DISABLE_RTSP)
-_add_if("RTMP"          USE_LIBRTMP)
-_add_if("MQTT"          NOT CURL_DISABLE_MQTT)
-if(_items)
-  list(SORT _items)
-endif()
-string(REPLACE ";" " " SUPPORT_PROTOCOLS "${_items}")
-message(STATUS "Enabled protocols: ${SUPPORT_PROTOCOLS}")
-
-# Clear list and collect SSL backends
-set(_items)
-_add_if("Schannel"         SSL_ENABLED AND USE_SCHANNEL)
-_add_if("OpenSSL"          SSL_ENABLED AND USE_OPENSSL)
-_add_if("Secure Transport" SSL_ENABLED AND USE_SECTRANSP)
-_add_if("mbedTLS"          SSL_ENABLED AND USE_MBEDTLS)
-_add_if("BearSSL"          SSL_ENABLED AND USE_BEARSSL)
-_add_if("NSS"              SSL_ENABLED AND USE_NSS)
-_add_if("wolfSSL"          SSL_ENABLED AND USE_WOLFSSL)
-if(_items)
-  list(SORT _items)
-endif()
-string(REPLACE ";" " " SSL_BACKENDS "${_items}")
-message(STATUS "Enabled SSL backends: ${SSL_BACKENDS}")
-
-# curl-config needs the following options to be set.
-set(CC                      "${CMAKE_C_COMPILER}")
-# TODO probably put a -D... options here?
-set(CONFIGURE_OPTIONS       "")
-# TODO when to set "-DCURL_STATICLIB" for CPPFLAG_CURL_STATICLIB?
-set(CPPFLAG_CURL_STATICLIB  "")
-set(CURLVERSION             "${CURL_VERSION}")
-set(exec_prefix             "\${prefix}")
-set(includedir              "\${prefix}/include")
-set(LDFLAGS                 "${CMAKE_SHARED_LINKER_FLAGS}")
-set(LIBCURL_LIBS            "")
-set(libdir                  "${CMAKE_INSTALL_PREFIX}/lib")
-foreach(_lib ${CMAKE_C_IMPLICIT_LINK_LIBRARIES} ${CURL_LIBS})
-  if(TARGET "${_lib}")
-    set(_libname "${_lib}")
-    get_target_property(_imported "${_libname}" IMPORTED)
-    if(NOT _imported)
-      # Reading the LOCATION property on non-imported target will error out.
-      # Assume the user won't need this information in the .pc file.
-      continue()
-    endif()
-    get_target_property(_lib "${_libname}" LOCATION)
-    if(NOT _lib)
-      message(WARNING "Bad lib in library list: ${_libname}")
-      continue()
-    endif()
-  endif()
-  if(_lib MATCHES ".*/.*" OR _lib MATCHES "^-")
-    set(LIBCURL_LIBS          "${LIBCURL_LIBS} ${_lib}")
-  else()
-    set(LIBCURL_LIBS          "${LIBCURL_LIBS} -l${_lib}")
-  endif()
-endforeach()
-if(BUILD_SHARED_LIBS)
-  set(ENABLE_SHARED         "yes")
-  set(ENABLE_STATIC         "no")
-  set(LIBCURL_NO_SHARED     "")
-else()
-  set(ENABLE_SHARED         "no")
-  set(ENABLE_STATIC         "yes")
-  set(LIBCURL_NO_SHARED     "${LIBCURL_LIBS}")
-endif()
-# "a" (Linux) or "lib" (Windows)
-string(REPLACE "." "" libext "${CMAKE_STATIC_LIBRARY_SUFFIX}")
-set(prefix                  "${CMAKE_INSTALL_PREFIX}")
-# Set this to "yes" to append all libraries on which -lcurl is dependent
-set(REQUIRE_LIB_DEPS        "no")
-# SUPPORT_FEATURES
-# SUPPORT_PROTOCOLS
-set(VERSIONNUM              "${CURL_VERSION_NUM}")
-
-# Finally generate a "curl-config" matching this config
-# Use:
-# * ENABLE_SHARED
-# * ENABLE_STATIC
-configure_file("${CURL_SOURCE_DIR}/curl-config.in"
-               "${CURL_BINARY_DIR}/curl-config" @ONLY)
-do_not_install(FILES "${CURL_BINARY_DIR}/curl-config"
-        DESTINATION ${CMAKE_INSTALL_BINDIR}
-        PERMISSIONS
-          OWNER_READ OWNER_WRITE OWNER_EXECUTE
-          GROUP_READ GROUP_EXECUTE
-          WORLD_READ WORLD_EXECUTE)
-
-# Finally generate a pkg-config file matching this config
-configure_file("${CURL_SOURCE_DIR}/libcurl.pc.in"
-               "${CURL_BINARY_DIR}/libcurl.pc" @ONLY)
-do_not_install(FILES "${CURL_BINARY_DIR}/libcurl.pc"
-        DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
-
-# install headers
-do_not_install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/include/curl"
-    DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
-    FILES_MATCHING PATTERN "*.h")
-
-include(CMakePackageConfigHelpers)
-write_basic_package_version_file(
-    "${version_config}"
-    VERSION ${CURL_VERSION}
-    COMPATIBILITY SameMajorVersion
-)
-
-# Use:
-# * TARGETS_EXPORT_NAME
-# * PROJECT_NAME
-configure_package_config_file(CMake/curl-config.cmake.in
-        "${project_config}"
-        INSTALL_DESTINATION ${CURL_INSTALL_CMAKE_DIR}
-)
-
-if(CURL_ENABLE_EXPORT_TARGET)
-  do_not_install(
-          EXPORT "${TARGETS_EXPORT_NAME}"
-          NAMESPACE "${PROJECT_NAME}::"
-          DESTINATION ${CURL_INSTALL_CMAKE_DIR}
-  )
-endif()
-
-do_not_install(
-        FILES ${version_config} ${project_config}
-        DESTINATION ${CURL_INSTALL_CMAKE_DIR}
-)
-
-# Workaround for MSVS10 to avoid the Dialog Hell
-# FIXME: This could be removed with future version of CMake.
-if(MSVC_VERSION EQUAL 1600)
-  set(CURL_SLN_FILENAME "${CMAKE_CURRENT_BINARY_DIR}/CURL.sln")
-  if(EXISTS "${CURL_SLN_FILENAME}")
-    file(APPEND "${CURL_SLN_FILENAME}" "\n# This should be regenerated!\n")
-  endif()
-endif()
-
-if(NOT TARGET uninstall)
-  configure_file(
-      ${CMAKE_CURRENT_SOURCE_DIR}/CMake/cmake_uninstall.cmake.in
-      ${CMAKE_CURRENT_BINARY_DIR}/CMake/cmake_uninstall.cmake
-      IMMEDIATE @ONLY)
-
-  add_custom_target(uninstall
-      COMMAND ${CMAKE_COMMAND} -P
-      ${CMAKE_CURRENT_BINARY_DIR}/CMake/cmake_uninstall.cmake)
-endif()
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/compile 8.0.32-1/extra/curl/curl-7.83.1/compile
--- 8.0.31-1/extra/curl/curl-7.83.1/compile	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/compile	1970-01-01 00:00:00.000000000 +0000
@@ -1,348 +0,0 @@
-#! /bin/sh
-# Wrapper for compilers which do not understand '-c -o'.
-
-scriptversion=2018-03-07.03; # UTC
-
-# Copyright (C) 1999-2021 Free Software Foundation, Inc.
-# Written by Tom Tromey <tromey@cygnus.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <https://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# This file is maintained in Automake, please report
-# bugs to <bug-automake@gnu.org> or send patches to
-# <automake-patches@gnu.org>.
-
-nl='
-'
-
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent tools from complaining about whitespace usage.
-IFS=" ""	$nl"
-
-file_conv=
-
-# func_file_conv build_file lazy
-# Convert a $build file to $host form and store it in $file
-# Currently only supports Windows hosts. If the determined conversion
-# type is listed in (the comma separated) LAZY, no conversion will
-# take place.
-func_file_conv ()
-{
-  file=$1
-  case $file in
-    / | /[!/]*) # absolute file, and not a UNC file
-      if test -z "$file_conv"; then
-	# lazily determine how to convert abs files
-	case `uname -s` in
-	  MINGW*)
-	    file_conv=mingw
-	    ;;
-	  CYGWIN* | MSYS*)
-	    file_conv=cygwin
-	    ;;
-	  *)
-	    file_conv=wine
-	    ;;
-	esac
-      fi
-      case $file_conv/,$2, in
-	*,$file_conv,*)
-	  ;;
-	mingw/*)
-	  file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
-	  ;;
-	cygwin/* | msys/*)
-	  file=`cygpath -m "$file" || echo "$file"`
-	  ;;
-	wine/*)
-	  file=`winepath -w "$file" || echo "$file"`
-	  ;;
-      esac
-      ;;
-  esac
-}
-
-# func_cl_dashL linkdir
-# Make cl look for libraries in LINKDIR
-func_cl_dashL ()
-{
-  func_file_conv "$1"
-  if test -z "$lib_path"; then
-    lib_path=$file
-  else
-    lib_path="$lib_path;$file"
-  fi
-  linker_opts="$linker_opts -LIBPATH:$file"
-}
-
-# func_cl_dashl library
-# Do a library search-path lookup for cl
-func_cl_dashl ()
-{
-  lib=$1
-  found=no
-  save_IFS=$IFS
-  IFS=';'
-  for dir in $lib_path $LIB
-  do
-    IFS=$save_IFS
-    if $shared && test -f "$dir/$lib.dll.lib"; then
-      found=yes
-      lib=$dir/$lib.dll.lib
-      break
-    fi
-    if test -f "$dir/$lib.lib"; then
-      found=yes
-      lib=$dir/$lib.lib
-      break
-    fi
-    if test -f "$dir/lib$lib.a"; then
-      found=yes
-      lib=$dir/lib$lib.a
-      break
-    fi
-  done
-  IFS=$save_IFS
-
-  if test "$found" != yes; then
-    lib=$lib.lib
-  fi
-}
-
-# func_cl_wrapper cl arg...
-# Adjust compile command to suit cl
-func_cl_wrapper ()
-{
-  # Assume a capable shell
-  lib_path=
-  shared=:
-  linker_opts=
-  for arg
-  do
-    if test -n "$eat"; then
-      eat=
-    else
-      case $1 in
-	-o)
-	  # configure might choose to run compile as 'compile cc -o foo foo.c'.
-	  eat=1
-	  case $2 in
-	    *.o | *.[oO][bB][jJ])
-	      func_file_conv "$2"
-	      set x "$@" -Fo"$file"
-	      shift
-	      ;;
-	    *)
-	      func_file_conv "$2"
-	      set x "$@" -Fe"$file"
-	      shift
-	      ;;
-	  esac
-	  ;;
-	-I)
-	  eat=1
-	  func_file_conv "$2" mingw
-	  set x "$@" -I"$file"
-	  shift
-	  ;;
-	-I*)
-	  func_file_conv "${1#-I}" mingw
-	  set x "$@" -I"$file"
-	  shift
-	  ;;
-	-l)
-	  eat=1
-	  func_cl_dashl "$2"
-	  set x "$@" "$lib"
-	  shift
-	  ;;
-	-l*)
-	  func_cl_dashl "${1#-l}"
-	  set x "$@" "$lib"
-	  shift
-	  ;;
-	-L)
-	  eat=1
-	  func_cl_dashL "$2"
-	  ;;
-	-L*)
-	  func_cl_dashL "${1#-L}"
-	  ;;
-	-static)
-	  shared=false
-	  ;;
-	-Wl,*)
-	  arg=${1#-Wl,}
-	  save_ifs="$IFS"; IFS=','
-	  for flag in $arg; do
-	    IFS="$save_ifs"
-	    linker_opts="$linker_opts $flag"
-	  done
-	  IFS="$save_ifs"
-	  ;;
-	-Xlinker)
-	  eat=1
-	  linker_opts="$linker_opts $2"
-	  ;;
-	-*)
-	  set x "$@" "$1"
-	  shift
-	  ;;
-	*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
-	  func_file_conv "$1"
-	  set x "$@" -Tp"$file"
-	  shift
-	  ;;
-	*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
-	  func_file_conv "$1" mingw
-	  set x "$@" "$file"
-	  shift
-	  ;;
-	*)
-	  set x "$@" "$1"
-	  shift
-	  ;;
-      esac
-    fi
-    shift
-  done
-  if test -n "$linker_opts"; then
-    linker_opts="-link$linker_opts"
-  fi
-  exec "$@" $linker_opts
-  exit 1
-}
-
-eat=
-
-case $1 in
-  '')
-     echo "$0: No command.  Try '$0 --help' for more information." 1>&2
-     exit 1;
-     ;;
-  -h | --h*)
-    cat <<\EOF
-Usage: compile [--help] [--version] PROGRAM [ARGS]
-
-Wrapper for compilers which do not understand '-c -o'.
-Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
-arguments, and rename the output as expected.
-
-If you are trying to build a whole package this is not the
-right script to run: please start by reading the file 'INSTALL'.
-
-Report bugs to <bug-automake@gnu.org>.
-EOF
-    exit $?
-    ;;
-  -v | --v*)
-    echo "compile $scriptversion"
-    exit $?
-    ;;
-  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
-  icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
-    func_cl_wrapper "$@"      # Doesn't return...
-    ;;
-esac
-
-ofile=
-cfile=
-
-for arg
-do
-  if test -n "$eat"; then
-    eat=
-  else
-    case $1 in
-      -o)
-	# configure might choose to run compile as 'compile cc -o foo foo.c'.
-	# So we strip '-o arg' only if arg is an object.
-	eat=1
-	case $2 in
-	  *.o | *.obj)
-	    ofile=$2
-	    ;;
-	  *)
-	    set x "$@" -o "$2"
-	    shift
-	    ;;
-	esac
-	;;
-      *.c)
-	cfile=$1
-	set x "$@" "$1"
-	shift
-	;;
-      *)
-	set x "$@" "$1"
-	shift
-	;;
-    esac
-  fi
-  shift
-done
-
-if test -z "$ofile" || test -z "$cfile"; then
-  # If no '-o' option was seen then we might have been invoked from a
-  # pattern rule where we don't need one.  That is ok -- this is a
-  # normal compilation that the losing compiler can handle.  If no
-  # '.c' file was seen then we are probably linking.  That is also
-  # ok.
-  exec "$@"
-fi
-
-# Name of file we expect compiler to create.
-cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
-
-# Create the lock directory.
-# Note: use '[/\\:.-]' here to ensure that we don't use the same name
-# that we are using for the .o file.  Also, base the name on the expected
-# object file name, since that is what matters with a parallel build.
-lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
-while true; do
-  if mkdir "$lockdir" >/dev/null 2>&1; then
-    break
-  fi
-  sleep 1
-done
-# FIXME: race condition here if user kills between mkdir and trap.
-trap "rmdir '$lockdir'; exit 1" 1 2 15
-
-# Run the compile.
-"$@"
-ret=$?
-
-if test -f "$cofile"; then
-  test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
-elif test -f "${cofile}bj"; then
-  test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
-fi
-
-rmdir "$lockdir"
-exit $ret
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'before-save-hook 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC0"
-# time-stamp-end: "; # UTC"
-# End:
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/configure.ac 8.0.32-1/extra/curl/curl-7.83.1/configure.ac
--- 8.0.31-1/extra/curl/curl-7.83.1/configure.ac	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/configure.ac	1970-01-01 00:00:00.000000000 +0000
@@ -1,4459 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2022, 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.
-#
-#***************************************************************************
-dnl Process this file with autoconf to produce a configure script.
-
-AC_PREREQ(2.59)
-
-dnl We don't know the version number "statically" so we use a dash here
-AC_INIT([curl], [-], [a suitable curl mailing list: https://curl.se/mail/])
-
-XC_OVR_ZZ50
-XC_OVR_ZZ60
-CURL_OVERRIDE_AUTOCONF
-
-dnl configure script copyright
-AC_COPYRIGHT([Copyright (c) 1998 - 2022 Daniel Stenberg, <daniel@haxx.se>
-This configure script may be copied, distributed and modified under the
-terms of the curl license; see COPYING for more details])
-
-AC_CONFIG_SRCDIR([lib/urldata.h])
-AC_CONFIG_HEADERS(lib/curl_config.h)
-AC_CONFIG_MACRO_DIR([m4])
-AM_MAINTAINER_MODE
-m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
-
-CURL_CHECK_OPTION_DEBUG
-CURL_CHECK_OPTION_OPTIMIZE
-CURL_CHECK_OPTION_WARNINGS
-CURL_CHECK_OPTION_WERROR
-CURL_CHECK_OPTION_CURLDEBUG
-CURL_CHECK_OPTION_SYMBOL_HIDING
-CURL_CHECK_OPTION_ARES
-CURL_CHECK_OPTION_RT
-CURL_CHECK_OPTION_ECH
-
-XC_CHECK_PATH_SEPARATOR
-
-#
-# save the configure arguments
-#
-CONFIGURE_OPTIONS="\"$ac_configure_args\""
-AC_SUBST(CONFIGURE_OPTIONS)
-
-dnl SED is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-if test -z "$SED"; then
-  dnl allow it to be overridden
-  AC_PATH_PROG([SED], [sed], [not_found],
-    [$PATH:/usr/bin:/usr/local/bin])
-  if test -z "$SED" || test "$SED" = "not_found"; then
-    AC_MSG_ERROR([sed not found in PATH. Cannot continue without sed.])
-  fi
-fi
-AC_SUBST([SED])
-
-dnl GREP is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-if test -z "$GREP"; then
-  dnl allow it to be overridden
-  AC_PATH_PROG([GREP], [grep], [not_found],
-    [$PATH:/usr/bin:/usr/local/bin])
-  if test -z "$GREP" || test "$GREP" = "not_found"; then
-    AC_MSG_ERROR([grep not found in PATH. Cannot continue without grep.])
-  fi
-fi
-AC_SUBST([GREP])
-
-dnl EGREP is mandatory for configure process and libtool.
-dnl Set it now, allowing it to be changed later.
-if test -z "$EGREP"; then
-  dnl allow it to be overridden
-  if echo a | ($GREP -E '(a|b)') >/dev/null 2>&1; then
-    AC_MSG_CHECKING([for egrep])
-    EGREP="$GREP -E"
-    AC_MSG_RESULT([$EGREP])
-  else
-    AC_PATH_PROG([EGREP], [egrep], [not_found],
-      [$PATH:/usr/bin:/usr/local/bin])
-  fi
-fi
-if test -z "$EGREP" || test "$EGREP" = "not_found"; then
-  AC_MSG_ERROR([egrep not found in PATH. Cannot continue without egrep.])
-fi
-AC_SUBST([EGREP])
-
-dnl AR is mandatory for configure process and libtool.
-dnl This is target dependent, so check it as a tool.
-if test -z "$AR"; then
-  dnl allow it to be overridden
-  AC_PATH_TOOL([AR], [ar], [not_found],
-    [$PATH:/usr/bin:/usr/local/bin])
-  if test -z "$AR" || test "$AR" = "not_found"; then
-    AC_MSG_ERROR([ar not found in PATH. Cannot continue without ar.])
-  fi
-fi
-AC_SUBST([AR])
-
-AC_SUBST(libext)
-
-dnl figure out the libcurl version
-CURLVERSION=`$SED -ne 's/^#define LIBCURL_VERSION "\(.*\)".*/\1/p' ${srcdir}/include/curl/curlver.h`
-XC_CHECK_PROG_CC
-
-dnl for --enable-code-coverage
-CURL_COVERAGE
-
-XC_AUTOMAKE
-AC_MSG_CHECKING([curl version])
-AC_MSG_RESULT($CURLVERSION)
-
-AC_SUBST(CURLVERSION)
-
-dnl
-dnl we extract the numerical version for curl-config only
-VERSIONNUM=`$SED -ne 's/^#define LIBCURL_VERSION_NUM 0x\([0-9A-Fa-f]*\).*/\1/p' ${srcdir}/include/curl/curlver.h`
-AC_SUBST(VERSIONNUM)
-
-dnl Solaris pkgadd support definitions
-PKGADD_PKG="HAXXcurl"
-PKGADD_NAME="curl - a client that groks URLs"
-PKGADD_VENDOR="curl.se"
-AC_SUBST(PKGADD_PKG)
-AC_SUBST(PKGADD_NAME)
-AC_SUBST(PKGADD_VENDOR)
-
-dnl
-dnl initialize all the info variables
-    curl_ssl_msg="no      (--with-{openssl,gnutls,nss,mbedtls,wolfssl,schannel,secure-transport,amissl,bearssl,rustls} )"
-    curl_ssh_msg="no      (--with-{libssh,libssh2})"
-   curl_zlib_msg="no      (--with-zlib)"
- curl_brotli_msg="no      (--with-brotli)"
-   curl_zstd_msg="no      (--with-zstd)"
-    curl_gss_msg="no      (--with-gssapi)"
-  curl_gsasl_msg="no      (--with-gsasl)"
-curl_tls_srp_msg="no      (--enable-tls-srp)"
-    curl_res_msg="default (--enable-ares / --enable-threaded-resolver)"
-   curl_ipv6_msg="no      (--enable-ipv6)"
-curl_unix_sockets_msg="no      (--enable-unix-sockets)"
-    curl_idn_msg="no      (--with-{libidn2,winidn})"
- curl_manual_msg="no      (--enable-manual)"
-curl_libcurl_msg="enabled (--disable-libcurl-option)"
-curl_verbose_msg="enabled (--disable-verbose)"
-   curl_sspi_msg="no      (--enable-sspi)"
-   curl_ldap_msg="no      (--enable-ldap / --with-ldap-lib / --with-lber-lib)"
-  curl_ldaps_msg="no      (--enable-ldaps)"
-   curl_rtsp_msg="no      (--enable-rtsp)"
-   curl_rtmp_msg="no      (--with-librtmp)"
-    curl_psl_msg="no      (--with-libpsl)"
- curl_altsvc_msg="enabled (--disable-alt-svc)"
- curl_headers_msg="no      (--enable-headers-api)"
-   curl_hsts_msg="enabled (--disable-hsts)"
-    ssl_backends=
-     curl_h1_msg="enabled (internal)"
-     curl_h2_msg="no      (--with-nghttp2, --with-hyper)"
-     curl_h3_msg="no      (--with-ngtcp2, --with-quiche --with-msh3)"
-
-enable_altsvc="yes"
-hsts="yes"
-
-dnl
-dnl Save some initial values the user might have provided
-dnl
-INITIAL_LDFLAGS=$LDFLAGS
-INITIAL_LIBS=$LIBS
-
-dnl **********************************************************************
-dnl See which TLS backend(s) that are requested. Just do all the
-dnl TLS AC_ARG_WITH() invokes here and do the checks later
-dnl **********************************************************************
-OPT_SCHANNEL=no
-AC_ARG_WITH(schannel,dnl
-AS_HELP_STRING([--with-schannel],[enable Windows native SSL/TLS]),
-  OPT_SCHANNEL=$withval
-  TLSCHOICE="schannel")
-
-OPT_SECURETRANSPORT=no
-AC_ARG_WITH(secure-transport,dnl
-AS_HELP_STRING([--with-secure-transport],[enable Apple OS native SSL/TLS]),
-  OPT_SECURETRANSPORT=$withval
-  test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }Secure-Transport"
-)
-
-OPT_AMISSL=no
-AC_ARG_WITH(amissl,dnl
-AS_HELP_STRING([--with-amissl],[enable Amiga native SSL/TLS (AmiSSL)]),
-  OPT_AMISSL=$withval
-  test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }AmiSSL")
-
-OPT_OPENSSL=no
-dnl Default to no CA bundle
-ca="no"
-AC_ARG_WITH(ssl,dnl
-AS_HELP_STRING([--with-ssl=PATH],[old version of --with-openssl])
-AS_HELP_STRING([--without-ssl], [build without any TLS library]),
-  OPT_SSL=$withval
-  OPT_OPENSSL=$withval
-  if test X"$withval" != Xno; then
-    test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }OpenSSL")
-  fi
-
-AC_ARG_WITH(openssl,dnl
-AS_HELP_STRING([--with-openssl=PATH],[Where to look for OpenSSL, PATH points to the SSL installation (default: /usr/local/ssl); when possible, set the PKG_CONFIG_PATH environment variable instead of using this option]),
-  OPT_OPENSSL=$withval
-  if test X"$withval" != Xno; then
-    test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }OpenSSL")
-  fi
-
-OPT_GNUTLS=no
-AC_ARG_WITH(gnutls,dnl
-AS_HELP_STRING([--with-gnutls=PATH],[where to look for GnuTLS, PATH points to the installation root]),
-  OPT_GNUTLS=$withval
-  if test X"$withval" != Xno; then
-    test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }GnuTLS")
-  fi
-
-OPT_MBEDTLS=no
-AC_ARG_WITH(mbedtls,dnl
-AS_HELP_STRING([--with-mbedtls=PATH],[where to look for mbedTLS, PATH points to the installation root]),
-  OPT_MBEDTLS=$withval
-  if test X"$withval" != Xno; then
-    test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }mbedTLS")
-  fi
-
-OPT_WOLFSSL=no
-AC_ARG_WITH(wolfssl,dnl
-AS_HELP_STRING([--with-wolfssl=PATH],[where to look for WolfSSL, PATH points to the installation root (default: system lib default)]),
-  OPT_WOLFSSL=$withval
-  if test X"$withval" != Xno; then
-    test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }wolfSSL")
-  fi
-
-OPT_BEARSSL=no
-AC_ARG_WITH(bearssl,dnl
-AS_HELP_STRING([--with-bearssl=PATH],[where to look for BearSSL, PATH points to the installation root]),
-  OPT_BEARSSL=$withval
-  if test X"$withval" != Xno; then
-    test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }BearSSL")
-  fi
-
-OPT_RUSTLS=no
-AC_ARG_WITH(rustls,dnl
-AS_HELP_STRING([--with-rustls=PATH],[where to look for rustls, PATH points to the installation root]),
-  OPT_RUSTLS=$withval
-  if test X"$withval" != Xno; then
-    test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }rustls")
-  fi
-
-OPT_NSS_AWARE=no
-AC_ARG_WITH(nss-deprecated,dnl
-AS_HELP_STRING([--with-nss-deprecated],[confirm you realize NSS is going away]),
-  if test X"$withval" != Xno; then
-    OPT_NSS_AWARE=$withval
-  fi
-)
-
-OPT_NSS=no
-AC_ARG_WITH(nss,dnl
-AS_HELP_STRING([--with-nss=PATH],[where to look for NSS, PATH points to the installation root]),
-  OPT_NSS=$withval
-  if test X"$withval" != Xno; then
-
-    if test X"$OPT_NSS_AWARE" = "Xno" ; then
-      AC_MSG_ERROR([NSS use must be confirmed using --with-nss-deprecated. NSS support will be dropped from curl in August 2022. See docs/DEPRECATE.md])
-    fi
-
-    test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE, }NSS"
-  fi
-)
-
-dnl If no TLS choice has been made, check if it was explicitly disabled or
-dnl error out to force the user to decide.
-if test -z "$TLSCHOICE"; then
-  if test "x$OPT_SSL" != "xno"; then
-    AC_MSG_ERROR([select TLS backend(s) or disable TLS with --without-ssl.
-
-Select from these:
-
-  --with-amissl
-  --with-bearssl
-  --with-gnutls
-  --with-mbedtls
-  --with-nss
-  --with-openssl (also works for BoringSSL and libressl)
-  --with-rustls
-  --with-schannel
-  --with-secure-transport
-  --with-wolfssl
-])
-  fi
-fi
-
-AC_ARG_WITH(darwinssl,,
-  AC_MSG_ERROR([--with-darwin-ssl no longer works!]))
-
-dnl
-dnl Detect the canonical host and target build environment
-dnl
-
-AC_CANONICAL_HOST
-dnl Get system canonical name
-AC_DEFINE_UNQUOTED(OS, "${host}", [cpu-machine-OS])
-
-# Silence warning: ar: 'u' modifier ignored since 'D' is the default
-AC_SUBST(AR_FLAGS, [cr])
-
-dnl This defines _ALL_SOURCE for AIX
-CURL_CHECK_AIX_ALL_SOURCE
-
-dnl Our configure and build reentrant settings
-CURL_CONFIGURE_THREAD_SAFE
-CURL_CONFIGURE_REENTRANT
-
-dnl check for how to do large files
-AC_SYS_LARGEFILE
-
-XC_LIBTOOL
-
-#
-# Automake conditionals based on libtool related checks
-#
-
-AM_CONDITIONAL([CURL_LT_SHLIB_USE_VERSION_INFO],
-  [test "x$xc_lt_shlib_use_version_info" = 'xyes'])
-AM_CONDITIONAL([CURL_LT_SHLIB_USE_NO_UNDEFINED],
-  [test "x$xc_lt_shlib_use_no_undefined" = 'xyes'])
-AM_CONDITIONAL([CURL_LT_SHLIB_USE_MIMPURE_TEXT],
-  [test "x$xc_lt_shlib_use_mimpure_text" = 'xyes'])
-
-#
-# Due to libtool and automake machinery limitations of not allowing
-# specifying separate CPPFLAGS or CFLAGS when compiling objects for
-# inclusion of these in shared or static libraries, we are forced to
-# build using separate configure runs for shared and static libraries
-# on systems where different CPPFLAGS or CFLAGS are mandatory in order
-# to compile objects for each kind of library. Notice that relying on
-# the '-DPIC' CFLAG that libtool provides is not valid given that the
-# user might for example choose to build static libraries with PIC.
-#
-
-#
-# Make our Makefile.am files use the staticlib CPPFLAG only when strictly
-# targeting a static library and not building its shared counterpart.
-#
-
-AM_CONDITIONAL([USE_CPPFLAG_CURL_STATICLIB],
-  [test "x$xc_lt_build_static_only" = 'xyes'])
-
-#
-# Make staticlib CPPFLAG variable and its definition visible in output
-# files unconditionally, providing an empty definition unless strictly
-# targeting a static library and not building its shared counterpart.
-#
-
-CPPFLAG_CURL_STATICLIB=
-if test "x$xc_lt_build_static_only" = 'xyes'; then
-  CPPFLAG_CURL_STATICLIB='-DCURL_STATICLIB'
-fi
-AC_SUBST([CPPFLAG_CURL_STATICLIB])
-
-
-# Determine whether all dependent libraries must be specified when linking
-if test "X$enable_shared" = "Xyes" -a "X$link_all_deplibs" = "Xno"
-then
-    REQUIRE_LIB_DEPS=no
-else
-    REQUIRE_LIB_DEPS=yes
-fi
-AC_SUBST(REQUIRE_LIB_DEPS)
-AM_CONDITIONAL(USE_EXPLICIT_LIB_DEPS, test x$REQUIRE_LIB_DEPS = xyes)
-
-dnl check if there's a way to force code inline
-AC_C_INLINE
-
-dnl **********************************************************************
-dnl platform/compiler/architecture specific checks/flags
-dnl **********************************************************************
-
-CURL_CHECK_COMPILER
-CURL_SET_COMPILER_BASIC_OPTS
-CURL_SET_COMPILER_DEBUG_OPTS
-CURL_SET_COMPILER_OPTIMIZE_OPTS
-CURL_SET_COMPILER_WARNING_OPTS
-
-if test "$compiler_id" = "INTEL_UNIX_C"; then
-  #
-  if test "$compiler_num" -ge "1000"; then
-    dnl icc 10.X or later
-    CFLAGS="$CFLAGS -shared-intel"
-  elif test "$compiler_num" -ge "900"; then
-    dnl icc 9.X specific
-    CFLAGS="$CFLAGS -i-dynamic"
-  fi
-  #
-fi
-
-CURL_CFLAG_EXTRAS=""
-if test X"$want_werror" = Xyes; then
-  CURL_CFLAG_EXTRAS="-Werror"
-  if test "$compiler_id" = "GNU_C"; then
-    dnl enable -pedantic-errors for GCC 5 and later,
-    dnl as before that it was the same as -Werror=pedantic
-    if test "$compiler_num" -ge "500"; then
-      CURL_CFLAG_EXTRAS="$CURL_CFLAG_EXTRAS -pedantic-errors"
-    fi
-  fi
-fi
-AC_SUBST(CURL_CFLAG_EXTRAS)
-
-CURL_CHECK_COMPILER_HALT_ON_ERROR
-CURL_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE
-CURL_CHECK_COMPILER_PROTOTYPE_MISMATCH
-CURL_CHECK_COMPILER_SYMBOL_HIDING
-
-CURL_CHECK_CURLDEBUG
-AM_CONDITIONAL(CURLDEBUG, test x$want_curldebug = xyes)
-
-supports_unittests=yes
-# cross-compilation of unit tests static library/programs fails when
-# libcurl shared library is built. This might be due to a libtool or
-# automake issue. In this case we disable unit tests.
-if test "x$cross_compiling" != "xno" &&
-   test "x$enable_shared" != "xno"; then
-  supports_unittests=no
-fi
-
-# IRIX 6.5.24 gcc 3.3 autobuilds fail unittests library compilation due to
-# a problem related with OpenSSL headers and library versions not matching.
-# Disable unit tests while time to further investigate this is found.
-case $host in
-  mips-sgi-irix6.5)
-    if test "$compiler_id" = "GNU_C"; then
-      supports_unittests=no
-    fi
-    ;;
-esac
-
-# All AIX autobuilds fails unit tests linking against unittests library
-# due to unittests library being built with no symbols or members. Libtool ?
-# Disable unit tests while time to further investigate this is found.
-case $host_os in
-  aix*)
-    supports_unittests=no
-    ;;
-esac
-
-dnl Build unit tests when option --enable-debug is given.
-if test "x$want_debug" = "xyes" &&
-   test "x$supports_unittests" = "xyes"; then
-  want_unittests=yes
-else
-  want_unittests=no
-fi
-AM_CONDITIONAL(BUILD_UNITTESTS, test x$want_unittests = xyes)
-
-# For original MinGW (ie not MinGW-w64) define the Windows minimum supported OS
-# version to Windows XP (0x501) if it hasn't already been defined by the user.
-# Without this override original MinGW defaults the version to Windows NT 4.0.
-# Note original MinGW sets _WIN32_WINNT if not defined to whatever WINVER is.
-case $host in
-  *-*-mingw32*)
-    AC_MSG_CHECKING([if MinGW minimum supported OS should be set to XP])
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#include <_mingw.h>
-      ]],[[
-#if defined(__MINGW64_VERSION_MAJOR) || \
-    defined(WINVER) || \
-    defined(_WIN32_WINNT)
-#error
-#endif
-      ]])
-    ],[
-      CPPFLAGS="$CPPFLAGS -DWINVER=0x501"
-      AC_MSG_RESULT([yes])
-    ],[
-      AC_MSG_RESULT([no])
-    ])
-    ;;
-esac
-
-dnl **********************************************************************
-dnl Compilation based checks should not be done before this point.
-dnl **********************************************************************
-
-dnl **********************************************************************
-dnl Make sure that our checks for headers windows.h winsock2.h
-dnl and ws2tcpip.h take precedence over any other further checks which
-dnl could be done later using AC_CHECK_HEADER or AC_CHECK_HEADERS for
-dnl this specific header files. And do them before its results are used.
-dnl **********************************************************************
-
-CURL_CHECK_HEADER_WINDOWS
-CURL_CHECK_NATIVE_WINDOWS
-case X-"$curl_cv_native_windows" in
-  X-yes)
-    CURL_CHECK_HEADER_WINSOCK2
-    CURL_CHECK_HEADER_WS2TCPIP
-    CURL_CHECK_HEADER_WINCRYPT
-    CURL_CHECK_HEADER_WINLDAP
-    CURL_CHECK_HEADER_WINBER
-    ;;
-  *)
-    curl_cv_header_winsock2_h="no"
-    curl_cv_header_ws2tcpip_h="no"
-    curl_cv_header_wincrypt_h="no"
-    curl_cv_header_winldap_h="no"
-    curl_cv_header_winber_h="no"
-    ;;
-esac
-CURL_CHECK_WIN32_LARGEFILE
-CURL_CHECK_WIN32_CRYPTO
-
-CURL_DARWIN_CFLAGS
-CURL_DARWIN_SYSTEMCONFIGURATION
-CURL_SUPPORTS_BUILTIN_AVAILABLE
-
-
-dnl ************************************************************
-dnl switch off particular protocols
-dnl
-AC_MSG_CHECKING([whether to support http])
-AC_ARG_ENABLE(http,
-AS_HELP_STRING([--enable-http],[Enable HTTP support])
-AS_HELP_STRING([--disable-http],[Disable HTTP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_HTTP, 1, [to disable HTTP])
-       disable_http="yes"
-       AC_MSG_WARN([disable HTTP disables FTP over proxy and RTSP])
-       AC_SUBST(CURL_DISABLE_HTTP, [1])
-       AC_DEFINE(CURL_DISABLE_RTSP, 1, [to disable RTSP])
-       AC_SUBST(CURL_DISABLE_RTSP, [1])
-       dnl toggle off alt-svc too when HTTP is disabled
-       AC_DEFINE(CURL_DISABLE_ALTSVC, 1, [disable alt-svc])
-       AC_DEFINE(CURL_DISABLE_HSTS, 1, [disable HSTS])
-       curl_h1_msg="no      (--enable-http, --with-hyper)"
-       curl_altsvc_msg="no";
-       curl_hsts_msg="no      (--enable-hsts)";
-       enable_altsvc="no"
-       hsts="no"
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support ftp])
-AC_ARG_ENABLE(ftp,
-AS_HELP_STRING([--enable-ftp],[Enable FTP support])
-AS_HELP_STRING([--disable-ftp],[Disable FTP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_FTP, 1, [to disable FTP])
-       AC_SUBST(CURL_DISABLE_FTP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support file])
-AC_ARG_ENABLE(file,
-AS_HELP_STRING([--enable-file],[Enable FILE support])
-AS_HELP_STRING([--disable-file],[Disable FILE support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_FILE, 1, [to disable FILE])
-       AC_SUBST(CURL_DISABLE_FILE, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support ldap])
-AC_ARG_ENABLE(ldap,
-AS_HELP_STRING([--enable-ldap],[Enable LDAP support])
-AS_HELP_STRING([--disable-ldap],[Disable LDAP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-       AC_SUBST(CURL_DISABLE_LDAP, [1])
-       ;;
-  yes)
-       ldap_askedfor="yes"
-       AC_MSG_RESULT(yes)
-       ;;
-  *)
-       AC_MSG_RESULT(yes)
-       ;;
-  esac ],[
-       AC_MSG_RESULT(yes) ]
-)
-AC_MSG_CHECKING([whether to support ldaps])
-AC_ARG_ENABLE(ldaps,
-AS_HELP_STRING([--enable-ldaps],[Enable LDAPS support])
-AS_HELP_STRING([--disable-ldaps],[Disable LDAPS support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-       AC_SUBST(CURL_DISABLE_LDAPS, [1])
-       ;;
-  *)   if test "x$CURL_DISABLE_LDAP" = "x1" ; then
-         AC_MSG_RESULT(LDAP needs to be enabled to support LDAPS)
-         AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-         AC_SUBST(CURL_DISABLE_LDAPS, [1])
-       else
-         AC_MSG_RESULT(yes)
-         AC_DEFINE(HAVE_LDAP_SSL, 1, [Use LDAPS implementation])
-         AC_SUBST(HAVE_LDAP_SSL, [1])
-       fi
-       ;;
-  esac ],[
-       if test "x$CURL_DISABLE_LDAP" = "x1" ; then
-         AC_MSG_RESULT(no)
-         AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-         AC_SUBST(CURL_DISABLE_LDAPS, [1])
-       else
-         AC_MSG_RESULT(yes)
-         AC_DEFINE(HAVE_LDAP_SSL, 1, [Use LDAPS implementation])
-         AC_SUBST(HAVE_LDAP_SSL, [1])
-       fi ]
-)
-
-dnl **********************************************************************
-dnl Check for Hyper
-dnl **********************************************************************
-
-OPT_HYPER="no"
-
-AC_ARG_WITH(hyper,
-AS_HELP_STRING([--with-hyper=PATH],[Enable hyper usage])
-AS_HELP_STRING([--without-hyper],[Disable hyper usage]),
-  [OPT_HYPER=$withval])
-case "$OPT_HYPER" in
-  no)
-    dnl --without-hyper option used
-    want_hyper="no"
-    ;;
-  yes)
-    dnl --with-hyper option used without path
-    want_hyper="default"
-    want_hyper_path=""
-    ;;
-  *)
-    dnl --with-hyper option used with path
-    want_hyper="yes"
-    want_hyper_path="$withval"
-    ;;
-esac
-
-if test X"$want_hyper" != Xno; then
-  if test "x$disable_http" = "xyes"; then
-    AC_MSG_ERROR([--with-hyper is not compatible with --disable-http])
-  fi
-
-  dnl backup the pre-hyper variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  CURL_CHECK_PKGCONFIG(hyper, $want_hyper_path)
-
-  if test "$PKGCONFIG" != "no" ; then
-    LIB_HYPER=`CURL_EXPORT_PCDIR([$want_hyper_path])
-      $PKGCONFIG --libs-only-l hyper`
-    CPP_HYPER=`CURL_EXPORT_PCDIR([$want_hyper_path]) dnl
-      $PKGCONFIG --cflags-only-I hyper`
-    LD_HYPER=`CURL_EXPORT_PCDIR([$want_hyper_path])
-      $PKGCONFIG --libs-only-L hyper`
-  else
-    dnl no hyper pkg-config found
-    LIB_HYPER="-lhyper -ldl -lpthread -lm"
-    if test X"$want_hyper" != Xdefault; then
-      CPP_HYPER=-I"$want_hyper_path/capi/include"
-      LD_HYPER="-L$want_hyper_path/target/release -L$want_hyper_path/target/debug"
-    fi
-  fi
-  if test -n "$LIB_HYPER"; then
-    AC_MSG_NOTICE([-l is $LIB_HYPER])
-    AC_MSG_NOTICE([-I is $CPP_HYPER])
-    AC_MSG_NOTICE([-L is $LD_HYPER])
-
-    LDFLAGS="$LDFLAGS $LD_HYPER"
-    CPPFLAGS="$CPPFLAGS $CPP_HYPER"
-    LIBS="$LIB_HYPER $LIBS"
-
-    if test "x$cross_compiling" != "xyes"; then
-      dnl remove -L, separate with colon if more than one
-      DIR_HYPER=`echo $LD_HYPER | $SED -e 's/^-L//' -e 's/ -L/:/g'`
-    fi
-
-    AC_CHECK_LIB(hyper, hyper_io_new,
-      [
-       AC_CHECK_HEADERS(hyper.h,
-          experimental="$experimental Hyper"
-          AC_MSG_NOTICE([Hyper support is experimental])
-          curl_h1_msg="enabled (Hyper)"
-          curl_h2_msg=$curl_h1_msg
-          HYPER_ENABLED=1
-          AC_DEFINE(USE_HYPER, 1, [if hyper is in use])
-          AC_SUBST(USE_HYPER, [1])
-          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_HYPER"
-          export CURL_LIBRARY_PATH
-          AC_MSG_NOTICE([Added $DIR_HYPER to CURL_LIBRARY_PATH]),
-       )
-      ],
-      for d in `echo $DIR_HYPER | sed -e 's/:/ /'`; do
-        if test -f "$d/libhyper.a"; then
-          AC_MSG_ERROR([hyper was found in $d but was probably built with wrong flags. See docs/HYPER.md.])
-        fi
-      done
-      AC_MSG_ERROR([--with-hyper but hyper was not found. See docs/HYPER.md.])
-    )
-  fi
-fi
-
-if test X"$want_hyper" != Xno; then
-  AC_MSG_NOTICE([Disable RTSP support with hyper])
-  AC_DEFINE(CURL_DISABLE_RTSP, 1, [to disable RTSP])
-  AC_SUBST(CURL_DISABLE_RTSP, [1])
-
-else
-
-  AC_MSG_CHECKING([whether to support rtsp])
-  AC_ARG_ENABLE(rtsp,
-  AS_HELP_STRING([--enable-rtsp],[Enable RTSP support])
-  AS_HELP_STRING([--disable-rtsp],[Disable RTSP support]),
-  [ case "$enableval" in
-    no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_RTSP, 1, [to disable RTSP])
-       AC_SUBST(CURL_DISABLE_RTSP, [1])
-       ;;
-    *)
-       if test x$CURL_DISABLE_HTTP = x1 ; then
-         AC_MSG_ERROR(HTTP support needs to be enabled in order to enable RTSP support!)
-       else
-         AC_MSG_RESULT(yes)
-         curl_rtsp_msg="enabled"
-       fi
-       ;;
-    esac ],
-       if test "x$CURL_DISABLE_HTTP" != "x1"; then
-          AC_MSG_RESULT(yes)
-          curl_rtsp_msg="enabled"
-       else
-          AC_MSG_RESULT(no)
-       fi
-  )
-fi
-
-AC_MSG_CHECKING([whether to support proxies])
-AC_ARG_ENABLE(proxy,
-AS_HELP_STRING([--enable-proxy],[Enable proxy support])
-AS_HELP_STRING([--disable-proxy],[Disable proxy support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_PROXY, 1, [to disable proxies])
-       AC_SUBST(CURL_DISABLE_PROXY, [1])
-       https_proxy="no"
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-AC_MSG_CHECKING([whether to support dict])
-AC_ARG_ENABLE(dict,
-AS_HELP_STRING([--enable-dict],[Enable DICT support])
-AS_HELP_STRING([--disable-dict],[Disable DICT support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_DICT, 1, [to disable DICT])
-       AC_SUBST(CURL_DISABLE_DICT, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support telnet])
-AC_ARG_ENABLE(telnet,
-AS_HELP_STRING([--enable-telnet],[Enable TELNET support])
-AS_HELP_STRING([--disable-telnet],[Disable TELNET support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_TELNET, 1, [to disable TELNET])
-       AC_SUBST(CURL_DISABLE_TELNET, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-AC_MSG_CHECKING([whether to support tftp])
-AC_ARG_ENABLE(tftp,
-AS_HELP_STRING([--enable-tftp],[Enable TFTP support])
-AS_HELP_STRING([--disable-tftp],[Disable TFTP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_TFTP, 1, [to disable TFTP])
-       AC_SUBST(CURL_DISABLE_TFTP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-AC_MSG_CHECKING([whether to support pop3])
-AC_ARG_ENABLE(pop3,
-AS_HELP_STRING([--enable-pop3],[Enable POP3 support])
-AS_HELP_STRING([--disable-pop3],[Disable POP3 support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_POP3, 1, [to disable POP3])
-       AC_SUBST(CURL_DISABLE_POP3, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-
-AC_MSG_CHECKING([whether to support imap])
-AC_ARG_ENABLE(imap,
-AS_HELP_STRING([--enable-imap],[Enable IMAP support])
-AS_HELP_STRING([--disable-imap],[Disable IMAP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_IMAP, 1, [to disable IMAP])
-       AC_SUBST(CURL_DISABLE_IMAP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-
-AC_MSG_CHECKING([whether to support smb])
-AC_ARG_ENABLE(smb,
-AS_HELP_STRING([--enable-smb],[Enable SMB/CIFS support])
-AS_HELP_STRING([--disable-smb],[Disable SMB/CIFS support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_SMB, 1, [to disable SMB/CIFS])
-       AC_SUBST(CURL_DISABLE_SMB, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-AC_MSG_CHECKING([whether to support smtp])
-AC_ARG_ENABLE(smtp,
-AS_HELP_STRING([--enable-smtp],[Enable SMTP support])
-AS_HELP_STRING([--disable-smtp],[Disable SMTP support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_SMTP, 1, [to disable SMTP])
-       AC_SUBST(CURL_DISABLE_SMTP, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-AC_MSG_CHECKING([whether to support gopher])
-AC_ARG_ENABLE(gopher,
-AS_HELP_STRING([--enable-gopher],[Enable Gopher support])
-AS_HELP_STRING([--disable-gopher],[Disable Gopher support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_GOPHER, 1, [to disable Gopher])
-       AC_SUBST(CURL_DISABLE_GOPHER, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-AC_MSG_CHECKING([whether to support mqtt])
-AC_ARG_ENABLE(mqtt,
-AS_HELP_STRING([--enable-mqtt],[Enable MQTT support])
-AS_HELP_STRING([--disable-mqtt],[Disable MQTT support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_MQTT, 1, [to disable MQTT])
-       AC_SUBST(CURL_DISABLE_MQTT, [1])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(no)
-)
-
-dnl **********************************************************************
-dnl Check for built-in manual
-dnl **********************************************************************
-
-AC_MSG_CHECKING([whether to provide built-in manual])
-AC_ARG_ENABLE(manual,
-AS_HELP_STRING([--enable-manual],[Enable built-in manual])
-AS_HELP_STRING([--disable-manual],[Disable built-in manual]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       USE_MANUAL="1"
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-       USE_MANUAL="1"
-)
-dnl The actual use of the USE_MANUAL variable is done much later in this
-dnl script to allow other actions to disable it as well.
-
-dnl ************************************************************
-dnl disable C code generation support
-dnl
-AC_MSG_CHECKING([whether to enable generation of C code])
-AC_ARG_ENABLE(libcurl_option,
-AS_HELP_STRING([--enable-libcurl-option],[Enable --libcurl C code generation support])
-AS_HELP_STRING([--disable-libcurl-option],[Disable --libcurl C code generation support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_LIBCURL_OPTION, 1, [to disable --libcurl C code generation option])
-       curl_libcurl_msg="no"
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl **********************************************************************
-dnl Checks for libraries.
-dnl **********************************************************************
-
-AC_MSG_CHECKING([whether to use libgcc])
-AC_ARG_ENABLE(libgcc,
-AS_HELP_STRING([--enable-libgcc],[use libgcc when linking]),
-[ case "$enableval" in
-  yes)
-       LIBS="-lgcc $LIBS"
-       AC_MSG_RESULT(yes)
-       ;;
-  *)   AC_MSG_RESULT(no)
-       ;;
-  esac ],
-       AC_MSG_RESULT(no)
-)
-
-CURL_CHECK_LIB_XNET
-
-dnl gethostbyname without lib or in the nsl lib?
-AC_CHECK_FUNC(gethostbyname,
-              [HAVE_GETHOSTBYNAME="1"
-              ],
-              [ AC_CHECK_LIB(nsl, gethostbyname,
-                             [HAVE_GETHOSTBYNAME="1"
-                             LIBS="-lnsl $LIBS"
-                             ])
-              ])
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl gethostbyname in the socket lib?
-  AC_CHECK_LIB(socket, gethostbyname,
-               [HAVE_GETHOSTBYNAME="1"
-               LIBS="-lsocket $LIBS"
-               ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl gethostbyname in the watt lib?
-  AC_CHECK_LIB(watt, gethostbyname,
-               [HAVE_GETHOSTBYNAME="1"
-               CPPFLAGS="-I/dev/env/WATT_ROOT/inc"
-               LDFLAGS="-L/dev/env/WATT_ROOT/lib"
-               LIBS="-lwatt $LIBS"
-               ])
-fi
-
-dnl At least one system has been identified to require BOTH nsl and socket
-dnl libs at the same time to link properly.
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  AC_MSG_CHECKING([for gethostbyname with both nsl and socket libs])
-  my_ac_save_LIBS=$LIBS
-  LIBS="-lnsl -lsocket $LIBS"
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      gethostbyname();
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-    LIBS=$my_ac_save_LIBS
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for winsock systems
-  if test "$curl_cv_header_windows_h" = "yes"; then
-    if test "$curl_cv_header_winsock2_h" = "yes"; then
-      winsock_LIB="-lws2_32"
-    fi
-    if test ! -z "$winsock_LIB"; then
-      my_ac_save_LIBS=$LIBS
-      LIBS="$winsock_LIB $LIBS"
-      AC_MSG_CHECKING([for gethostbyname in $winsock_LIB])
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_WINDOWS_H
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#endif
-#endif
-        ]],[[
-          gethostbyname("www.dummysite.com");
-        ]])
-      ],[
-        AC_MSG_RESULT([yes])
-        HAVE_GETHOSTBYNAME="1"
-      ],[
-        AC_MSG_RESULT([no])
-        winsock_LIB=""
-        LIBS=$my_ac_save_LIBS
-      ])
-    fi
-  fi
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for Minix 3.1
-  AC_MSG_CHECKING([for gethostbyname for Minix 3])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-/* Older Minix versions may need <net/gen/netdb.h> here instead */
-#include <netdb.h>
-    ]],[[
-      gethostbyname("www.dummysite.com");
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl This is for eCos with a stubbed DNS implementation
-  AC_MSG_CHECKING([for gethostbyname for eCos])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-#include <stdio.h>
-#include <netdb.h>
-    ]],[[
-      gethostbyname("www.dummysite.com");
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1" -o "${with_amissl+set}" = set
-then
-  dnl This is for AmigaOS with bsdsocket.library - needs testing before -lnet
-  AC_MSG_CHECKING([for gethostbyname for AmigaOS bsdsocket.library])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-  #include <proto/bsdsocket.h>
-  struct Library *SocketBase = NULL;
-    ]],[[
-      gethostbyname("www.dummysite.com");
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    HAVE_GETHOSTBYNAME="1"
-    HAVE_PROTO_BSDSOCKET_H="1"
-    AC_DEFINE(HAVE_PROTO_BSDSOCKET_H, 1, [if Amiga bsdsocket.library is in use])
-    AC_SUBST(HAVE_PROTO_BSDSOCKET_H, [1])
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"
-then
-  dnl gethostbyname in the network lib - for Haiku OS
-  AC_CHECK_LIB(network, gethostbyname,
-               [HAVE_GETHOSTBYNAME="1"
-               LIBS="-lnetwork $LIBS"
-               ])
-fi
-
-if test "$HAVE_GETHOSTBYNAME" != "1"; then
-  AC_MSG_ERROR([couldn't find libraries for gethostbyname()])
-fi
-
-CURL_CHECK_LIBS_CONNECT
-
-CURL_NETWORK_LIBS=$LIBS
-
-dnl **********************************************************************
-dnl In case that function clock_gettime with monotonic timer is available,
-dnl check for additional required libraries.
-dnl **********************************************************************
-CURL_CHECK_LIBS_CLOCK_GETTIME_MONOTONIC
-
-dnl **********************************************************************
-dnl The preceding library checks are all potentially useful for test
-dnl servers and libtest cases which require networking and clock_gettime
-dnl support.  Save the list of required libraries at this point for use
-dnl while linking those test servers and programs.
-dnl **********************************************************************
-CURL_NETWORK_AND_TIME_LIBS=$LIBS
-
-dnl **********************************************************************
-dnl Check for the presence of ZLIB libraries and headers
-dnl **********************************************************************
-
-dnl Check for & handle argument to --with-zlib.
-
-clean_CPPFLAGS=$CPPFLAGS
-clean_LDFLAGS=$LDFLAGS
-clean_LIBS=$LIBS
-ZLIB_LIBS=""
-AC_ARG_WITH(zlib,
-AS_HELP_STRING([--with-zlib=PATH],[search for zlib in PATH])
-AS_HELP_STRING([--without-zlib],[disable use of zlib]),
-               [OPT_ZLIB="$withval"])
-
-if test "$OPT_ZLIB" = "no" ; then
-    AC_MSG_WARN([zlib disabled])
-else
-  if test "$OPT_ZLIB" = "yes" ; then
-    OPT_ZLIB=""
-  fi
-
-  if test -z "$OPT_ZLIB" ; then
-    CURL_CHECK_PKGCONFIG(zlib)
-
-    if test "$PKGCONFIG" != "no" ; then
-      LIBS="`$PKGCONFIG --libs-only-l zlib` $LIBS"
-      LDFLAGS="$LDFLAGS `$PKGCONFIG --libs-only-L zlib`"
-      CPPFLAGS="$CPPFLAGS `$PKGCONFIG --cflags-only-I zlib`"
-      OPT_ZLIB=""
-      HAVE_LIBZ="1"
-    fi
-
-    if test -z "$HAVE_LIBZ"; then
-
-      dnl Check for the lib without setting any new path, since many
-      dnl people have it in the default path
-
-      AC_CHECK_LIB(z, inflateEnd,
-                   dnl libz found, set the variable
-                   [HAVE_LIBZ="1"
-                    LIBS="-lz $LIBS"],
-                   dnl if no lib found, try /usr/local
-                   [OPT_ZLIB="/usr/local"])
-    fi
-  fi
-
-  dnl Add a nonempty path to the compiler flags
-  if test -n "$OPT_ZLIB"; then
-     CPPFLAGS="$CPPFLAGS -I$OPT_ZLIB/include"
-     LDFLAGS="$LDFLAGS -L$OPT_ZLIB/lib$libsuff"
-  fi
-
-  AC_CHECK_HEADER(zlib.h,
-    [
-    dnl zlib.h was found
-    HAVE_ZLIB_H="1"
-    dnl if the lib wasn't found already, try again with the new paths
-    if test "$HAVE_LIBZ" != "1"; then
-      AC_CHECK_LIB(z, gzread,
-                   [
-                   dnl the lib was found!
-                   HAVE_LIBZ="1"
-                   LIBS="-lz $LIBS"
-                   ],
-                   [ CPPFLAGS=$clean_CPPFLAGS
-                   LDFLAGS=$clean_LDFLAGS])
-    fi
-    ],
-    [
-      dnl zlib.h was not found, restore the flags
-      CPPFLAGS=$clean_CPPFLAGS
-      LDFLAGS=$clean_LDFLAGS]
-    )
-
-  if test "$HAVE_LIBZ" = "1" && test "$HAVE_ZLIB_H" != "1"
-  then
-    AC_MSG_WARN([configure found only the libz lib, not the header file!])
-    HAVE_LIBZ=""
-    CPPFLAGS=$clean_CPPFLAGS
-    LDFLAGS=$clean_LDFLAGS
-    LIBS=$clean_LIBS
-  elif test "$HAVE_LIBZ" != "1" && test "$HAVE_ZLIB_H" = "1"
-  then
-    AC_MSG_WARN([configure found only the libz header file, not the lib!])
-    CPPFLAGS=$clean_CPPFLAGS
-    LDFLAGS=$clean_LDFLAGS
-    LIBS=$clean_LIBS
-  elif test "$HAVE_LIBZ" = "1" && test "$HAVE_ZLIB_H" = "1"
-  then
-    dnl both header and lib were found!
-    AC_SUBST(HAVE_LIBZ)
-    AC_DEFINE(HAVE_ZLIB_H, 1, [if you have the zlib.h header file])
-    AC_DEFINE(HAVE_LIBZ, 1, [if zlib is available])
-
-    ZLIB_LIBS="-lz"
-    LIBS="-lz $clean_LIBS"
-
-    dnl replace 'HAVE_LIBZ' in the automake makefile.ams
-    AMFIXLIB="1"
-    AC_MSG_NOTICE([found both libz and libz.h header])
-    curl_zlib_msg="enabled"
-  fi
-fi
-
-dnl set variable for use in automakefile(s)
-AM_CONDITIONAL(HAVE_LIBZ, test x"$AMFIXLIB" = x1)
-AC_SUBST(ZLIB_LIBS)
-
-dnl **********************************************************************
-dnl Check for the presence of BROTLI decoder libraries and headers
-dnl **********************************************************************
-
-dnl Brotli project home page: https://github.com/google/brotli
-
-dnl Default to compiler & linker defaults for BROTLI files & libraries.
-OPT_BROTLI=off
-AC_ARG_WITH(brotli,dnl
-AS_HELP_STRING([--with-brotli=PATH],[Where to look for brotli, PATH points to the BROTLI installation; when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AS_HELP_STRING([--without-brotli], [disable BROTLI]),
-  OPT_BROTLI=$withval)
-
-if test X"$OPT_BROTLI" != Xno; then
-  dnl backup the pre-brotli variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_BROTLI" in
-  yes)
-    dnl --with-brotli (without path) used
-    CURL_CHECK_PKGCONFIG(libbrotlidec)
-
-    if test "$PKGCONFIG" != "no" ; then
-      LIB_BROTLI=`$PKGCONFIG --libs-only-l libbrotlidec`
-      LD_BROTLI=`$PKGCONFIG --libs-only-L libbrotlidec`
-      CPP_BROTLI=`$PKGCONFIG --cflags-only-I libbrotlidec`
-      version=`$PKGCONFIG --modversion libbrotlidec`
-      DIR_BROTLI=`echo $LD_BROTLI | $SED -e 's/^-L//'`
-    fi
-
-    ;;
-  off)
-    dnl no --with-brotli option given, just check default places
-    ;;
-  *)
-    dnl use the given --with-brotli spot
-    PREFIX_BROTLI=$OPT_BROTLI
-    ;;
-  esac
-
-  dnl if given with a prefix, we set -L and -I based on that
-  if test -n "$PREFIX_BROTLI"; then
-    LIB_BROTLI="-lbrotlidec"
-    LD_BROTLI=-L${PREFIX_BROTLI}/lib$libsuff
-    CPP_BROTLI=-I${PREFIX_BROTLI}/include
-    DIR_BROTLI=${PREFIX_BROTLI}/lib$libsuff
-  fi
-
-  LDFLAGS="$LDFLAGS $LD_BROTLI"
-  CPPFLAGS="$CPPFLAGS $CPP_BROTLI"
-  LIBS="$LIB_BROTLI $LIBS"
-
-  AC_CHECK_LIB(brotlidec, BrotliDecoderDecompress)
-
-  AC_CHECK_HEADERS(brotli/decode.h,
-    curl_brotli_msg="enabled (libbrotlidec)"
-    HAVE_BROTLI=1
-    AC_DEFINE(HAVE_BROTLI, 1, [if BROTLI is in use])
-    AC_SUBST(HAVE_BROTLI, [1])
-  )
-
-  if test X"$OPT_BROTLI" != Xoff &&
-     test "$HAVE_BROTLI" != "1"; then
-    AC_MSG_ERROR([BROTLI libs and/or directories were not found where specified!])
-  fi
-
-  if test "$HAVE_BROTLI" = "1"; then
-    if test -n "$DIR_BROTLI"; then
-       dnl when the brotli shared libs were found in a path that the run-time
-       dnl linker doesn't search through, we need to add it to CURL_LIBRARY_PATH
-       dnl to prevent further configure tests to fail due to this
-
-       if test "x$cross_compiling" != "xyes"; then
-         CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_BROTLI"
-         export CURL_LIBRARY_PATH
-         AC_MSG_NOTICE([Added $DIR_BROTLI to CURL_LIBRARY_PATH])
-       fi
-    fi
-  else
-    dnl no brotli, revert back to clean variables
-    LDFLAGS=$CLEANLDFLAGS
-    CPPFLAGS=$CLEANCPPFLAGS
-    LIBS=$CLEANLIBS
-  fi
-fi
-
-dnl **********************************************************************
-dnl Check for libzstd
-dnl **********************************************************************
-
-dnl Default to compiler & linker defaults for libzstd
-OPT_ZSTD=off
-AC_ARG_WITH(zstd,dnl
-AS_HELP_STRING([--with-zstd=PATH],[Where to look for libzstd, PATH points to the libzstd installation; when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AS_HELP_STRING([--without-zstd], [disable libzstd]),
-  OPT_ZSTD=$withval)
-
-if test X"$OPT_ZSTD" != Xno; then
-  dnl backup the pre-zstd variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_ZSTD" in
-  yes)
-    dnl --with-zstd (without path) used
-    CURL_CHECK_PKGCONFIG(libzstd)
-
-    if test "$PKGCONFIG" != "no" ; then
-      LIB_ZSTD=`$PKGCONFIG --libs-only-l libzstd`
-      LD_ZSTD=`$PKGCONFIG --libs-only-L libzstd`
-      CPP_ZSTD=`$PKGCONFIG --cflags-only-I libzstd`
-      version=`$PKGCONFIG --modversion libzstd`
-      DIR_ZSTD=`echo $LD_ZSTD | $SED -e 's/-L//'`
-    fi
-
-    ;;
-  off)
-    dnl no --with-zstd option given, just check default places
-    ;;
-  *)
-    dnl use the given --with-zstd spot
-    PREFIX_ZSTD=$OPT_ZSTD
-    ;;
-  esac
-
-  dnl if given with a prefix, we set -L and -I based on that
-  if test -n "$PREFIX_ZSTD"; then
-    LIB_ZSTD="-lzstd"
-    LD_ZSTD=-L${PREFIX_ZSTD}/lib$libsuff
-    CPP_ZSTD=-I${PREFIX_ZSTD}/include
-    DIR_ZSTD=${PREFIX_ZSTD}/lib$libsuff
-  fi
-
-  LDFLAGS="$LDFLAGS $LD_ZSTD"
-  CPPFLAGS="$CPPFLAGS $CPP_ZSTD"
-  LIBS="$LIB_ZSTD $LIBS"
-
-  AC_CHECK_LIB(zstd, ZSTD_createDStream)
-
-  AC_CHECK_HEADERS(zstd.h,
-    curl_zstd_msg="enabled (libzstd)"
-    HAVE_ZSTD=1
-    AC_DEFINE(HAVE_ZSTD, 1, [if libzstd is in use])
-    AC_SUBST(HAVE_ZSTD, [1])
-  )
-
-  if test X"$OPT_ZSTD" != Xoff &&
-     test "$HAVE_ZSTD" != "1"; then
-    AC_MSG_ERROR([libzstd was not found where specified!])
-  fi
-
-  if test "$HAVE_ZSTD" = "1"; then
-    if test -n "$DIR_ZSTD"; then
-       dnl when the zstd shared lib were found in a path that the run-time
-       dnl linker doesn't search through, we need to add it to
-       dnl CURL_LIBRARY_PATH to prevent further configure tests to fail due to
-       dnl this
-
-       if test "x$cross_compiling" != "xyes"; then
-         CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_ZSTD"
-         export CURL_LIBRARY_PATH
-         AC_MSG_NOTICE([Added $DIR_ZSTD to CURL_LIBRARY_PATH])
-       fi
-    fi
-  else
-    dnl no zstd, revert back to clean variables
-    LDFLAGS=$CLEANLDFLAGS
-    CPPFLAGS=$CLEANCPPFLAGS
-    LIBS=$CLEANLIBS
-  fi
-fi
-
-dnl **********************************************************************
-dnl Check for LDAP
-dnl **********************************************************************
-
-LDAPLIBNAME=""
-AC_ARG_WITH(ldap-lib,
-AS_HELP_STRING([--with-ldap-lib=libname],[Specify name of ldap lib file]),
- [LDAPLIBNAME="$withval"])
-
-LBERLIBNAME=""
-AC_ARG_WITH(lber-lib,
-AS_HELP_STRING([--with-lber-lib=libname],[Specify name of lber lib file]),
- [LBERLIBNAME="$withval"])
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-
-  CURL_CHECK_HEADER_LBER
-  CURL_CHECK_HEADER_LDAP
-  CURL_CHECK_HEADER_LDAPSSL
-  CURL_CHECK_HEADER_LDAP_SSL
-
-  if test -z "$LDAPLIBNAME" ; then
-    if test "$curl_cv_native_windows" = "yes"; then
-      dnl Windows uses a single and unique LDAP library name
-      LDAPLIBNAME="wldap32"
-      LBERLIBNAME="no"
-    fi
-  fi
-
-  if test "$LDAPLIBNAME" ; then
-    AC_CHECK_LIB("$LDAPLIBNAME", ldap_init,, [
-      if test -n "$ldap_askedfor"; then
-        AC_MSG_ERROR([couldn't detect the LDAP libraries])
-      fi
-      AC_MSG_WARN(["$LDAPLIBNAME" is not an LDAP library: LDAP disabled])
-      AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-      AC_SUBST(CURL_DISABLE_LDAP, [1])
-      AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-      AC_SUBST(CURL_DISABLE_LDAPS, [1])])
-  else
-    dnl Try to find the right ldap libraries for this system
-    CURL_CHECK_LIBS_LDAP
-    case X-"$curl_cv_ldap_LIBS" in
-      X-unknown)
-        if test -n "$ldap_askedfor"; then
-          AC_MSG_ERROR([couldn't detect the LDAP libraries])
-        fi
-        AC_MSG_WARN([Cannot find libraries for LDAP support: LDAP disabled])
-        AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-        AC_SUBST(CURL_DISABLE_LDAP, [1])
-        AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-        AC_SUBST(CURL_DISABLE_LDAPS, [1])
-        ;;
-    esac
-  fi
-fi
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-
-  if test "$LBERLIBNAME" ; then
-    dnl If name is "no" then don't define this library at all
-    dnl (it's only needed if libldap.so's dependencies are broken).
-    if test "$LBERLIBNAME" != "no" ; then
-      AC_CHECK_LIB("$LBERLIBNAME", ber_free,, [
-        AC_MSG_WARN(["$LBERLIBNAME" is not an LBER library: LDAP disabled])
-        AC_DEFINE(CURL_DISABLE_LDAP, 1, [to disable LDAP])
-        AC_SUBST(CURL_DISABLE_LDAP, [1])
-        AC_DEFINE(CURL_DISABLE_LDAPS, 1, [to disable LDAPS])
-        AC_SUBST(CURL_DISABLE_LDAPS, [1])])
-    fi
-  fi
-fi
-
-if test x$CURL_DISABLE_LDAP != x1 ; then
-  AC_CHECK_FUNCS([ldap_url_parse ldap_init_fd])
-
-  if test "$LDAPLIBNAME" = "wldap32"; then
-    curl_ldap_msg="enabled (winldap)"
-    AC_DEFINE(USE_WIN32_LDAP, 1, [Use Windows LDAP implementation])
-  else
-    curl_ldap_msg="enabled (OpenLDAP)"
-    if test "x$ac_cv_func_ldap_init_fd" = "xyes"; then
-      AC_DEFINE(USE_OPENLDAP, 1, [Use OpenLDAP-specific code])
-      AC_SUBST(USE_OPENLDAP, [1])
-    fi
-  fi
-fi
-
-if test x$CURL_DISABLE_LDAPS != x1 ; then
-    curl_ldaps_msg="enabled"
-fi
-
-dnl **********************************************************************
-dnl Checks for IPv6
-dnl **********************************************************************
-
-AC_MSG_CHECKING([whether to enable IPv6])
-AC_ARG_ENABLE(ipv6,
-AS_HELP_STRING([--enable-ipv6],[Enable IPv6 (with IPv4) support])
-AS_HELP_STRING([--disable-ipv6],[Disable IPv6 support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       ipv6=no
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ipv6=yes
-       ;;
-  esac ],
-
-  AC_RUN_IFELSE([AC_LANG_SOURCE([[
-/* are AF_INET6 and sockaddr_in6 available? */
-#include <sys/types.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#else
-#include <sys/socket.h>
-#include <netinet/in.h>
-#if defined (__TANDEM)
-# include <netinet/in6.h>
-#endif
-#endif
-#include <stdlib.h> /* for exit() */
-main()
-{
- struct sockaddr_in6 s;
- (void)s;
- if (socket(AF_INET6, SOCK_STREAM, 0) < 0)
-   exit(1);
- else
-   exit(0);
-}
-]])
-],
-  AC_MSG_RESULT(yes)
-  ipv6=yes,
-  AC_MSG_RESULT(no)
-  ipv6=no,
-  AC_MSG_RESULT(yes)
-  ipv6=yes
-))
-
-if test "$ipv6" = yes; then
-  curl_ipv6_msg="enabled"
-  AC_DEFINE(ENABLE_IPV6, 1, [Define if you want to enable IPv6 support])
-  IPV6_ENABLED=1
-  AC_SUBST(IPV6_ENABLED)
-
-  AC_MSG_CHECKING([if struct sockaddr_in6 has sin6_scope_id member])
-  AC_COMPILE_IFELSE([ AC_LANG_PROGRAM([[
-#include <sys/types.h>
-#ifdef HAVE_WINSOCK2_H
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#else
-#include <netinet/in.h>
-#if defined (__TANDEM)
-# include <netinet/in6.h>
-#endif
-#endif
-]], [[
-  struct sockaddr_in6 s;
-  s.sin6_scope_id = 0;
-]])], [
-  AC_MSG_RESULT([yes])
-  AC_DEFINE(HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID, 1, [Define to 1 if struct sockaddr_in6 has the sin6_scope_id member])
- ], [
-    AC_MSG_RESULT([no])
- ])
-fi
-
-dnl **********************************************************************
-dnl Check if the operating system allows programs to write to their own argv[]
-dnl **********************************************************************
-
-AC_MSG_CHECKING([if argv can be written to])
-CURL_RUN_IFELSE([[
-int main(int argc, char **argv)
-{
-  (void)argc;
-  argv[0][0] = ' ';
-  return (argv[0][0] == ' ')?0:1;
-}
-]],[
-  curl_cv_writable_argv=yes
-],[
-  curl_cv_writable_argv=no
-],[
-  curl_cv_writable_argv=cross
-])
-case $curl_cv_writable_argv in
-yes)
-        AC_DEFINE(HAVE_WRITABLE_ARGV, 1, [Define this symbol if your OS supports changing the contents of argv])
-        AC_MSG_RESULT(yes)
-        ;;
-no)
-        AC_MSG_RESULT(no)
-        ;;
-*)
-        AC_MSG_RESULT(no)
-        AC_MSG_WARN([the previous check could not be made default was used])
-        ;;
-esac
-
-dnl **********************************************************************
-dnl Check for GSS-API libraries
-dnl **********************************************************************
-
-dnl check for GSS-API stuff in the /usr as default
-
-GSSAPI_ROOT="/usr"
-AC_ARG_WITH(gssapi-includes,
-  AS_HELP_STRING([--with-gssapi-includes=DIR],
-                 [Specify location of GSS-API headers]),
-  [ GSSAPI_INCS="-I$withval"
-    want_gss="yes" ]
-)
-
-AC_ARG_WITH(gssapi-libs,
-  AS_HELP_STRING([--with-gssapi-libs=DIR],
-                 [Specify location of GSS-API libs]),
-  [ GSSAPI_LIB_DIR="-L$withval"
-    want_gss="yes" ]
-)
-
-AC_ARG_WITH(gssapi,
-  AS_HELP_STRING([--with-gssapi=DIR],
-                 [Where to look for GSS-API]), [
-  GSSAPI_ROOT="$withval"
-  if test x"$GSSAPI_ROOT" != xno; then
-    want_gss="yes"
-    if test x"$GSSAPI_ROOT" = xyes; then
-      dnl if yes, then use default root
-      GSSAPI_ROOT="/usr"
-    fi
-  fi
-])
-
-: ${KRB5CONFIG:="$GSSAPI_ROOT/bin/krb5-config"}
-
-save_CPPFLAGS="$CPPFLAGS"
-AC_MSG_CHECKING([if GSS-API support is requested])
-if test x"$want_gss" = xyes; then
-  AC_MSG_RESULT(yes)
-
-  if test $GSSAPI_ROOT != "/usr"; then
-    CURL_CHECK_PKGCONFIG(mit-krb5-gssapi, $GSSAPI_ROOT/lib/pkgconfig)
-  else
-    CURL_CHECK_PKGCONFIG(mit-krb5-gssapi)
-  fi
-  if test -z "$GSSAPI_INCS"; then
-     if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
-        GSSAPI_INCS=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --cflags gssapi`
-     elif test "$PKGCONFIG" != "no" ; then
-        GSSAPI_INCS=`$PKGCONFIG --cflags mit-krb5-gssapi`
-     elif test -f "$KRB5CONFIG"; then
-        GSSAPI_INCS=`$KRB5CONFIG --cflags gssapi`
-     elif test "$GSSAPI_ROOT" != "yes"; then
-        GSSAPI_INCS="-I$GSSAPI_ROOT/include"
-     fi
-  fi
-
-  CPPFLAGS="$CPPFLAGS $GSSAPI_INCS"
-
-  AC_CHECK_HEADER(gss.h,
-    [
-      dnl found in the given dirs
-      AC_DEFINE(HAVE_GSSGNU, 1, [if you have GNU GSS])
-      gnu_gss=yes
-    ],
-    [
-      dnl not found, check Heimdal or MIT
-      AC_CHECK_HEADERS([gssapi/gssapi.h], [], [not_mit=1])
-      AC_CHECK_HEADERS(
-        [gssapi/gssapi_generic.h gssapi/gssapi_krb5.h],
-        [],
-        [not_mit=1],
-        [
-AC_INCLUDES_DEFAULT
-#ifdef HAVE_GSSAPI_GSSAPI_H
-#include <gssapi/gssapi.h>
-#endif
-        ])
-      if test "x$not_mit" = "x1"; then
-        dnl MIT not found, check for Heimdal
-        AC_CHECK_HEADER(gssapi.h,
-            [
-              dnl found
-              AC_DEFINE(HAVE_GSSHEIMDAL, 1, [if you have Heimdal])
-            ],
-            [
-              dnl no header found, disabling GSS
-              want_gss=no
-              AC_MSG_WARN(disabling GSS-API support since no header files were found)
-            ]
-          )
-      else
-        dnl MIT found
-        AC_DEFINE(HAVE_GSSMIT, 1, [if you have MIT Kerberos])
-        dnl check if we have a really old MIT Kerberos version (<= 1.2)
-        AC_MSG_CHECKING([if GSS-API headers declare GSS_C_NT_HOSTBASED_SERVICE])
-        AC_COMPILE_IFELSE([
-          AC_LANG_PROGRAM([[
-#include <gssapi/gssapi.h>
-#include <gssapi/gssapi_generic.h>
-#include <gssapi/gssapi_krb5.h>
-          ]],[[
-            gss_import_name(
-                            (OM_uint32 *)0,
-                            (gss_buffer_t)0,
-                            GSS_C_NT_HOSTBASED_SERVICE,
-                            (gss_name_t *)0);
-          ]])
-        ],[
-          AC_MSG_RESULT([yes])
-        ],[
-          AC_MSG_RESULT([no])
-          AC_DEFINE(HAVE_OLD_GSSMIT, 1,
-            [if you have an old MIT Kerberos version, lacking GSS_C_NT_HOSTBASED_SERVICE])
-        ])
-      fi
-    ]
-  )
-else
-  AC_MSG_RESULT(no)
-fi
-if test x"$want_gss" = xyes; then
-  AC_DEFINE(HAVE_GSSAPI, 1, [if you have GSS-API libraries])
-  HAVE_GSSAPI=1
-  curl_gss_msg="enabled (MIT Kerberos/Heimdal)"
-
-  if test -n "$gnu_gss"; then
-    curl_gss_msg="enabled (GNU GSS)"
-    LDFLAGS="$LDFLAGS $GSSAPI_LIB_DIR"
-    LIBS="-lgss $LIBS"
-  elif test -z "$GSSAPI_LIB_DIR"; then
-     case $host in
-     *-*-darwin*)
-        LIBS="-lgssapi_krb5 -lresolv $LIBS"
-        ;;
-     *)
-        if test $GSSAPI_ROOT != "/usr"; then
-          CURL_CHECK_PKGCONFIG(mit-krb5-gssapi, $GSSAPI_ROOT/lib/pkgconfig)
-        else
-          CURL_CHECK_PKGCONFIG(mit-krb5-gssapi)
-        fi
-        if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
-           dnl krb5-config doesn't have --libs-only-L or similar, put everything
-           dnl into LIBS
-           gss_libs=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --libs gssapi`
-           LIBS="$gss_libs $LIBS"
-        elif test "$PKGCONFIG" != "no" ; then
-           gss_libs=`$PKGCONFIG --libs mit-krb5-gssapi`
-           LIBS="$gss_libs $LIBS"
-        elif test -f "$KRB5CONFIG"; then
-           dnl krb5-config doesn't have --libs-only-L or similar, put everything
-           dnl into LIBS
-           gss_libs=`$KRB5CONFIG --libs gssapi`
-           LIBS="$gss_libs $LIBS"
-        else
-           case $host in
-           *-hp-hpux*)
-              gss_libname="gss"
-              ;;
-           *)
-              gss_libname="gssapi"
-              ;;
-           esac
-
-           if test "$GSSAPI_ROOT" != "yes"; then
-              LDFLAGS="$LDFLAGS -L$GSSAPI_ROOT/lib$libsuff"
-              LIBS="-l$gss_libname $LIBS"
-           else
-              LIBS="-l$gss_libname $LIBS"
-           fi
-        fi
-        ;;
-     esac
-  else
-     LDFLAGS="$LDFLAGS $GSSAPI_LIB_DIR"
-     case $host in
-     *-hp-hpux*)
-        LIBS="-lgss $LIBS"
-        ;;
-     *)
-        LIBS="-lgssapi $LIBS"
-        ;;
-     esac
-  fi
-else
-  CPPFLAGS="$save_CPPFLAGS"
-fi
-
-if test x"$want_gss" = xyes; then
-  AC_MSG_CHECKING([if we can link against GSS-API library])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([gss_init_sec_context])
-  ],[
-    AC_MSG_RESULT([yes])
-  ],[
-    AC_MSG_RESULT([no])
-    AC_MSG_ERROR([--with-gssapi was specified, but a GSS-API library was not found.])
-  ])
-fi
-
-build_libstubgss=no
-if test x"$want_gss" = "xyes"; then
-  build_libstubgss=yes
-fi
-
-AM_CONDITIONAL(BUILD_STUB_GSS, test "x$build_libstubgss" = "xyes")
-
-dnl -------------------------------------------------------------
-dnl parse --with-default-ssl-backend so it can be validated below
-dnl -------------------------------------------------------------
-
-DEFAULT_SSL_BACKEND=no
-VALID_DEFAULT_SSL_BACKEND=
-AC_ARG_WITH(default-ssl-backend,
-AS_HELP_STRING([--with-default-ssl-backend=NAME],[Use NAME as default SSL backend])
-AS_HELP_STRING([--without-default-ssl-backend],[Use implicit default SSL backend]),
-  [DEFAULT_SSL_BACKEND=$withval])
-case "$DEFAULT_SSL_BACKEND" in
-  no)
-    dnl --without-default-ssl-backend option used
-    ;;
-  default|yes)
-    dnl --with-default-ssl-backend option used without name
-    AC_MSG_ERROR([The name of the default SSL backend is required.])
-    ;;
-  *)
-    dnl --with-default-ssl-backend option used with name
-    AC_SUBST(DEFAULT_SSL_BACKEND)
-    dnl needs to be validated below
-    VALID_DEFAULT_SSL_BACKEND=no
-    ;;
-esac
-
-CURL_WITH_SCHANNEL
-CURL_WITH_SECURETRANSPORT
-CURL_WITH_AMISSL
-CURL_WITH_OPENSSL
-CURL_WITH_GNUTLS
-CURL_WITH_MBEDTLS
-CURL_WITH_WOLFSSL
-CURL_WITH_BEARSSL
-CURL_WITH_RUSTLS
-CURL_WITH_NSS
-
-dnl link required libraries for USE_WIN32_CRYPTO or USE_SCHANNEL
-if test "x$USE_WIN32_CRYPTO" = "x1" -o "x$USE_SCHANNEL" = "x1"; then
-  LIBS="-ladvapi32 -lcrypt32 $LIBS"
-fi
-
-case "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$MBEDTLS_ENABLED$WOLFSSL_ENABLED$SCHANNEL_ENABLED$SECURETRANSPORT_ENABLED$BEARSSL_ENABLED$AMISSL_ENABLED$RUSTLS_ENABLED"
-in
-x)
-  AC_MSG_WARN([SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more.])
-  AC_MSG_WARN([Use --with-openssl, --with-gnutls, --with-wolfssl, --with-mbedtls, --with-nss, --with-schannel, --with-secure-transport, --with-amissl, --with-bearssl or --with-rustls to address this.])
-  ;;
-x1)
-  # one SSL backend is enabled
-  AC_SUBST(SSL_ENABLED)
-  SSL_ENABLED="1"
-  AC_MSG_NOTICE([built with one SSL backend])
-  ;;
-*)
-  # more than one SSL backend is enabled
-  AC_SUBST(SSL_ENABLED)
-  SSL_ENABLED="1"
-  AC_SUBST(CURL_WITH_MULTI_SSL)
-  CURL_WITH_MULTI_SSL="1"
-  AC_DEFINE(CURL_WITH_MULTI_SSL, 1, [built with multiple SSL backends])
-  AC_MSG_NOTICE([built with multiple SSL backends])
-  ;;
-esac
-
-if test -n "$ssl_backends"; then
-  curl_ssl_msg="enabled ($ssl_backends)"
-fi
-
-if test no = "$VALID_DEFAULT_SSL_BACKEND"
-then
-  if test -n "$SSL_ENABLED"
-  then
-    AC_MSG_ERROR([Default SSL backend $DEFAULT_SSL_BACKEND not enabled!])
-  else
-    AC_MSG_ERROR([Default SSL backend requires SSL!])
-  fi
-elif test yes = "$VALID_DEFAULT_SSL_BACKEND"
-then
-  AC_DEFINE_UNQUOTED([CURL_DEFAULT_SSL_BACKEND], ["$DEFAULT_SSL_BACKEND"], [Default SSL backend])
-fi
-
-dnl **********************************************************************
-dnl Check for the CA bundle
-dnl **********************************************************************
-
-if test -n "$check_for_ca_bundle"; then
-  CURL_CHECK_CA_BUNDLE
-fi
-
-dnl **********************************************************************
-dnl Check for libpsl
-dnl **********************************************************************
-
-AC_ARG_WITH(libpsl,
-           AS_HELP_STRING([--without-libpsl],
-           [disable support for libpsl cookie checking]),
-           with_libpsl=$withval,
-           with_libpsl=yes)
-if test $with_libpsl != "no"; then
-  AC_SEARCH_LIBS(psl_builtin, psl,
-    [curl_psl_msg="enabled";
-     AC_DEFINE([USE_LIBPSL], [1], [PSL support enabled])
-     ],
-    [curl_psl_msg="no      (libpsl not found)";
-     AC_MSG_WARN([libpsl was not found])
-     ]
-  )
-fi
-AM_CONDITIONAL([USE_LIBPSL], [test "$curl_psl_msg" = "enabled"])
-
-
-dnl **********************************************************************
-dnl Check for libgsasl
-dnl **********************************************************************
-
-AC_ARG_WITH(libgsasl,
-           AS_HELP_STRING([--without-libgsasl],
-           [disable libgsasl support for SCRAM]),
-           with_libgsasl=$withval,
-           with_libgsasl=yes)
-if test $with_libgsasl != "no"; then
-  AC_SEARCH_LIBS(gsasl_init, gsasl,
-    [curl_gsasl_msg="enabled";
-     AC_DEFINE([USE_GSASL], [1], [GSASL support enabled])
-     ],
-    [curl_gsasl_msg="no      (libgsasl not found)";
-     AC_MSG_WARN([libgsasl was not found])
-     ]
-  )
-fi
-AM_CONDITIONAL([USE_GSASL], [test "$curl_gsasl_msg" = "enabled"])
-
-AC_ARG_WITH(libmetalink,,
-  AC_MSG_ERROR([--with-libmetalink no longer works!]))
-
-dnl **********************************************************************
-dnl Check for the presence of LIBSSH2 libraries and headers
-dnl **********************************************************************
-
-dnl Default to compiler & linker defaults for LIBSSH2 files & libraries.
-OPT_LIBSSH2=off
-AC_ARG_WITH(libssh2,dnl
-AS_HELP_STRING([--with-libssh2=PATH],[Where to look for libssh2, PATH points to the libssh2 installation; when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AS_HELP_STRING([--with-libssh2], [enable libssh2]),
-  OPT_LIBSSH2=$withval, OPT_LIBSSH2=no)
-
-
-OPT_LIBSSH=off
-AC_ARG_WITH(libssh,dnl
-AS_HELP_STRING([--with-libssh=PATH],[Where to look for libssh, PATH points to the libssh installation; when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AS_HELP_STRING([--with-libssh], [enable libssh]),
-  OPT_LIBSSH=$withval, OPT_LIBSSH=no)
-
-OPT_WOLFSSH=off
-AC_ARG_WITH(wolfssh,dnl
-AS_HELP_STRING([--with-wolfssh=PATH],[Where to look for wolfssh, PATH points to the wolfSSH installation; when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AS_HELP_STRING([--with-wolfssh], [enable wolfssh]),
-  OPT_WOLFSSH=$withval, OPT_WOLFSSH=no)
-
-if test X"$OPT_LIBSSH2" != Xno; then
-  dnl backup the pre-libssh2 variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_LIBSSH2" in
-  yes)
-    dnl --with-libssh2 (without path) used
-    CURL_CHECK_PKGCONFIG(libssh2)
-
-    if test "$PKGCONFIG" != "no" ; then
-      LIB_SSH2=`$PKGCONFIG --libs libssh2`
-      LD_SSH2=`$PKGCONFIG --libs-only-L libssh2`
-      CPP_SSH2=`$PKGCONFIG --cflags-only-I libssh2`
-      version=`$PKGCONFIG --modversion libssh2`
-      DIR_SSH2=`echo $LD_SSH2 | $SED -e 's/^-L//'`
-    fi
-
-    ;;
-  off)
-    dnl no --with-libssh2 option given, just check default places
-    ;;
-  *)
-    dnl use the given --with-libssh2 spot
-    PREFIX_SSH2=$OPT_LIBSSH2
-    ;;
-  esac
-
-  dnl if given with a prefix, we set -L and -I based on that
-  if test -n "$PREFIX_SSH2"; then
-    LIB_SSH2="-lssh2"
-    LD_SSH2=-L${PREFIX_SSH2}/lib$libsuff
-    CPP_SSH2=-I${PREFIX_SSH2}/include
-    DIR_SSH2=${PREFIX_SSH2}/lib$libsuff
-  fi
-
-  LDFLAGS="$LDFLAGS $LD_SSH2"
-  CPPFLAGS="$CPPFLAGS $CPP_SSH2"
-  LIBS="$LIB_SSH2 $LIBS"
-
-  dnl check for function added in libssh2 version 1.0
-  AC_CHECK_LIB(ssh2, libssh2_session_block_directions)
-
-  AC_CHECK_HEADERS(libssh2.h,
-    curl_ssh_msg="enabled (libSSH2)"
-    LIBSSH2_ENABLED=1
-    AC_DEFINE(USE_LIBSSH2, 1, [if libSSH2 is in use])
-    AC_SUBST(USE_LIBSSH2, [1])
-  )
-
-  if test X"$OPT_LIBSSH2" != Xoff &&
-     test "$LIBSSH2_ENABLED" != "1"; then
-    AC_MSG_ERROR([libSSH2 libs and/or directories were not found where specified!])
-  fi
-
-  if test "$LIBSSH2_ENABLED" = "1"; then
-    if test -n "$DIR_SSH2"; then
-       dnl when the libssh2 shared libs were found in a path that the run-time
-       dnl linker doesn't search through, we need to add it to CURL_LIBRARY_PATH
-       dnl to prevent further configure tests to fail due to this
-
-       if test "x$cross_compiling" != "xyes"; then
-         CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_SSH2"
-         export CURL_LIBRARY_PATH
-         AC_MSG_NOTICE([Added $DIR_SSH2 to CURL_LIBRARY_PATH])
-       fi
-    fi
-  else
-    dnl no libssh2, revert back to clean variables
-    LDFLAGS=$CLEANLDFLAGS
-    CPPFLAGS=$CLEANCPPFLAGS
-    LIBS=$CLEANLIBS
-  fi
-elif test X"$OPT_LIBSSH" != Xno; then
-  dnl backup the pre-libssh variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_LIBSSH" in
-  yes)
-    dnl --with-libssh (without path) used
-    CURL_CHECK_PKGCONFIG(libssh)
-
-    if test "$PKGCONFIG" != "no" ; then
-      LIB_SSH=`$PKGCONFIG --libs-only-l libssh`
-      LD_SSH=`$PKGCONFIG --libs-only-L libssh`
-      CPP_SSH=`$PKGCONFIG --cflags-only-I libssh`
-      version=`$PKGCONFIG --modversion libssh`
-      DIR_SSH=`echo $LD_SSH | $SED -e 's/^-L//'`
-    fi
-
-    ;;
-  off)
-    dnl no --with-libssh option given, just check default places
-    ;;
-  *)
-    dnl use the given --with-libssh spot
-    PREFIX_SSH=$OPT_LIBSSH
-    ;;
-  esac
-
-  dnl if given with a prefix, we set -L and -I based on that
-  if test -n "$PREFIX_SSH"; then
-    LIB_SSH="-lssh"
-    LD_SSH=-L${PREFIX_SSH}/lib$libsuff
-    CPP_SSH=-I${PREFIX_SSH}/include
-    DIR_SSH=${PREFIX_SSH}/lib$libsuff
-  fi
-
-  LDFLAGS="$LDFLAGS $LD_SSH"
-  CPPFLAGS="$CPPFLAGS $CPP_SSH"
-  LIBS="$LIB_SSH $LIBS"
-
-  AC_CHECK_LIB(ssh, ssh_new)
-
-  AC_CHECK_HEADERS(libssh/libssh.h,
-    curl_ssh_msg="enabled (libSSH)"
-    LIBSSH_ENABLED=1
-    AC_DEFINE(USE_LIBSSH, 1, [if libSSH is in use])
-    AC_SUBST(USE_LIBSSH, [1])
-  )
-
-  if test X"$OPT_LIBSSH" != Xoff &&
-     test "$LIBSSH_ENABLED" != "1"; then
-    AC_MSG_ERROR([libSSH libs and/or directories were not found where specified!])
-  fi
-
-  if test "$LIBSSH_ENABLED" = "1"; then
-    if test -n "$DIR_SSH"; then
-       dnl when the libssh shared libs were found in a path that the run-time
-       dnl linker doesn't search through, we need to add it to CURL_LIBRARY_PATH
-       dnl to prevent further configure tests to fail due to this
-
-       if test "x$cross_compiling" != "xyes"; then
-         CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_SSH"
-         export CURL_LIBRARY_PATH
-         AC_MSG_NOTICE([Added $DIR_SSH to CURL_LIBRARY_PATH])
-       fi
-    fi
-  else
-    dnl no libssh, revert back to clean variables
-    LDFLAGS=$CLEANLDFLAGS
-    CPPFLAGS=$CLEANCPPFLAGS
-    LIBS=$CLEANLIBS
-  fi
-elif test X"$OPT_WOLFSSH" != Xno; then
-  dnl backup the pre-wolfssh variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-
-  if test "$OPT_WOLFSSH" != yes; then
-     WOLFCONFIG="$OPT_WOLFSSH/bin/wolfssh-config"
-     LDFLAGS="$LDFLAGS `$WOLFCONFIG --libs`"
-     CPPFLAGS="$CPPFLAGS `$WOLFCONFIG --cflags`"
-  fi
-
-  AC_CHECK_LIB(wolfssh, wolfSSH_Init)
-
-  AC_CHECK_HEADERS(wolfssh/ssh.h,
-    curl_ssh_msg="enabled (wolfSSH)"
-    WOLFSSH_ENABLED=1
-    AC_DEFINE(USE_WOLFSSH, 1, [if wolfSSH is in use])
-    AC_SUBST(USE_WOLFSSH, [1])
-  )
-
-fi
-
-dnl **********************************************************************
-dnl Check for the presence of LIBRTMP libraries and headers
-dnl **********************************************************************
-
-dnl Default to compiler & linker defaults for LIBRTMP files & libraries.
-OPT_LIBRTMP=off
-AC_ARG_WITH(librtmp,dnl
-AS_HELP_STRING([--with-librtmp=PATH],[Where to look for librtmp, PATH points to the LIBRTMP installation; when possible, set the PKG_CONFIG_PATH environment variable instead of using this option])
-AS_HELP_STRING([--without-librtmp], [disable LIBRTMP]),
-  OPT_LIBRTMP=$withval)
-
-if test X"$OPT_LIBRTMP" != Xno; then
-  dnl backup the pre-librtmp variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  case "$OPT_LIBRTMP" in
-  yes)
-    dnl --with-librtmp (without path) used
-    CURL_CHECK_PKGCONFIG(librtmp)
-
-    if test "$PKGCONFIG" != "no" ; then
-      LIB_RTMP=`$PKGCONFIG --libs-only-l librtmp`
-      LD_RTMP=`$PKGCONFIG --libs-only-L librtmp`
-      CPP_RTMP=`$PKGCONFIG --cflags-only-I librtmp`
-      version=`$PKGCONFIG --modversion librtmp`
-      DIR_RTMP=`echo $LD_RTMP | $SED -e 's/^-L//'`
-    else
-      dnl To avoid link errors, we do not allow --librtmp without
-      dnl a pkgconfig file
-      AC_MSG_ERROR([--librtmp was specified but could not find librtmp pkgconfig file.])
-    fi
-
-    ;;
-  off)
-    dnl no --with-librtmp option given, just check default places
-    LIB_RTMP="-lrtmp"
-    ;;
-  *)
-    dnl use the given --with-librtmp spot
-    LIB_RTMP="-lrtmp"
-    PREFIX_RTMP=$OPT_LIBRTMP
-    ;;
-  esac
-
-  dnl if given with a prefix, we set -L and -I based on that
-  if test -n "$PREFIX_RTMP"; then
-    LD_RTMP=-L${PREFIX_RTMP}/lib$libsuff
-    CPP_RTMP=-I${PREFIX_RTMP}/include
-    DIR_RTMP=${PREFIX_RTMP}/lib$libsuff
-  fi
-
-  LDFLAGS="$LDFLAGS $LD_RTMP"
-  CPPFLAGS="$CPPFLAGS $CPP_RTMP"
-  LIBS="$LIB_RTMP $LIBS"
-
-  AC_CHECK_LIB(rtmp, RTMP_Init,
-    [
-     AC_CHECK_HEADERS(librtmp/rtmp.h,
-        curl_rtmp_msg="enabled (librtmp)"
-        LIBRTMP_ENABLED=1
-        AC_DEFINE(USE_LIBRTMP, 1, [if librtmp is in use])
-        AC_SUBST(USE_LIBRTMP, [1])
-     )
-    ],
-      dnl not found, revert back to clean variables
-      LDFLAGS=$CLEANLDFLAGS
-      CPPFLAGS=$CLEANCPPFLAGS
-      LIBS=$CLEANLIBS
-  )
-
-  if test X"$OPT_LIBRTMP" != Xoff &&
-     test "$LIBRTMP_ENABLED" != "1"; then
-    AC_MSG_ERROR([librtmp libs and/or directories were not found where specified!])
-  fi
-
-fi
-
-dnl **********************************************************************
-dnl Check for linker switch for versioned symbols
-dnl **********************************************************************
-
-versioned_symbols_flavour=
-AC_MSG_CHECKING([whether versioned symbols are wanted])
-AC_ARG_ENABLE(versioned-symbols,
-AS_HELP_STRING([--enable-versioned-symbols], [Enable versioned symbols in shared library])
-AS_HELP_STRING([--disable-versioned-symbols], [Disable versioned symbols in shared library]),
-[ case "$enableval" in
-  yes) AC_MSG_RESULT(yes)
-    AC_MSG_CHECKING([if libraries can be versioned])
-    GLD=`$LD --help < /dev/null 2>/dev/null | grep version-script`
-    if test -z "$GLD"; then
-        AC_MSG_RESULT(no)
-        AC_MSG_WARN([You need an ld version supporting the --version-script option])
-    else
-        AC_MSG_RESULT(yes)
-        if test "x$CURL_WITH_MULTI_SSL" = "x1"; then
-          versioned_symbols_flavour="MULTISSL_"
-        elif test "x$OPENSSL_ENABLED" = "x1"; then
-          versioned_symbols_flavour="OPENSSL_"
-        elif test "x$GNUTLS_ENABLED" = "x1"; then
-          versioned_symbols_flavour="GNUTLS_"
-        elif test "x$NSS_ENABLED" = "x1"; then
-          versioned_symbols_flavour="NSS_"
-        elif test "x$WOLFSSL_ENABLED" = "x1"; then
-          versioned_symbols_flavour="WOLFSSL_"
-        elif test "x$SCHANNEL_ENABLED" = "x1"; then
-          versioned_symbols_flavour="SCHANNEL_"
-        elif test "x$SECURETRANSPORT_ENABLED" = "x1"; then
-          versioned_symbols_flavour="SECURE_TRANSPORT_"
-        else
-          versioned_symbols_flavour=""
-        fi
-        versioned_symbols="yes"
-    fi
-    ;;
-
-  *)   AC_MSG_RESULT(no)
-    ;;
-  esac
-], [
-AC_MSG_RESULT(no)
-]
-)
-
-AC_SUBST([CURL_LT_SHLIB_VERSIONED_FLAVOUR],
-  ["$versioned_symbols_flavour"])
-AM_CONDITIONAL([CURL_LT_SHLIB_USE_VERSIONED_SYMBOLS],
-  [test "x$versioned_symbols" = 'xyes'])
-
-dnl Update .plist file with current version
-AC_SUBST([CURL_PLIST_VERSION],
-  ["$CURLVERSION"])
-
-dnl -------------------------------------------------
-dnl check winidn option before other IDN libraries
-dnl -------------------------------------------------
-
-AC_MSG_CHECKING([whether to enable Windows native IDN (Windows native builds only)])
-OPT_WINIDN="default"
-AC_ARG_WITH(winidn,
-AS_HELP_STRING([--with-winidn=PATH],[enable Windows native IDN])
-AS_HELP_STRING([--without-winidn], [disable Windows native IDN]),
-  OPT_WINIDN=$withval)
-case "$OPT_WINIDN" in
-  no|default)
-    dnl --without-winidn option used or configure option not specified
-    want_winidn="no"
-    AC_MSG_RESULT([no])
-    ;;
-  yes)
-    dnl --with-winidn option used without path
-    want_winidn="yes"
-    want_winidn_path="default"
-    AC_MSG_RESULT([yes])
-    ;;
-  *)
-    dnl --with-winidn option used with path
-    want_winidn="yes"
-    want_winidn_path="$withval"
-    AC_MSG_RESULT([yes ($withval)])
-    ;;
-esac
-
-if test "$want_winidn" = "yes"; then
-  dnl winidn library support has been requested
-  clean_CFLAGS="$CFLAGS"
-  clean_CPPFLAGS="$CPPFLAGS"
-  clean_LDFLAGS="$LDFLAGS"
-  clean_LIBS="$LIBS"
-  WINIDN_LIBS="-lnormaliz"
-  WINIDN_CPPFLAGS=""
-  #
-  if test "$want_winidn_path" != "default"; then
-    dnl path has been specified
-    dnl pkg-config not available or provides no info
-    WINIDN_LDFLAGS="-L$want_winidn_path/lib$libsuff"
-    WINIDN_CPPFLAGS="-I$want_winidn_path/include"
-    WINIDN_DIR="$want_winidn_path/lib$libsuff"
-  fi
-  #
-  dnl WinIDN requires a minimum supported OS version of at least Vista (0x0600)
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-      #include <windows.h>
-    ]],[[
-      #if (WINVER < 0x600) && (_WIN32_WINNT < 0x600)
-      #error
-      #endif
-    ]])
-  ],[
-  ],[
-     CFLAGS=`echo $CFLAGS | $SED -e 's/-DWINVER=[[^ ]]*//g'`
-     CFLAGS=`echo $CFLAGS | $SED -e 's/-D_WIN32_WINNT=[[^ ]]*//g'`
-     CPPFLAGS=`echo $CPPFLAGS | $SED -e 's/-DWINVER=[[^ ]]*//g'`
-     CPPFLAGS=`echo $CPPFLAGS | $SED -e 's/-D_WIN32_WINNT=[[^ ]]*//g'`
-     WINIDN_CPPFLAGS="$WINIDN_CPPFLAGS -DWINVER=0x0600"
-  ])
-  #
-  CPPFLAGS="$CPPFLAGS $WINIDN_CPPFLAGS"
-  LDFLAGS="$LDFLAGS $WINIDN_LDFLAGS"
-  LIBS="$WINIDN_LIBS $LIBS"
-  #
-  AC_MSG_CHECKING([if IdnToUnicode can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_PROGRAM([[
-      #include <windows.h>
-    ]],[[
-      IdnToUnicode(0, NULL, 0, NULL, 0);
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_winidn="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_winidn="no"
-  ])
-  #
-  if test "$tst_links_winidn" = "yes"; then
-    AC_DEFINE(USE_WIN32_IDN, 1, [Define to 1 if you have the `normaliz' (WinIDN) library (-lnormaliz).])
-    AC_DEFINE(WANT_IDN_PROTOTYPES, 1, [Define to 1 to provide own prototypes.])
-    AC_SUBST([IDN_ENABLED], [1])
-    curl_idn_msg="enabled (Windows-native)"
-  else
-    AC_MSG_WARN([Cannot find libraries for IDN support: IDN disabled])
-    CFLAGS="$clean_CFLAGS"
-    CPPFLAGS="$clean_CPPFLAGS"
-    LDFLAGS="$clean_LDFLAGS"
-    LIBS="$clean_LIBS"
-  fi
-fi
-
-dnl **********************************************************************
-dnl Check for the presence of IDN libraries and headers
-dnl **********************************************************************
-
-AC_MSG_CHECKING([whether to build with libidn2])
-OPT_IDN="default"
-AC_ARG_WITH(libidn2,
-AS_HELP_STRING([--with-libidn2=PATH],[Enable libidn2 usage])
-AS_HELP_STRING([--without-libidn2],[Disable libidn2 usage]),
-  [OPT_IDN=$withval])
-case "$OPT_IDN" in
-  no)
-    dnl --without-libidn2 option used
-    want_idn="no"
-    AC_MSG_RESULT([no])
-    ;;
-  default)
-    dnl configure option not specified
-    want_idn="yes"
-    want_idn_path="default"
-    AC_MSG_RESULT([(assumed) yes])
-    ;;
-  yes)
-    dnl --with-libidn2 option used without path
-    want_idn="yes"
-    want_idn_path="default"
-    AC_MSG_RESULT([yes])
-    ;;
-  *)
-    dnl --with-libidn2 option used with path
-    want_idn="yes"
-    want_idn_path="$withval"
-    AC_MSG_RESULT([yes ($withval)])
-    ;;
-esac
-
-if test "$want_idn" = "yes"; then
-  dnl idn library support has been requested
-  clean_CPPFLAGS="$CPPFLAGS"
-  clean_LDFLAGS="$LDFLAGS"
-  clean_LIBS="$LIBS"
-  PKGCONFIG="no"
-  #
-  if test "$want_idn_path" != "default"; then
-    dnl path has been specified
-    IDN_PCDIR="$want_idn_path/lib$libsuff/pkgconfig"
-    CURL_CHECK_PKGCONFIG(libidn2, [$IDN_PCDIR])
-    if test "$PKGCONFIG" != "no"; then
-      IDN_LIBS=`CURL_EXPORT_PCDIR([$IDN_PCDIR]) dnl
-        $PKGCONFIG --libs-only-l libidn2 2>/dev/null`
-      IDN_LDFLAGS=`CURL_EXPORT_PCDIR([$IDN_PCDIR]) dnl
-        $PKGCONFIG --libs-only-L libidn2 2>/dev/null`
-      IDN_CPPFLAGS=`CURL_EXPORT_PCDIR([$IDN_PCDIR]) dnl
-        $PKGCONFIG --cflags-only-I libidn2 2>/dev/null`
-      IDN_DIR=`echo $IDN_LDFLAGS | $SED -e 's/^-L//'`
-    else
-      dnl pkg-config not available or provides no info
-      IDN_LIBS="-lidn2"
-      IDN_LDFLAGS="-L$want_idn_path/lib$libsuff"
-      IDN_CPPFLAGS="-I$want_idn_path/include"
-      IDN_DIR="$want_idn_path/lib$libsuff"
-    fi
-  else
-    dnl path not specified
-    CURL_CHECK_PKGCONFIG(libidn2)
-    if test "$PKGCONFIG" != "no"; then
-      IDN_LIBS=`$PKGCONFIG --libs-only-l libidn2 2>/dev/null`
-      IDN_LDFLAGS=`$PKGCONFIG --libs-only-L libidn2 2>/dev/null`
-      IDN_CPPFLAGS=`$PKGCONFIG --cflags-only-I libidn2 2>/dev/null`
-      IDN_DIR=`echo $IDN_LDFLAGS | $SED -e 's/^-L//'`
-    else
-      dnl pkg-config not available or provides no info
-      IDN_LIBS="-lidn2"
-    fi
-  fi
-  #
-  if test "$PKGCONFIG" != "no"; then
-    AC_MSG_NOTICE([pkg-config: IDN_LIBS: "$IDN_LIBS"])
-    AC_MSG_NOTICE([pkg-config: IDN_LDFLAGS: "$IDN_LDFLAGS"])
-    AC_MSG_NOTICE([pkg-config: IDN_CPPFLAGS: "$IDN_CPPFLAGS"])
-    AC_MSG_NOTICE([pkg-config: IDN_DIR: "$IDN_DIR"])
-  else
-    AC_MSG_NOTICE([IDN_LIBS: "$IDN_LIBS"])
-    AC_MSG_NOTICE([IDN_LDFLAGS: "$IDN_LDFLAGS"])
-    AC_MSG_NOTICE([IDN_CPPFLAGS: "$IDN_CPPFLAGS"])
-    AC_MSG_NOTICE([IDN_DIR: "$IDN_DIR"])
-  fi
-  #
-  CPPFLAGS="$CPPFLAGS $IDN_CPPFLAGS"
-  LDFLAGS="$LDFLAGS $IDN_LDFLAGS"
-  LIBS="$IDN_LIBS $LIBS"
-  #
-  AC_MSG_CHECKING([if idn2_lookup_ul can be linked])
-  AC_LINK_IFELSE([
-    AC_LANG_FUNC_LINK_TRY([idn2_lookup_ul])
-  ],[
-    AC_MSG_RESULT([yes])
-    tst_links_libidn="yes"
-  ],[
-    AC_MSG_RESULT([no])
-    tst_links_libidn="no"
-  ])
-  #
-  AC_CHECK_HEADERS( idn2.h )
-
-  if test "$tst_links_libidn" = "yes"; then
-    AC_DEFINE(HAVE_LIBIDN2, 1, [Define to 1 if you have the `idn2' library (-lidn2).])
-    dnl different versions of libidn have different setups of these:
-
-    AC_SUBST([IDN_ENABLED], [1])
-    curl_idn_msg="enabled (libidn2)"
-    if test -n "$IDN_DIR" -a "x$cross_compiling" != "xyes"; then
-      CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$IDN_DIR"
-      export CURL_LIBRARY_PATH
-      AC_MSG_NOTICE([Added $IDN_DIR to CURL_LIBRARY_PATH])
-    fi
-  else
-    AC_MSG_WARN([Cannot find libraries for IDN support: IDN disabled])
-    CPPFLAGS="$clean_CPPFLAGS"
-    LDFLAGS="$clean_LDFLAGS"
-    LIBS="$clean_LIBS"
-  fi
-fi
-
-dnl **********************************************************************
-dnl Check for nghttp2
-dnl **********************************************************************
-
-OPT_H2="yes"
-
-if test "x$disable_http" = "xyes" -o X"$want_hyper" != Xno; then
-  # without HTTP or with Hyper, nghttp2 is no use
-  OPT_H2="no"
-fi
-
-AC_ARG_WITH(nghttp2,
-AS_HELP_STRING([--with-nghttp2=PATH],[Enable nghttp2 usage])
-AS_HELP_STRING([--without-nghttp2],[Disable nghttp2 usage]),
-  [OPT_H2=$withval])
-case "$OPT_H2" in
-  no)
-    dnl --without-nghttp2 option used
-    want_nghttp2="no"
-    ;;
-  yes)
-    dnl --with-nghttp2 option used without path
-    want_nghttp2="default"
-    want_nghttp2_path=""
-    want_nghttp2_pkg_config_path=""
-    ;;
-  *)
-    dnl --with-nghttp2 option used with path
-    want_nghttp2="yes"
-    want_nghttp2_path="$withval"
-    want_nghttp2_pkg_config_path="$withval/lib/pkgconfig"
-    ;;
-esac
-
-if test X"$want_nghttp2" != Xno; then
-  dnl backup the pre-nghttp2 variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  CURL_CHECK_PKGCONFIG(libnghttp2, $want_nghttp2_pkg_config_path)
-
-  if test "$PKGCONFIG" != "no" ; then
-    LIB_H2=`CURL_EXPORT_PCDIR([$want_nghttp2_pkg_config_path])
-      $PKGCONFIG --libs-only-l libnghttp2`
-    AC_MSG_NOTICE([-l is $LIB_H2])
-
-    CPP_H2=`CURL_EXPORT_PCDIR([$want_nghttp2_pkg_config_path]) dnl
-      $PKGCONFIG --cflags-only-I libnghttp2`
-    AC_MSG_NOTICE([-I is $CPP_H2])
-
-    LD_H2=`CURL_EXPORT_PCDIR([$want_nghttp2_pkg_config_path])
-      $PKGCONFIG --libs-only-L libnghttp2`
-    AC_MSG_NOTICE([-L is $LD_H2])
-
-    DIR_H2=`echo $LD_H2 | $SED -e 's/^-L//'`
-  elif test x"$want_nghttp2_path" != x; then
-    LIB_H2="-lnghttp2"
-    LD_H2=-L${want_nghttp2_path}/lib$libsuff
-    CPP_H2=-I${want_nghttp2_path}/include
-    DIR_H2=${want_nghttp2_path}/lib$libsuff
-  elif test X"$want_nghttp2" != Xdefault; then
-    dnl no nghttp2 pkg-config found and no custom directory specified,
-    dnl deal with it
-    AC_MSG_ERROR([--with-nghttp2 was specified but could not find libnghttp2 pkg-config file.])
-  fi
-
-  LDFLAGS="$LDFLAGS $LD_H2"
-  CPPFLAGS="$CPPFLAGS $CPP_H2"
-  LIBS="$LIB_H2 $LIBS"
-
-  # use nghttp2_session_set_local_window_size to require nghttp2
-  # >= 1.12.0
-  AC_CHECK_LIB(nghttp2, nghttp2_session_set_local_window_size,
-    [
-     AC_CHECK_HEADERS(nghttp2/nghttp2.h,
-        curl_h2_msg="enabled (nghttp2)"
-        NGHTTP2_ENABLED=1
-        AC_DEFINE(USE_NGHTTP2, 1, [if nghttp2 is in use])
-        AC_SUBST(USE_NGHTTP2, [1])
-     )
-
-     CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_H2"
-     export CURL_LIBRARY_PATH
-     AC_MSG_NOTICE([Added $DIR_H2 to CURL_LIBRARY_PATH])
-    ],
-      dnl not found, revert back to clean variables
-      LDFLAGS=$CLEANLDFLAGS
-      CPPFLAGS=$CLEANCPPFLAGS
-      LIBS=$CLEANLIBS
-  )
-fi
-
-dnl **********************************************************************
-dnl Check for ngtcp2 (QUIC)
-dnl **********************************************************************
-
-OPT_TCP2="yes"
-
-if test "x$disable_http" = "xyes"; then
-  # without HTTP, ngtcp2 is no use
-  OPT_TCP2="no"
-fi
-
-AC_ARG_WITH(ngtcp2,
-AS_HELP_STRING([--with-ngtcp2=PATH],[Enable ngtcp2 usage])
-AS_HELP_STRING([--without-ngtcp2],[Disable ngtcp2 usage]),
-  [OPT_TCP2=$withval])
-case "$OPT_TCP2" in
-  no)
-    dnl --without-ngtcp2 option used
-    want_tcp2="no"
-    ;;
-  yes)
-    dnl --with-ngtcp2 option used without path
-    want_tcp2="default"
-    want_tcp2_path=""
-    ;;
-  *)
-    dnl --with-ngtcp2 option used with path
-    want_tcp2="yes"
-    want_tcp2_path="$withval/lib/pkgconfig"
-    ;;
-esac
-
-curl_tcp2_msg="no      (--with-ngtcp2)"
-if test X"$want_tcp2" != Xno; then
-  dnl backup the pre-ngtcp2 variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  CURL_CHECK_PKGCONFIG(libngtcp2, $want_tcp2_path)
-
-  if test "$PKGCONFIG" != "no" ; then
-    LIB_TCP2=`CURL_EXPORT_PCDIR([$want_tcp2_path])
-      $PKGCONFIG --libs-only-l libngtcp2`
-    AC_MSG_NOTICE([-l is $LIB_TCP2])
-
-    CPP_TCP2=`CURL_EXPORT_PCDIR([$want_tcp2_path]) dnl
-      $PKGCONFIG --cflags-only-I libngtcp2`
-    AC_MSG_NOTICE([-I is $CPP_TCP2])
-
-    LD_TCP2=`CURL_EXPORT_PCDIR([$want_tcp2_path])
-      $PKGCONFIG --libs-only-L libngtcp2`
-    AC_MSG_NOTICE([-L is $LD_TCP2])
-
-    LDFLAGS="$LDFLAGS $LD_TCP2"
-    CPPFLAGS="$CPPFLAGS $CPP_TCP2"
-    LIBS="$LIB_TCP2 $LIBS"
-
-    if test "x$cross_compiling" != "xyes"; then
-      DIR_TCP2=`echo $LD_TCP2 | $SED -e 's/^-L//'`
-    fi
-    AC_CHECK_LIB(ngtcp2, ngtcp2_conn_client_new_versioned,
-      [
-       AC_CHECK_HEADERS(ngtcp2/ngtcp2.h,
-          NGTCP2_ENABLED=1
-          AC_DEFINE(USE_NGTCP2, 1, [if ngtcp2 is in use])
-          AC_SUBST(USE_NGTCP2, [1])
-          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_TCP2"
-          export CURL_LIBRARY_PATH
-          AC_MSG_NOTICE([Added $DIR_TCP2 to CURL_LIBRARY_PATH])
-       )
-      ],
-        dnl not found, revert back to clean variables
-        LDFLAGS=$CLEANLDFLAGS
-        CPPFLAGS=$CLEANCPPFLAGS
-        LIBS=$CLEANLIBS
-    )
-
-  else
-    dnl no ngtcp2 pkg-config found, deal with it
-    if test X"$want_tcp2" != Xdefault; then
-      dnl To avoid link errors, we do not allow --with-ngtcp2 without
-      dnl a pkgconfig file
-      AC_MSG_ERROR([--with-ngtcp2 was specified but could not find ngtcp2 pkg-config file.])
-    fi
-  fi
-
-fi
-
-if test "x$NGTCP2_ENABLED" = "x1" -a "x$OPENSSL_ENABLED" = "x1"; then
-  dnl backup the pre-ngtcp2_crypto_openssl variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  CURL_CHECK_PKGCONFIG(libngtcp2_crypto_openssl, $want_tcp2_path)
-
-  if test "$PKGCONFIG" != "no" ; then
-    LIB_NGTCP2_CRYPTO_OPENSSL=`CURL_EXPORT_PCDIR([$want_tcp2_path])
-      $PKGCONFIG --libs-only-l libngtcp2_crypto_openssl`
-    AC_MSG_NOTICE([-l is $LIB_NGTCP2_CRYPTO_OPENSSL])
-
-    CPP_NGTCP2_CRYPTO_OPENSSL=`CURL_EXPORT_PCDIR([$want_tcp2_path]) dnl
-      $PKGCONFIG --cflags-only-I libngtcp2_crypto_openssl`
-    AC_MSG_NOTICE([-I is $CPP_NGTCP2_CRYPTO_OPENSSL])
-
-    LD_NGTCP2_CRYPTO_OPENSSL=`CURL_EXPORT_PCDIR([$want_tcp2_path])
-      $PKGCONFIG --libs-only-L libngtcp2_crypto_openssl`
-    AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_OPENSSL])
-
-    LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_OPENSSL"
-    CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_OPENSSL"
-    LIBS="$LIB_NGTCP2_CRYPTO_OPENSSL $LIBS"
-
-    if test "x$cross_compiling" != "xyes"; then
-      DIR_NGTCP2_CRYPTO_OPENSSL=`echo $LD_NGTCP2_CRYPTO_OPENSSL | $SED -e 's/^-L//'`
-    fi
-    AC_CHECK_LIB(ngtcp2_crypto_openssl, ngtcp2_crypto_recv_client_initial_cb,
-      [
-       AC_CHECK_HEADERS(ngtcp2/ngtcp2_crypto.h,
-          NGTCP2_ENABLED=1
-          AC_DEFINE(USE_NGTCP2_CRYPTO_OPENSSL, 1, [if ngtcp2_crypto_openssl is in use])
-          AC_SUBST(USE_NGTCP2_CRYPTO_OPENSSL, [1])
-          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGTCP2_CRYPTO_OPENSSL"
-          export CURL_LIBRARY_PATH
-          AC_MSG_NOTICE([Added $DIR_NGTCP2_CRYPTO_OPENSSL to CURL_LIBRARY_PATH])
-       )
-      ],
-        dnl not found, revert back to clean variables
-        LDFLAGS=$CLEANLDFLAGS
-        CPPFLAGS=$CLEANCPPFLAGS
-        LIBS=$CLEANLIBS
-    )
-
-  else
-    dnl no ngtcp2_crypto_openssl pkg-config found, deal with it
-    if test X"$want_tcp2" != Xdefault; then
-      dnl To avoid link errors, we do not allow --with-ngtcp2 without
-      dnl a pkgconfig file
-      AC_MSG_ERROR([--with-ngtcp2 was specified but could not find ngtcp2_crypto_openssl pkg-config file.])
-    fi
-  fi
-fi
-
-if test "x$NGTCP2_ENABLED" = "x1" -a "x$GNUTLS_ENABLED" = "x1"; then
-  dnl backup the pre-ngtcp2_crypto_gnutls variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  CURL_CHECK_PKGCONFIG(libngtcp2_crypto_gnutls, $want_tcp2_path)
-
-  if test "$PKGCONFIG" != "no" ; then
-    LIB_NGTCP2_CRYPTO_GNUTLS=`CURL_EXPORT_PCDIR([$want_tcp2_path])
-      $PKGCONFIG --libs-only-l libngtcp2_crypto_gnutls`
-    AC_MSG_NOTICE([-l is $LIB_NGTCP2_CRYPTO_GNUTLS])
-
-    CPP_NGTCP2_CRYPTO_GNUTLS=`CURL_EXPORT_PCDIR([$want_tcp2_path]) dnl
-      $PKGCONFIG --cflags-only-I libngtcp2_crypto_gnutls`
-    AC_MSG_NOTICE([-I is $CPP_NGTCP2_CRYPTO_GNUTLS])
-
-    LD_NGTCP2_CRYPTO_GNUTLS=`CURL_EXPORT_PCDIR([$want_tcp2_path])
-      $PKGCONFIG --libs-only-L libngtcp2_crypto_gnutls`
-    AC_MSG_NOTICE([-L is $LD_NGTCP2_CRYPTO_GNUTLS])
-
-    LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_GNUTLS"
-    CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_GNUTLS"
-    LIBS="$LIB_NGTCP2_CRYPTO_GNUTLS $LIBS"
-
-    if test "x$cross_compiling" != "xyes"; then
-      DIR_NGTCP2_CRYPTO_GNUTLS=`echo $LD_NGTCP2_CRYPTO_GNUTLS | $SED -e 's/^-L//'`
-    fi
-    AC_CHECK_LIB(ngtcp2_crypto_gnutls, ngtcp2_crypto_recv_client_initial_cb,
-      [
-       AC_CHECK_HEADERS(ngtcp2/ngtcp2_crypto.h,
-          NGTCP2_ENABLED=1
-          AC_DEFINE(USE_NGTCP2_CRYPTO_GNUTLS, 1, [if ngtcp2_crypto_gnutls is in use])
-          AC_SUBST(USE_NGTCP2_CRYPTO_GNUTLS, [1])
-          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGTCP2_CRYPTO_GNUTLS"
-          export CURL_LIBRARY_PATH
-          AC_MSG_NOTICE([Added $DIR_NGTCP2_CRYPTO_GNUTLS to CURL_LIBRARY_PATH])
-       )
-      ],
-        dnl not found, revert back to clean variables
-        LDFLAGS=$CLEANLDFLAGS
-        CPPFLAGS=$CLEANCPPFLAGS
-        LIBS=$CLEANLIBS
-    )
-
-  else
-    dnl no ngtcp2_crypto_gnutls pkg-config found, deal with it
-    if test X"$want_tcp2" != Xdefault; then
-      dnl To avoid link errors, we do not allow --with-ngtcp2 without
-      dnl a pkgconfig file
-      AC_MSG_ERROR([--with-ngtcp2 was specified but could not find ngtcp2_crypto_gnutls pkg-config file.])
-    fi
-  fi
-fi
-
-dnl **********************************************************************
-dnl Check for nghttp3 (HTTP/3 with ngtcp2)
-dnl **********************************************************************
-
-OPT_NGHTTP3="yes"
-
-if test "x$NGTCP2_ENABLED" = "x"; then
-  # without ngtcp2, nghttp3 is of no use for us
-  OPT_NGHTTP3="no"
-fi
-
-AC_ARG_WITH(nghttp3,
-AS_HELP_STRING([--with-nghttp3=PATH],[Enable nghttp3 usage])
-AS_HELP_STRING([--without-nghttp3],[Disable nghttp3 usage]),
-  [OPT_NGHTTP3=$withval])
-case "$OPT_NGHTTP3" in
-  no)
-    dnl --without-nghttp3 option used
-    want_nghttp3="no"
-    ;;
-  yes)
-    dnl --with-nghttp3 option used without path
-    want_nghttp3="default"
-    want_nghttp3_path=""
-    ;;
-  *)
-    dnl --with-nghttp3 option used with path
-    want_nghttp3="yes"
-    want_nghttp3_path="$withval/lib/pkgconfig"
-    ;;
-esac
-
-curl_http3_msg="no      (--with-nghttp3)"
-if test X"$want_nghttp3" != Xno; then
-  dnl backup the pre-nghttp3 variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  CURL_CHECK_PKGCONFIG(libnghttp3, $want_nghttp3_path)
-
-  if test "$PKGCONFIG" != "no" ; then
-    LIB_NGHTTP3=`CURL_EXPORT_PCDIR([$want_nghttp3_path])
-      $PKGCONFIG --libs-only-l libnghttp3`
-    AC_MSG_NOTICE([-l is $LIB_NGHTTP3])
-
-    CPP_NGHTTP3=`CURL_EXPORT_PCDIR([$want_nghttp3_path]) dnl
-      $PKGCONFIG --cflags-only-I libnghttp3`
-    AC_MSG_NOTICE([-I is $CPP_NGHTTP3])
-
-    LD_NGHTTP3=`CURL_EXPORT_PCDIR([$want_nghttp3_path])
-      $PKGCONFIG --libs-only-L libnghttp3`
-    AC_MSG_NOTICE([-L is $LD_NGHTTP3])
-
-    LDFLAGS="$LDFLAGS $LD_NGHTTP3"
-    CPPFLAGS="$CPPFLAGS $CPP_NGHTTP3"
-    LIBS="$LIB_NGHTTP3 $LIBS"
-
-    if test "x$cross_compiling" != "xyes"; then
-      DIR_NGHTTP3=`echo $LD_NGHTTP3 | $SED -e 's/^-L//'`
-    fi
-    AC_CHECK_LIB(nghttp3, nghttp3_conn_client_new_versioned,
-      [
-       AC_CHECK_HEADERS(nghttp3/nghttp3.h,
-          curl_h3_msg="enabled (ngtcp2 + nghttp3)"
-          NGHTTP3_ENABLED=1
-          AC_DEFINE(USE_NGHTTP3, 1, [if nghttp3 is in use])
-          AC_SUBST(USE_NGHTTP3, [1])
-          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGHTTP3"
-          export CURL_LIBRARY_PATH
-          AC_MSG_NOTICE([Added $DIR_NGHTTP3 to CURL_LIBRARY_PATH])
-          experimental="$experimental HTTP3"
-       )
-      ],
-        dnl not found, revert back to clean variables
-        LDFLAGS=$CLEANLDFLAGS
-        CPPFLAGS=$CLEANCPPFLAGS
-        LIBS=$CLEANLIBS
-    )
-
-  else
-    dnl no nghttp3 pkg-config found, deal with it
-    if test X"$want_nghttp3" != Xdefault; then
-      dnl To avoid link errors, we do not allow --with-nghttp3 without
-      dnl a pkgconfig file
-      AC_MSG_ERROR([--with-nghttp3 was specified but could not find nghttp3 pkg-config file.])
-    fi
-  fi
-
-fi
-
-dnl **********************************************************************
-dnl Check for quiche (QUIC)
-dnl **********************************************************************
-
-OPT_QUICHE="no"
-
-if test "x$disable_http" = "xyes" -o "x$USE_NGTCP" = "x1"; then
-  # without HTTP or with ngtcp2, quiche is no use
-  OPT_QUICHE="no"
-fi
-
-AC_ARG_WITH(quiche,
-AS_HELP_STRING([--with-quiche=PATH],[Enable quiche usage])
-AS_HELP_STRING([--without-quiche],[Disable quiche usage]),
-  [OPT_QUICHE=$withval])
-case "$OPT_QUICHE" in
-  no)
-    dnl --without-quiche option used
-    want_quiche="no"
-    ;;
-  yes)
-    dnl --with-quiche option used without path
-    want_quiche="default"
-    want_quiche_path=""
-    ;;
-  *)
-    dnl --with-quiche option used with path
-    want_quiche="yes"
-    want_quiche_path="$withval"
-    ;;
-esac
-
-if test X"$want_quiche" != Xno; then
-
-  if test "$NGHTTP3_ENABLED" = 1; then
-    AC_MSG_ERROR([--with-quiche and --with-ngtcp2 are mutually exclusive])
-  fi
-
-  dnl backup the pre-quiche variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  CURL_CHECK_PKGCONFIG(quiche, $want_quiche_path)
-
-  if test "$PKGCONFIG" != "no" ; then
-    LIB_QUICHE=`CURL_EXPORT_PCDIR([$want_quiche_path])
-      $PKGCONFIG --libs-only-l quiche`
-    AC_MSG_NOTICE([-l is $LIB_QUICHE])
-
-    CPP_QUICHE=`CURL_EXPORT_PCDIR([$want_quiche_path]) dnl
-      $PKGCONFIG --cflags-only-I quiche`
-    AC_MSG_NOTICE([-I is $CPP_QUICHE])
-
-    LD_QUICHE=`CURL_EXPORT_PCDIR([$want_quiche_path])
-      $PKGCONFIG --libs-only-L quiche`
-    AC_MSG_NOTICE([-L is $LD_QUICHE])
-
-    LDFLAGS="$LDFLAGS $LD_QUICHE"
-    CPPFLAGS="$CPPFLAGS $CPP_QUICHE"
-    LIBS="$LIB_QUICHE $LIBS"
-
-    if test "x$cross_compiling" != "xyes"; then
-      DIR_QUICHE=`echo $LD_QUICHE | $SED -e 's/^-L//'`
-    fi
-    AC_CHECK_LIB(quiche, quiche_connect,
-      [
-       AC_CHECK_HEADERS(quiche.h,
-          experimental="$experimental HTTP3"
-          AC_MSG_NOTICE([HTTP3 support is experimental])
-          curl_h3_msg="enabled (quiche)"
-          QUICHE_ENABLED=1
-          AC_DEFINE(USE_QUICHE, 1, [if quiche is in use])
-          AC_SUBST(USE_QUICHE, [1])
-          AC_CHECK_FUNCS([quiche_conn_set_qlog_fd])
-          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_QUICHE"
-          export CURL_LIBRARY_PATH
-          AC_MSG_NOTICE([Added $DIR_QUICHE to CURL_LIBRARY_PATH]),
-          [],
-          [
-AC_INCLUDES_DEFAULT
-#include <sys/socket.h>
-          ]
-       )
-      ],
-        dnl not found, revert back to clean variables
-        AC_MSG_ERROR([couldn't use quiche])
-    )
-  else
-    dnl no quiche pkg-config found, deal with it
-    if test X"$want_quiche" != Xdefault; then
-      dnl To avoid link errors, we do not allow --with-quiche without
-      dnl a pkgconfig file
-      AC_MSG_ERROR([--with-quiche was specified but could not find quiche pkg-config file.])
-    fi
-  fi
-fi
-
-dnl **********************************************************************
-dnl Check for msh3 (QUIC)
-dnl **********************************************************************
-
-OPT_MSH3="no"
-
-if test "x$disable_http" = "xyes" -o "x$USE_NGTCP" = "x1"; then
-  # without HTTP or with ngtcp2, msh3 is no use
-  OPT_MSH3="no"
-fi
-
-AC_ARG_WITH(msh3,
-AS_HELP_STRING([--with-msh3=PATH],[Enable msh3 usage])
-AS_HELP_STRING([--without-msh3],[Disable msh3 usage]),
-  [OPT_MSH3=$withval])
-case "$OPT_MSH3" in
-  no)
-    dnl --without-msh3 option used
-    want_msh3="no"
-    ;;
-  yes)
-    dnl --with-msh3 option used without path
-    want_msh3="default"
-    want_msh3_path=""
-    ;;
-  *)
-    dnl --with-msh3 option used with path
-    want_msh3="yes"
-    want_msh3_path="$withval"
-    ;;
-esac
-
-if test X"$want_msh3" != Xno; then
-
-  if test "$NGHTTP3_ENABLED" = 1; then
-    AC_MSG_ERROR([--with-msh3 and --with-ngtcp2 are mutually exclusive])
-  fi
-
-  dnl backup the pre-msh3 variables
-  CLEANLDFLAGS="$LDFLAGS"
-  CLEANCPPFLAGS="$CPPFLAGS"
-  CLEANLIBS="$LIBS"
-
-  if test -n "$want_msh3_path"; then
-    LD_MSH3="-L$want_msh3_path/lib"
-    CPP_MSH3="-I$want_msh3_path/include"
-    DIR_MSH3="$want_msh3_path/lib"
-    LDFLAGS="$LDFLAGS $LD_MSH3"
-    CPPFLAGS="$CPPFLAGS $CPP_MSH3"
-  fi
-  LIBS="-lmsh3 $LIBS"
-
-  AC_CHECK_LIB(msh3, MsH3ApiOpen,
-    [
-    AC_CHECK_HEADERS(msh3.h,
-        curl_h3_msg="enabled (msh3)"
-        MSH3_ENABLED=1
-        AC_DEFINE(USE_MSH3, 1, [if msh3 is in use])
-        AC_SUBST(USE_MSH3, [1])
-        CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_MSH3"
-        export CURL_LIBRARY_PATH
-        AC_MSG_NOTICE([Added $DIR_MSH3 to CURL_LIBRARY_PATH]),
-        experimental="$experimental HTTP3"
-     )
-    ],
-      dnl not found, revert back to clean variables
-      LDFLAGS=$CLEANLDFLAGS
-      CPPFLAGS=$CLEANCPPFLAGS
-      LIBS=$CLEANLIBS
-  )
-fi
-
-dnl **********************************************************************
-dnl Check for zsh completion path
-dnl **********************************************************************
-
-OPT_ZSH_FPATH=default
-AC_ARG_WITH(zsh-functions-dir,
-AS_HELP_STRING([--with-zsh-functions-dir=PATH],[Install zsh completions to PATH])
-AS_HELP_STRING([--without-zsh-functions-dir],[Do not install zsh completions]),
-  [OPT_ZSH_FPATH=$withval])
-case "$OPT_ZSH_FPATH" in
-  no)
-    dnl --without-zsh-functions-dir option used
-    ;;
-  default|yes)
-    dnl --with-zsh-functions-dir option used without path
-    ZSH_FUNCTIONS_DIR="$datarootdir/zsh/site-functions"
-    AC_SUBST(ZSH_FUNCTIONS_DIR)
-    ;;
-  *)
-    dnl --with-zsh-functions-dir option used with path
-    ZSH_FUNCTIONS_DIR="$withval"
-    AC_SUBST(ZSH_FUNCTIONS_DIR)
-    ;;
-esac
-
-dnl **********************************************************************
-dnl Check for fish completion path
-dnl **********************************************************************
-
-OPT_FISH_FPATH=default
-AC_ARG_WITH(fish-functions-dir,
-AS_HELP_STRING([--with-fish-functions-dir=PATH],[Install fish completions to PATH])
-AS_HELP_STRING([--without-fish-functions-dir],[Do not install fish completions]),
-  [OPT_FISH_FPATH=$withval])
-case "$OPT_FISH_FPATH" in
-  no)
-    dnl --without-fish-functions-dir option used
-    ;;
-  default|yes)
-    dnl --with-fish-functions-dir option used without path
-    CURL_CHECK_PKGCONFIG(fish)
-    if test "$PKGCONFIG" != "no" ; then
-      FISH_FUNCTIONS_DIR="$($PKGCONFIG --variable completionsdir fish)"
-    else
-      FISH_FUNCTIONS_DIR="$datarootdir/fish/vendor_completions.d"
-    fi
-    AC_SUBST(FISH_FUNCTIONS_DIR)
-    ;;
-  *)
-    dnl --with-fish-functions-dir option used with path
-    FISH_FUNCTIONS_DIR="$withval"
-    AC_SUBST(FISH_FUNCTIONS_DIR)
-    ;;
-esac
-
-CURL_CHECK_HEADER_MALLOC
-CURL_CHECK_HEADER_MEMORY
-
-dnl Now check for the very most basic headers. Then we can use these
-dnl ones as default-headers when checking for the rest!
-AC_CHECK_HEADERS(
-        sys/types.h \
-        sys/time.h \
-        sys/select.h \
-        sys/socket.h \
-        sys/ioctl.h \
-        sys/uio.h \
-        assert.h \
-        unistd.h \
-        stdlib.h \
-        arpa/inet.h \
-        net/if.h \
-        netinet/in.h \
-	netinet/in6.h \
-        sys/un.h \
-        linux/tcp.h \
-        netinet/tcp.h \
-        netdb.h \
-        sys/sockio.h \
-        sys/stat.h \
-        sys/param.h \
-        termios.h \
-        termio.h \
-        fcntl.h \
-        alloca.h \
-        io.h \
-        pwd.h \
-        utime.h \
-        sys/utime.h \
-        sys/poll.h \
-        poll.h \
-        socket.h \
-        sys/resource.h \
-        libgen.h \
-        locale.h \
-        errno.h \
-        stdbool.h \
-        arpa/tftp.h \
-        sys/filio.h \
-        sys/wait.h \
-        setjmp.h,
-dnl to do if not found
-[],
-dnl to do if found
-[],
-dnl default includes
-[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#ifdef HAVE_SYS_SELECT_H
-#include <sys/select.h>
-#elif defined(HAVE_UNISTD_H)
-#include <unistd.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETINET_IN6_H
-#include <netinet/in6.h>
-#endif
-#ifdef HAVE_SYS_UN_H
-#include <sys/un.h>
-#endif
-]
-)
-
-
-dnl Checks for typedefs, structures, and compiler characteristics.
-AC_C_CONST
-CURL_CHECK_VARIADIC_MACROS
-AC_TYPE_SIZE_T
-
-CURL_CHECK_STRUCT_TIMEVAL
-CURL_VERIFY_RUNTIMELIBS
-
-AX_COMPILE_CHECK_SIZEOF(size_t)
-AX_COMPILE_CHECK_SIZEOF(long)
-AX_COMPILE_CHECK_SIZEOF(int)
-AX_COMPILE_CHECK_SIZEOF(short)
-AX_COMPILE_CHECK_SIZEOF(time_t)
-AX_COMPILE_CHECK_SIZEOF(off_t)
-
-o=$CPPFLAGS
-CPPFLAGS="-I$srcdir/include $CPPFLAGS"
-AX_COMPILE_CHECK_SIZEOF(curl_off_t, [
-#include <curl/system.h>
-])
-CPPFLAGS=$o
-
-AC_CHECK_TYPE(long long,
-   [AC_DEFINE(HAVE_LONGLONG, 1,
-      [Define to 1 if the compiler supports the 'long long' data type.])]
-   longlong="yes"
-)
-
-if test "xyes" = "x$longlong"; then
-  AC_MSG_CHECKING([if numberLL works])
-  AC_COMPILE_IFELSE([
-    AC_LANG_PROGRAM([[
-    ]],[[
-      long long val = 1000LL;
-    ]])
-  ],[
-    AC_MSG_RESULT([yes])
-    AC_DEFINE(HAVE_LL, 1, [if your compiler supports LL])
-  ],[
-    AC_MSG_RESULT([no])
-  ])
-fi
-
-
-# check for ssize_t
-AC_CHECK_TYPE(ssize_t, ,
-   AC_DEFINE(ssize_t, int, [the signed version of size_t]))
-
-# check for bool type
-AC_CHECK_TYPE([bool],[
-  AC_DEFINE(HAVE_BOOL_T, 1,
-    [Define to 1 if bool is an available type.])
-], ,[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_STDBOOL_H
-#include <stdbool.h>
-#endif
-])
-
-# check for sa_family_t
-AC_CHECK_TYPE(sa_family_t,
-   AC_DEFINE(CURL_SA_FAMILY_T, sa_family_t, [IP address type in sockaddr]),
-   [
-   # The windows name?
-   AC_CHECK_TYPE(ADDRESS_FAMILY,
-     AC_DEFINE(CURL_SA_FAMILY_T, ADDRESS_FAMILY, [IP address type in sockaddr]),
-     AC_DEFINE(CURL_SA_FAMILY_T, unsigned short, [IP address type in sockaddr]),
-    [
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-    ])
-   ],
-[
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-])
-
-# check for suseconds_t
-AC_CHECK_TYPE([suseconds_t],[
-  AC_DEFINE(HAVE_SUSECONDS_T, 1,
-    [Define to 1 if suseconds_t is an available type.])
-], ,[
-#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-])
-
-AC_MSG_CHECKING([if time_t is unsigned])
-CURL_RUN_IFELSE(
-  [
-  #include <time.h>
-  #include <limits.h>
-  time_t t = -1;
-  return (t > 0);
-  ],[
-  AC_MSG_RESULT([yes])
-  AC_DEFINE(HAVE_TIME_T_UNSIGNED, 1, [Define this if time_t is unsigned])
-],[
-  AC_MSG_RESULT([no])
-],[
-  dnl cross-compiling, most systems are unsigned
-  AC_MSG_RESULT([no])
-])
-
-CURL_CONFIGURE_PULL_SYS_POLL
-
-TYPE_IN_ADDR_T
-
-TYPE_SOCKADDR_STORAGE
-
-CURL_CHECK_FUNC_SELECT
-
-CURL_CHECK_FUNC_RECV
-CURL_CHECK_FUNC_SEND
-CURL_CHECK_MSG_NOSIGNAL
-
-CURL_CHECK_FUNC_ALARM
-CURL_CHECK_FUNC_BASENAME
-CURL_CHECK_FUNC_CLOSESOCKET
-CURL_CHECK_FUNC_CLOSESOCKET_CAMEL
-CURL_CHECK_FUNC_CONNECT
-CURL_CHECK_FUNC_FCNTL
-CURL_CHECK_FUNC_FREEADDRINFO
-CURL_CHECK_FUNC_FSETXATTR
-CURL_CHECK_FUNC_FTRUNCATE
-CURL_CHECK_FUNC_GETADDRINFO
-CURL_CHECK_FUNC_GETHOSTBYNAME
-CURL_CHECK_FUNC_GETHOSTBYNAME_R
-CURL_CHECK_FUNC_GETHOSTNAME
-CURL_CHECK_FUNC_GETPEERNAME
-CURL_CHECK_FUNC_GETSOCKNAME
-CURL_CHECK_FUNC_IF_NAMETOINDEX
-CURL_CHECK_FUNC_GETIFADDRS
-CURL_CHECK_FUNC_GMTIME_R
-CURL_CHECK_FUNC_INET_NTOP
-CURL_CHECK_FUNC_INET_PTON
-CURL_CHECK_FUNC_IOCTL
-CURL_CHECK_FUNC_IOCTLSOCKET
-CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL
-CURL_CHECK_FUNC_LOCALTIME_R
-CURL_CHECK_FUNC_MEMRCHR
-CURL_CHECK_FUNC_POLL
-CURL_CHECK_FUNC_SETSOCKOPT
-CURL_CHECK_FUNC_SIGACTION
-CURL_CHECK_FUNC_SIGINTERRUPT
-CURL_CHECK_FUNC_SIGNAL
-CURL_CHECK_FUNC_SIGSETJMP
-CURL_CHECK_FUNC_SOCKET
-CURL_CHECK_FUNC_SOCKETPAIR
-CURL_CHECK_FUNC_STRCASECMP
-CURL_CHECK_FUNC_STRCMPI
-CURL_CHECK_FUNC_STRDUP
-CURL_CHECK_FUNC_STRERROR_R
-CURL_CHECK_FUNC_STRICMP
-CURL_CHECK_FUNC_STRNCMPI
-CURL_CHECK_FUNC_STRNICMP
-CURL_CHECK_FUNC_STRSTR
-CURL_CHECK_FUNC_STRTOK_R
-CURL_CHECK_FUNC_STRTOLL
-CURL_CHECK_FUNC_WRITEV
-
-case $host in
-  *msdosdjgpp)
-     ac_cv_func_pipe=no
-     skipcheck_pipe=yes
-     AC_MSG_NOTICE([skip check for pipe on msdosdjgpp])
-    ;;
-esac
-
-AC_CHECK_DECLS([getpwuid_r], [], [AC_DEFINE(HAVE_DECL_GETPWUID_R_MISSING, 1, "Set if getpwuid_r() declaration is missing")],
-        [[#include <pwd.h>
-          #include <sys/types.h>]])
-
-
-AC_CHECK_FUNCS([fnmatch \
-  geteuid \
-  getpass_r \
-  getppid \
-  getpwuid \
-  getpwuid_r \
-  getrlimit \
-  gettimeofday \
-  if_nametoindex \
-  mach_absolute_time \
-  pipe \
-  setlocale \
-  setmode \
-  setrlimit \
-  usleep \
-  utime \
-  utimes
-],[
-],[
-  func="$ac_func"
-  eval skipcheck=\$skipcheck_$func
-  if test "x$skipcheck" != "xyes"; then
-    AC_MSG_CHECKING([deeper for $func])
-    AC_LINK_IFELSE([
-      AC_LANG_PROGRAM([[
-      ]],[[
-        $func ();
-      ]])
-    ],[
-      AC_MSG_RESULT([yes])
-      eval "ac_cv_func_$func=yes"
-      AC_DEFINE_UNQUOTED(XC_SH_TR_CPP([HAVE_$func]), [1],
-        [Define to 1 if you have the $func function.])
-    ],[
-      AC_MSG_RESULT([but still no])
-    ])
-  fi
-])
-
-CURL_CHECK_NONBLOCKING_SOCKET
-
-dnl ************************************************************
-dnl nroff tool stuff
-dnl
-
-AC_PATH_PROG( PERL, perl, ,
-  $PATH:/usr/local/bin/perl:/usr/bin/:/usr/local/bin )
-AC_SUBST(PERL)
-
-AC_PATH_PROGS( NROFF, gnroff nroff, ,
-  $PATH:/usr/bin/:/usr/local/bin )
-AC_SUBST(NROFF)
-
-if test -n "$NROFF"; then
-  dnl only check for nroff options if an nroff command was found
-
-  AC_MSG_CHECKING([how to use *nroff to get plain text from man pages])
-  MANOPT="-man"
-  mancheck=`echo foo | $NROFF $MANOPT 2>/dev/null`
-  if test -z "$mancheck"; then
-    MANOPT="-mandoc"
-   mancheck=`echo foo | $NROFF $MANOPT 2>/dev/null`
-    if test -z "$mancheck"; then
-      MANOPT=""
-      AC_MSG_RESULT([failed])
-      AC_MSG_WARN([found no *nroff option to get plaintext from man pages])
-    else
-      AC_MSG_RESULT([$MANOPT])
-    fi
-  else
-    AC_MSG_RESULT([$MANOPT])
-  fi
-  AC_SUBST(MANOPT)
-fi
-
-if test -z "$MANOPT"
-then
-  dnl if no nroff tool was found, or no option that could convert man pages
-  dnl was found, then disable the built-in manual stuff
-  AC_MSG_WARN([disabling built-in manual])
-  USE_MANUAL="no";
-fi
-
-dnl *************************************************************************
-dnl If the manual variable still is set, then we go with providing a built-in
-dnl manual
-
-if test "$USE_MANUAL" = "1"; then
-  AC_DEFINE(USE_MANUAL, 1, [If you want to build curl with the built-in manual])
-  curl_manual_msg="enabled"
-fi
-
-dnl set variable for use in automakefile(s)
-AM_CONDITIONAL(USE_MANUAL, test x"$USE_MANUAL" = x1)
-
-CURL_CHECK_LIB_ARES
-
-if test "x$curl_cv_native_windows" != "xyes" &&
-   test "x$enable_shared" = "xyes"; then
-  build_libhostname=yes
-else
-  build_libhostname=no
-fi
-AM_CONDITIONAL(BUILD_LIBHOSTNAME, test x$build_libhostname = xyes)
-
-if test "x$want_ares" != xyes; then
-  CURL_CHECK_OPTION_THREADED_RESOLVER
-fi
-
-dnl ************************************************************
-dnl disable POSIX threads
-dnl
-AC_MSG_CHECKING([whether to use POSIX threads for threaded resolver])
-AC_ARG_ENABLE(pthreads,
-AS_HELP_STRING([--enable-pthreads],
-               [Enable POSIX threads (default for threaded resolver)])
-AS_HELP_STRING([--disable-pthreads],[Disable POSIX threads]),
-[ case "$enableval" in
-  no)  AC_MSG_RESULT(no)
-       want_pthreads=no
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       want_pthreads=yes
-       ;;
-  esac ], [
-       AC_MSG_RESULT(auto)
-       want_pthreads=auto
-       ]
-)
-
-dnl turn off pthreads if rt is disabled
-if test "$want_pthreads" != "no"; then
-  if test "$want_pthreads" = "yes" && test "$dontwant_rt" = "yes"; then
-    AC_MSG_ERROR([options --enable-pthreads and --disable-rt are mutually exclusive])
-  fi
-  if test "$dontwant_rt" != "no"; then
-    dnl if --enable-pthreads was explicit then warn it's being ignored
-    if test "$want_pthreads" = "yes"; then
-      AC_MSG_WARN([--enable-pthreads Ignored since librt is disabled.])
-    fi
-    want_pthreads=no
-  fi
-fi
-
-dnl turn off pthreads if no threaded resolver
-if test "$want_pthreads" != "no" && test "$want_thres" != "yes"; then
-  want_pthreads=no
-fi
-
-dnl detect pthreads
-if test "$want_pthreads" != "no"; then
-  AC_CHECK_HEADER(pthread.h,
-    [ AC_DEFINE(HAVE_PTHREAD_H, 1, [if you have <pthread.h>])
-      save_CFLAGS="$CFLAGS"
-      dnl When statically linking against boringssl, -lpthread is added to LIBS.
-      dnl Make sure to that this does not pass the check below, we really want
-      dnl -pthread in CFLAGS as recommended for GCC. This also ensures that
-      dnl lib1541 and lib1565 tests are built with these options. Otherwise
-      dnl they fail the build since tests/libtest/Makefile.am clears LIBS.
-      save_LIBS="$LIBS"
-
-      LIBS=
-      dnl Check for libc variants without a separate pthread lib like bionic
-      AC_CHECK_FUNC(pthread_create, [USE_THREADS_POSIX=1] )
-      LIBS="$save_LIBS"
-
-      dnl on HPUX, life is more complicated...
-      case $host in
-      *-hp-hpux*)
-         dnl it doesn't actually work without -lpthread
-         USE_THREADS_POSIX=""
-         ;;
-      *)
-         ;;
-      esac
-
-      dnl if it wasn't found without lib, search for it in pthread lib
-      if test "$USE_THREADS_POSIX" != "1"
-      then
-        case $host in
-        *-ibm-aix*)
-           dnl Check if compiler is xlC
-           COMPILER_VERSION=`"$CC" -qversion 2>/dev/null`
-           if test x"$COMPILER_VERSION" = "x"; then
-             CFLAGS="$CFLAGS -pthread"
-           else
-             CFLAGS="$CFLAGS -qthreaded"
-           fi
-           ;;
-        *)
-           CFLAGS="$CFLAGS -pthread"
-           ;;
-        esac
-        # assign PTHREAD for pkg-config use
-        PTHREAD=" -pthread"
-        AC_CHECK_LIB(pthread, pthread_create,
-                     [USE_THREADS_POSIX=1],
-                     [ CFLAGS="$save_CFLAGS"])
-      fi
-
-      if test "x$USE_THREADS_POSIX" = "x1"
-      then
-        AC_DEFINE(USE_THREADS_POSIX, 1, [if you want POSIX threaded DNS lookup])
-        curl_res_msg="POSIX threaded"
-      fi
-  ])
-fi
-
-dnl threaded resolver check
-if test "$want_thres" = "yes" && test "x$USE_THREADS_POSIX" != "x1"; then
-  if test "$want_pthreads" = "yes"; then
-    AC_MSG_ERROR([--enable-pthreads but pthreads was not found])
-  fi
-  dnl If native Windows fallback on Win32 threads since no POSIX threads
-  if test "$curl_cv_native_windows" = "yes"; then
-    USE_THREADS_WIN32=1
-    AC_DEFINE(USE_THREADS_WIN32, 1, [if you want Win32 threaded DNS lookup])
-    curl_res_msg="Win32 threaded"
-  else
-    AC_MSG_ERROR([Threaded resolver enabled but no thread library found])
-  fi
-fi
-
-CURL_CONVERT_INCLUDE_TO_ISYSTEM
-
-dnl ************************************************************
-dnl disable verbose text strings
-dnl
-AC_MSG_CHECKING([whether to enable verbose strings])
-AC_ARG_ENABLE(verbose,
-AS_HELP_STRING([--enable-verbose],[Enable verbose strings])
-AS_HELP_STRING([--disable-verbose],[Disable verbose strings]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_VERBOSE_STRINGS, 1, [to disable verbose strings])
-       curl_verbose_msg="no"
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl enable SSPI support
-dnl
-AC_MSG_CHECKING([whether to enable SSPI support (Windows native builds only)])
-AC_ARG_ENABLE(sspi,
-AS_HELP_STRING([--enable-sspi],[Enable SSPI])
-AS_HELP_STRING([--disable-sspi],[Disable SSPI]),
-[ case "$enableval" in
-  yes)
-       if test "$curl_cv_native_windows" = "yes"; then
-         AC_MSG_RESULT(yes)
-         AC_DEFINE(USE_WINDOWS_SSPI, 1, [to enable SSPI support])
-         AC_SUBST(USE_WINDOWS_SSPI, [1])
-         curl_sspi_msg="enabled"
-       else
-         AC_MSG_RESULT(no)
-         AC_MSG_WARN([--enable-sspi Ignored. Only supported on native Windows builds.])
-       fi
-       ;;
-  *)
-       if test "x$SCHANNEL_ENABLED" = "x1"; then
-         # --with-schannel implies --enable-sspi
-         AC_MSG_RESULT(yes)
-       else
-         AC_MSG_RESULT(no)
-       fi
-       ;;
-  esac ],
-       if test "x$SCHANNEL_ENABLED" = "x1"; then
-         # --with-schannel implies --enable-sspi
-         AC_MSG_RESULT(yes)
-       else
-         AC_MSG_RESULT(no)
-       fi
-)
-
-dnl ************************************************************
-dnl disable cryptographic authentication
-dnl
-AC_MSG_CHECKING([whether to enable cryptographic authentication methods])
-AC_ARG_ENABLE(crypto-auth,
-AS_HELP_STRING([--enable-crypto-auth],[Enable cryptographic authentication])
-AS_HELP_STRING([--disable-crypto-auth],[Disable cryptographic authentication]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_CRYPTO_AUTH, 1, [to disable cryptographic authentication])
-       CURL_DISABLE_CRYPTO_AUTH=1
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable NTLM support
-dnl
-AC_MSG_CHECKING([whether to support NTLM])
-AC_ARG_ENABLE(ntlm,
-AS_HELP_STRING([--enable-ntlm],[Enable NTLM support])
-AS_HELP_STRING([--disable-ntlm],[Disable NTLM support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_NTLM, 1, [to disable NTLM support])
-       CURL_DISABLE_NTLM=1
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-CURL_CHECK_OPTION_NTLM_WB
-
-CURL_CHECK_NTLM_WB
-
-dnl ************************************************************
-dnl disable TLS-SRP authentication
-dnl
-AC_MSG_CHECKING([whether to enable TLS-SRP authentication])
-AC_ARG_ENABLE(tls-srp,
-AS_HELP_STRING([--enable-tls-srp],[Enable TLS-SRP authentication])
-AS_HELP_STRING([--disable-tls-srp],[Disable TLS-SRP authentication]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       want_tls_srp=no
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       want_tls_srp=yes
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-       want_tls_srp=yes
-)
-
-if test "$want_tls_srp" = "yes" && ( test "x$HAVE_GNUTLS_SRP" = "x1" || test "x$HAVE_OPENSSL_SRP" = "x1") ; then
-   AC_DEFINE(USE_TLS_SRP, 1, [Use TLS-SRP authentication])
-   USE_TLS_SRP=1
-   curl_tls_srp_msg="enabled"
-fi
-
-dnl ************************************************************
-dnl disable Unix domain sockets support
-dnl
-AC_MSG_CHECKING([whether to enable Unix domain sockets])
-AC_ARG_ENABLE(unix-sockets,
-AS_HELP_STRING([--enable-unix-sockets],[Enable Unix domain sockets])
-AS_HELP_STRING([--disable-unix-sockets],[Disable Unix domain sockets]),
-[ case "$enableval" in
-  no)  AC_MSG_RESULT(no)
-       want_unix_sockets=no
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       want_unix_sockets=yes
-       ;;
-  esac ], [
-       AC_MSG_RESULT(auto)
-       want_unix_sockets=auto
-       ]
-)
-if test "x$want_unix_sockets" != "xno"; then
-  AC_CHECK_MEMBER([struct sockaddr_un.sun_path], [
-    AC_DEFINE(USE_UNIX_SOCKETS, 1, [Use Unix domain sockets])
-    AC_SUBST(USE_UNIX_SOCKETS, [1])
-    curl_unix_sockets_msg="enabled"
-  ], [
-    if test "x$want_unix_sockets" = "xyes"; then
-      AC_MSG_ERROR([--enable-unix-sockets is not available on this platform!])
-    fi
-  ], [
-    #include <sys/un.h>
-  ])
-fi
-
-dnl ************************************************************
-dnl disable cookies support
-dnl
-AC_MSG_CHECKING([whether to support cookies])
-AC_ARG_ENABLE(cookies,
-AS_HELP_STRING([--enable-cookies],[Enable cookies support])
-AS_HELP_STRING([--disable-cookies],[Disable cookies support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_COOKIES, 1, [to disable cookies support])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable socketpair
-dnl
-AC_MSG_CHECKING([whether to support socketpair])
-AC_ARG_ENABLE(socketpair,
-AS_HELP_STRING([--enable-socketpair],[Enable socketpair support])
-AS_HELP_STRING([--disable-socketpair],[Disable socketpair support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_SOCKETPAIR, 1, [to disable socketpair support])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable HTTP authentication support
-dnl
-AC_MSG_CHECKING([whether to support HTTP authentication])
-AC_ARG_ENABLE(http-auth,
-AS_HELP_STRING([--enable-http-auth],[Enable HTTP authentication support])
-AS_HELP_STRING([--disable-http-auth],[Disable HTTP authentication support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_HTTP_AUTH, 1, [disable HTTP authentication])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable DoH support
-dnl
-AC_MSG_CHECKING([whether to support DoH])
-AC_ARG_ENABLE(doh,
-AS_HELP_STRING([--enable-doh],[Enable DoH support])
-AS_HELP_STRING([--disable-doh],[Disable DoH support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_DOH, 1, [disable DoH])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable mime API support
-dnl
-AC_MSG_CHECKING([whether to support the MIME API])
-AC_ARG_ENABLE(mime,
-AS_HELP_STRING([--enable-mime],[Enable mime API support])
-AS_HELP_STRING([--disable-mime],[Disable mime API support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_MIME, 1, [disable mime API])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable date parsing
-dnl
-AC_MSG_CHECKING([whether to support date parsing])
-AC_ARG_ENABLE(dateparse,
-AS_HELP_STRING([--enable-dateparse],[Enable date parsing])
-AS_HELP_STRING([--disable-dateparse],[Disable date parsing]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_PARSEDATE, 1, [disable date parsing])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable netrc
-dnl
-AC_MSG_CHECKING([whether to support netrc parsing])
-AC_ARG_ENABLE(netrc,
-AS_HELP_STRING([--enable-netrc],[Enable netrc parsing])
-AS_HELP_STRING([--disable-netrc],[Disable netrc parsing]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_NETRC, 1, [disable netrc parsing])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable progress-meter
-dnl
-AC_MSG_CHECKING([whether to support progress-meter])
-AC_ARG_ENABLE(progress-meter,
-AS_HELP_STRING([--enable-progress-meter],[Enable progress-meter])
-AS_HELP_STRING([--disable-progress-meter],[Disable progress-meter]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_PROGRESS_METER, 1, [disable progress-meter])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable shuffle DNS support
-dnl
-AC_MSG_CHECKING([whether to support DNS shuffling])
-AC_ARG_ENABLE(dnsshuffle,
-AS_HELP_STRING([--enable-dnsshuffle],[Enable DNS shuffling])
-AS_HELP_STRING([--disable-dnsshuffle],[Disable DNS shuffling]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_SHUFFLE_DNS, 1, [disable DNS shuffling])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl disable the curl_easy_options API
-dnl
-AC_MSG_CHECKING([whether to support curl_easy_option*])
-AC_ARG_ENABLE(get-easy-options,
-AS_HELP_STRING([--enable-get-easy-options],[Enable curl_easy_options])
-AS_HELP_STRING([--disable-get-easy-options],[Disable curl_easy_options]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_GETOPTIONS, 1, [to disable curl_easy_options])
-       ;;
-  *)   AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl switch on/off alt-svc
-dnl
-AC_MSG_CHECKING([whether to support alt-svc])
-AC_ARG_ENABLE(alt-svc,
-AS_HELP_STRING([--enable-alt-svc],[Enable alt-svc support])
-AS_HELP_STRING([--disable-alt-svc],[Disable alt-svc support]),
-[ case "$enableval" in
-  no)
-       AC_MSG_RESULT(no)
-       AC_DEFINE(CURL_DISABLE_ALTSVC, 1, [disable alt-svc])
-       curl_altsvc_msg="no";
-       enable_altsvc="no"
-       ;;
-  *) AC_MSG_RESULT(yes)
-       ;;
-  esac ],
-       AC_MSG_RESULT(yes)
-)
-
-dnl ************************************************************
-dnl switch on/off headers-api
-dnl
-AC_MSG_CHECKING([whether to support headers-api])
-AC_ARG_ENABLE(headers-api,
-AS_HELP_STRING([--enable-headers-api],[Enable headers-api support])
-AS_HELP_STRING([--disable-headers-api],[Disable headers-api support]),
-[ case "$enableval" in
-  yes)
-       AC_MSG_RESULT(yes)
-       AC_DEFINE(USE_HEADERS_API, 1, [enable headers-api])
-       curl_headers_msg="enabled";
-       ;;
-  *) AC_MSG_RESULT(no)
-       ;;
-  esac ],
-       AC_MSG_RESULT(no)
-)
-
-dnl only check for HSTS if there's SSL present
-if test -n "$SSL_ENABLED"; then
-
-  dnl ************************************************************
-  dnl switch on/off hsts
-  dnl
-  AC_MSG_CHECKING([whether to support HSTS])
-  AC_ARG_ENABLE(hsts,
-  AS_HELP_STRING([--enable-hsts],[Enable HSTS support])
-  AS_HELP_STRING([--disable-hsts],[Disable HSTS support]),
-  [ case "$enableval" in
-    no)
-       AC_MSG_RESULT(no)
-       hsts="no"
-       ;;
-    *) AC_MSG_RESULT(yes)
-       ;;
-    esac ],
-       AC_MSG_RESULT($hsts)
-  )
-else
-  AC_MSG_NOTICE([disables HSTS due to lack of SSL])
-  hsts="no"
-fi
-
-if test "x$hsts" != "xyes"; then
-  curl_hsts_msg="no      (--enable-hsts)";
-  AC_DEFINE(CURL_DISABLE_HSTS, 1, [disable alt-svc])
-fi
-
-dnl *************************************************************
-dnl check whether ECH support, if desired, is actually available
-dnl
-if test "x$want_ech" != "xno"; then
-  AC_MSG_CHECKING([whether ECH support is available])
-
-  dnl assume NOT and look for sufficient condition
-  ECH_ENABLED=0
-  ECH_SUPPORT=''
-
-  dnl OpenSSL with a chosen ECH function should be enough
-  dnl so more exhaustive checking seems unnecessary for now
-  if test "x$OPENSSL_ENABLED" = "x1"; then
-    AC_CHECK_FUNCS(SSL_get_ech_status,
-      ECH_SUPPORT="ECH support available (OpenSSL with SSL_get_ech_status)"
-      ECH_ENABLED=1)
-
-  dnl add 'elif' chain here for additional implementations
-  fi
-
-  dnl now deal with whatever we found
-  if test "x$ECH_ENABLED" = "x1"; then
-    AC_DEFINE(USE_ECH, 1, [if ECH support is available])
-    AC_MSG_RESULT($ECH_SUPPORT)
-    experimental="$experimental ECH"
-  else
-    AC_MSG_ERROR([--enable-ech ignored: No ECH support found])
-  fi
-fi
-
-dnl ************************************************************
-dnl hiding of library internal symbols
-dnl
-CURL_CONFIGURE_SYMBOL_HIDING
-
-dnl
-dnl All the library dependencies put into $LIB apply to libcurl only.
-dnl
-LIBCURL_LIBS="$LIBS$PTHREAD"
-
-AC_SUBST(LIBCURL_LIBS)
-AC_SUBST(CURL_NETWORK_LIBS)
-AC_SUBST(CURL_NETWORK_AND_TIME_LIBS)
-
-dnl BLANK_AT_MAKETIME may be used in our Makefile.am files to blank
-dnl LIBS variable used in generated makefile at makefile processing
-dnl time. Doing this functionally prevents LIBS from being used for
-dnl all link targets in given makefile.
-BLANK_AT_MAKETIME=
-AC_SUBST(BLANK_AT_MAKETIME)
-
-AM_CONDITIONAL(CROSSCOMPILING, test x$cross_compiling = xyes)
-
-dnl yes or no
-ENABLE_SHARED="$enable_shared"
-AC_SUBST(ENABLE_SHARED)
-
-dnl to let curl-config output the static libraries correctly
-ENABLE_STATIC="$enable_static"
-AC_SUBST(ENABLE_STATIC)
-
-dnl merge the pkg-config Libs.private field into Libs when static-only
-if test "x$enable_shared" = "xno"; then
-  LIBCURL_NO_SHARED=$LIBCURL_LIBS
-else
-  LIBCURL_NO_SHARED=
-fi
-AC_SUBST(LIBCURL_NO_SHARED)
-
-dnl
-dnl For keeping supported features and protocols also in pkg-config file
-dnl since it is more cross-compile friendly than curl-config
-dnl
-
-if test "x$OPENSSL_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
-elif test -n "$SSL_ENABLED"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
-fi
-if test "x$IPV6_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES IPv6"
-fi
-if test "x$USE_UNIX_SOCKETS" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES UnixSockets"
-fi
-if test "x$HAVE_LIBZ" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES libz"
-fi
-if test "x$HAVE_BROTLI" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES brotli"
-fi
-if test "x$HAVE_ZSTD" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES zstd"
-fi
-if test "x$USE_ARES" = "x1" -o "x$USE_THREADS_POSIX" = "x1" \
-                            -o "x$USE_THREADS_WIN32" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES AsynchDNS"
-fi
-if test "x$IDN_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES IDN"
-fi
-if test "x$USE_WINDOWS_SSPI" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SSPI"
-fi
-
-if test "x$HAVE_GSSAPI" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES GSS-API"
-fi
-
-if test "x$curl_psl_msg" = "xenabled"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES PSL"
-fi
-
-if test "x$curl_gsasl_msg" = "xenabled"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES GSASL"
-fi
-
-if test "x$enable_altsvc" = "xyes"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES alt-svc"
-fi
-if test "x$hsts" = "xyes"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES HSTS"
-fi
-
-if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" -a \
-    \( "x$HAVE_GSSAPI" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \); then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES SPNEGO"
-fi
-
-if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" -a \
-    \( "x$HAVE_GSSAPI" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \); then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES Kerberos"
-fi
-
-use_curl_ntlm_core=no
-
-if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" -a \
-    "x$CURL_DISABLE_NTLM" != "x1"; then
-  if test "x$OPENSSL_ENABLED" = "x1" -o "x$MBEDTLS_ENABLED" = "x1" \
-      -o "x$GNUTLS_ENABLED" = "x1" -o "x$NSS_ENABLED" = "x1" \
-      -o "x$SECURETRANSPORT_ENABLED" = "x1" \
-      -o "x$USE_WIN32_CRYPTO" = "x1" \
-      -o "x$WOLFSSL_NTLM" = "x1"; then
-    use_curl_ntlm_core=yes
-  fi
-
-  if test "x$use_curl_ntlm_core" = "xyes" \
-      -o "x$USE_WINDOWS_SSPI" = "x1"; then
-    SUPPORT_FEATURES="$SUPPORT_FEATURES NTLM"
-
-    if test "x$CURL_DISABLE_HTTP" != "x1" -a \
-        "x$NTLM_WB_ENABLED" = "x1"; then
-      SUPPORT_FEATURES="$SUPPORT_FEATURES NTLM_WB"
-    fi
-  fi
-fi
-
-if test "x$USE_TLS_SRP" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES TLS-SRP"
-fi
-
-if test "x$USE_NGHTTP2" = "x1" -o "x$USE_HYPER" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES HTTP2"
-fi
-
-if test "x$USE_NGTCP2" = "x1" -o "x$USE_QUICHE" = "x1" \
-    -o "x$USE_MSH3" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES HTTP3"
-fi
-
-if test "x$CURL_WITH_MULTI_SSL" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES MultiSSL"
-fi
-
-dnl if not explicitly turned off, HTTPS-proxy comes with some TLS backends
-if test "x$https_proxy" != "xno"; then
-  if test "x$OPENSSL_ENABLED" = "x1" -o "x$GNUTLS_ENABLED" = "x1" \
-      -o "x$NSS_ENABLED" = "x1"; then
-    SUPPORT_FEATURES="$SUPPORT_FEATURES HTTPS-proxy"
-  fi
-fi
-
-if test "x$ECH_ENABLED" = "x1"; then
-  SUPPORT_FEATURES="$SUPPORT_FEATURES ECH"
-fi
-
-if test ${ac_cv_sizeof_curl_off_t} -gt 4; then
-  if test ${ac_cv_sizeof_off_t} -gt 4 -o \
-     "$curl_win32_file_api" = "win32_large_files"; then
-    SUPPORT_FEATURES="$SUPPORT_FEATURES Largefile"
-  fi
-fi
-
-dnl replace spaces with newlines
-dnl sort the lines
-dnl replace the newlines back to spaces
-SUPPORT_FEATURES=`echo $SUPPORT_FEATURES | tr ' ' '\012' | sort | tr '\012' ' '`
-AC_SUBST(SUPPORT_FEATURES)
-
-dnl For supported protocols in pkg-config file
-if test "x$CURL_DISABLE_HTTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS HTTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS HTTPS"
-  fi
-fi
-if test "x$CURL_DISABLE_FTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FTPS"
-  fi
-fi
-if test "x$CURL_DISABLE_FILE" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS FILE"
-fi
-if test "x$CURL_DISABLE_TELNET" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS TELNET"
-fi
-if test "x$CURL_DISABLE_LDAP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS LDAP"
-  if test "x$CURL_DISABLE_LDAPS" != "x1"; then
-    if (test "x$USE_OPENLDAP" = "x1" && test "x$SSL_ENABLED" = "x1") ||
-      (test "x$USE_OPENLDAP" != "x1"  && test "x$HAVE_LDAP_SSL" = "x1"); then
-      SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS LDAPS"
-    fi
-  fi
-fi
-if test "x$CURL_DISABLE_DICT" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS DICT"
-fi
-if test "x$CURL_DISABLE_TFTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS TFTP"
-fi
-if test "x$CURL_DISABLE_GOPHER" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS GOPHER"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS GOPHERS"
-  fi
-fi
-if test "x$CURL_DISABLE_MQTT" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS MQTT"
-fi
-if test "x$CURL_DISABLE_POP3" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS POP3"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS POP3S"
-  fi
-fi
-if test "x$CURL_DISABLE_IMAP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS IMAP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS IMAPS"
-  fi
-fi
-if test "x$CURL_DISABLE_SMB" != "x1" \
-    -a "x$use_curl_ntlm_core" = "xyes"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMB"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMBS"
-  fi
-fi
-if test "x$CURL_DISABLE_SMTP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMTP"
-  if test "x$SSL_ENABLED" = "x1"; then
-    SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMTPS"
-  fi
-fi
-if test "x$USE_LIBSSH2" = "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SCP"
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SFTP"
-fi
-if test "x$USE_LIBSSH" = "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SCP"
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SFTP"
-fi
-if test "x$USE_WOLFSSH" = "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SFTP"
-fi
-if test "x$CURL_DISABLE_RTSP" != "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS RTSP"
-fi
-if test "x$USE_LIBRTMP" = "x1"; then
-  SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS RTMP"
-fi
-
-dnl replace spaces with newlines
-dnl sort the lines
-dnl replace the newlines back to spaces
-SUPPORT_PROTOCOLS=`echo $SUPPORT_PROTOCOLS | tr ' ' '\012' | sort | tr '\012' ' '`
-
-AC_SUBST(SUPPORT_PROTOCOLS)
-
-dnl squeeze whitespace out of some variables
-
-squeeze CFLAGS
-squeeze CPPFLAGS
-squeeze DEFS
-squeeze LDFLAGS
-squeeze LIBS
-
-squeeze LIBCURL_LIBS
-squeeze CURL_NETWORK_LIBS
-squeeze CURL_NETWORK_AND_TIME_LIBS
-
-squeeze SUPPORT_FEATURES
-squeeze SUPPORT_PROTOCOLS
-
-XC_CHECK_BUILD_FLAGS
-
-SSL_BACKENDS=${ssl_backends}
-AC_SUBST(SSL_BACKENDS)
-
-if test "x$want_curldebug_assumed" = "xyes" &&
-  test "x$want_curldebug" = "xyes" && test "x$USE_ARES" = "x1"; then
-  ac_configure_args="$ac_configure_args --enable-curldebug"
-fi
-
-AC_CONFIG_FILES([Makefile \
-           docs/Makefile \
-           docs/examples/Makefile \
-           docs/libcurl/Makefile \
-           docs/libcurl/opts/Makefile \
-           docs/cmdline-opts/Makefile \
-           include/Makefile \
-           include/curl/Makefile \
-           src/Makefile \
-           lib/Makefile \
-           scripts/Makefile \
-           lib/libcurl.vers \
-           lib/libcurl.plist \
-           tests/Makefile \
-           tests/certs/Makefile \
-           tests/certs/scripts/Makefile \
-           tests/data/Makefile \
-           tests/server/Makefile \
-           tests/libtest/Makefile \
-           tests/unit/Makefile \
-           packages/Makefile \
-           packages/vms/Makefile \
-           curl-config \
-           libcurl.pc
-])
-AC_OUTPUT
-
-CURL_GENERATE_CONFIGUREHELP_PM
-
-XC_AMEND_DISTCLEAN([lib src tests/unit tests/server tests/libtest docs/examples])
-
-AC_MSG_NOTICE([Configured to build curl/libcurl:
-
-  Host setup:       ${host}
-  Install prefix:   ${prefix}
-  Compiler:         ${CC}
-   CFLAGS:          ${CFLAGS}
-   CPPFLAGS:        ${CPPFLAGS}
-   LDFLAGS:         ${LDFLAGS}
-   LIBS:            ${LIBS}
-
-  curl version:     ${CURLVERSION}
-  SSL:              ${curl_ssl_msg}
-  SSH:              ${curl_ssh_msg}
-  zlib:             ${curl_zlib_msg}
-  brotli:           ${curl_brotli_msg}
-  zstd:             ${curl_zstd_msg}
-  GSS-API:          ${curl_gss_msg}
-  GSASL:            ${curl_gsasl_msg}
-  TLS-SRP:          ${curl_tls_srp_msg}
-  resolver:         ${curl_res_msg}
-  IPv6:             ${curl_ipv6_msg}
-  Unix sockets:     ${curl_unix_sockets_msg}
-  IDN:              ${curl_idn_msg}
-  Build libcurl:    Shared=${enable_shared}, Static=${enable_static}
-  Built-in manual:  ${curl_manual_msg}
-  --libcurl option: ${curl_libcurl_msg}
-  Verbose errors:   ${curl_verbose_msg}
-  Code coverage:    ${curl_coverage_msg}
-  SSPI:             ${curl_sspi_msg}
-  ca cert bundle:   ${ca}${ca_warning}
-  ca cert path:     ${capath}${capath_warning}
-  ca fallback:      ${with_ca_fallback}
-  LDAP:             ${curl_ldap_msg}
-  LDAPS:            ${curl_ldaps_msg}
-  RTSP:             ${curl_rtsp_msg}
-  RTMP:             ${curl_rtmp_msg}
-  PSL:              ${curl_psl_msg}
-  Alt-svc:          ${curl_altsvc_msg}
-  Headers API:      ${curl_headers_msg}
-  HSTS:             ${curl_hsts_msg}
-  HTTP1:            ${curl_h1_msg}
-  HTTP2:            ${curl_h2_msg}
-  HTTP3:            ${curl_h3_msg}
-  ECH:              ${curl_ech_msg}
-  Protocols:        ${SUPPORT_PROTOCOLS}
-  Features:         ${SUPPORT_FEATURES}
-])
-if test -n "$experimental"; then
- cat >&2 << _EOF
-  WARNING: $experimental enabled but marked EXPERIMENTAL. Use with caution!
-_EOF
-fi
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/COPYING 8.0.32-1/extra/curl/curl-7.83.1/COPYING
--- 8.0.31-1/extra/curl/curl-7.83.1/COPYING	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/COPYING	1970-01-01 00:00:00.000000000 +0000
@@ -1,22 +0,0 @@
-COPYRIGHT AND PERMISSION NOTICE
-
-Copyright (c) 1996 - 2022, 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.
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/curl-config.in 8.0.32-1/extra/curl/curl-7.83.1/curl-config.in
--- 8.0.31-1/extra/curl/curl-7.83.1/curl-config.in	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/curl-config.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,194 +0,0 @@
-#! /bin/sh
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 2001 - 2020, 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.
-#
-###########################################################################
-
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-includedir=@includedir@
-cppflag_curl_staticlib=@CPPFLAG_CURL_STATICLIB@
-
-usage()
-{
-    cat <<EOF
-Usage: curl-config [OPTION]
-
-Available values for OPTION include:
-
-  --built-shared says 'yes' if libcurl was built shared
-  --ca        ca bundle install path
-  --cc        compiler
-  --cflags    pre-processor and compiler flags
-  --checkfor [version] check for (lib)curl of the specified version
-  --configure the arguments given to configure when building curl
-  --features  newline separated list of enabled features
-  --help      display this help and exit
-  --libs      library linking information
-  --prefix    curl install prefix
-  --protocols newline separated list of enabled protocols
-  --ssl-backends output the SSL backends libcurl was built to support
-  --static-libs static libcurl library linking information
-  --version   output version information
-  --vernum    output the version information as a number (hexadecimal)
-EOF
-
-    exit $1
-}
-
-if test $# -eq 0; then
-    usage 1
-fi
-
-while test $# -gt 0; do
-    case "$1" in
-    # this deals with options in the style
-    # --option=value and extracts the value part
-    # [not currently used]
-    -*=*) value=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-    *) value= ;;
-    esac
-
-    case "$1" in
-    --built-shared)
-        echo @ENABLE_SHARED@
-        ;;
-
-    --ca)
-        echo @CURL_CA_BUNDLE@
-        ;;
-
-    --cc)
-        echo "@CC@"
-        ;;
-
-    --prefix)
-        echo "$prefix"
-        ;;
-
-    --feature|--features)
-        for feature in @SUPPORT_FEATURES@ ""; do
-            test -n "$feature" && echo "$feature"
-        done
-        ;;
-
-    --protocols)
-        for protocol in @SUPPORT_PROTOCOLS@; do
-            echo "$protocol"
-        done
-        ;;
-
-    --version)
-        echo libcurl @CURLVERSION@
-        exit 0
-        ;;
-
-    --checkfor)
-        checkfor=$2
-        cmajor=`echo $checkfor | cut -d. -f1`
-        cminor=`echo $checkfor | cut -d. -f2`
-        # when extracting the patch part we strip off everything after a
-        # dash as that's used for things like version 1.2.3-CVS
-        cpatch=`echo $checkfor | cut -d. -f3 | cut -d- -f1`
-
-        vmajor=`echo @CURLVERSION@ | cut -d. -f1`
-        vminor=`echo @CURLVERSION@ | cut -d. -f2`
-        # when extracting the patch part we strip off everything after a
-        # dash as that's used for things like version 1.2.3-CVS
-        vpatch=`echo @CURLVERSION@ | cut -d. -f3 | cut -d- -f1`
-
-        if test "$vmajor" -gt "$cmajor"; then
-            exit 0;
-        fi
-        if test "$vmajor" -eq "$cmajor"; then
-            if test "$vminor" -gt "$cminor"; then
-                exit 0
-            fi
-            if test "$vminor" -eq "$cminor"; then
-                if test "$cpatch" -le "$vpatch"; then
-                    exit 0
-                fi
-            fi
-        fi
-
-        echo "requested version $checkfor is newer than existing @CURLVERSION@"
-        exit 1
-        ;;
-
-    --vernum)
-        echo @VERSIONNUM@
-        exit 0
-        ;;
-
-    --help)
-        usage 0
-        ;;
-
-    --cflags)
-        if test "X$cppflag_curl_staticlib" = "X-DCURL_STATICLIB"; then
-          CPPFLAG_CURL_STATICLIB="-DCURL_STATICLIB "
-        else
-          CPPFLAG_CURL_STATICLIB=""
-        fi
-        if test "X@includedir@" = "X/usr/include"; then
-          echo "$CPPFLAG_CURL_STATICLIB"
-        else
-          echo "${CPPFLAG_CURL_STATICLIB}-I@includedir@"
-        fi
-        ;;
-
-    --libs)
-        if test "X@libdir@" != "X/usr/lib" -a "X@libdir@" != "X/usr/lib64"; then
-           CURLLIBDIR="-L@libdir@ "
-        else
-           CURLLIBDIR=""
-        fi
-        if test "X@ENABLE_SHARED@" = "Xno"; then
-          echo ${CURLLIBDIR}-lcurl @LIBCURL_LIBS@
-        else
-          echo ${CURLLIBDIR}-lcurl
-        fi
-        ;;
-    --ssl-backends)
-        echo "@SSL_BACKENDS@"
-        ;;
-
-    --static-libs)
-        if test "X@ENABLE_STATIC@" != "Xno" ; then
-          echo @libdir@/libcurl.@libext@ @LDFLAGS@ @LIBCURL_LIBS@
-        else
-          echo "curl was built with static libraries disabled" >&2
-          exit 1
-        fi
-        ;;
-
-    --configure)
-        echo @CONFIGURE_OPTIONS@
-        ;;
-
-    *)
-        echo "unknown option: $1"
-        usage 1
-        ;;
-    esac
-    shift
-done
-
-exit 0
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/depcomp 8.0.32-1/extra/curl/curl-7.83.1/depcomp
--- 8.0.31-1/extra/curl/curl-7.83.1/depcomp	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/depcomp	1970-01-01 00:00:00.000000000 +0000
@@ -1,791 +0,0 @@
-#! /bin/sh
-# depcomp - compile a program generating dependencies as side-effects
-
-scriptversion=2018-03-07.03; # UTC
-
-# Copyright (C) 1999-2021 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <https://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
-
-case $1 in
-  '')
-    echo "$0: No command.  Try '$0 --help' for more information." 1>&2
-    exit 1;
-    ;;
-  -h | --h*)
-    cat <<\EOF
-Usage: depcomp [--help] [--version] PROGRAM [ARGS]
-
-Run PROGRAMS ARGS to compile a file, generating dependencies
-as side-effects.
-
-Environment variables:
-  depmode     Dependency tracking mode.
-  source      Source file read by 'PROGRAMS ARGS'.
-  object      Object file output by 'PROGRAMS ARGS'.
-  DEPDIR      directory where to store dependencies.
-  depfile     Dependency file to output.
-  tmpdepfile  Temporary file to use when outputting dependencies.
-  libtool     Whether libtool is used (yes/no).
-
-Report bugs to <bug-automake@gnu.org>.
-EOF
-    exit $?
-    ;;
-  -v | --v*)
-    echo "depcomp $scriptversion"
-    exit $?
-    ;;
-esac
-
-# Get the directory component of the given path, and save it in the
-# global variables '$dir'.  Note that this directory component will
-# be either empty or ending with a '/' character.  This is deliberate.
-set_dir_from ()
-{
-  case $1 in
-    */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
-      *) dir=;;
-  esac
-}
-
-# Get the suffix-stripped basename of the given path, and save it the
-# global variable '$base'.
-set_base_from ()
-{
-  base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
-}
-
-# If no dependency file was actually created by the compiler invocation,
-# we still have to create a dummy depfile, to avoid errors with the
-# Makefile "include basename.Plo" scheme.
-make_dummy_depfile ()
-{
-  echo "#dummy" > "$depfile"
-}
-
-# Factor out some common post-processing of the generated depfile.
-# Requires the auxiliary global variable '$tmpdepfile' to be set.
-aix_post_process_depfile ()
-{
-  # If the compiler actually managed to produce a dependency file,
-  # post-process it.
-  if test -f "$tmpdepfile"; then
-    # Each line is of the form 'foo.o: dependency.h'.
-    # Do two passes, one to just change these to
-    #   $object: dependency.h
-    # and one to simply output
-    #   dependency.h:
-    # which is needed to avoid the deleted-header problem.
-    { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
-      sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
-    } > "$depfile"
-    rm -f "$tmpdepfile"
-  else
-    make_dummy_depfile
-  fi
-}
-
-# A tabulation character.
-tab='	'
-# A newline character.
-nl='
-'
-# Character ranges might be problematic outside the C locale.
-# These definitions help.
-upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
-lower=abcdefghijklmnopqrstuvwxyz
-digits=0123456789
-alpha=${upper}${lower}
-
-if test -z "$depmode" || test -z "$source" || test -z "$object"; then
-  echo "depcomp: Variables source, object and depmode must be set" 1>&2
-  exit 1
-fi
-
-# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
-depfile=${depfile-`echo "$object" |
-  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
-tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
-
-rm -f "$tmpdepfile"
-
-# Avoid interferences from the environment.
-gccflag= dashmflag=
-
-# Some modes work just like other modes, but use different flags.  We
-# parameterize here, but still list the modes in the big case below,
-# to make depend.m4 easier to write.  Note that we *cannot* use a case
-# here, because this file can only contain one case statement.
-if test "$depmode" = hp; then
-  # HP compiler uses -M and no extra arg.
-  gccflag=-M
-  depmode=gcc
-fi
-
-if test "$depmode" = dashXmstdout; then
-  # This is just like dashmstdout with a different argument.
-  dashmflag=-xM
-  depmode=dashmstdout
-fi
-
-cygpath_u="cygpath -u -f -"
-if test "$depmode" = msvcmsys; then
-  # This is just like msvisualcpp but w/o cygpath translation.
-  # Just convert the backslash-escaped backslashes to single forward
-  # slashes to satisfy depend.m4
-  cygpath_u='sed s,\\\\,/,g'
-  depmode=msvisualcpp
-fi
-
-if test "$depmode" = msvc7msys; then
-  # This is just like msvc7 but w/o cygpath translation.
-  # Just convert the backslash-escaped backslashes to single forward
-  # slashes to satisfy depend.m4
-  cygpath_u='sed s,\\\\,/,g'
-  depmode=msvc7
-fi
-
-if test "$depmode" = xlc; then
-  # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
-  gccflag=-qmakedep=gcc,-MF
-  depmode=gcc
-fi
-
-case "$depmode" in
-gcc3)
-## gcc 3 implements dependency tracking that does exactly what
-## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
-## it if -MD -MP comes after the -MF stuff.  Hmm.
-## Unfortunately, FreeBSD c89 acceptance of flags depends upon
-## the command line argument order; so add the flags where they
-## appear in depend2.am.  Note that the slowdown incurred here
-## affects only configure: in makefiles, %FASTDEP% shortcuts this.
-  for arg
-  do
-    case $arg in
-    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
-    *)  set fnord "$@" "$arg" ;;
-    esac
-    shift # fnord
-    shift # $arg
-  done
-  "$@"
-  stat=$?
-  if test $stat -ne 0; then
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  mv "$tmpdepfile" "$depfile"
-  ;;
-
-gcc)
-## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
-## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
-## (see the conditional assignment to $gccflag above).
-## There are various ways to get dependency output from gcc.  Here's
-## why we pick this rather obscure method:
-## - Don't want to use -MD because we'd like the dependencies to end
-##   up in a subdir.  Having to rename by hand is ugly.
-##   (We might end up doing this anyway to support other compilers.)
-## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-##   -MM, not -M (despite what the docs say).  Also, it might not be
-##   supported by the other compilers which use the 'gcc' depmode.
-## - Using -M directly means running the compiler twice (even worse
-##   than renaming).
-  if test -z "$gccflag"; then
-    gccflag=-MD,
-  fi
-  "$@" -Wp,"$gccflag$tmpdepfile"
-  stat=$?
-  if test $stat -ne 0; then
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  # The second -e expression handles DOS-style file names with drive
-  # letters.
-  sed -e 's/^[^:]*: / /' \
-      -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the "deleted header file" problem.
-## The problem is that when a header file which appears in a .P file
-## is deleted, the dependency causes make to die (because there is
-## typically no way to rebuild the header).  We avoid this by adding
-## dummy dependencies for each header file.  Too bad gcc doesn't do
-## this for us directly.
-## Some versions of gcc put a space before the ':'.  On the theory
-## that the space means something, we add a space to the output as
-## well.  hp depmode also adds that space, but also prefixes the VPATH
-## to the object.  Take care to not repeat it in the output.
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-  tr ' ' "$nl" < "$tmpdepfile" \
-    | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
-    | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-hp)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
-sgi)
-  if test "$libtool" = yes; then
-    "$@" "-Wp,-MDupdate,$tmpdepfile"
-  else
-    "$@" -MDupdate "$tmpdepfile"
-  fi
-  stat=$?
-  if test $stat -ne 0; then
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-
-  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
-    echo "$object : \\" > "$depfile"
-    # Clip off the initial element (the dependent).  Don't try to be
-    # clever and replace this with sed code, as IRIX sed won't handle
-    # lines with more than a fixed number of characters (4096 in
-    # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
-    # the IRIX cc adds comments like '#:fec' to the end of the
-    # dependency line.
-    tr ' ' "$nl" < "$tmpdepfile" \
-      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
-      | tr "$nl" ' ' >> "$depfile"
-    echo >> "$depfile"
-    # The second pass generates a dummy entry for each header file.
-    tr ' ' "$nl" < "$tmpdepfile" \
-      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-      >> "$depfile"
-  else
-    make_dummy_depfile
-  fi
-  rm -f "$tmpdepfile"
-  ;;
-
-xlc)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
-aix)
-  # The C for AIX Compiler uses -M and outputs the dependencies
-  # in a .u file.  In older versions, this file always lives in the
-  # current directory.  Also, the AIX compiler puts '$object:' at the
-  # start of each line; $object doesn't have directory information.
-  # Version 6 uses the directory in both cases.
-  set_dir_from "$object"
-  set_base_from "$object"
-  if test "$libtool" = yes; then
-    tmpdepfile1=$dir$base.u
-    tmpdepfile2=$base.u
-    tmpdepfile3=$dir.libs/$base.u
-    "$@" -Wc,-M
-  else
-    tmpdepfile1=$dir$base.u
-    tmpdepfile2=$dir$base.u
-    tmpdepfile3=$dir$base.u
-    "$@" -M
-  fi
-  stat=$?
-  if test $stat -ne 0; then
-    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-    exit $stat
-  fi
-
-  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-  do
-    test -f "$tmpdepfile" && break
-  done
-  aix_post_process_depfile
-  ;;
-
-tcc)
-  # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
-  # FIXME: That version still under development at the moment of writing.
-  #        Make that this statement remains true also for stable, released
-  #        versions.
-  # It will wrap lines (doesn't matter whether long or short) with a
-  # trailing '\', as in:
-  #
-  #   foo.o : \
-  #    foo.c \
-  #    foo.h \
-  #
-  # It will put a trailing '\' even on the last line, and will use leading
-  # spaces rather than leading tabs (at least since its commit 0394caf7
-  # "Emit spaces for -MD").
-  "$@" -MD -MF "$tmpdepfile"
-  stat=$?
-  if test $stat -ne 0; then
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-  # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
-  # We have to change lines of the first kind to '$object: \'.
-  sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
-  # And for each line of the second kind, we have to emit a 'dep.h:'
-  # dummy dependency, to avoid the deleted-header problem.
-  sed -n -e 's|^  *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-## The order of this option in the case statement is important, since the
-## shell code in configure will try each of these formats in the order
-## listed in this file.  A plain '-MD' option would be understood by many
-## compilers, so we must ensure this comes after the gcc and icc options.
-pgcc)
-  # Portland's C compiler understands '-MD'.
-  # Will always output deps to 'file.d' where file is the root name of the
-  # source file under compilation, even if file resides in a subdirectory.
-  # The object file name does not affect the name of the '.d' file.
-  # pgcc 10.2 will output
-  #    foo.o: sub/foo.c sub/foo.h
-  # and will wrap long lines using '\' :
-  #    foo.o: sub/foo.c ... \
-  #     sub/foo.h ... \
-  #     ...
-  set_dir_from "$object"
-  # Use the source, not the object, to determine the base name, since
-  # that's sadly what pgcc will do too.
-  set_base_from "$source"
-  tmpdepfile=$base.d
-
-  # For projects that build the same source file twice into different object
-  # files, the pgcc approach of using the *source* file root name can cause
-  # problems in parallel builds.  Use a locking strategy to avoid stomping on
-  # the same $tmpdepfile.
-  lockdir=$base.d-lock
-  trap "
-    echo '$0: caught signal, cleaning up...' >&2
-    rmdir '$lockdir'
-    exit 1
-  " 1 2 13 15
-  numtries=100
-  i=$numtries
-  while test $i -gt 0; do
-    # mkdir is a portable test-and-set.
-    if mkdir "$lockdir" 2>/dev/null; then
-      # This process acquired the lock.
-      "$@" -MD
-      stat=$?
-      # Release the lock.
-      rmdir "$lockdir"
-      break
-    else
-      # If the lock is being held by a different process, wait
-      # until the winning process is done or we timeout.
-      while test -d "$lockdir" && test $i -gt 0; do
-        sleep 1
-        i=`expr $i - 1`
-      done
-    fi
-    i=`expr $i - 1`
-  done
-  trap - 1 2 13 15
-  if test $i -le 0; then
-    echo "$0: failed to acquire lock after $numtries attempts" >&2
-    echo "$0: check lockdir '$lockdir'" >&2
-    exit 1
-  fi
-
-  if test $stat -ne 0; then
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-  # Each line is of the form `foo.o: dependent.h',
-  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
-  # Do two passes, one to just change these to
-  # `$object: dependent.h' and one to simply `dependent.h:'.
-  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
-  # Some versions of the HPUX 10.20 sed can't process this invocation
-  # correctly.  Breaking it into two sed invocations is a workaround.
-  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
-    | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-hp2)
-  # The "hp" stanza above does not work with aCC (C++) and HP's ia64
-  # compilers, which have integrated preprocessors.  The correct option
-  # to use with these is +Maked; it writes dependencies to a file named
-  # 'foo.d', which lands next to the object file, wherever that
-  # happens to be.
-  # Much of this is similar to the tru64 case; see comments there.
-  set_dir_from  "$object"
-  set_base_from "$object"
-  if test "$libtool" = yes; then
-    tmpdepfile1=$dir$base.d
-    tmpdepfile2=$dir.libs/$base.d
-    "$@" -Wc,+Maked
-  else
-    tmpdepfile1=$dir$base.d
-    tmpdepfile2=$dir$base.d
-    "$@" +Maked
-  fi
-  stat=$?
-  if test $stat -ne 0; then
-     rm -f "$tmpdepfile1" "$tmpdepfile2"
-     exit $stat
-  fi
-
-  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
-  do
-    test -f "$tmpdepfile" && break
-  done
-  if test -f "$tmpdepfile"; then
-    sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
-    # Add 'dependent.h:' lines.
-    sed -ne '2,${
-               s/^ *//
-               s/ \\*$//
-               s/$/:/
-               p
-             }' "$tmpdepfile" >> "$depfile"
-  else
-    make_dummy_depfile
-  fi
-  rm -f "$tmpdepfile" "$tmpdepfile2"
-  ;;
-
-tru64)
-  # The Tru64 compiler uses -MD to generate dependencies as a side
-  # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
-  # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
-  # dependencies in 'foo.d' instead, so we check for that too.
-  # Subdirectories are respected.
-  set_dir_from  "$object"
-  set_base_from "$object"
-
-  if test "$libtool" = yes; then
-    # Libtool generates 2 separate objects for the 2 libraries.  These
-    # two compilations output dependencies in $dir.libs/$base.o.d and
-    # in $dir$base.o.d.  We have to check for both files, because
-    # one of the two compilations can be disabled.  We should prefer
-    # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
-    # automatically cleaned when .libs/ is deleted, while ignoring
-    # the former would cause a distcleancheck panic.
-    tmpdepfile1=$dir$base.o.d          # libtool 1.5
-    tmpdepfile2=$dir.libs/$base.o.d    # Likewise.
-    tmpdepfile3=$dir.libs/$base.d      # Compaq CCC V6.2-504
-    "$@" -Wc,-MD
-  else
-    tmpdepfile1=$dir$base.d
-    tmpdepfile2=$dir$base.d
-    tmpdepfile3=$dir$base.d
-    "$@" -MD
-  fi
-
-  stat=$?
-  if test $stat -ne 0; then
-    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-    exit $stat
-  fi
-
-  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
-  do
-    test -f "$tmpdepfile" && break
-  done
-  # Same post-processing that is required for AIX mode.
-  aix_post_process_depfile
-  ;;
-
-msvc7)
-  if test "$libtool" = yes; then
-    showIncludes=-Wc,-showIncludes
-  else
-    showIncludes=-showIncludes
-  fi
-  "$@" $showIncludes > "$tmpdepfile"
-  stat=$?
-  grep -v '^Note: including file: ' "$tmpdepfile"
-  if test $stat -ne 0; then
-    rm -f "$tmpdepfile"
-    exit $stat
-  fi
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  # The first sed program below extracts the file names and escapes
-  # backslashes for cygpath.  The second sed program outputs the file
-  # name when reading, but also accumulates all include files in the
-  # hold buffer in order to output them again at the end.  This only
-  # works with sed implementations that can handle large buffers.
-  sed < "$tmpdepfile" -n '
-/^Note: including file:  *\(.*\)/ {
-  s//\1/
-  s/\\/\\\\/g
-  p
-}' | $cygpath_u | sort -u | sed -n '
-s/ /\\ /g
-s/\(.*\)/'"$tab"'\1 \\/p
-s/.\(.*\) \\/\1:/
-H
-$ {
-  s/.*/'"$tab"'/
-  G
-  p
-}' >> "$depfile"
-  echo >> "$depfile" # make sure the fragment doesn't end with a backslash
-  rm -f "$tmpdepfile"
-  ;;
-
-msvc7msys)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
-#nosideeffect)
-  # This comment above is used by automake to tell side-effect
-  # dependency tracking mechanisms from slower ones.
-
-dashmstdout)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout, regardless of -o.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  # Remove '-o $object'.
-  IFS=" "
-  for arg
-  do
-    case $arg in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    *)
-      set fnord "$@" "$arg"
-      shift # fnord
-      shift # $arg
-      ;;
-    esac
-  done
-
-  test -z "$dashmflag" && dashmflag=-M
-  # Require at least two characters before searching for ':'
-  # in the target name.  This is to cope with DOS-style filenames:
-  # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
-  "$@" $dashmflag |
-    sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
-  rm -f "$depfile"
-  cat < "$tmpdepfile" > "$depfile"
-  # Some versions of the HPUX 10.20 sed can't process this sed invocation
-  # correctly.  Breaking it into two sed invocations is a workaround.
-  tr ' ' "$nl" < "$tmpdepfile" \
-    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
-    | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-dashXmstdout)
-  # This case only exists to satisfy depend.m4.  It is never actually
-  # run, as this mode is specially recognized in the preamble.
-  exit 1
-  ;;
-
-makedepend)
-  "$@" || exit $?
-  # Remove any Libtool call
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-  # X makedepend
-  shift
-  cleared=no eat=no
-  for arg
-  do
-    case $cleared in
-    no)
-      set ""; shift
-      cleared=yes ;;
-    esac
-    if test $eat = yes; then
-      eat=no
-      continue
-    fi
-    case "$arg" in
-    -D*|-I*)
-      set fnord "$@" "$arg"; shift ;;
-    # Strip any option that makedepend may not understand.  Remove
-    # the object too, otherwise makedepend will parse it as a source file.
-    -arch)
-      eat=yes ;;
-    -*|$object)
-      ;;
-    *)
-      set fnord "$@" "$arg"; shift ;;
-    esac
-  done
-  obj_suffix=`echo "$object" | sed 's/^.*\././'`
-  touch "$tmpdepfile"
-  ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
-  rm -f "$depfile"
-  # makedepend may prepend the VPATH from the source file name to the object.
-  # No need to regex-escape $object, excess matching of '.' is harmless.
-  sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
-  # Some versions of the HPUX 10.20 sed can't process the last invocation
-  # correctly.  Breaking it into two sed invocations is a workaround.
-  sed '1,2d' "$tmpdepfile" \
-    | tr ' ' "$nl" \
-    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
-    | sed -e 's/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile" "$tmpdepfile".bak
-  ;;
-
-cpp)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  # Remove '-o $object'.
-  IFS=" "
-  for arg
-  do
-    case $arg in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    *)
-      set fnord "$@" "$arg"
-      shift # fnord
-      shift # $arg
-      ;;
-    esac
-  done
-
-  "$@" -E \
-    | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-             -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-    | sed '$ s: \\$::' > "$tmpdepfile"
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  cat < "$tmpdepfile" >> "$depfile"
-  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-msvisualcpp)
-  # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout.
-  "$@" || exit $?
-
-  # Remove the call to Libtool.
-  if test "$libtool" = yes; then
-    while test "X$1" != 'X--mode=compile'; do
-      shift
-    done
-    shift
-  fi
-
-  IFS=" "
-  for arg
-  do
-    case "$arg" in
-    -o)
-      shift
-      ;;
-    $object)
-      shift
-      ;;
-    "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
-        set fnord "$@"
-        shift
-        shift
-        ;;
-    *)
-        set fnord "$@" "$arg"
-        shift
-        shift
-        ;;
-    esac
-  done
-  "$@" -E 2>/dev/null |
-  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
-  rm -f "$depfile"
-  echo "$object : \\" > "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
-  echo "$tab" >> "$depfile"
-  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
-  rm -f "$tmpdepfile"
-  ;;
-
-msvcmsys)
-  # This case exists only to let depend.m4 do its work.  It works by
-  # looking at the text of this script.  This case will never be run,
-  # since it is checked for above.
-  exit 1
-  ;;
-
-none)
-  exec "$@"
-  ;;
-
-*)
-  echo "Unknown depmode $depmode" 1>&2
-  exit 1
-  ;;
-esac
-
-exit 0
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'before-save-hook 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC0"
-# time-stamp-end: "; # UTC"
-# End:
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/curl.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/curl.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/curl.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/curl.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,3091 +0,0 @@
-#ifndef CURLINC_CURL_H
-#define CURLINC_CURL_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2022, 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.
- *
- ***************************************************************************/
-
-/*
- * If you have libcurl problems, all docs and details are found here:
- *   https://curl.se/libcurl/
- */
-
-#ifdef CURL_NO_OLDIES
-#define CURL_STRICTER
-#endif
-
-#include "curlver.h"         /* libcurl version defines   */
-#include "system.h"          /* determine things run-time */
-
-/*
- * Define CURL_WIN32 when build target is Win32 API
- */
-
-#if (defined(_WIN32) || defined(__WIN32__) || defined(WIN32)) &&        \
-  !defined(__SYMBIAN32__)
-#define CURL_WIN32
-#endif
-
-#include <stdio.h>
-#include <limits.h>
-
-#if (defined(__FreeBSD__) && (__FreeBSD__ >= 2)) || defined(__MidnightBSD__)
-/* Needed for __FreeBSD_version or __MidnightBSD_version symbol definition */
-#include <osreldate.h>
-#endif
-
-/* The include stuff here below is mainly for time_t! */
-#include <sys/types.h>
-#include <time.h>
-
-#if defined(CURL_WIN32) && !defined(_WIN32_WCE) && !defined(__CYGWIN__)
-#if !(defined(_WINSOCKAPI_) || defined(_WINSOCK_H) || \
-      defined(__LWIP_OPT_H__) || defined(LWIP_HDR_OPT_H))
-/* The check above prevents the winsock2 inclusion if winsock.h already was
-   included, since they can't co-exist without problems */
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#endif
-#endif
-
-/* HP-UX systems version 9, 10 and 11 lack sys/select.h and so does oldish
-   libc5-based Linux systems. Only include it on systems that are known to
-   require it! */
-#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \
-    defined(__minix) || defined(__SYMBIAN32__) || defined(__INTEGRITY) || \
-    defined(ANDROID) || defined(__ANDROID__) || defined(__OpenBSD__) || \
-    defined(__CYGWIN__) || defined(AMIGA) || defined(__NuttX__) || \
-   (defined(__FreeBSD_version) && (__FreeBSD_version < 800000)) || \
-   (defined(__MidnightBSD_version) && (__MidnightBSD_version < 100000))
-#include <sys/select.h>
-#endif
-
-#if !defined(CURL_WIN32) && !defined(_WIN32_WCE)
-#include <sys/socket.h>
-#endif
-
-#if !defined(CURL_WIN32)
-#include <sys/time.h>
-#endif
-
-/* Compatibility for non-Clang compilers */
-#ifndef __has_declspec_attribute
-#  define __has_declspec_attribute(x) 0
-#endif
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-#if defined(BUILDING_LIBCURL) || defined(CURL_STRICTER)
-typedef struct Curl_easy CURL;
-typedef struct Curl_share CURLSH;
-#else
-typedef void CURL;
-typedef void CURLSH;
-#endif
-
-/*
- * libcurl external API function linkage decorations.
- */
-
-#ifdef CURL_STATICLIB
-#  define CURL_EXTERN
-#elif defined(CURL_WIN32) || defined(__SYMBIAN32__) || \
-     (__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
-/* socket typedef */
-#if defined(CURL_WIN32) && !defined(__LWIP_OPT_H__) && !defined(LWIP_HDR_OPT_H)
-typedef SOCKET curl_socket_t;
-#define CURL_SOCKET_BAD INVALID_SOCKET
-#else
-typedef int curl_socket_t;
-#define CURL_SOCKET_BAD -1
-#endif
-#define curl_socket_typedef
-#endif /* curl_socket_typedef */
-
-/* enum for the different supported SSL backends */
-typedef enum {
-  CURLSSLBACKEND_NONE = 0,
-  CURLSSLBACKEND_OPENSSL = 1,
-  CURLSSLBACKEND_GNUTLS = 2,
-  CURLSSLBACKEND_NSS = 3,
-  CURLSSLBACKEND_OBSOLETE4 = 4,  /* Was QSOSSL. */
-  CURLSSLBACKEND_GSKIT = 5,
-  CURLSSLBACKEND_POLARSSL = 6,
-  CURLSSLBACKEND_WOLFSSL = 7,
-  CURLSSLBACKEND_SCHANNEL = 8,
-  CURLSSLBACKEND_SECURETRANSPORT = 9,
-  CURLSSLBACKEND_AXTLS = 10, /* never used since 7.63.0 */
-  CURLSSLBACKEND_MBEDTLS = 11,
-  CURLSSLBACKEND_MESALINK = 12,
-  CURLSSLBACKEND_BEARSSL = 13,
-  CURLSSLBACKEND_RUSTLS = 14
-} curl_sslbackend;
-
-/* aliases for library clones and renames */
-#define CURLSSLBACKEND_LIBRESSL CURLSSLBACKEND_OPENSSL
-#define CURLSSLBACKEND_BORINGSSL CURLSSLBACKEND_OPENSSL
-
-/* deprecated names: */
-#define CURLSSLBACKEND_CYASSL CURLSSLBACKEND_WOLFSSL
-#define CURLSSLBACKEND_DARWINSSL CURLSSLBACKEND_SECURETRANSPORT
-
-struct curl_httppost {
-  struct curl_httppost *next;       /* next entry in the list */
-  char *name;                       /* pointer to allocated name */
-  long namelength;                  /* length of name length */
-  char *contents;                   /* pointer to allocated data contents */
-  long contentslength;              /* length of contents field, see also
-                                       CURL_HTTPPOST_LARGE */
-  char *buffer;                     /* pointer to allocated buffer contents */
-  long bufferlength;                /* length of buffer field */
-  char *contenttype;                /* Content-Type */
-  struct curl_slist *contentheader; /* list of extra headers for this form */
-  struct curl_httppost *more;       /* if one field name has more than one
-                                       file, this link should link to following
-                                       files */
-  long flags;                       /* as defined below */
-
-/* specified content is a file name */
-#define CURL_HTTPPOST_FILENAME (1<<0)
-/* specified content is a file name */
-#define CURL_HTTPPOST_READFILE (1<<1)
-/* name is only stored pointer do not free in formfree */
-#define CURL_HTTPPOST_PTRNAME (1<<2)
-/* contents is only stored pointer do not free in formfree */
-#define CURL_HTTPPOST_PTRCONTENTS (1<<3)
-/* upload file from buffer */
-#define CURL_HTTPPOST_BUFFER (1<<4)
-/* upload file from pointer contents */
-#define CURL_HTTPPOST_PTRBUFFER (1<<5)
-/* upload file contents by using the regular read callback to get the data and
-   pass the given pointer as custom pointer */
-#define CURL_HTTPPOST_CALLBACK (1<<6)
-/* use size in 'contentlen', added in 7.46.0 */
-#define CURL_HTTPPOST_LARGE (1<<7)
-
-  char *showfilename;               /* The file name to show. If not set, the
-                                       actual file name will be used (if this
-                                       is a file part) */
-  void *userp;                      /* custom pointer used for
-                                       HTTPPOST_CALLBACK posts */
-  curl_off_t contentlen;            /* alternative length of contents
-                                       field. Used if CURL_HTTPPOST_LARGE is
-                                       set. Added in 7.46.0 */
-};
-
-
-/* This is a return code for the progress callback that, when returned, will
-   signal libcurl to continue executing the default progress function */
-#define CURL_PROGRESSFUNC_CONTINUE 0x10000001
-
-/* This is the CURLOPT_PROGRESSFUNCTION callback prototype. It is now
-   considered deprecated but was the only choice up until 7.31.0 */
-typedef int (*curl_progress_callback)(void *clientp,
-                                      double dltotal,
-                                      double dlnow,
-                                      double ultotal,
-                                      double ulnow);
-
-/* This is the CURLOPT_XFERINFOFUNCTION callback prototype. It was introduced
-   in 7.32.0, avoids the use of floating point numbers and provides more
-   detailed information. */
-typedef int (*curl_xferinfo_callback)(void *clientp,
-                                      curl_off_t dltotal,
-                                      curl_off_t dlnow,
-                                      curl_off_t ultotal,
-                                      curl_off_t ulnow);
-
-#ifndef CURL_MAX_READ_SIZE
-  /* The maximum receive buffer size configurable via CURLOPT_BUFFERSIZE. */
-#define CURL_MAX_READ_SIZE 524288
-#endif
-
-#ifndef CURL_MAX_WRITE_SIZE
-  /* Tests have proven that 20K is a very bad buffer size for uploads on
-     Windows, while 16K for some odd reason performed a lot better.
-     We do the ifndef check to allow this value to easier be changed at build
-     time for those who feel adventurous. The practical minimum is about
-     400 bytes since libcurl uses a buffer of this size as a scratch area
-     (unrelated to network send operations). */
-#define CURL_MAX_WRITE_SIZE 16384
-#endif
-
-#ifndef CURL_MAX_HTTP_HEADER
-/* The only reason to have a max limit for this is to avoid the risk of a bad
-   server feeding libcurl with a never-ending header that will cause reallocs
-   infinitely */
-#define CURL_MAX_HTTP_HEADER (100*1024)
-#endif
-
-/* This is a magic return code for the write callback that, when returned,
-   will signal libcurl to pause receiving on the current transfer. */
-#define CURL_WRITEFUNC_PAUSE 0x10000001
-
-typedef size_t (*curl_write_callback)(char *buffer,
-                                      size_t size,
-                                      size_t nitems,
-                                      void *outstream);
-
-/* This callback will be called when a new resolver request is made */
-typedef int (*curl_resolver_start_callback)(void *resolver_state,
-                                            void *reserved, void *userdata);
-
-/* enumeration of file types */
-typedef enum {
-  CURLFILETYPE_FILE = 0,
-  CURLFILETYPE_DIRECTORY,
-  CURLFILETYPE_SYMLINK,
-  CURLFILETYPE_DEVICE_BLOCK,
-  CURLFILETYPE_DEVICE_CHAR,
-  CURLFILETYPE_NAMEDPIPE,
-  CURLFILETYPE_SOCKET,
-  CURLFILETYPE_DOOR, /* is possible only on Sun Solaris now */
-
-  CURLFILETYPE_UNKNOWN /* should never occur */
-} curlfiletype;
-
-#define CURLFINFOFLAG_KNOWN_FILENAME    (1<<0)
-#define CURLFINFOFLAG_KNOWN_FILETYPE    (1<<1)
-#define CURLFINFOFLAG_KNOWN_TIME        (1<<2)
-#define CURLFINFOFLAG_KNOWN_PERM        (1<<3)
-#define CURLFINFOFLAG_KNOWN_UID         (1<<4)
-#define CURLFINFOFLAG_KNOWN_GID         (1<<5)
-#define CURLFINFOFLAG_KNOWN_SIZE        (1<<6)
-#define CURLFINFOFLAG_KNOWN_HLINKCOUNT  (1<<7)
-
-/* Information about a single file, used when doing FTP wildcard matching */
-struct curl_fileinfo {
-  char *filename;
-  curlfiletype filetype;
-  time_t time; /* always zero! */
-  unsigned int perm;
-  int uid;
-  int gid;
-  curl_off_t size;
-  long int hardlinks;
-
-  struct {
-    /* If some of these fields is not NULL, it is a pointer to b_data. */
-    char *time;
-    char *perm;
-    char *user;
-    char *group;
-    char *target; /* pointer to the target filename of a symlink */
-  } strings;
-
-  unsigned int flags;
-
-  /* used internally */
-  char *b_data;
-  size_t b_size;
-  size_t b_used;
-};
-
-/* return codes for CURLOPT_CHUNK_BGN_FUNCTION */
-#define CURL_CHUNK_BGN_FUNC_OK      0
-#define CURL_CHUNK_BGN_FUNC_FAIL    1 /* tell the lib to end the task */
-#define CURL_CHUNK_BGN_FUNC_SKIP    2 /* skip this chunk over */
-
-/* if splitting of data transfer is enabled, this callback is called before
-   download of an individual chunk started. Note that parameter "remains" works
-   only for FTP wildcard downloading (for now), otherwise is not used */
-typedef long (*curl_chunk_bgn_callback)(const void *transfer_info,
-                                        void *ptr,
-                                        int remains);
-
-/* return codes for CURLOPT_CHUNK_END_FUNCTION */
-#define CURL_CHUNK_END_FUNC_OK      0
-#define CURL_CHUNK_END_FUNC_FAIL    1 /* tell the lib to end the task */
-
-/* If splitting of data transfer is enabled this callback is called after
-   download of an individual chunk finished.
-   Note! After this callback was set then it have to be called FOR ALL chunks.
-   Even if downloading of this chunk was skipped in CHUNK_BGN_FUNC.
-   This is the reason why we don't need "transfer_info" parameter in this
-   callback and we are not interested in "remains" parameter too. */
-typedef long (*curl_chunk_end_callback)(void *ptr);
-
-/* return codes for FNMATCHFUNCTION */
-#define CURL_FNMATCHFUNC_MATCH    0 /* string corresponds to the pattern */
-#define CURL_FNMATCHFUNC_NOMATCH  1 /* pattern doesn't match the string */
-#define CURL_FNMATCHFUNC_FAIL     2 /* an error occurred */
-
-/* callback type for wildcard downloading pattern matching. If the
-   string matches the pattern, return CURL_FNMATCHFUNC_MATCH value, etc. */
-typedef int (*curl_fnmatch_callback)(void *ptr,
-                                     const char *pattern,
-                                     const char *string);
-
-/* These are the return codes for the seek callbacks */
-#define CURL_SEEKFUNC_OK       0
-#define CURL_SEEKFUNC_FAIL     1 /* fail the entire transfer */
-#define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking can't be done, so
-                                    libcurl might try other means instead */
-typedef int (*curl_seek_callback)(void *instream,
-                                  curl_off_t offset,
-                                  int origin); /* 'whence' */
-
-/* This is a return code for the read callback that, when returned, will
-   signal libcurl to immediately abort the current transfer. */
-#define CURL_READFUNC_ABORT 0x10000000
-/* This is a return code for the read callback that, when returned, will
-   signal libcurl to pause sending data on the current transfer. */
-#define CURL_READFUNC_PAUSE 0x10000001
-
-/* Return code for when the trailing headers' callback has terminated
-   without any errors*/
-#define CURL_TRAILERFUNC_OK 0
-/* Return code for when was an error in the trailing header's list and we
-  want to abort the request */
-#define CURL_TRAILERFUNC_ABORT 1
-
-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,  /* socket created for a specific IP connection */
-  CURLSOCKTYPE_ACCEPT, /* socket created by accept() call */
-  CURLSOCKTYPE_LAST    /* never use */
-} curlsocktype;
-
-/* The return code from the sockopt_callback can signal information back
-   to libcurl: */
-#define CURL_SOCKOPT_OK 0
-#define CURL_SOCKOPT_ERROR 1 /* causes libcurl to abort and return
-                                CURLE_ABORTED_BY_CALLBACK */
-#define CURL_SOCKOPT_ALREADY_CONNECTED 2
-
-typedef int (*curl_sockopt_callback)(void *clientp,
-                                     curl_socket_t curlfd,
-                                     curlsocktype purpose);
-
-struct curl_sockaddr {
-  int family;
-  int socktype;
-  int protocol;
-  unsigned int addrlen; /* addrlen was a socklen_t type before 7.18.0 but it
-                           turned really ugly and painful on the systems that
-                           lack this type */
-  struct sockaddr addr;
-};
-
-typedef curl_socket_t
-(*curl_opensocket_callback)(void *clientp,
-                            curlsocktype purpose,
-                            struct curl_sockaddr *address);
-
-typedef int
-(*curl_closesocket_callback)(void *clientp, curl_socket_t item);
-
-typedef enum {
-  CURLIOE_OK,            /* I/O operation successful */
-  CURLIOE_UNKNOWNCMD,    /* command was unknown to callback */
-  CURLIOE_FAILRESTART,   /* failed to restart the read */
-  CURLIOE_LAST           /* never use */
-} curlioerr;
-
-typedef enum {
-  CURLIOCMD_NOP,         /* no operation */
-  CURLIOCMD_RESTARTREAD, /* restart the read stream from start */
-  CURLIOCMD_LAST         /* never use */
-} curliocmd;
-
-typedef curlioerr (*curl_ioctl_callback)(CURL *handle,
-                                         int cmd,
-                                         void *clientp);
-
-#ifndef CURL_DID_MEMORY_FUNC_TYPEDEFS
-/*
- * The following typedef's are signatures of malloc, free, realloc, strdup and
- * calloc respectively.  Function pointers of these types can be passed to the
- * curl_global_init_mem() function to set user defined memory management
- * callback routines.
- */
-typedef void *(*curl_malloc_callback)(size_t size);
-typedef void (*curl_free_callback)(void *ptr);
-typedef void *(*curl_realloc_callback)(void *ptr, size_t size);
-typedef char *(*curl_strdup_callback)(const char *str);
-typedef void *(*curl_calloc_callback)(size_t nmemb, size_t size);
-
-#define CURL_DID_MEMORY_FUNC_TYPEDEFS
-#endif
-
-/* the kind of data that is passed to information_callback*/
-typedef enum {
-  CURLINFO_TEXT = 0,
-  CURLINFO_HEADER_IN,    /* 1 */
-  CURLINFO_HEADER_OUT,   /* 2 */
-  CURLINFO_DATA_IN,      /* 3 */
-  CURLINFO_DATA_OUT,     /* 4 */
-  CURLINFO_SSL_DATA_IN,  /* 5 */
-  CURLINFO_SSL_DATA_OUT, /* 6 */
-  CURLINFO_END
-} curl_infotype;
-
-typedef int (*curl_debug_callback)
-       (CURL *handle,      /* the handle/transfer this concerns */
-        curl_infotype type, /* what kind of data */
-        char *data,        /* points to the data */
-        size_t size,       /* size of the data pointed to */
-        void *userptr);    /* whatever the user please */
-
-/* This is the CURLOPT_PREREQFUNCTION callback prototype. */
-typedef int (*curl_prereq_callback)(void *clientp,
-                                    char *conn_primary_ip,
-                                    char *conn_local_ip,
-                                    int conn_primary_port,
-                                    int conn_local_port);
-
-/* Return code for when the pre-request callback has terminated without
-   any errors */
-#define CURL_PREREQFUNC_OK 0
-/* Return code for when the pre-request callback wants to abort the
-   request */
-#define CURL_PREREQFUNC_ABORT 1
-
-/* All possible error codes from all sorts of curl functions. Future versions
-   may return other values, stay prepared.
-
-   Always add new return codes last. Never *EVER* remove any. The return
-   codes must remain the same!
- */
-
-typedef enum {
-  CURLE_OK = 0,
-  CURLE_UNSUPPORTED_PROTOCOL,    /* 1 */
-  CURLE_FAILED_INIT,             /* 2 */
-  CURLE_URL_MALFORMAT,           /* 3 */
-  CURLE_NOT_BUILT_IN,            /* 4 - [was obsoleted in August 2007 for
-                                    7.17.0, reused in April 2011 for 7.21.5] */
-  CURLE_COULDNT_RESOLVE_PROXY,   /* 5 */
-  CURLE_COULDNT_RESOLVE_HOST,    /* 6 */
-  CURLE_COULDNT_CONNECT,         /* 7 */
-  CURLE_WEIRD_SERVER_REPLY,      /* 8 */
-  CURLE_REMOTE_ACCESS_DENIED,    /* 9 a service was denied by the server
-                                    due to lack of access - when login fails
-                                    this is not returned. */
-  CURLE_FTP_ACCEPT_FAILED,       /* 10 - [was obsoleted in April 2006 for
-                                    7.15.4, reused in Dec 2011 for 7.24.0]*/
-  CURLE_FTP_WEIRD_PASS_REPLY,    /* 11 */
-  CURLE_FTP_ACCEPT_TIMEOUT,      /* 12 - timeout occurred accepting server
-                                    [was obsoleted in August 2007 for 7.17.0,
-                                    reused in Dec 2011 for 7.24.0]*/
-  CURLE_FTP_WEIRD_PASV_REPLY,    /* 13 */
-  CURLE_FTP_WEIRD_227_FORMAT,    /* 14 */
-  CURLE_FTP_CANT_GET_HOST,       /* 15 */
-  CURLE_HTTP2,                   /* 16 - A problem in the http2 framing layer.
-                                    [was obsoleted in August 2007 for 7.17.0,
-                                    reused in July 2014 for 7.38.0] */
-  CURLE_FTP_COULDNT_SET_TYPE,    /* 17 */
-  CURLE_PARTIAL_FILE,            /* 18 */
-  CURLE_FTP_COULDNT_RETR_FILE,   /* 19 */
-  CURLE_OBSOLETE20,              /* 20 - NOT USED */
-  CURLE_QUOTE_ERROR,             /* 21 - quote command failure */
-  CURLE_HTTP_RETURNED_ERROR,     /* 22 */
-  CURLE_WRITE_ERROR,             /* 23 */
-  CURLE_OBSOLETE24,              /* 24 - NOT USED */
-  CURLE_UPLOAD_FAILED,           /* 25 - failed upload "command" */
-  CURLE_READ_ERROR,              /* 26 - couldn't open/read from file */
-  CURLE_OUT_OF_MEMORY,           /* 27 */
-  CURLE_OPERATION_TIMEDOUT,      /* 28 - the timeout time was reached */
-  CURLE_OBSOLETE29,              /* 29 - NOT USED */
-  CURLE_FTP_PORT_FAILED,         /* 30 - FTP PORT operation failed */
-  CURLE_FTP_COULDNT_USE_REST,    /* 31 - the REST command failed */
-  CURLE_OBSOLETE32,              /* 32 - NOT USED */
-  CURLE_RANGE_ERROR,             /* 33 - RANGE "command" didn't work */
-  CURLE_HTTP_POST_ERROR,         /* 34 */
-  CURLE_SSL_CONNECT_ERROR,       /* 35 - wrong when connecting with SSL */
-  CURLE_BAD_DOWNLOAD_RESUME,     /* 36 - couldn't resume download */
-  CURLE_FILE_COULDNT_READ_FILE,  /* 37 */
-  CURLE_LDAP_CANNOT_BIND,        /* 38 */
-  CURLE_LDAP_SEARCH_FAILED,      /* 39 */
-  CURLE_OBSOLETE40,              /* 40 - NOT USED */
-  CURLE_FUNCTION_NOT_FOUND,      /* 41 - NOT USED starting with 7.53.0 */
-  CURLE_ABORTED_BY_CALLBACK,     /* 42 */
-  CURLE_BAD_FUNCTION_ARGUMENT,   /* 43 */
-  CURLE_OBSOLETE44,              /* 44 - NOT USED */
-  CURLE_INTERFACE_FAILED,        /* 45 - CURLOPT_INTERFACE failed */
-  CURLE_OBSOLETE46,              /* 46 - NOT USED */
-  CURLE_TOO_MANY_REDIRECTS,      /* 47 - catch endless re-direct loops */
-  CURLE_UNKNOWN_OPTION,          /* 48 - User specified an unknown option */
-  CURLE_SETOPT_OPTION_SYNTAX,    /* 49 - Malformed setopt option */
-  CURLE_OBSOLETE50,              /* 50 - NOT USED */
-  CURLE_OBSOLETE51,              /* 51 - NOT USED */
-  CURLE_GOT_NOTHING,             /* 52 - when this is a specific error */
-  CURLE_SSL_ENGINE_NOTFOUND,     /* 53 - SSL crypto engine not found */
-  CURLE_SSL_ENGINE_SETFAILED,    /* 54 - can not set SSL crypto engine as
-                                    default */
-  CURLE_SEND_ERROR,              /* 55 - failed sending network data */
-  CURLE_RECV_ERROR,              /* 56 - failure in receiving network data */
-  CURLE_OBSOLETE57,              /* 57 - NOT IN USE */
-  CURLE_SSL_CERTPROBLEM,         /* 58 - problem with the local certificate */
-  CURLE_SSL_CIPHER,              /* 59 - couldn't use specified cipher */
-  CURLE_PEER_FAILED_VERIFICATION, /* 60 - peer's certificate or fingerprint
-                                     wasn't verified fine */
-  CURLE_BAD_CONTENT_ENCODING,    /* 61 - Unrecognized/bad encoding */
-  CURLE_OBSOLETE62,              /* 62 - NOT IN USE since 7.82.0 */
-  CURLE_FILESIZE_EXCEEDED,       /* 63 - Maximum file size exceeded */
-  CURLE_USE_SSL_FAILED,          /* 64 - Requested FTP SSL level failed */
-  CURLE_SEND_FAIL_REWIND,        /* 65 - Sending the data requires a rewind
-                                    that failed */
-  CURLE_SSL_ENGINE_INITFAILED,   /* 66 - failed to initialise ENGINE */
-  CURLE_LOGIN_DENIED,            /* 67 - user, password or similar was not
-                                    accepted and we failed to login */
-  CURLE_TFTP_NOTFOUND,           /* 68 - file not found on server */
-  CURLE_TFTP_PERM,               /* 69 - permission problem on server */
-  CURLE_REMOTE_DISK_FULL,        /* 70 - out of disk space on server */
-  CURLE_TFTP_ILLEGAL,            /* 71 - Illegal TFTP operation */
-  CURLE_TFTP_UNKNOWNID,          /* 72 - Unknown transfer ID */
-  CURLE_REMOTE_FILE_EXISTS,      /* 73 - File already exists */
-  CURLE_TFTP_NOSUCHUSER,         /* 74 - No such user */
-  CURLE_CONV_FAILED,             /* 75 - conversion failed */
-  CURLE_OBSOLETE76,              /* 76 - NOT IN USE since 7.82.0 */
-  CURLE_SSL_CACERT_BADFILE,      /* 77 - could not load CACERT file, missing
-                                    or wrong format */
-  CURLE_REMOTE_FILE_NOT_FOUND,   /* 78 - remote file not found */
-  CURLE_SSH,                     /* 79 - error from the SSH layer, somewhat
-                                    generic so the error message will be of
-                                    interest when this has happened */
-
-  CURLE_SSL_SHUTDOWN_FAILED,     /* 80 - Failed to shut down the SSL
-                                    connection */
-  CURLE_AGAIN,                   /* 81 - socket is not ready for send/recv,
-                                    wait till it's ready and try again (Added
-                                    in 7.18.2) */
-  CURLE_SSL_CRL_BADFILE,         /* 82 - could not load CRL file, missing or
-                                    wrong format (Added in 7.19.0) */
-  CURLE_SSL_ISSUER_ERROR,        /* 83 - Issuer check failed.  (Added in
-                                    7.19.0) */
-  CURLE_FTP_PRET_FAILED,         /* 84 - a PRET command failed */
-  CURLE_RTSP_CSEQ_ERROR,         /* 85 - mismatch of RTSP CSeq numbers */
-  CURLE_RTSP_SESSION_ERROR,      /* 86 - mismatch of RTSP Session Ids */
-  CURLE_FTP_BAD_FILE_LIST,       /* 87 - unable to parse FTP file list */
-  CURLE_CHUNK_FAILED,            /* 88 - chunk callback reported error */
-  CURLE_NO_CONNECTION_AVAILABLE, /* 89 - No connection available, the
-                                    session will be queued */
-  CURLE_SSL_PINNEDPUBKEYNOTMATCH, /* 90 - specified pinned public key did not
-                                     match */
-  CURLE_SSL_INVALIDCERTSTATUS,   /* 91 - invalid certificate status */
-  CURLE_HTTP2_STREAM,            /* 92 - stream error in HTTP/2 framing layer
-                                    */
-  CURLE_RECURSIVE_API_CALL,      /* 93 - an api function was called from
-                                    inside a callback */
-  CURLE_AUTH_ERROR,              /* 94 - an authentication function returned an
-                                    error */
-  CURLE_HTTP3,                   /* 95 - An HTTP/3 layer problem */
-  CURLE_QUIC_CONNECT_ERROR,      /* 96 - QUIC connection error */
-  CURLE_PROXY,                   /* 97 - proxy handshake error */
-  CURLE_SSL_CLIENTCERT,          /* 98 - client-side certificate required */
-  CURL_LAST /* never use! */
-} CURLcode;
-
-#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
-                          the obsolete stuff removed! */
-
-/* Previously obsolete error code re-used in 7.38.0 */
-#define CURLE_OBSOLETE16 CURLE_HTTP2
-
-/* Previously obsolete error codes re-used in 7.24.0 */
-#define CURLE_OBSOLETE10 CURLE_FTP_ACCEPT_FAILED
-#define CURLE_OBSOLETE12 CURLE_FTP_ACCEPT_TIMEOUT
-
-/*  compatibility with older names */
-#define CURLOPT_ENCODING CURLOPT_ACCEPT_ENCODING
-#define CURLE_FTP_WEIRD_SERVER_REPLY CURLE_WEIRD_SERVER_REPLY
-
-/* The following were added in 7.62.0 */
-#define CURLE_SSL_CACERT CURLE_PEER_FAILED_VERIFICATION
-
-/* The following were added in 7.21.5, April 2011 */
-#define CURLE_UNKNOWN_TELNET_OPTION CURLE_UNKNOWN_OPTION
-
-/* Added for 7.78.0 */
-#define CURLE_TELNET_OPTION_SYNTAX CURLE_SETOPT_OPTION_SYNTAX
-
-/* The following were added in 7.17.1 */
-/* These are scheduled to disappear by 2009 */
-#define CURLE_SSL_PEER_CERTIFICATE CURLE_PEER_FAILED_VERIFICATION
-
-/* The following were added in 7.17.0 */
-/* These are scheduled to disappear by 2009 */
-#define CURLE_OBSOLETE CURLE_OBSOLETE50 /* no one should be using this! */
-#define CURLE_BAD_PASSWORD_ENTERED CURLE_OBSOLETE46
-#define CURLE_BAD_CALLING_ORDER CURLE_OBSOLETE44
-#define CURLE_FTP_USER_PASSWORD_INCORRECT CURLE_OBSOLETE10
-#define CURLE_FTP_CANT_RECONNECT CURLE_OBSOLETE16
-#define CURLE_FTP_COULDNT_GET_SIZE CURLE_OBSOLETE32
-#define CURLE_FTP_COULDNT_SET_ASCII CURLE_OBSOLETE29
-#define CURLE_FTP_WEIRD_USER_REPLY CURLE_OBSOLETE12
-#define CURLE_FTP_WRITE_ERROR CURLE_OBSOLETE20
-#define CURLE_LIBRARY_NOT_FOUND CURLE_OBSOLETE40
-#define CURLE_MALFORMAT_USER CURLE_OBSOLETE24
-#define CURLE_SHARE_IN_USE CURLE_OBSOLETE57
-#define CURLE_URL_MALFORMAT_USER CURLE_NOT_BUILT_IN
-
-#define CURLE_FTP_ACCESS_DENIED CURLE_REMOTE_ACCESS_DENIED
-#define CURLE_FTP_COULDNT_SET_BINARY CURLE_FTP_COULDNT_SET_TYPE
-#define CURLE_FTP_QUOTE_ERROR CURLE_QUOTE_ERROR
-#define CURLE_TFTP_DISKFULL CURLE_REMOTE_DISK_FULL
-#define CURLE_TFTP_EXISTS CURLE_REMOTE_FILE_EXISTS
-#define CURLE_HTTP_RANGE_ERROR CURLE_RANGE_ERROR
-#define CURLE_FTP_SSL_FAILED CURLE_USE_SSL_FAILED
-
-/* The following were added earlier */
-
-#define CURLE_OPERATION_TIMEOUTED CURLE_OPERATION_TIMEDOUT
-#define CURLE_HTTP_NOT_FOUND CURLE_HTTP_RETURNED_ERROR
-#define CURLE_HTTP_PORT_FAILED CURLE_INTERFACE_FAILED
-#define CURLE_FTP_COULDNT_STOR_FILE CURLE_UPLOAD_FAILED
-#define CURLE_FTP_PARTIAL_FILE CURLE_PARTIAL_FILE
-#define CURLE_FTP_BAD_DOWNLOAD_RESUME CURLE_BAD_DOWNLOAD_RESUME
-#define CURLE_LDAP_INVALID_URL CURLE_OBSOLETE62
-#define CURLE_CONV_REQD CURLE_OBSOLETE76
-
-/* This was the error code 50 in 7.7.3 and a few earlier versions, this
-   is no longer used by libcurl but is instead #defined here only to not
-   make programs break */
-#define CURLE_ALREADY_COMPLETE 99999
-
-/* Provide defines for really old option names */
-#define CURLOPT_FILE CURLOPT_WRITEDATA /* name changed in 7.9.7 */
-#define CURLOPT_INFILE CURLOPT_READDATA /* name changed in 7.9.7 */
-#define CURLOPT_WRITEHEADER CURLOPT_HEADERDATA
-
-/* Since long deprecated options with no code in the lib that does anything
-   with them. */
-#define CURLOPT_WRITEINFO CURLOPT_OBSOLETE40
-#define CURLOPT_CLOSEPOLICY CURLOPT_OBSOLETE72
-
-#endif /*!CURL_NO_OLDIES*/
-
-/*
- * Proxy error codes. Returned in CURLINFO_PROXY_ERROR if CURLE_PROXY was
- * return for the transfers.
- */
-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 /* never use */
-} CURLproxycode;
-
-/* This prototype applies to all conversion callbacks */
-typedef CURLcode (*curl_conv_callback)(char *buffer, size_t length);
-
-typedef CURLcode (*curl_ssl_ctx_callback)(CURL *curl,    /* easy handle */
-                                          void *ssl_ctx, /* actually an OpenSSL
-                                                            or WolfSSL SSL_CTX,
-                                                            or an mbedTLS
-                                                          mbedtls_ssl_config */
-                                          void *userptr);
-
-typedef enum {
-  CURLPROXY_HTTP = 0,   /* added in 7.10, new in 7.19.4 default is to use
-                           CONNECT HTTP/1.1 */
-  CURLPROXY_HTTP_1_0 = 1,   /* added in 7.19.4, force to use CONNECT
-                               HTTP/1.0  */
-  CURLPROXY_HTTPS = 2, /* added in 7.52.0 */
-  CURLPROXY_SOCKS4 = 4, /* support added in 7.15.2, enum existed already
-                           in 7.10 */
-  CURLPROXY_SOCKS5 = 5, /* added in 7.10 */
-  CURLPROXY_SOCKS4A = 6, /* added in 7.18.0 */
-  CURLPROXY_SOCKS5_HOSTNAME = 7 /* Use the SOCKS5 protocol but pass along the
-                                   host name rather than the IP address. added
-                                   in 7.18.0 */
-} curl_proxytype;  /* this enum was added in 7.10 */
-
-/*
- * Bitmasks for CURLOPT_HTTPAUTH and CURLOPT_PROXYAUTH options:
- *
- * CURLAUTH_NONE         - No HTTP authentication
- * CURLAUTH_BASIC        - HTTP Basic authentication (default)
- * CURLAUTH_DIGEST       - HTTP Digest authentication
- * CURLAUTH_NEGOTIATE    - HTTP Negotiate (SPNEGO) authentication
- * CURLAUTH_GSSNEGOTIATE - Alias for CURLAUTH_NEGOTIATE (deprecated)
- * CURLAUTH_NTLM         - HTTP NTLM authentication
- * CURLAUTH_DIGEST_IE    - HTTP Digest authentication with IE flavour
- * CURLAUTH_NTLM_WB      - HTTP NTLM authentication delegated to winbind helper
- * CURLAUTH_BEARER       - HTTP Bearer token authentication
- * CURLAUTH_ONLY         - Use together with a single other type to force no
- *                         authentication or just that single type
- * CURLAUTH_ANY          - All fine types set
- * CURLAUTH_ANYSAFE      - All fine types except Basic
- */
-
-#define CURLAUTH_NONE         ((unsigned long)0)
-#define CURLAUTH_BASIC        (((unsigned long)1)<<0)
-#define CURLAUTH_DIGEST       (((unsigned long)1)<<1)
-#define CURLAUTH_NEGOTIATE    (((unsigned long)1)<<2)
-/* Deprecated since the advent of CURLAUTH_NEGOTIATE */
-#define CURLAUTH_GSSNEGOTIATE CURLAUTH_NEGOTIATE
-/* Used for CURLOPT_SOCKS5_AUTH to stay terminologically correct */
-#define CURLAUTH_GSSAPI CURLAUTH_NEGOTIATE
-#define CURLAUTH_NTLM         (((unsigned long)1)<<3)
-#define CURLAUTH_DIGEST_IE    (((unsigned long)1)<<4)
-#define CURLAUTH_NTLM_WB      (((unsigned long)1)<<5)
-#define CURLAUTH_BEARER       (((unsigned long)1)<<6)
-#define CURLAUTH_AWS_SIGV4    (((unsigned long)1)<<7)
-#define CURLAUTH_ONLY         (((unsigned long)1)<<31)
-#define CURLAUTH_ANY          (~CURLAUTH_DIGEST_IE)
-#define CURLAUTH_ANYSAFE      (~(CURLAUTH_BASIC|CURLAUTH_DIGEST_IE))
-
-#define CURLSSH_AUTH_ANY       ~0     /* all types supported by the server */
-#define CURLSSH_AUTH_NONE      0      /* none allowed, silly but complete */
-#define CURLSSH_AUTH_PUBLICKEY (1<<0) /* public/private key files */
-#define CURLSSH_AUTH_PASSWORD  (1<<1) /* password */
-#define CURLSSH_AUTH_HOST      (1<<2) /* host key files */
-#define CURLSSH_AUTH_KEYBOARD  (1<<3) /* keyboard interactive */
-#define CURLSSH_AUTH_AGENT     (1<<4) /* agent (ssh-agent, pageant...) */
-#define CURLSSH_AUTH_GSSAPI    (1<<5) /* gssapi (kerberos, ...) */
-#define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY
-
-#define CURLGSSAPI_DELEGATION_NONE        0      /* no delegation (default) */
-#define CURLGSSAPI_DELEGATION_POLICY_FLAG (1<<0) /* if permitted by policy */
-#define CURLGSSAPI_DELEGATION_FLAG        (1<<1) /* delegate always */
-
-#define CURL_ERROR_SIZE 256
-
-enum curl_khtype {
-  CURLKHTYPE_UNKNOWN,
-  CURLKHTYPE_RSA1,
-  CURLKHTYPE_RSA,
-  CURLKHTYPE_DSS,
-  CURLKHTYPE_ECDSA,
-  CURLKHTYPE_ED25519
-};
-
-struct curl_khkey {
-  const char *key; /* points to a null-terminated string encoded with base64
-                      if len is zero, otherwise to the "raw" data */
-  size_t len;
-  enum curl_khtype keytype;
-};
-
-/* this is the set of return values expected from the curl_sshkeycallback
-   callback */
-enum curl_khstat {
-  CURLKHSTAT_FINE_ADD_TO_FILE,
-  CURLKHSTAT_FINE,
-  CURLKHSTAT_REJECT, /* reject the connection, return an error */
-  CURLKHSTAT_DEFER,  /* do not accept it, but we can't answer right now so
-                        this causes a CURLE_DEFER error but otherwise the
-                        connection will be left intact etc */
-  CURLKHSTAT_FINE_REPLACE, /* accept and replace the wrong key*/
-  CURLKHSTAT_LAST    /* not for use, only a marker for last-in-list */
-};
-
-/* this is the set of status codes pass in to the callback */
-enum curl_khmatch {
-  CURLKHMATCH_OK,       /* match */
-  CURLKHMATCH_MISMATCH, /* host found, key mismatch! */
-  CURLKHMATCH_MISSING,  /* no matching host/key found */
-  CURLKHMATCH_LAST      /* not for use, only a marker for last-in-list */
-};
-
-typedef int
-  (*curl_sshkeycallback) (CURL *easy,     /* easy handle */
-                          const struct curl_khkey *knownkey, /* known */
-                          const struct curl_khkey *foundkey, /* found */
-                          enum curl_khmatch, /* libcurl's view on the keys */
-                          void *clientp); /* custom pointer passed from app */
-
-/* parameter for the CURLOPT_USE_SSL option */
-typedef enum {
-  CURLUSESSL_NONE,    /* do not attempt to use SSL */
-  CURLUSESSL_TRY,     /* try using SSL, proceed anyway otherwise */
-  CURLUSESSL_CONTROL, /* SSL for the control connection or fail */
-  CURLUSESSL_ALL,     /* SSL for all communication or fail */
-  CURLUSESSL_LAST     /* not an option, never use */
-} curl_usessl;
-
-/* Definition of bits for the CURLOPT_SSL_OPTIONS argument: */
-
-/* - ALLOW_BEAST tells libcurl to allow the BEAST SSL vulnerability in the
-   name of improving interoperability with older servers. Some SSL libraries
-   have introduced work-arounds for this flaw but those work-arounds sometimes
-   make the SSL communication fail. To regain functionality with those broken
-   servers, a user can this way allow the vulnerability back. */
-#define CURLSSLOPT_ALLOW_BEAST (1<<0)
-
-/* - NO_REVOKE tells libcurl to disable certificate revocation checks for those
-   SSL backends where such behavior is present. */
-#define CURLSSLOPT_NO_REVOKE (1<<1)
-
-/* - NO_PARTIALCHAIN tells libcurl to *NOT* accept a partial certificate chain
-   if possible. The OpenSSL backend has this ability. */
-#define CURLSSLOPT_NO_PARTIALCHAIN (1<<2)
-
-/* - REVOKE_BEST_EFFORT tells libcurl to ignore certificate revocation offline
-   checks and ignore missing revocation list for those SSL backends where such
-   behavior is present. */
-#define CURLSSLOPT_REVOKE_BEST_EFFORT (1<<3)
-
-/* - CURLSSLOPT_NATIVE_CA tells libcurl to use standard certificate store of
-   operating system. Currently implemented under MS-Windows. */
-#define CURLSSLOPT_NATIVE_CA (1<<4)
-
-/* - CURLSSLOPT_AUTO_CLIENT_CERT tells libcurl to automatically locate and use
-   a client certificate for authentication. (Schannel) */
-#define CURLSSLOPT_AUTO_CLIENT_CERT (1<<5)
-
-/* The default connection attempt delay in milliseconds for happy eyeballs.
-   CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3 and happy-eyeballs-timeout-ms.d document
-   this value, keep them in sync. */
-#define CURL_HET_DEFAULT 200L
-
-/* The default connection upkeep interval in milliseconds. */
-#define CURL_UPKEEP_INTERVAL_DEFAULT 60000L
-
-#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
-                          the obsolete stuff removed! */
-
-/* Backwards compatibility with older names */
-/* These are scheduled to disappear by 2009 */
-
-#define CURLFTPSSL_NONE CURLUSESSL_NONE
-#define CURLFTPSSL_TRY CURLUSESSL_TRY
-#define CURLFTPSSL_CONTROL CURLUSESSL_CONTROL
-#define CURLFTPSSL_ALL CURLUSESSL_ALL
-#define CURLFTPSSL_LAST CURLUSESSL_LAST
-#define curl_ftpssl curl_usessl
-#endif /*!CURL_NO_OLDIES*/
-
-/* parameter for the CURLOPT_FTP_SSL_CCC option */
-typedef enum {
-  CURLFTPSSL_CCC_NONE,    /* do not send CCC */
-  CURLFTPSSL_CCC_PASSIVE, /* Let the server initiate the shutdown */
-  CURLFTPSSL_CCC_ACTIVE,  /* Initiate the shutdown */
-  CURLFTPSSL_CCC_LAST     /* not an option, never use */
-} curl_ftpccc;
-
-/* parameter for the CURLOPT_FTPSSLAUTH option */
-typedef enum {
-  CURLFTPAUTH_DEFAULT, /* let libcurl decide */
-  CURLFTPAUTH_SSL,     /* use "AUTH SSL" */
-  CURLFTPAUTH_TLS,     /* use "AUTH TLS" */
-  CURLFTPAUTH_LAST /* not an option, never use */
-} curl_ftpauth;
-
-/* parameter for the CURLOPT_FTP_CREATE_MISSING_DIRS option */
-typedef enum {
-  CURLFTP_CREATE_DIR_NONE,  /* do NOT create missing dirs! */
-  CURLFTP_CREATE_DIR,       /* (FTP/SFTP) if CWD fails, try MKD and then CWD
-                               again if MKD succeeded, for SFTP this does
-                               similar magic */
-  CURLFTP_CREATE_DIR_RETRY, /* (FTP only) if CWD fails, try MKD and then CWD
-                               again even if MKD failed! */
-  CURLFTP_CREATE_DIR_LAST   /* not an option, never use */
-} curl_ftpcreatedir;
-
-/* parameter for the CURLOPT_FTP_FILEMETHOD option */
-typedef enum {
-  CURLFTPMETHOD_DEFAULT,   /* let libcurl pick */
-  CURLFTPMETHOD_MULTICWD,  /* single CWD operation for each path part */
-  CURLFTPMETHOD_NOCWD,     /* no CWD at all */
-  CURLFTPMETHOD_SINGLECWD, /* one CWD to full dir, then work on file */
-  CURLFTPMETHOD_LAST       /* not an option, never use */
-} curl_ftpmethod;
-
-/* bitmask defines for CURLOPT_HEADEROPT */
-#define CURLHEADER_UNIFIED  0
-#define CURLHEADER_SEPARATE (1<<0)
-
-/* CURLALTSVC_* are bits for the CURLOPT_ALTSVC_CTRL option */
-#define CURLALTSVC_READONLYFILE (1<<2)
-#define CURLALTSVC_H1           (1<<3)
-#define CURLALTSVC_H2           (1<<4)
-#define CURLALTSVC_H3           (1<<5)
-
-
-struct curl_hstsentry {
-  char *name;
-  size_t namelen;
-  unsigned int includeSubDomains:1;
-  char expire[18]; /* YYYYMMDD HH:MM:SS [null-terminated] */
-};
-
-struct curl_index {
-  size_t index; /* the provided entry's "index" or count */
-  size_t total; /* total number of entries to save */
-};
-
-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);
-
-/* CURLHSTS_* are bits for the CURLOPT_HSTS option */
-#define CURLHSTS_ENABLE       (long)(1<<0)
-#define CURLHSTS_READONLYFILE (long)(1<<1)
-
-/* CURLPROTO_ defines are for the CURLOPT_*PROTOCOLS options */
-#define CURLPROTO_HTTP   (1<<0)
-#define CURLPROTO_HTTPS  (1<<1)
-#define CURLPROTO_FTP    (1<<2)
-#define CURLPROTO_FTPS   (1<<3)
-#define CURLPROTO_SCP    (1<<4)
-#define CURLPROTO_SFTP   (1<<5)
-#define CURLPROTO_TELNET (1<<6)
-#define CURLPROTO_LDAP   (1<<7)
-#define CURLPROTO_LDAPS  (1<<8)
-#define CURLPROTO_DICT   (1<<9)
-#define CURLPROTO_FILE   (1<<10)
-#define CURLPROTO_TFTP   (1<<11)
-#define CURLPROTO_IMAP   (1<<12)
-#define CURLPROTO_IMAPS  (1<<13)
-#define CURLPROTO_POP3   (1<<14)
-#define CURLPROTO_POP3S  (1<<15)
-#define CURLPROTO_SMTP   (1<<16)
-#define CURLPROTO_SMTPS  (1<<17)
-#define CURLPROTO_RTSP   (1<<18)
-#define CURLPROTO_RTMP   (1<<19)
-#define CURLPROTO_RTMPT  (1<<20)
-#define CURLPROTO_RTMPE  (1<<21)
-#define CURLPROTO_RTMPTE (1<<22)
-#define CURLPROTO_RTMPS  (1<<23)
-#define CURLPROTO_RTMPTS (1<<24)
-#define CURLPROTO_GOPHER (1<<25)
-#define CURLPROTO_SMB    (1<<26)
-#define CURLPROTO_SMBS   (1<<27)
-#define CURLPROTO_MQTT   (1<<28)
-#define CURLPROTO_GOPHERS (1<<29)
-#define CURLPROTO_ALL    (~0) /* enable everything */
-
-/* long may be 32 or 64 bits, but we should never depend on anything else
-   but 32 */
-#define CURLOPTTYPE_LONG          0
-#define CURLOPTTYPE_OBJECTPOINT   10000
-#define CURLOPTTYPE_FUNCTIONPOINT 20000
-#define CURLOPTTYPE_OFF_T         30000
-#define CURLOPTTYPE_BLOB          40000
-
-/* *STRINGPOINT is an alias for OBJECTPOINT to allow tools to extract the
-   string options from the header file */
-
-
-#define CURLOPT(na,t,nu) na = t + nu
-
-/* CURLOPT aliases that make no run-time difference */
-
-/* 'char *' argument to a string with a trailing zero */
-#define CURLOPTTYPE_STRINGPOINT CURLOPTTYPE_OBJECTPOINT
-
-/* 'struct curl_slist *' argument */
-#define CURLOPTTYPE_SLISTPOINT  CURLOPTTYPE_OBJECTPOINT
-
-/* 'void *' argument passed untouched to callback */
-#define CURLOPTTYPE_CBPOINT     CURLOPTTYPE_OBJECTPOINT
-
-/* 'long' argument with a set of values/bitmask */
-#define CURLOPTTYPE_VALUES      CURLOPTTYPE_LONG
-
-/*
- * All CURLOPT_* values.
- */
-
-typedef enum {
-  /* This is the FILE * or void * the regular output should be written to. */
-  CURLOPT(CURLOPT_WRITEDATA, CURLOPTTYPE_CBPOINT, 1),
-
-  /* The full URL to get/put */
-  CURLOPT(CURLOPT_URL, CURLOPTTYPE_STRINGPOINT, 2),
-
-  /* Port number to connect to, if other than default. */
-  CURLOPT(CURLOPT_PORT, CURLOPTTYPE_LONG, 3),
-
-  /* Name of proxy to use. */
-  CURLOPT(CURLOPT_PROXY, CURLOPTTYPE_STRINGPOINT, 4),
-
-  /* "user:password;options" to use when fetching. */
-  CURLOPT(CURLOPT_USERPWD, CURLOPTTYPE_STRINGPOINT, 5),
-
-  /* "user:password" to use with proxy. */
-  CURLOPT(CURLOPT_PROXYUSERPWD, CURLOPTTYPE_STRINGPOINT, 6),
-
-  /* Range to get, specified as an ASCII string. */
-  CURLOPT(CURLOPT_RANGE, CURLOPTTYPE_STRINGPOINT, 7),
-
-  /* not used */
-
-  /* Specified file stream to upload from (use as input): */
-  CURLOPT(CURLOPT_READDATA, CURLOPTTYPE_CBPOINT, 9),
-
-  /* Buffer to receive error messages in, must be at least CURL_ERROR_SIZE
-   * bytes big. */
-  CURLOPT(CURLOPT_ERRORBUFFER, CURLOPTTYPE_OBJECTPOINT, 10),
-
-  /* Function that will be called to store the output (instead of fwrite). The
-   * parameters will use fwrite() syntax, make sure to follow them. */
-  CURLOPT(CURLOPT_WRITEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 11),
-
-  /* Function that will be called to read the input (instead of fread). The
-   * parameters will use fread() syntax, make sure to follow them. */
-  CURLOPT(CURLOPT_READFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 12),
-
-  /* Time-out the read operation after this amount of seconds */
-  CURLOPT(CURLOPT_TIMEOUT, CURLOPTTYPE_LONG, 13),
-
-  /* If the CURLOPT_INFILE is used, this can be used to inform libcurl about
-   * how large the file being sent really is. That allows better error
-   * checking and better verifies that the upload was successful. -1 means
-   * unknown size.
-   *
-   * For large file support, there is also a _LARGE version of the key
-   * which takes an off_t type, allowing platforms with larger off_t
-   * sizes to handle larger files.  See below for INFILESIZE_LARGE.
-   */
-  CURLOPT(CURLOPT_INFILESIZE, CURLOPTTYPE_LONG, 14),
-
-  /* POST static input fields. */
-  CURLOPT(CURLOPT_POSTFIELDS, CURLOPTTYPE_OBJECTPOINT, 15),
-
-  /* Set the referrer page (needed by some CGIs) */
-  CURLOPT(CURLOPT_REFERER, CURLOPTTYPE_STRINGPOINT, 16),
-
-  /* Set the FTP PORT string (interface name, named or numerical IP address)
-     Use i.e '-' to use default address. */
-  CURLOPT(CURLOPT_FTPPORT, CURLOPTTYPE_STRINGPOINT, 17),
-
-  /* Set the User-Agent string (examined by some CGIs) */
-  CURLOPT(CURLOPT_USERAGENT, CURLOPTTYPE_STRINGPOINT, 18),
-
-  /* If the download receives less than "low speed limit" bytes/second
-   * during "low speed time" seconds, the operations is aborted.
-   * You could i.e if you have a pretty high speed connection, abort if
-   * it is less than 2000 bytes/sec during 20 seconds.
-   */
-
-  /* Set the "low speed limit" */
-  CURLOPT(CURLOPT_LOW_SPEED_LIMIT, CURLOPTTYPE_LONG, 19),
-
-  /* Set the "low speed time" */
-  CURLOPT(CURLOPT_LOW_SPEED_TIME, CURLOPTTYPE_LONG, 20),
-
-  /* Set the continuation offset.
-   *
-   * Note there is also a _LARGE version of this key which uses
-   * off_t types, allowing for large file offsets on platforms which
-   * use larger-than-32-bit off_t's.  Look below for RESUME_FROM_LARGE.
-   */
-  CURLOPT(CURLOPT_RESUME_FROM, CURLOPTTYPE_LONG, 21),
-
-  /* Set cookie in request: */
-  CURLOPT(CURLOPT_COOKIE, CURLOPTTYPE_STRINGPOINT, 22),
-
-  /* This points to a linked list of headers, struct curl_slist kind. This
-     list is also used for RTSP (in spite of its name) */
-  CURLOPT(CURLOPT_HTTPHEADER, CURLOPTTYPE_SLISTPOINT, 23),
-
-  /* This points to a linked list of post entries, struct curl_httppost */
-  CURLOPT(CURLOPT_HTTPPOST, CURLOPTTYPE_OBJECTPOINT, 24),
-
-  /* name of the file keeping your private SSL-certificate */
-  CURLOPT(CURLOPT_SSLCERT, CURLOPTTYPE_STRINGPOINT, 25),
-
-  /* password for the SSL or SSH private key */
-  CURLOPT(CURLOPT_KEYPASSWD, CURLOPTTYPE_STRINGPOINT, 26),
-
-  /* send TYPE parameter? */
-  CURLOPT(CURLOPT_CRLF, CURLOPTTYPE_LONG, 27),
-
-  /* send linked-list of QUOTE commands */
-  CURLOPT(CURLOPT_QUOTE, CURLOPTTYPE_SLISTPOINT, 28),
-
-  /* send FILE * or void * to store headers to, if you use a callback it
-     is simply passed to the callback unmodified */
-  CURLOPT(CURLOPT_HEADERDATA, CURLOPTTYPE_CBPOINT, 29),
-
-  /* point to a file to read the initial cookies from, also enables
-     "cookie awareness" */
-  CURLOPT(CURLOPT_COOKIEFILE, CURLOPTTYPE_STRINGPOINT, 31),
-
-  /* What version to specifically try to use.
-     See CURL_SSLVERSION defines below. */
-  CURLOPT(CURLOPT_SSLVERSION, CURLOPTTYPE_VALUES, 32),
-
-  /* What kind of HTTP time condition to use, see defines */
-  CURLOPT(CURLOPT_TIMECONDITION, CURLOPTTYPE_VALUES, 33),
-
-  /* Time to use with the above condition. Specified in number of seconds
-     since 1 Jan 1970 */
-  CURLOPT(CURLOPT_TIMEVALUE, CURLOPTTYPE_LONG, 34),
-
-  /* 35 = OBSOLETE */
-
-  /* Custom request, for customizing the get command like
-     HTTP: DELETE, TRACE and others
-     FTP: to use a different list command
-     */
-  CURLOPT(CURLOPT_CUSTOMREQUEST, CURLOPTTYPE_STRINGPOINT, 36),
-
-  /* FILE handle to use instead of stderr */
-  CURLOPT(CURLOPT_STDERR, CURLOPTTYPE_OBJECTPOINT, 37),
-
-  /* 38 is not used */
-
-  /* send linked-list of post-transfer QUOTE commands */
-  CURLOPT(CURLOPT_POSTQUOTE, CURLOPTTYPE_SLISTPOINT, 39),
-
-   /* OBSOLETE, do not use! */
-  CURLOPT(CURLOPT_OBSOLETE40, CURLOPTTYPE_OBJECTPOINT, 40),
-
-  /* talk a lot */
-  CURLOPT(CURLOPT_VERBOSE, CURLOPTTYPE_LONG, 41),
-
-  /* throw the header out too */
-  CURLOPT(CURLOPT_HEADER, CURLOPTTYPE_LONG, 42),
-
-  /* shut off the progress meter */
-  CURLOPT(CURLOPT_NOPROGRESS, CURLOPTTYPE_LONG, 43),
-
-  /* use HEAD to get http document */
-  CURLOPT(CURLOPT_NOBODY, CURLOPTTYPE_LONG, 44),
-
-  /* no output on http error codes >= 400 */
-  CURLOPT(CURLOPT_FAILONERROR, CURLOPTTYPE_LONG, 45),
-
-  /* this is an upload */
-  CURLOPT(CURLOPT_UPLOAD, CURLOPTTYPE_LONG, 46),
-
-  /* HTTP POST method */
-  CURLOPT(CURLOPT_POST, CURLOPTTYPE_LONG, 47),
-
-  /* bare names when listing directories */
-  CURLOPT(CURLOPT_DIRLISTONLY, CURLOPTTYPE_LONG, 48),
-
-  /* Append instead of overwrite on upload! */
-  CURLOPT(CURLOPT_APPEND, CURLOPTTYPE_LONG, 50),
-
-  /* Specify whether to read the user+password from the .netrc or the URL.
-   * This must be one of the CURL_NETRC_* enums below. */
-  CURLOPT(CURLOPT_NETRC, CURLOPTTYPE_VALUES, 51),
-
-  /* use Location: Luke! */
-  CURLOPT(CURLOPT_FOLLOWLOCATION, CURLOPTTYPE_LONG, 52),
-
-   /* transfer data in text/ASCII format */
-  CURLOPT(CURLOPT_TRANSFERTEXT, CURLOPTTYPE_LONG, 53),
-
-  /* HTTP PUT */
-  CURLOPT(CURLOPT_PUT, CURLOPTTYPE_LONG, 54),
-
-  /* 55 = OBSOLETE */
-
-  /* DEPRECATED
-   * Function that will be called instead of the internal progress display
-   * function. This function should be defined as the curl_progress_callback
-   * prototype defines. */
-  CURLOPT(CURLOPT_PROGRESSFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 56),
-
-  /* Data passed to the CURLOPT_PROGRESSFUNCTION and CURLOPT_XFERINFOFUNCTION
-     callbacks */
-  CURLOPT(CURLOPT_XFERINFODATA, CURLOPTTYPE_CBPOINT, 57),
-#define CURLOPT_PROGRESSDATA CURLOPT_XFERINFODATA
-
-  /* We want the referrer field set automatically when following locations */
-  CURLOPT(CURLOPT_AUTOREFERER, CURLOPTTYPE_LONG, 58),
-
-  /* Port of the proxy, can be set in the proxy string as well with:
-     "[host]:[port]" */
-  CURLOPT(CURLOPT_PROXYPORT, CURLOPTTYPE_LONG, 59),
-
-  /* size of the POST input data, if strlen() is not good to use */
-  CURLOPT(CURLOPT_POSTFIELDSIZE, CURLOPTTYPE_LONG, 60),
-
-  /* tunnel non-http operations through a HTTP proxy */
-  CURLOPT(CURLOPT_HTTPPROXYTUNNEL, CURLOPTTYPE_LONG, 61),
-
-  /* Set the interface string to use as outgoing network interface */
-  CURLOPT(CURLOPT_INTERFACE, CURLOPTTYPE_STRINGPOINT, 62),
-
-  /* Set the krb4/5 security level, this also enables krb4/5 awareness.  This
-   * is a string, 'clear', 'safe', 'confidential' or 'private'.  If the string
-   * is set but doesn't match one of these, 'private' will be used.  */
-  CURLOPT(CURLOPT_KRBLEVEL, CURLOPTTYPE_STRINGPOINT, 63),
-
-  /* Set if we should verify the peer in ssl handshake, set 1 to verify. */
-  CURLOPT(CURLOPT_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 64),
-
-  /* The CApath or CAfile used to validate the peer certificate
-     this option is used only if SSL_VERIFYPEER is true */
-  CURLOPT(CURLOPT_CAINFO, CURLOPTTYPE_STRINGPOINT, 65),
-
-  /* 66 = OBSOLETE */
-  /* 67 = OBSOLETE */
-
-  /* Maximum number of http redirects to follow */
-  CURLOPT(CURLOPT_MAXREDIRS, CURLOPTTYPE_LONG, 68),
-
-  /* Pass a long set to 1 to get the date of the requested document (if
-     possible)! Pass a zero to shut it off. */
-  CURLOPT(CURLOPT_FILETIME, CURLOPTTYPE_LONG, 69),
-
-  /* This points to a linked list of telnet options */
-  CURLOPT(CURLOPT_TELNETOPTIONS, CURLOPTTYPE_SLISTPOINT, 70),
-
-  /* Max amount of cached alive connections */
-  CURLOPT(CURLOPT_MAXCONNECTS, CURLOPTTYPE_LONG, 71),
-
-  /* OBSOLETE, do not use! */
-  CURLOPT(CURLOPT_OBSOLETE72, CURLOPTTYPE_LONG, 72),
-
-  /* 73 = OBSOLETE */
-
-  /* Set to explicitly use a new connection for the upcoming transfer.
-     Do not use this unless you're absolutely sure of this, as it makes the
-     operation slower and is less friendly for the network. */
-  CURLOPT(CURLOPT_FRESH_CONNECT, CURLOPTTYPE_LONG, 74),
-
-  /* Set to explicitly forbid the upcoming transfer's connection to be re-used
-     when done. Do not use this unless you're absolutely sure of this, as it
-     makes the operation slower and is less friendly for the network. */
-  CURLOPT(CURLOPT_FORBID_REUSE, CURLOPTTYPE_LONG, 75),
-
-  /* Set to a file name that contains random data for libcurl to use to
-     seed the random engine when doing SSL connects. */
-  CURLOPT(CURLOPT_RANDOM_FILE, CURLOPTTYPE_STRINGPOINT, 76),
-
-  /* Set to the Entropy Gathering Daemon socket pathname */
-  CURLOPT(CURLOPT_EGDSOCKET, CURLOPTTYPE_STRINGPOINT, 77),
-
-  /* Time-out connect operations after this amount of seconds, if connects are
-     OK within this time, then fine... This only aborts the connect phase. */
-  CURLOPT(CURLOPT_CONNECTTIMEOUT, CURLOPTTYPE_LONG, 78),
-
-  /* Function that will be called to store headers (instead of fwrite). The
-   * parameters will use fwrite() syntax, make sure to follow them. */
-  CURLOPT(CURLOPT_HEADERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 79),
-
-  /* Set this to force the HTTP request to get back to GET. Only really usable
-     if POST, PUT or a custom request have been used first.
-   */
-  CURLOPT(CURLOPT_HTTPGET, CURLOPTTYPE_LONG, 80),
-
-  /* Set if we should verify the Common name from the peer certificate in ssl
-   * handshake, set 1 to check existence, 2 to ensure that it matches the
-   * provided hostname. */
-  CURLOPT(CURLOPT_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 81),
-
-  /* Specify which file name to write all known cookies in after completed
-     operation. Set file name to "-" (dash) to make it go to stdout. */
-  CURLOPT(CURLOPT_COOKIEJAR, CURLOPTTYPE_STRINGPOINT, 82),
-
-  /* Specify which SSL ciphers to use */
-  CURLOPT(CURLOPT_SSL_CIPHER_LIST, CURLOPTTYPE_STRINGPOINT, 83),
-
-  /* Specify which HTTP version to use! This must be set to one of the
-     CURL_HTTP_VERSION* enums set below. */
-  CURLOPT(CURLOPT_HTTP_VERSION, CURLOPTTYPE_VALUES, 84),
-
-  /* Specifically switch on or off the FTP engine's use of the EPSV command. By
-     default, that one will always be attempted before the more traditional
-     PASV command. */
-  CURLOPT(CURLOPT_FTP_USE_EPSV, CURLOPTTYPE_LONG, 85),
-
-  /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") */
-  CURLOPT(CURLOPT_SSLCERTTYPE, CURLOPTTYPE_STRINGPOINT, 86),
-
-  /* name of the file keeping your private SSL-key */
-  CURLOPT(CURLOPT_SSLKEY, CURLOPTTYPE_STRINGPOINT, 87),
-
-  /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */
-  CURLOPT(CURLOPT_SSLKEYTYPE, CURLOPTTYPE_STRINGPOINT, 88),
-
-  /* crypto engine for the SSL-sub system */
-  CURLOPT(CURLOPT_SSLENGINE, CURLOPTTYPE_STRINGPOINT, 89),
-
-  /* set the crypto engine for the SSL-sub system as default
-     the param has no meaning...
-   */
-  CURLOPT(CURLOPT_SSLENGINE_DEFAULT, CURLOPTTYPE_LONG, 90),
-
-  /* Non-zero value means to use the global dns cache */
-  /* DEPRECATED, do not use! */
-  CURLOPT(CURLOPT_DNS_USE_GLOBAL_CACHE, CURLOPTTYPE_LONG, 91),
-
-  /* DNS cache timeout */
-  CURLOPT(CURLOPT_DNS_CACHE_TIMEOUT, CURLOPTTYPE_LONG, 92),
-
-  /* send linked-list of pre-transfer QUOTE commands */
-  CURLOPT(CURLOPT_PREQUOTE, CURLOPTTYPE_SLISTPOINT, 93),
-
-  /* set the debug function */
-  CURLOPT(CURLOPT_DEBUGFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 94),
-
-  /* set the data for the debug function */
-  CURLOPT(CURLOPT_DEBUGDATA, CURLOPTTYPE_CBPOINT, 95),
-
-  /* mark this as start of a cookie session */
-  CURLOPT(CURLOPT_COOKIESESSION, CURLOPTTYPE_LONG, 96),
-
-  /* The CApath directory used to validate the peer certificate
-     this option is used only if SSL_VERIFYPEER is true */
-  CURLOPT(CURLOPT_CAPATH, CURLOPTTYPE_STRINGPOINT, 97),
-
-  /* Instruct libcurl to use a smaller receive buffer */
-  CURLOPT(CURLOPT_BUFFERSIZE, CURLOPTTYPE_LONG, 98),
-
-  /* Instruct libcurl to not use any signal/alarm handlers, even when using
-     timeouts. This option is useful for multi-threaded applications.
-     See libcurl-the-guide for more background information. */
-  CURLOPT(CURLOPT_NOSIGNAL, CURLOPTTYPE_LONG, 99),
-
-  /* Provide a CURLShare for mutexing non-ts data */
-  CURLOPT(CURLOPT_SHARE, CURLOPTTYPE_OBJECTPOINT, 100),
-
-  /* indicates type of proxy. accepted values are CURLPROXY_HTTP (default),
-     CURLPROXY_HTTPS, CURLPROXY_SOCKS4, CURLPROXY_SOCKS4A and
-     CURLPROXY_SOCKS5. */
-  CURLOPT(CURLOPT_PROXYTYPE, CURLOPTTYPE_VALUES, 101),
-
-  /* Set the Accept-Encoding string. Use this to tell a server you would like
-     the response to be compressed. Before 7.21.6, this was known as
-     CURLOPT_ENCODING */
-  CURLOPT(CURLOPT_ACCEPT_ENCODING, CURLOPTTYPE_STRINGPOINT, 102),
-
-  /* Set pointer to private data */
-  CURLOPT(CURLOPT_PRIVATE, CURLOPTTYPE_OBJECTPOINT, 103),
-
-  /* Set aliases for HTTP 200 in the HTTP Response header */
-  CURLOPT(CURLOPT_HTTP200ALIASES, CURLOPTTYPE_SLISTPOINT, 104),
-
-  /* Continue to send authentication (user+password) when following locations,
-     even when hostname changed. This can potentially send off the name
-     and password to whatever host the server decides. */
-  CURLOPT(CURLOPT_UNRESTRICTED_AUTH, CURLOPTTYPE_LONG, 105),
-
-  /* Specifically switch on or off the FTP engine's use of the EPRT command (
-     it also disables the LPRT attempt). By default, those ones will always be
-     attempted before the good old traditional PORT command. */
-  CURLOPT(CURLOPT_FTP_USE_EPRT, CURLOPTTYPE_LONG, 106),
-
-  /* Set this to a bitmask value to enable the particular authentications
-     methods you like. Use this in combination with CURLOPT_USERPWD.
-     Note that setting multiple bits may cause extra network round-trips. */
-  CURLOPT(CURLOPT_HTTPAUTH, CURLOPTTYPE_VALUES, 107),
-
-  /* Set the ssl context callback function, currently only for OpenSSL or
-     WolfSSL ssl_ctx, or mbedTLS mbedtls_ssl_config in the second argument.
-     The function must match the curl_ssl_ctx_callback prototype. */
-  CURLOPT(CURLOPT_SSL_CTX_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 108),
-
-  /* Set the userdata for the ssl context callback function's third
-     argument */
-  CURLOPT(CURLOPT_SSL_CTX_DATA, CURLOPTTYPE_CBPOINT, 109),
-
-  /* FTP Option that causes missing dirs to be created on the remote server.
-     In 7.19.4 we introduced the convenience enums for this option using the
-     CURLFTP_CREATE_DIR prefix.
-  */
-  CURLOPT(CURLOPT_FTP_CREATE_MISSING_DIRS, CURLOPTTYPE_LONG, 110),
-
-  /* Set this to a bitmask value to enable the particular authentications
-     methods you like. Use this in combination with CURLOPT_PROXYUSERPWD.
-     Note that setting multiple bits may cause extra network round-trips. */
-  CURLOPT(CURLOPT_PROXYAUTH, CURLOPTTYPE_VALUES, 111),
-
-  /* FTP option that changes the timeout, in seconds, associated with
-     getting a response.  This is different from transfer timeout time and
-     essentially places a demand on the FTP server to acknowledge commands
-     in a timely manner. */
-  CURLOPT(CURLOPT_FTP_RESPONSE_TIMEOUT, CURLOPTTYPE_LONG, 112),
-#define CURLOPT_SERVER_RESPONSE_TIMEOUT CURLOPT_FTP_RESPONSE_TIMEOUT
-
-  /* Set this option to one of the CURL_IPRESOLVE_* defines (see below) to
-     tell libcurl to use those IP versions only. This only has effect on
-     systems with support for more than one, i.e IPv4 _and_ IPv6. */
-  CURLOPT(CURLOPT_IPRESOLVE, CURLOPTTYPE_VALUES, 113),
-
-  /* Set this option to limit the size of a file that will be downloaded from
-     an HTTP or FTP server.
-
-     Note there is also _LARGE version which adds large file support for
-     platforms which have larger off_t sizes.  See MAXFILESIZE_LARGE below. */
-  CURLOPT(CURLOPT_MAXFILESIZE, CURLOPTTYPE_LONG, 114),
-
-  /* See the comment for INFILESIZE above, but in short, specifies
-   * the size of the file being uploaded.  -1 means unknown.
-   */
-  CURLOPT(CURLOPT_INFILESIZE_LARGE, CURLOPTTYPE_OFF_T, 115),
-
-  /* Sets the continuation offset.  There is also a CURLOPTTYPE_LONG version
-   * of this; look above for RESUME_FROM.
-   */
-  CURLOPT(CURLOPT_RESUME_FROM_LARGE, CURLOPTTYPE_OFF_T, 116),
-
-  /* Sets the maximum size of data that will be downloaded from
-   * an HTTP or FTP server.  See MAXFILESIZE above for the LONG version.
-   */
-  CURLOPT(CURLOPT_MAXFILESIZE_LARGE, CURLOPTTYPE_OFF_T, 117),
-
-  /* Set this option to the file name of your .netrc file you want libcurl
-     to parse (using the CURLOPT_NETRC option). If not set, libcurl will do
-     a poor attempt to find the user's home directory and check for a .netrc
-     file in there. */
-  CURLOPT(CURLOPT_NETRC_FILE, CURLOPTTYPE_STRINGPOINT, 118),
-
-  /* Enable SSL/TLS for FTP, pick one of:
-     CURLUSESSL_TRY     - try using SSL, proceed anyway otherwise
-     CURLUSESSL_CONTROL - SSL for the control connection or fail
-     CURLUSESSL_ALL     - SSL for all communication or fail
-  */
-  CURLOPT(CURLOPT_USE_SSL, CURLOPTTYPE_VALUES, 119),
-
-  /* The _LARGE version of the standard POSTFIELDSIZE option */
-  CURLOPT(CURLOPT_POSTFIELDSIZE_LARGE, CURLOPTTYPE_OFF_T, 120),
-
-  /* Enable/disable the TCP Nagle algorithm */
-  CURLOPT(CURLOPT_TCP_NODELAY, CURLOPTTYPE_LONG, 121),
-
-  /* 122 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-  /* 123 OBSOLETE. Gone in 7.16.0 */
-  /* 124 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-  /* 125 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-  /* 126 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */
-  /* 127 OBSOLETE. Gone in 7.16.0 */
-  /* 128 OBSOLETE. Gone in 7.16.0 */
-
-  /* When FTP over SSL/TLS is selected (with CURLOPT_USE_SSL), this option
-     can be used to change libcurl's default action which is to first try
-     "AUTH SSL" and then "AUTH TLS" in this order, and proceed when a OK
-     response has been received.
-
-     Available parameters are:
-     CURLFTPAUTH_DEFAULT - let libcurl decide
-     CURLFTPAUTH_SSL     - try "AUTH SSL" first, then TLS
-     CURLFTPAUTH_TLS     - try "AUTH TLS" first, then SSL
-  */
-  CURLOPT(CURLOPT_FTPSSLAUTH, CURLOPTTYPE_VALUES, 129),
-
-  CURLOPT(CURLOPT_IOCTLFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 130),
-  CURLOPT(CURLOPT_IOCTLDATA, CURLOPTTYPE_CBPOINT, 131),
-
-  /* 132 OBSOLETE. Gone in 7.16.0 */
-  /* 133 OBSOLETE. Gone in 7.16.0 */
-
-  /* null-terminated string for pass on to the FTP server when asked for
-     "account" info */
-  CURLOPT(CURLOPT_FTP_ACCOUNT, CURLOPTTYPE_STRINGPOINT, 134),
-
-  /* feed cookie into cookie engine */
-  CURLOPT(CURLOPT_COOKIELIST, CURLOPTTYPE_STRINGPOINT, 135),
-
-  /* ignore Content-Length */
-  CURLOPT(CURLOPT_IGNORE_CONTENT_LENGTH, CURLOPTTYPE_LONG, 136),
-
-  /* Set to non-zero to skip the IP address received in a 227 PASV FTP server
-     response. Typically used for FTP-SSL purposes but is not restricted to
-     that. libcurl will then instead use the same IP address it used for the
-     control connection. */
-  CURLOPT(CURLOPT_FTP_SKIP_PASV_IP, CURLOPTTYPE_LONG, 137),
-
-  /* Select "file method" to use when doing FTP, see the curl_ftpmethod
-     above. */
-  CURLOPT(CURLOPT_FTP_FILEMETHOD, CURLOPTTYPE_VALUES, 138),
-
-  /* Local port number to bind the socket to */
-  CURLOPT(CURLOPT_LOCALPORT, CURLOPTTYPE_LONG, 139),
-
-  /* Number of ports to try, including the first one set with LOCALPORT.
-     Thus, setting it to 1 will make no additional attempts but the first.
-  */
-  CURLOPT(CURLOPT_LOCALPORTRANGE, CURLOPTTYPE_LONG, 140),
-
-  /* no transfer, set up connection and let application use the socket by
-     extracting it with CURLINFO_LASTSOCKET */
-  CURLOPT(CURLOPT_CONNECT_ONLY, CURLOPTTYPE_LONG, 141),
-
-  /* Function that will be called to convert from the
-     network encoding (instead of using the iconv calls in libcurl) */
-  CURLOPT(CURLOPT_CONV_FROM_NETWORK_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 142),
-
-  /* Function that will be called to convert to the
-     network encoding (instead of using the iconv calls in libcurl) */
-  CURLOPT(CURLOPT_CONV_TO_NETWORK_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 143),
-
-  /* Function that will be called to convert from UTF8
-     (instead of using the iconv calls in libcurl)
-     Note that this is used only for SSL certificate processing */
-  CURLOPT(CURLOPT_CONV_FROM_UTF8_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 144),
-
-  /* if the connection proceeds too quickly then need to slow it down */
-  /* limit-rate: maximum number of bytes per second to send or receive */
-  CURLOPT(CURLOPT_MAX_SEND_SPEED_LARGE, CURLOPTTYPE_OFF_T, 145),
-  CURLOPT(CURLOPT_MAX_RECV_SPEED_LARGE, CURLOPTTYPE_OFF_T, 146),
-
-  /* Pointer to command string to send if USER/PASS fails. */
-  CURLOPT(CURLOPT_FTP_ALTERNATIVE_TO_USER, CURLOPTTYPE_STRINGPOINT, 147),
-
-  /* callback function for setting socket options */
-  CURLOPT(CURLOPT_SOCKOPTFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 148),
-  CURLOPT(CURLOPT_SOCKOPTDATA, CURLOPTTYPE_CBPOINT, 149),
-
-  /* set to 0 to disable session ID re-use for this transfer, default is
-     enabled (== 1) */
-  CURLOPT(CURLOPT_SSL_SESSIONID_CACHE, CURLOPTTYPE_LONG, 150),
-
-  /* allowed SSH authentication methods */
-  CURLOPT(CURLOPT_SSH_AUTH_TYPES, CURLOPTTYPE_VALUES, 151),
-
-  /* Used by scp/sftp to do public/private key authentication */
-  CURLOPT(CURLOPT_SSH_PUBLIC_KEYFILE, CURLOPTTYPE_STRINGPOINT, 152),
-  CURLOPT(CURLOPT_SSH_PRIVATE_KEYFILE, CURLOPTTYPE_STRINGPOINT, 153),
-
-  /* Send CCC (Clear Command Channel) after authentication */
-  CURLOPT(CURLOPT_FTP_SSL_CCC, CURLOPTTYPE_LONG, 154),
-
-  /* Same as TIMEOUT and CONNECTTIMEOUT, but with ms resolution */
-  CURLOPT(CURLOPT_TIMEOUT_MS, CURLOPTTYPE_LONG, 155),
-  CURLOPT(CURLOPT_CONNECTTIMEOUT_MS, CURLOPTTYPE_LONG, 156),
-
-  /* set to zero to disable the libcurl's decoding and thus pass the raw body
-     data to the application even when it is encoded/compressed */
-  CURLOPT(CURLOPT_HTTP_TRANSFER_DECODING, CURLOPTTYPE_LONG, 157),
-  CURLOPT(CURLOPT_HTTP_CONTENT_DECODING, CURLOPTTYPE_LONG, 158),
-
-  /* Permission used when creating new files and directories on the remote
-     server for protocols that support it, SFTP/SCP/FILE */
-  CURLOPT(CURLOPT_NEW_FILE_PERMS, CURLOPTTYPE_LONG, 159),
-  CURLOPT(CURLOPT_NEW_DIRECTORY_PERMS, CURLOPTTYPE_LONG, 160),
-
-  /* Set the behavior of POST when redirecting. Values must be set to one
-     of CURL_REDIR* defines below. This used to be called CURLOPT_POST301 */
-  CURLOPT(CURLOPT_POSTREDIR, CURLOPTTYPE_VALUES, 161),
-
-  /* used by scp/sftp to verify the host's public key */
-  CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_MD5, CURLOPTTYPE_STRINGPOINT, 162),
-
-  /* Callback function for opening socket (instead of socket(2)). Optionally,
-     callback is able change the address or refuse to connect returning
-     CURL_SOCKET_BAD.  The callback should have type
-     curl_opensocket_callback */
-  CURLOPT(CURLOPT_OPENSOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 163),
-  CURLOPT(CURLOPT_OPENSOCKETDATA, CURLOPTTYPE_CBPOINT, 164),
-
-  /* POST volatile input fields. */
-  CURLOPT(CURLOPT_COPYPOSTFIELDS, CURLOPTTYPE_OBJECTPOINT, 165),
-
-  /* set transfer mode (;type=<a|i>) when doing FTP via an HTTP proxy */
-  CURLOPT(CURLOPT_PROXY_TRANSFER_MODE, CURLOPTTYPE_LONG, 166),
-
-  /* Callback function for seeking in the input stream */
-  CURLOPT(CURLOPT_SEEKFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 167),
-  CURLOPT(CURLOPT_SEEKDATA, CURLOPTTYPE_CBPOINT, 168),
-
-  /* CRL file */
-  CURLOPT(CURLOPT_CRLFILE, CURLOPTTYPE_STRINGPOINT, 169),
-
-  /* Issuer certificate */
-  CURLOPT(CURLOPT_ISSUERCERT, CURLOPTTYPE_STRINGPOINT, 170),
-
-  /* (IPv6) Address scope */
-  CURLOPT(CURLOPT_ADDRESS_SCOPE, CURLOPTTYPE_LONG, 171),
-
-  /* Collect certificate chain info and allow it to get retrievable with
-     CURLINFO_CERTINFO after the transfer is complete. */
-  CURLOPT(CURLOPT_CERTINFO, CURLOPTTYPE_LONG, 172),
-
-  /* "name" and "pwd" to use when fetching. */
-  CURLOPT(CURLOPT_USERNAME, CURLOPTTYPE_STRINGPOINT, 173),
-  CURLOPT(CURLOPT_PASSWORD, CURLOPTTYPE_STRINGPOINT, 174),
-
-    /* "name" and "pwd" to use with Proxy when fetching. */
-  CURLOPT(CURLOPT_PROXYUSERNAME, CURLOPTTYPE_STRINGPOINT, 175),
-  CURLOPT(CURLOPT_PROXYPASSWORD, CURLOPTTYPE_STRINGPOINT, 176),
-
-  /* Comma separated list of hostnames defining no-proxy zones. These should
-     match both hostnames directly, and hostnames within a domain. For
-     example, local.com will match local.com and www.local.com, but NOT
-     notlocal.com or www.notlocal.com. For compatibility with other
-     implementations of this, .local.com will be considered to be the same as
-     local.com. A single * is the only valid wildcard, and effectively
-     disables the use of proxy. */
-  CURLOPT(CURLOPT_NOPROXY, CURLOPTTYPE_STRINGPOINT, 177),
-
-  /* block size for TFTP transfers */
-  CURLOPT(CURLOPT_TFTP_BLKSIZE, CURLOPTTYPE_LONG, 178),
-
-  /* Socks Service */
-  /* DEPRECATED, do not use! */
-  CURLOPT(CURLOPT_SOCKS5_GSSAPI_SERVICE, CURLOPTTYPE_STRINGPOINT, 179),
-
-  /* Socks Service */
-  CURLOPT(CURLOPT_SOCKS5_GSSAPI_NEC, CURLOPTTYPE_LONG, 180),
-
-  /* set the bitmask for the protocols that are allowed to be used for the
-     transfer, which thus helps the app which takes URLs from users or other
-     external inputs and want to restrict what protocol(s) to deal
-     with. Defaults to CURLPROTO_ALL. */
-  CURLOPT(CURLOPT_PROTOCOLS, CURLOPTTYPE_LONG, 181),
-
-  /* set the bitmask for the protocols that libcurl is allowed to follow to,
-     as a subset of the CURLOPT_PROTOCOLS ones. That means the protocol needs
-     to be set in both bitmasks to be allowed to get redirected to. */
-  CURLOPT(CURLOPT_REDIR_PROTOCOLS, CURLOPTTYPE_LONG, 182),
-
-  /* set the SSH knownhost file name to use */
-  CURLOPT(CURLOPT_SSH_KNOWNHOSTS, CURLOPTTYPE_STRINGPOINT, 183),
-
-  /* set the SSH host key callback, must point to a curl_sshkeycallback
-     function */
-  CURLOPT(CURLOPT_SSH_KEYFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 184),
-
-  /* set the SSH host key callback custom pointer */
-  CURLOPT(CURLOPT_SSH_KEYDATA, CURLOPTTYPE_CBPOINT, 185),
-
-  /* set the SMTP mail originator */
-  CURLOPT(CURLOPT_MAIL_FROM, CURLOPTTYPE_STRINGPOINT, 186),
-
-  /* set the list of SMTP mail receiver(s) */
-  CURLOPT(CURLOPT_MAIL_RCPT, CURLOPTTYPE_SLISTPOINT, 187),
-
-  /* FTP: send PRET before PASV */
-  CURLOPT(CURLOPT_FTP_USE_PRET, CURLOPTTYPE_LONG, 188),
-
-  /* RTSP request method (OPTIONS, SETUP, PLAY, etc...) */
-  CURLOPT(CURLOPT_RTSP_REQUEST, CURLOPTTYPE_VALUES, 189),
-
-  /* The RTSP session identifier */
-  CURLOPT(CURLOPT_RTSP_SESSION_ID, CURLOPTTYPE_STRINGPOINT, 190),
-
-  /* The RTSP stream URI */
-  CURLOPT(CURLOPT_RTSP_STREAM_URI, CURLOPTTYPE_STRINGPOINT, 191),
-
-  /* The Transport: header to use in RTSP requests */
-  CURLOPT(CURLOPT_RTSP_TRANSPORT, CURLOPTTYPE_STRINGPOINT, 192),
-
-  /* Manually initialize the client RTSP CSeq for this handle */
-  CURLOPT(CURLOPT_RTSP_CLIENT_CSEQ, CURLOPTTYPE_LONG, 193),
-
-  /* Manually initialize the server RTSP CSeq for this handle */
-  CURLOPT(CURLOPT_RTSP_SERVER_CSEQ, CURLOPTTYPE_LONG, 194),
-
-  /* The stream to pass to INTERLEAVEFUNCTION. */
-  CURLOPT(CURLOPT_INTERLEAVEDATA, CURLOPTTYPE_CBPOINT, 195),
-
-  /* Let the application define a custom write method for RTP data */
-  CURLOPT(CURLOPT_INTERLEAVEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 196),
-
-  /* Turn on wildcard matching */
-  CURLOPT(CURLOPT_WILDCARDMATCH, CURLOPTTYPE_LONG, 197),
-
-  /* Directory matching callback called before downloading of an
-     individual file (chunk) started */
-  CURLOPT(CURLOPT_CHUNK_BGN_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 198),
-
-  /* Directory matching callback called after the file (chunk)
-     was downloaded, or skipped */
-  CURLOPT(CURLOPT_CHUNK_END_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 199),
-
-  /* Change match (fnmatch-like) callback for wildcard matching */
-  CURLOPT(CURLOPT_FNMATCH_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 200),
-
-  /* Let the application define custom chunk data pointer */
-  CURLOPT(CURLOPT_CHUNK_DATA, CURLOPTTYPE_CBPOINT, 201),
-
-  /* FNMATCH_FUNCTION user pointer */
-  CURLOPT(CURLOPT_FNMATCH_DATA, CURLOPTTYPE_CBPOINT, 202),
-
-  /* send linked-list of name:port:address sets */
-  CURLOPT(CURLOPT_RESOLVE, CURLOPTTYPE_SLISTPOINT, 203),
-
-  /* Set a username for authenticated TLS */
-  CURLOPT(CURLOPT_TLSAUTH_USERNAME, CURLOPTTYPE_STRINGPOINT, 204),
-
-  /* Set a password for authenticated TLS */
-  CURLOPT(CURLOPT_TLSAUTH_PASSWORD, CURLOPTTYPE_STRINGPOINT, 205),
-
-  /* Set authentication type for authenticated TLS */
-  CURLOPT(CURLOPT_TLSAUTH_TYPE, CURLOPTTYPE_STRINGPOINT, 206),
-
-  /* Set to 1 to enable the "TE:" header in HTTP requests to ask for
-     compressed transfer-encoded responses. Set to 0 to disable the use of TE:
-     in outgoing requests. The current default is 0, but it might change in a
-     future libcurl release.
-
-     libcurl will ask for the compressed methods it knows of, and if that
-     isn't any, it will not ask for transfer-encoding at all even if this
-     option is set to 1.
-
-  */
-  CURLOPT(CURLOPT_TRANSFER_ENCODING, CURLOPTTYPE_LONG, 207),
-
-  /* Callback function for closing socket (instead of close(2)). The callback
-     should have type curl_closesocket_callback */
-  CURLOPT(CURLOPT_CLOSESOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 208),
-  CURLOPT(CURLOPT_CLOSESOCKETDATA, CURLOPTTYPE_CBPOINT, 209),
-
-  /* allow GSSAPI credential delegation */
-  CURLOPT(CURLOPT_GSSAPI_DELEGATION, CURLOPTTYPE_VALUES, 210),
-
-  /* Set the name servers to use for DNS resolution */
-  CURLOPT(CURLOPT_DNS_SERVERS, CURLOPTTYPE_STRINGPOINT, 211),
-
-  /* Time-out accept operations (currently for FTP only) after this amount
-     of milliseconds. */
-  CURLOPT(CURLOPT_ACCEPTTIMEOUT_MS, CURLOPTTYPE_LONG, 212),
-
-  /* Set TCP keepalive */
-  CURLOPT(CURLOPT_TCP_KEEPALIVE, CURLOPTTYPE_LONG, 213),
-
-  /* non-universal keepalive knobs (Linux, AIX, HP-UX, more) */
-  CURLOPT(CURLOPT_TCP_KEEPIDLE, CURLOPTTYPE_LONG, 214),
-  CURLOPT(CURLOPT_TCP_KEEPINTVL, CURLOPTTYPE_LONG, 215),
-
-  /* Enable/disable specific SSL features with a bitmask, see CURLSSLOPT_* */
-  CURLOPT(CURLOPT_SSL_OPTIONS, CURLOPTTYPE_VALUES, 216),
-
-  /* Set the SMTP auth originator */
-  CURLOPT(CURLOPT_MAIL_AUTH, CURLOPTTYPE_STRINGPOINT, 217),
-
-  /* Enable/disable SASL initial response */
-  CURLOPT(CURLOPT_SASL_IR, CURLOPTTYPE_LONG, 218),
-
-  /* Function that will be called instead of the internal progress display
-   * function. This function should be defined as the curl_xferinfo_callback
-   * prototype defines. (Deprecates CURLOPT_PROGRESSFUNCTION) */
-  CURLOPT(CURLOPT_XFERINFOFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 219),
-
-  /* The XOAUTH2 bearer token */
-  CURLOPT(CURLOPT_XOAUTH2_BEARER, CURLOPTTYPE_STRINGPOINT, 220),
-
-  /* Set the interface string to use as outgoing network
-   * interface for DNS requests.
-   * Only supported by the c-ares DNS backend */
-  CURLOPT(CURLOPT_DNS_INTERFACE, CURLOPTTYPE_STRINGPOINT, 221),
-
-  /* Set the local IPv4 address to use for outgoing DNS requests.
-   * Only supported by the c-ares DNS backend */
-  CURLOPT(CURLOPT_DNS_LOCAL_IP4, CURLOPTTYPE_STRINGPOINT, 222),
-
-  /* Set the local IPv6 address to use for outgoing DNS requests.
-   * Only supported by the c-ares DNS backend */
-  CURLOPT(CURLOPT_DNS_LOCAL_IP6, CURLOPTTYPE_STRINGPOINT, 223),
-
-  /* Set authentication options directly */
-  CURLOPT(CURLOPT_LOGIN_OPTIONS, CURLOPTTYPE_STRINGPOINT, 224),
-
-  /* Enable/disable TLS NPN extension (http2 over ssl might fail without) */
-  CURLOPT(CURLOPT_SSL_ENABLE_NPN, CURLOPTTYPE_LONG, 225),
-
-  /* Enable/disable TLS ALPN extension (http2 over ssl might fail without) */
-  CURLOPT(CURLOPT_SSL_ENABLE_ALPN, CURLOPTTYPE_LONG, 226),
-
-  /* Time to wait for a response to a HTTP request containing an
-   * Expect: 100-continue header before sending the data anyway. */
-  CURLOPT(CURLOPT_EXPECT_100_TIMEOUT_MS, CURLOPTTYPE_LONG, 227),
-
-  /* This points to a linked list of headers used for proxy requests only,
-     struct curl_slist kind */
-  CURLOPT(CURLOPT_PROXYHEADER, CURLOPTTYPE_SLISTPOINT, 228),
-
-  /* Pass in a bitmask of "header options" */
-  CURLOPT(CURLOPT_HEADEROPT, CURLOPTTYPE_VALUES, 229),
-
-  /* The public key in DER form used to validate the peer public key
-     this option is used only if SSL_VERIFYPEER is true */
-  CURLOPT(CURLOPT_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 230),
-
-  /* Path to Unix domain socket */
-  CURLOPT(CURLOPT_UNIX_SOCKET_PATH, CURLOPTTYPE_STRINGPOINT, 231),
-
-  /* Set if we should verify the certificate status. */
-  CURLOPT(CURLOPT_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 232),
-
-  /* Set if we should enable TLS false start. */
-  CURLOPT(CURLOPT_SSL_FALSESTART, CURLOPTTYPE_LONG, 233),
-
-  /* Do not squash dot-dot sequences */
-  CURLOPT(CURLOPT_PATH_AS_IS, CURLOPTTYPE_LONG, 234),
-
-  /* Proxy Service Name */
-  CURLOPT(CURLOPT_PROXY_SERVICE_NAME, CURLOPTTYPE_STRINGPOINT, 235),
-
-  /* Service Name */
-  CURLOPT(CURLOPT_SERVICE_NAME, CURLOPTTYPE_STRINGPOINT, 236),
-
-  /* Wait/don't wait for pipe/mutex to clarify */
-  CURLOPT(CURLOPT_PIPEWAIT, CURLOPTTYPE_LONG, 237),
-
-  /* Set the protocol used when curl is given a URL without a protocol */
-  CURLOPT(CURLOPT_DEFAULT_PROTOCOL, CURLOPTTYPE_STRINGPOINT, 238),
-
-  /* Set stream weight, 1 - 256 (default is 16) */
-  CURLOPT(CURLOPT_STREAM_WEIGHT, CURLOPTTYPE_LONG, 239),
-
-  /* Set stream dependency on another CURL handle */
-  CURLOPT(CURLOPT_STREAM_DEPENDS, CURLOPTTYPE_OBJECTPOINT, 240),
-
-  /* Set E-xclusive stream dependency on another CURL handle */
-  CURLOPT(CURLOPT_STREAM_DEPENDS_E, CURLOPTTYPE_OBJECTPOINT, 241),
-
-  /* Do not send any tftp option requests to the server */
-  CURLOPT(CURLOPT_TFTP_NO_OPTIONS, CURLOPTTYPE_LONG, 242),
-
-  /* Linked-list of host:port:connect-to-host:connect-to-port,
-     overrides the URL's host:port (only for the network layer) */
-  CURLOPT(CURLOPT_CONNECT_TO, CURLOPTTYPE_SLISTPOINT, 243),
-
-  /* Set TCP Fast Open */
-  CURLOPT(CURLOPT_TCP_FASTOPEN, CURLOPTTYPE_LONG, 244),
-
-  /* Continue to send data if the server responds early with an
-   * HTTP status code >= 300 */
-  CURLOPT(CURLOPT_KEEP_SENDING_ON_ERROR, CURLOPTTYPE_LONG, 245),
-
-  /* The CApath or CAfile used to validate the proxy certificate
-     this option is used only if PROXY_SSL_VERIFYPEER is true */
-  CURLOPT(CURLOPT_PROXY_CAINFO, CURLOPTTYPE_STRINGPOINT, 246),
-
-  /* The CApath directory used to validate the proxy certificate
-     this option is used only if PROXY_SSL_VERIFYPEER is true */
-  CURLOPT(CURLOPT_PROXY_CAPATH, CURLOPTTYPE_STRINGPOINT, 247),
-
-  /* Set if we should verify the proxy in ssl handshake,
-     set 1 to verify. */
-  CURLOPT(CURLOPT_PROXY_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 248),
-
-  /* Set if we should verify the Common name from the proxy certificate in ssl
-   * handshake, set 1 to check existence, 2 to ensure that it matches
-   * the provided hostname. */
-  CURLOPT(CURLOPT_PROXY_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 249),
-
-  /* What version to specifically try to use for proxy.
-     See CURL_SSLVERSION defines below. */
-  CURLOPT(CURLOPT_PROXY_SSLVERSION, CURLOPTTYPE_VALUES, 250),
-
-  /* Set a username for authenticated TLS for proxy */
-  CURLOPT(CURLOPT_PROXY_TLSAUTH_USERNAME, CURLOPTTYPE_STRINGPOINT, 251),
-
-  /* Set a password for authenticated TLS for proxy */
-  CURLOPT(CURLOPT_PROXY_TLSAUTH_PASSWORD, CURLOPTTYPE_STRINGPOINT, 252),
-
-  /* Set authentication type for authenticated TLS for proxy */
-  CURLOPT(CURLOPT_PROXY_TLSAUTH_TYPE, CURLOPTTYPE_STRINGPOINT, 253),
-
-  /* name of the file keeping your private SSL-certificate for proxy */
-  CURLOPT(CURLOPT_PROXY_SSLCERT, CURLOPTTYPE_STRINGPOINT, 254),
-
-  /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") for
-     proxy */
-  CURLOPT(CURLOPT_PROXY_SSLCERTTYPE, CURLOPTTYPE_STRINGPOINT, 255),
-
-  /* name of the file keeping your private SSL-key for proxy */
-  CURLOPT(CURLOPT_PROXY_SSLKEY, CURLOPTTYPE_STRINGPOINT, 256),
-
-  /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") for
-     proxy */
-  CURLOPT(CURLOPT_PROXY_SSLKEYTYPE, CURLOPTTYPE_STRINGPOINT, 257),
-
-  /* password for the SSL private key for proxy */
-  CURLOPT(CURLOPT_PROXY_KEYPASSWD, CURLOPTTYPE_STRINGPOINT, 258),
-
-  /* Specify which SSL ciphers to use for proxy */
-  CURLOPT(CURLOPT_PROXY_SSL_CIPHER_LIST, CURLOPTTYPE_STRINGPOINT, 259),
-
-  /* CRL file for proxy */
-  CURLOPT(CURLOPT_PROXY_CRLFILE, CURLOPTTYPE_STRINGPOINT, 260),
-
-  /* Enable/disable specific SSL features with a bitmask for proxy, see
-     CURLSSLOPT_* */
-  CURLOPT(CURLOPT_PROXY_SSL_OPTIONS, CURLOPTTYPE_LONG, 261),
-
-  /* Name of pre proxy to use. */
-  CURLOPT(CURLOPT_PRE_PROXY, CURLOPTTYPE_STRINGPOINT, 262),
-
-  /* The public key in DER form used to validate the proxy public key
-     this option is used only if PROXY_SSL_VERIFYPEER is true */
-  CURLOPT(CURLOPT_PROXY_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 263),
-
-  /* Path to an abstract Unix domain socket */
-  CURLOPT(CURLOPT_ABSTRACT_UNIX_SOCKET, CURLOPTTYPE_STRINGPOINT, 264),
-
-  /* Suppress proxy CONNECT response headers from user callbacks */
-  CURLOPT(CURLOPT_SUPPRESS_CONNECT_HEADERS, CURLOPTTYPE_LONG, 265),
-
-  /* The request target, instead of extracted from the URL */
-  CURLOPT(CURLOPT_REQUEST_TARGET, CURLOPTTYPE_STRINGPOINT, 266),
-
-  /* bitmask of allowed auth methods for connections to SOCKS5 proxies */
-  CURLOPT(CURLOPT_SOCKS5_AUTH, CURLOPTTYPE_LONG, 267),
-
-  /* Enable/disable SSH compression */
-  CURLOPT(CURLOPT_SSH_COMPRESSION, CURLOPTTYPE_LONG, 268),
-
-  /* Post MIME data. */
-  CURLOPT(CURLOPT_MIMEPOST, CURLOPTTYPE_OBJECTPOINT, 269),
-
-  /* Time to use with the CURLOPT_TIMECONDITION. Specified in number of
-     seconds since 1 Jan 1970. */
-  CURLOPT(CURLOPT_TIMEVALUE_LARGE, CURLOPTTYPE_OFF_T, 270),
-
-  /* Head start in milliseconds to give happy eyeballs. */
-  CURLOPT(CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS, CURLOPTTYPE_LONG, 271),
-
-  /* Function that will be called before a resolver request is made */
-  CURLOPT(CURLOPT_RESOLVER_START_FUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 272),
-
-  /* User data to pass to the resolver start callback. */
-  CURLOPT(CURLOPT_RESOLVER_START_DATA, CURLOPTTYPE_CBPOINT, 273),
-
-  /* send HAProxy PROXY protocol header? */
-  CURLOPT(CURLOPT_HAPROXYPROTOCOL, CURLOPTTYPE_LONG, 274),
-
-  /* shuffle addresses before use when DNS returns multiple */
-  CURLOPT(CURLOPT_DNS_SHUFFLE_ADDRESSES, CURLOPTTYPE_LONG, 275),
-
-  /* Specify which TLS 1.3 ciphers suites to use */
-  CURLOPT(CURLOPT_TLS13_CIPHERS, CURLOPTTYPE_STRINGPOINT, 276),
-  CURLOPT(CURLOPT_PROXY_TLS13_CIPHERS, CURLOPTTYPE_STRINGPOINT, 277),
-
-  /* Disallow specifying username/login in URL. */
-  CURLOPT(CURLOPT_DISALLOW_USERNAME_IN_URL, CURLOPTTYPE_LONG, 278),
-
-  /* DNS-over-HTTPS URL */
-  CURLOPT(CURLOPT_DOH_URL, CURLOPTTYPE_STRINGPOINT, 279),
-
-  /* Preferred buffer size to use for uploads */
-  CURLOPT(CURLOPT_UPLOAD_BUFFERSIZE, CURLOPTTYPE_LONG, 280),
-
-  /* Time in ms between connection upkeep calls for long-lived connections. */
-  CURLOPT(CURLOPT_UPKEEP_INTERVAL_MS, CURLOPTTYPE_LONG, 281),
-
-  /* Specify URL using CURL URL API. */
-  CURLOPT(CURLOPT_CURLU, CURLOPTTYPE_OBJECTPOINT, 282),
-
-  /* add trailing data just after no more data is available */
-  CURLOPT(CURLOPT_TRAILERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 283),
-
-  /* pointer to be passed to HTTP_TRAILER_FUNCTION */
-  CURLOPT(CURLOPT_TRAILERDATA, CURLOPTTYPE_CBPOINT, 284),
-
-  /* set this to 1L to allow HTTP/0.9 responses or 0L to disallow */
-  CURLOPT(CURLOPT_HTTP09_ALLOWED, CURLOPTTYPE_LONG, 285),
-
-  /* alt-svc control bitmask */
-  CURLOPT(CURLOPT_ALTSVC_CTRL, CURLOPTTYPE_LONG, 286),
-
-  /* alt-svc cache file name to possibly read from/write to */
-  CURLOPT(CURLOPT_ALTSVC, CURLOPTTYPE_STRINGPOINT, 287),
-
-  /* maximum age (idle time) of a connection to consider it for reuse
-   * (in seconds) */
-  CURLOPT(CURLOPT_MAXAGE_CONN, CURLOPTTYPE_LONG, 288),
-
-  /* SASL authorization identity */
-  CURLOPT(CURLOPT_SASL_AUTHZID, CURLOPTTYPE_STRINGPOINT, 289),
-
-  /* allow RCPT TO command to fail for some recipients */
-  CURLOPT(CURLOPT_MAIL_RCPT_ALLLOWFAILS, CURLOPTTYPE_LONG, 290),
-
-  /* the private SSL-certificate as a "blob" */
-  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),
-
-  /* Issuer certificate for proxy */
-  CURLOPT(CURLOPT_PROXY_ISSUERCERT, CURLOPTTYPE_STRINGPOINT, 296),
-  CURLOPT(CURLOPT_PROXY_ISSUERCERT_BLOB, CURLOPTTYPE_BLOB, 297),
-
-  /* the EC curves requested by the TLS client (RFC 8422, 5.1);
-   * OpenSSL support via 'set_groups'/'set_curves':
-   * https://www.openssl.org/docs/manmaster/man3/SSL_CTX_set1_groups.html
-   */
-  CURLOPT(CURLOPT_SSL_EC_CURVES, CURLOPTTYPE_STRINGPOINT, 298),
-
-  /* HSTS bitmask */
-  CURLOPT(CURLOPT_HSTS_CTRL, CURLOPTTYPE_LONG, 299),
-  /* HSTS file name */
-  CURLOPT(CURLOPT_HSTS, CURLOPTTYPE_STRINGPOINT, 300),
-
-  /* HSTS read callback */
-  CURLOPT(CURLOPT_HSTSREADFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 301),
-  CURLOPT(CURLOPT_HSTSREADDATA, CURLOPTTYPE_CBPOINT, 302),
-
-  /* HSTS write callback */
-  CURLOPT(CURLOPT_HSTSWRITEFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 303),
-  CURLOPT(CURLOPT_HSTSWRITEDATA, CURLOPTTYPE_CBPOINT, 304),
-
-  /* Parameters for V4 signature */
-  CURLOPT(CURLOPT_AWS_SIGV4, CURLOPTTYPE_STRINGPOINT, 305),
-
-  /* Same as CURLOPT_SSL_VERIFYPEER but for DoH (DNS-over-HTTPS) servers. */
-  CURLOPT(CURLOPT_DOH_SSL_VERIFYPEER, CURLOPTTYPE_LONG, 306),
-
-  /* Same as CURLOPT_SSL_VERIFYHOST but for DoH (DNS-over-HTTPS) servers. */
-  CURLOPT(CURLOPT_DOH_SSL_VERIFYHOST, CURLOPTTYPE_LONG, 307),
-
-  /* Same as CURLOPT_SSL_VERIFYSTATUS but for DoH (DNS-over-HTTPS) servers. */
-  CURLOPT(CURLOPT_DOH_SSL_VERIFYSTATUS, CURLOPTTYPE_LONG, 308),
-
-  /* The CA certificates as "blob" used to validate the peer certificate
-     this option is used only if SSL_VERIFYPEER is true */
-  CURLOPT(CURLOPT_CAINFO_BLOB, CURLOPTTYPE_BLOB, 309),
-
-  /* The CA certificates as "blob" used to validate the proxy certificate
-     this option is used only if PROXY_SSL_VERIFYPEER is true */
-  CURLOPT(CURLOPT_PROXY_CAINFO_BLOB, CURLOPTTYPE_BLOB, 310),
-
-  /* used by scp/sftp to verify the host's public key */
-  CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256, CURLOPTTYPE_STRINGPOINT, 311),
-
-  /* Function that will be called immediately before the initial request
-     is made on a connection (after any protocol negotiation step).  */
-  CURLOPT(CURLOPT_PREREQFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 312),
-
-  /* Data passed to the CURLOPT_PREREQFUNCTION callback */
-  CURLOPT(CURLOPT_PREREQDATA, CURLOPTTYPE_CBPOINT, 313),
-
-  /* maximum age (since creation) of a connection to consider it for reuse
-   * (in seconds) */
-  CURLOPT(CURLOPT_MAXLIFETIME_CONN, CURLOPTTYPE_LONG, 314),
-
-  /* Set MIME option flags. */
-  CURLOPT(CURLOPT_MIME_OPTIONS, CURLOPTTYPE_LONG, 315),
-
-  CURLOPT_LASTENTRY /* the last unused */
-} CURLoption;
-
-#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
-                          the obsolete stuff removed! */
-
-/* Backwards compatibility with older names */
-/* These are scheduled to disappear by 2011 */
-
-/* This was added in version 7.19.1 */
-#define CURLOPT_POST301 CURLOPT_POSTREDIR
-
-/* These are scheduled to disappear by 2009 */
-
-/* The following were added in 7.17.0 */
-#define CURLOPT_SSLKEYPASSWD CURLOPT_KEYPASSWD
-#define CURLOPT_FTPAPPEND CURLOPT_APPEND
-#define CURLOPT_FTPLISTONLY CURLOPT_DIRLISTONLY
-#define CURLOPT_FTP_SSL CURLOPT_USE_SSL
-
-/* The following were added earlier */
-
-#define CURLOPT_SSLCERTPASSWD CURLOPT_KEYPASSWD
-#define CURLOPT_KRB4LEVEL CURLOPT_KRBLEVEL
-
-#else
-/* This is set if CURL_NO_OLDIES is defined at compile-time */
-#undef CURLOPT_DNS_USE_GLOBAL_CACHE /* soon obsolete */
-#endif
-
-
-  /* Below here follows defines for the CURLOPT_IPRESOLVE option. If a host
-     name resolves addresses using more than one IP protocol version, this
-     option might be handy to force libcurl to use a specific IP version. */
-#define CURL_IPRESOLVE_WHATEVER 0 /* default, uses addresses to all IP
-                                     versions that your system allows */
-#define CURL_IPRESOLVE_V4       1 /* uses only IPv4 addresses/connections */
-#define CURL_IPRESOLVE_V6       2 /* uses only IPv6 addresses/connections */
-
-  /* three convenient "aliases" that follow the name scheme better */
-#define CURLOPT_RTSPHEADER CURLOPT_HTTPHEADER
-
-  /* These enums are for use with the CURLOPT_HTTP_VERSION option. */
-enum {
-  CURL_HTTP_VERSION_NONE, /* setting this means we don't care, and that we'd
-                             like the library to choose the best possible
-                             for us! */
-  CURL_HTTP_VERSION_1_0,  /* please use HTTP 1.0 in the request */
-  CURL_HTTP_VERSION_1_1,  /* please use HTTP 1.1 in the request */
-  CURL_HTTP_VERSION_2_0,  /* please use HTTP 2 in the request */
-  CURL_HTTP_VERSION_2TLS, /* use version 2 for HTTPS, version 1.1 for HTTP */
-  CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE,  /* please use HTTP 2 without HTTP/1.1
-                                           Upgrade */
-  CURL_HTTP_VERSION_3 = 30, /* Makes use of explicit HTTP/3 without fallback.
-                               Use CURLOPT_ALTSVC to enable HTTP/3 upgrade */
-  CURL_HTTP_VERSION_LAST /* *ILLEGAL* http version */
-};
-
-/* Convenience definition simple because the name of the version is HTTP/2 and
-   not 2.0. The 2_0 version of the enum name was set while the version was
-   still planned to be 2.0 and we stick to it for compatibility. */
-#define CURL_HTTP_VERSION_2 CURL_HTTP_VERSION_2_0
-
-/*
- * Public API enums for RTSP requests
- */
-enum {
-    CURL_RTSPREQ_NONE, /* first in list */
-    CURL_RTSPREQ_OPTIONS,
-    CURL_RTSPREQ_DESCRIBE,
-    CURL_RTSPREQ_ANNOUNCE,
-    CURL_RTSPREQ_SETUP,
-    CURL_RTSPREQ_PLAY,
-    CURL_RTSPREQ_PAUSE,
-    CURL_RTSPREQ_TEARDOWN,
-    CURL_RTSPREQ_GET_PARAMETER,
-    CURL_RTSPREQ_SET_PARAMETER,
-    CURL_RTSPREQ_RECORD,
-    CURL_RTSPREQ_RECEIVE,
-    CURL_RTSPREQ_LAST /* last in list */
-};
-
-  /* These enums are for use with the CURLOPT_NETRC option. */
-enum CURL_NETRC_OPTION {
-  CURL_NETRC_IGNORED,     /* The .netrc will never be read.
-                           * This is the default. */
-  CURL_NETRC_OPTIONAL,    /* A user:password in the URL will be preferred
-                           * to one in the .netrc. */
-  CURL_NETRC_REQUIRED,    /* A user:password in the URL will be ignored.
-                           * Unless one is set programmatically, the .netrc
-                           * will be queried. */
-  CURL_NETRC_LAST
-};
-
-enum {
-  CURL_SSLVERSION_DEFAULT,
-  CURL_SSLVERSION_TLSv1, /* TLS 1.x */
-  CURL_SSLVERSION_SSLv2,
-  CURL_SSLVERSION_SSLv3,
-  CURL_SSLVERSION_TLSv1_0,
-  CURL_SSLVERSION_TLSv1_1,
-  CURL_SSLVERSION_TLSv1_2,
-  CURL_SSLVERSION_TLSv1_3,
-
-  CURL_SSLVERSION_LAST /* never use, keep last */
-};
-
-enum {
-  CURL_SSLVERSION_MAX_NONE =     0,
-  CURL_SSLVERSION_MAX_DEFAULT =  (CURL_SSLVERSION_TLSv1   << 16),
-  CURL_SSLVERSION_MAX_TLSv1_0 =  (CURL_SSLVERSION_TLSv1_0 << 16),
-  CURL_SSLVERSION_MAX_TLSv1_1 =  (CURL_SSLVERSION_TLSv1_1 << 16),
-  CURL_SSLVERSION_MAX_TLSv1_2 =  (CURL_SSLVERSION_TLSv1_2 << 16),
-  CURL_SSLVERSION_MAX_TLSv1_3 =  (CURL_SSLVERSION_TLSv1_3 << 16),
-
-  /* never use, keep last */
-  CURL_SSLVERSION_MAX_LAST =     (CURL_SSLVERSION_LAST    << 16)
-};
-
-enum CURL_TLSAUTH {
-  CURL_TLSAUTH_NONE,
-  CURL_TLSAUTH_SRP,
-  CURL_TLSAUTH_LAST /* never use, keep last */
-};
-
-/* symbols to use with CURLOPT_POSTREDIR.
-   CURL_REDIR_POST_301, CURL_REDIR_POST_302 and CURL_REDIR_POST_303
-   can be bitwise ORed so that CURL_REDIR_POST_301 | CURL_REDIR_POST_302
-   | CURL_REDIR_POST_303 == CURL_REDIR_POST_ALL */
-
-#define CURL_REDIR_GET_ALL  0
-#define CURL_REDIR_POST_301 1
-#define CURL_REDIR_POST_302 2
-#define CURL_REDIR_POST_303 4
-#define CURL_REDIR_POST_ALL \
-    (CURL_REDIR_POST_301|CURL_REDIR_POST_302|CURL_REDIR_POST_303)
-
-typedef enum {
-  CURL_TIMECOND_NONE,
-
-  CURL_TIMECOND_IFMODSINCE,
-  CURL_TIMECOND_IFUNMODSINCE,
-  CURL_TIMECOND_LASTMOD,
-
-  CURL_TIMECOND_LAST
-} curl_TimeCond;
-
-/* Special size_t value signaling a null-terminated string. */
-#define CURL_ZERO_TERMINATED ((size_t) -1)
-
-/* curl_strequal() and curl_strnequal() are subject for removal in a future
-   release */
-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);
-
-/* Mime/form handling support. */
-typedef struct curl_mime      curl_mime;      /* Mime context. */
-typedef struct curl_mimepart  curl_mimepart;  /* Mime part context. */
-
-/* CURLMIMEOPT_ defines are for the CURLOPT_MIME_OPTIONS option. */
-#define CURLMIMEOPT_FORMESCAPE  (1<<0) /* Use backslash-escaping for forms. */
-
-/*
- * NAME curl_mime_init()
- *
- * DESCRIPTION
- *
- * Create a mime context and return its handle. The easy parameter is the
- * target handle.
- */
-CURL_EXTERN curl_mime *curl_mime_init(CURL *easy);
-
-/*
- * NAME curl_mime_free()
- *
- * DESCRIPTION
- *
- * release a mime handle and its substructures.
- */
-CURL_EXTERN void curl_mime_free(curl_mime *mime);
-
-/*
- * NAME curl_mime_addpart()
- *
- * DESCRIPTION
- *
- * Append a new empty part to the given mime context and return a handle to
- * the created part.
- */
-CURL_EXTERN curl_mimepart *curl_mime_addpart(curl_mime *mime);
-
-/*
- * NAME curl_mime_name()
- *
- * DESCRIPTION
- *
- * Set mime/form part name.
- */
-CURL_EXTERN CURLcode curl_mime_name(curl_mimepart *part, const char *name);
-
-/*
- * NAME curl_mime_filename()
- *
- * DESCRIPTION
- *
- * Set mime part remote file name.
- */
-CURL_EXTERN CURLcode curl_mime_filename(curl_mimepart *part,
-                                        const char *filename);
-
-/*
- * NAME curl_mime_type()
- *
- * DESCRIPTION
- *
- * Set mime part type.
- */
-CURL_EXTERN CURLcode curl_mime_type(curl_mimepart *part, const char *mimetype);
-
-/*
- * NAME curl_mime_encoder()
- *
- * DESCRIPTION
- *
- * Set mime data transfer encoder.
- */
-CURL_EXTERN CURLcode curl_mime_encoder(curl_mimepart *part,
-                                       const char *encoding);
-
-/*
- * NAME curl_mime_data()
- *
- * DESCRIPTION
- *
- * Set mime part data source from memory data,
- */
-CURL_EXTERN CURLcode curl_mime_data(curl_mimepart *part,
-                                    const char *data, size_t datasize);
-
-/*
- * NAME curl_mime_filedata()
- *
- * DESCRIPTION
- *
- * Set mime part data source from named file.
- */
-CURL_EXTERN CURLcode curl_mime_filedata(curl_mimepart *part,
-                                        const char *filename);
-
-/*
- * NAME curl_mime_data_cb()
- *
- * DESCRIPTION
- *
- * Set mime part data source from callback function.
- */
-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);
-
-/*
- * NAME curl_mime_subparts()
- *
- * DESCRIPTION
- *
- * Set mime part data source from subparts.
- */
-CURL_EXTERN CURLcode curl_mime_subparts(curl_mimepart *part,
-                                        curl_mime *subparts);
-/*
- * NAME curl_mime_headers()
- *
- * DESCRIPTION
- *
- * Set mime part headers.
- */
-CURL_EXTERN CURLcode curl_mime_headers(curl_mimepart *part,
-                                       struct curl_slist *headers,
-                                       int take_ownership);
-
-typedef enum {
-  CURLFORM_NOTHING,        /********* the first one is unused ************/
-  CURLFORM_COPYNAME,
-  CURLFORM_PTRNAME,
-  CURLFORM_NAMELENGTH,
-  CURLFORM_COPYCONTENTS,
-  CURLFORM_PTRCONTENTS,
-  CURLFORM_CONTENTSLENGTH,
-  CURLFORM_FILECONTENT,
-  CURLFORM_ARRAY,
-  CURLFORM_OBSOLETE,
-  CURLFORM_FILE,
-
-  CURLFORM_BUFFER,
-  CURLFORM_BUFFERPTR,
-  CURLFORM_BUFFERLENGTH,
-
-  CURLFORM_CONTENTTYPE,
-  CURLFORM_CONTENTHEADER,
-  CURLFORM_FILENAME,
-  CURLFORM_END,
-  CURLFORM_OBSOLETE2,
-
-  CURLFORM_STREAM,
-  CURLFORM_CONTENTLEN, /* added in 7.46.0, provide a curl_off_t length */
-
-  CURLFORM_LASTENTRY /* the last unused */
-} CURLformoption;
-
-/* structure to be used as parameter for CURLFORM_ARRAY */
-struct curl_forms {
-  CURLformoption option;
-  const char     *value;
-};
-
-/* use this for multipart formpost building */
-/* Returns code for curl_formadd()
- *
- * Returns:
- * CURL_FORMADD_OK             on success
- * CURL_FORMADD_MEMORY         if the FormInfo allocation fails
- * CURL_FORMADD_OPTION_TWICE   if one option is given twice for one Form
- * CURL_FORMADD_NULL           if a null pointer was given for a char
- * CURL_FORMADD_MEMORY         if the allocation of a FormInfo struct failed
- * CURL_FORMADD_UNKNOWN_OPTION if an unknown option was used
- * CURL_FORMADD_INCOMPLETE     if the some FormInfo is not complete (or error)
- * CURL_FORMADD_MEMORY         if a curl_httppost struct cannot be allocated
- * CURL_FORMADD_MEMORY         if some allocation for string copying failed.
- * CURL_FORMADD_ILLEGAL_ARRAY  if an illegal option is used in an array
- *
- ***************************************************************************/
-typedef enum {
-  CURL_FORMADD_OK, /* first, no error */
-
-  CURL_FORMADD_MEMORY,
-  CURL_FORMADD_OPTION_TWICE,
-  CURL_FORMADD_NULL,
-  CURL_FORMADD_UNKNOWN_OPTION,
-  CURL_FORMADD_INCOMPLETE,
-  CURL_FORMADD_ILLEGAL_ARRAY,
-  CURL_FORMADD_DISABLED, /* libcurl was built with this disabled */
-
-  CURL_FORMADD_LAST /* last */
-} CURLFORMcode;
-
-/*
- * NAME curl_formadd()
- *
- * DESCRIPTION
- *
- * Pretty advanced function for building multi-part formposts. Each invoke
- * adds one part that together construct a full post. Then use
- * CURLOPT_HTTPPOST to send it off to libcurl.
- */
-CURL_EXTERN CURLFORMcode curl_formadd(struct curl_httppost **httppost,
-                                      struct curl_httppost **last_post,
-                                      ...);
-
-/*
- * callback function for curl_formget()
- * The void *arg pointer will be the one passed as second argument to
- *   curl_formget().
- * The character buffer passed to it must not be freed.
- * Should return the buffer length passed to it as the argument "len" on
- *   success.
- */
-typedef size_t (*curl_formget_callback)(void *arg, const char *buf,
-                                        size_t len);
-
-/*
- * NAME curl_formget()
- *
- * DESCRIPTION
- *
- * Serialize a curl_httppost struct built with curl_formadd().
- * Accepts a void pointer as second argument which will be passed to
- * the curl_formget_callback function.
- * Returns 0 on success.
- */
-CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg,
-                             curl_formget_callback append);
-/*
- * NAME curl_formfree()
- *
- * DESCRIPTION
- *
- * Free a multipart formpost previously built with curl_formadd().
- */
-CURL_EXTERN void curl_formfree(struct curl_httppost *form);
-
-/*
- * NAME curl_getenv()
- *
- * DESCRIPTION
- *
- * Returns a malloc()'ed string that MUST be curl_free()ed after usage is
- * complete. DEPRECATED - see lib/README.curlx
- */
-CURL_EXTERN char *curl_getenv(const char *variable);
-
-/*
- * NAME curl_version()
- *
- * DESCRIPTION
- *
- * Returns a static ascii string of the libcurl version.
- */
-CURL_EXTERN char *curl_version(void);
-
-/*
- * NAME curl_easy_escape()
- *
- * DESCRIPTION
- *
- * Escapes URL strings (converts all letters consider illegal in URLs to their
- * %XX versions). This function returns a new allocated string or NULL if an
- * error occurred.
- */
-CURL_EXTERN char *curl_easy_escape(CURL *handle,
-                                   const char *string,
-                                   int length);
-
-/* the previous version: */
-CURL_EXTERN char *curl_escape(const char *string,
-                              int length);
-
-
-/*
- * NAME curl_easy_unescape()
- *
- * DESCRIPTION
- *
- * Unescapes URL encoding in strings (converts all %XX codes to their 8bit
- * versions). This function returns a new allocated string or NULL if an error
- * occurred.
- * Conversion Note: On non-ASCII platforms the ASCII %XX codes are
- * converted into the host encoding.
- */
-CURL_EXTERN char *curl_easy_unescape(CURL *handle,
-                                     const char *string,
-                                     int length,
-                                     int *outlength);
-
-/* the previous version */
-CURL_EXTERN char *curl_unescape(const char *string,
-                                int length);
-
-/*
- * NAME curl_free()
- *
- * DESCRIPTION
- *
- * Provided for de-allocation in the same translation unit that did the
- * allocation. Added in libcurl 7.10
- */
-CURL_EXTERN void curl_free(void *p);
-
-/*
- * NAME curl_global_init()
- *
- * DESCRIPTION
- *
- * curl_global_init() should be invoked exactly once for each application that
- * uses libcurl and before any call of other libcurl functions.
- *
- * This function is not thread-safe!
- */
-CURL_EXTERN CURLcode curl_global_init(long flags);
-
-/*
- * NAME curl_global_init_mem()
- *
- * DESCRIPTION
- *
- * curl_global_init() or curl_global_init_mem() should be invoked exactly once
- * for each application that uses libcurl.  This function can be used to
- * initialize libcurl and set user defined memory management callback
- * functions.  Users can implement memory management routines to check for
- * memory leaks, check for mis-use of the curl library etc.  User registered
- * callback routines will be invoked by this library instead of the system
- * memory management routines like malloc, free etc.
- */
-CURL_EXTERN CURLcode curl_global_init_mem(long flags,
-                                          curl_malloc_callback m,
-                                          curl_free_callback f,
-                                          curl_realloc_callback r,
-                                          curl_strdup_callback s,
-                                          curl_calloc_callback c);
-
-/*
- * NAME curl_global_cleanup()
- *
- * DESCRIPTION
- *
- * curl_global_cleanup() should be invoked exactly once for each application
- * that uses libcurl
- */
-CURL_EXTERN void curl_global_cleanup(void);
-
-/* linked-list structure for the CURLOPT_QUOTE option (and other) */
-struct curl_slist {
-  char *data;
-  struct curl_slist *next;
-};
-
-/*
- * NAME curl_global_sslset()
- *
- * DESCRIPTION
- *
- * When built with multiple SSL backends, curl_global_sslset() allows to
- * choose one. This function can only be called once, and it must be called
- * *before* curl_global_init().
- *
- * The backend can be identified by the id (e.g. CURLSSLBACKEND_OPENSSL). The
- * backend can also be specified via the name parameter (passing -1 as id).
- * If both id and name are specified, the name will be ignored. If neither id
- * nor name are specified, the function will fail with
- * CURLSSLSET_UNKNOWN_BACKEND and set the "avail" pointer to the
- * NULL-terminated list of available backends.
- *
- * Upon success, the function returns CURLSSLSET_OK.
- *
- * If the specified SSL backend is not available, the function returns
- * CURLSSLSET_UNKNOWN_BACKEND and sets the "avail" pointer to a NULL-terminated
- * list of available SSL backends.
- *
- * The SSL backend can be set only once. If it has already been set, a
- * subsequent attempt to change it will result in a CURLSSLSET_TOO_LATE.
- */
-
-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 /* libcurl was built without any SSL support */
-} CURLsslset;
-
-CURL_EXTERN CURLsslset curl_global_sslset(curl_sslbackend id, const char *name,
-                                          const curl_ssl_backend ***avail);
-
-/*
- * NAME curl_slist_append()
- *
- * DESCRIPTION
- *
- * Appends a string to a linked list. If no list exists, it will be created
- * first. Returns the new list, after appending.
- */
-CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *,
-                                                 const char *);
-
-/*
- * NAME curl_slist_free_all()
- *
- * DESCRIPTION
- *
- * free a previously built curl_slist.
- */
-CURL_EXTERN void curl_slist_free_all(struct curl_slist *);
-
-/*
- * NAME curl_getdate()
- *
- * DESCRIPTION
- *
- * Returns the time, in seconds since 1 Jan 1970 of the time string given in
- * the first argument. The time argument in the second parameter is unused
- * and should be set to NULL.
- */
-CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused);
-
-/* info about the certificate chain, only for OpenSSL, GnuTLS, Schannel, NSS
-   and GSKit builds. Asked for with CURLOPT_CERTINFO / CURLINFO_CERTINFO */
-struct curl_certinfo {
-  int num_of_certs;             /* number of certificates with information */
-  struct curl_slist **certinfo; /* for each index in this array, there's a
-                                   linked list with textual information in the
-                                   format "name: value" */
-};
-
-/* Information about the SSL library used and the respective internal SSL
-   handle, which can be used to obtain further information regarding the
-   connection. Asked for with CURLINFO_TLS_SSL_PTR or CURLINFO_TLS_SESSION. */
-struct curl_tlssessioninfo {
-  curl_sslbackend backend;
-  void *internals;
-};
-
-#define CURLINFO_STRING   0x100000
-#define CURLINFO_LONG     0x200000
-#define CURLINFO_DOUBLE   0x300000
-#define CURLINFO_SLIST    0x400000
-#define CURLINFO_PTR      0x400000 /* same as SLIST */
-#define CURLINFO_SOCKET   0x500000
-#define CURLINFO_OFF_T    0x600000
-#define CURLINFO_MASK     0x0fffff
-#define CURLINFO_TYPEMASK 0xf00000
-
-typedef enum {
-  CURLINFO_NONE, /* first, never use this */
-  CURLINFO_EFFECTIVE_URL    = CURLINFO_STRING + 1,
-  CURLINFO_RESPONSE_CODE    = CURLINFO_LONG   + 2,
-  CURLINFO_TOTAL_TIME       = CURLINFO_DOUBLE + 3,
-  CURLINFO_NAMELOOKUP_TIME  = CURLINFO_DOUBLE + 4,
-  CURLINFO_CONNECT_TIME     = CURLINFO_DOUBLE + 5,
-  CURLINFO_PRETRANSFER_TIME = CURLINFO_DOUBLE + 6,
-  CURLINFO_SIZE_UPLOAD      = CURLINFO_DOUBLE + 7,
-  CURLINFO_SIZE_UPLOAD_T    = CURLINFO_OFF_T  + 7,
-  CURLINFO_SIZE_DOWNLOAD    = CURLINFO_DOUBLE + 8,
-  CURLINFO_SIZE_DOWNLOAD_T  = CURLINFO_OFF_T  + 8,
-  CURLINFO_SPEED_DOWNLOAD   = CURLINFO_DOUBLE + 9,
-  CURLINFO_SPEED_DOWNLOAD_T = CURLINFO_OFF_T  + 9,
-  CURLINFO_SPEED_UPLOAD     = 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   = CURLINFO_DOUBLE + 15,
-  CURLINFO_CONTENT_LENGTH_DOWNLOAD_T = CURLINFO_OFF_T  + 15,
-  CURLINFO_CONTENT_LENGTH_UPLOAD     = 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       = 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      = 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         = 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_LASTONE          = 60
-} CURLINFO;
-
-/* CURLINFO_RESPONSE_CODE is the new name for the option previously known as
-   CURLINFO_HTTP_CODE */
-#define CURLINFO_HTTP_CODE CURLINFO_RESPONSE_CODE
-
-typedef enum {
-  CURLCLOSEPOLICY_NONE, /* first, never use this */
-
-  CURLCLOSEPOLICY_OLDEST,
-  CURLCLOSEPOLICY_LEAST_RECENTLY_USED,
-  CURLCLOSEPOLICY_LEAST_TRAFFIC,
-  CURLCLOSEPOLICY_SLOWEST,
-  CURLCLOSEPOLICY_CALLBACK,
-
-  CURLCLOSEPOLICY_LAST /* last, never use this */
-} curl_closepolicy;
-
-#define CURL_GLOBAL_SSL (1<<0) /* no purpose since 7.57.0 */
-#define CURL_GLOBAL_WIN32 (1<<1)
-#define CURL_GLOBAL_ALL (CURL_GLOBAL_SSL|CURL_GLOBAL_WIN32)
-#define CURL_GLOBAL_NOTHING 0
-#define CURL_GLOBAL_DEFAULT CURL_GLOBAL_ALL
-#define CURL_GLOBAL_ACK_EINTR (1<<2)
-
-
-/*****************************************************************************
- * Setup defines, protos etc for the sharing stuff.
- */
-
-/* Different data locks for a single share */
-typedef enum {
-  CURL_LOCK_DATA_NONE = 0,
-  /*  CURL_LOCK_DATA_SHARE is used internally to say that
-   *  the locking is just made to change the internal state of the share
-   *  itself.
-   */
-  CURL_LOCK_DATA_SHARE,
-  CURL_LOCK_DATA_COOKIE,
-  CURL_LOCK_DATA_DNS,
-  CURL_LOCK_DATA_SSL_SESSION,
-  CURL_LOCK_DATA_CONNECT,
-  CURL_LOCK_DATA_PSL,
-  CURL_LOCK_DATA_LAST
-} curl_lock_data;
-
-/* Different lock access types */
-typedef enum {
-  CURL_LOCK_ACCESS_NONE = 0,   /* unspecified action */
-  CURL_LOCK_ACCESS_SHARED = 1, /* for read perhaps */
-  CURL_LOCK_ACCESS_SINGLE = 2, /* for write perhaps */
-  CURL_LOCK_ACCESS_LAST        /* never use */
-} curl_lock_access;
-
-typedef void (*curl_lock_function)(CURL *handle,
-                                   curl_lock_data data,
-                                   curl_lock_access locktype,
-                                   void *userptr);
-typedef void (*curl_unlock_function)(CURL *handle,
-                                     curl_lock_data data,
-                                     void *userptr);
-
-
-typedef enum {
-  CURLSHE_OK,  /* all is fine */
-  CURLSHE_BAD_OPTION, /* 1 */
-  CURLSHE_IN_USE,     /* 2 */
-  CURLSHE_INVALID,    /* 3 */
-  CURLSHE_NOMEM,      /* 4 out of memory */
-  CURLSHE_NOT_BUILT_IN, /* 5 feature not present in lib */
-  CURLSHE_LAST        /* never use */
-} CURLSHcode;
-
-typedef enum {
-  CURLSHOPT_NONE,  /* don't use */
-  CURLSHOPT_SHARE,   /* specify a data type to share */
-  CURLSHOPT_UNSHARE, /* specify which data type to stop sharing */
-  CURLSHOPT_LOCKFUNC,   /* pass in a 'curl_lock_function' pointer */
-  CURLSHOPT_UNLOCKFUNC, /* pass in a 'curl_unlock_function' pointer */
-  CURLSHOPT_USERDATA,   /* pass in a user data pointer used in the lock/unlock
-                           callback functions */
-  CURLSHOPT_LAST  /* never use */
-} CURLSHoption;
-
-CURL_EXTERN CURLSH *curl_share_init(void);
-CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *, CURLSHoption option, ...);
-CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *);
-
-/****************************************************************************
- * Structures for querying information about the curl library at runtime.
- */
-
-typedef enum {
-  CURLVERSION_FIRST,
-  CURLVERSION_SECOND,
-  CURLVERSION_THIRD,
-  CURLVERSION_FOURTH,
-  CURLVERSION_FIFTH,
-  CURLVERSION_SIXTH,
-  CURLVERSION_SEVENTH,
-  CURLVERSION_EIGHTH,
-  CURLVERSION_NINTH,
-  CURLVERSION_TENTH,
-  CURLVERSION_LAST /* never actually use this */
-} CURLversion;
-
-/* The 'CURLVERSION_NOW' is the symbolic name meant to be used by
-   basically all programs ever that want to get version information. It is
-   meant to be a built-in version number for what kind of struct the caller
-   expects. If the struct ever changes, we redefine the NOW to another enum
-   from above. */
-#define CURLVERSION_NOW CURLVERSION_TENTH
-
-struct curl_version_info_data {
-  CURLversion age;          /* age of the returned struct */
-  const char *version;      /* LIBCURL_VERSION */
-  unsigned int version_num; /* LIBCURL_VERSION_NUM */
-  const char *host;         /* OS/host/cpu/machine when configured */
-  int features;             /* bitmask, see defines below */
-  const char *ssl_version;  /* human readable string */
-  long ssl_version_num;     /* not used anymore, always 0 */
-  const char *libz_version; /* human readable string */
-  /* protocols is terminated by an entry with a NULL protoname */
-  const char * const *protocols;
-
-  /* The fields below this were added in CURLVERSION_SECOND */
-  const char *ares;
-  int ares_num;
-
-  /* This field was added in CURLVERSION_THIRD */
-  const char *libidn;
-
-  /* These field were added in CURLVERSION_FOURTH */
-
-  /* Same as '_libiconv_version' if built with HAVE_ICONV */
-  int iconv_ver_num;
-
-  const char *libssh_version; /* human readable string */
-
-  /* These fields were added in CURLVERSION_FIFTH */
-  unsigned int brotli_ver_num; /* Numeric Brotli version
-                                  (MAJOR << 24) | (MINOR << 12) | PATCH */
-  const char *brotli_version; /* human readable string. */
-
-  /* These fields were added in CURLVERSION_SIXTH */
-  unsigned int nghttp2_ver_num; /* Numeric nghttp2 version
-                                   (MAJOR << 16) | (MINOR << 8) | PATCH */
-  const char *nghttp2_version; /* human readable string. */
-  const char *quic_version;    /* human readable quic (+ HTTP/3) library +
-                                  version or NULL */
-
-  /* These fields were added in CURLVERSION_SEVENTH */
-  const char *cainfo;          /* the built-in default CURLOPT_CAINFO, might
-                                  be NULL */
-  const char *capath;          /* the built-in default CURLOPT_CAPATH, might
-                                  be NULL */
-
-  /* These fields were added in CURLVERSION_EIGHTH */
-  unsigned int zstd_ver_num; /* Numeric Zstd version
-                                  (MAJOR << 24) | (MINOR << 12) | PATCH */
-  const char *zstd_version; /* human readable string. */
-
-  /* These fields were added in CURLVERSION_NINTH */
-  const char *hyper_version; /* human readable string. */
-
-  /* These fields were added in CURLVERSION_TENTH */
-  const char *gsasl_version; /* human readable string. */
-};
-typedef struct curl_version_info_data curl_version_info_data;
-
-#define CURL_VERSION_IPV6         (1<<0)  /* IPv6-enabled */
-#define CURL_VERSION_KERBEROS4    (1<<1)  /* Kerberos V4 auth is supported
-                                             (deprecated) */
-#define CURL_VERSION_SSL          (1<<2)  /* SSL options are present */
-#define CURL_VERSION_LIBZ         (1<<3)  /* libz features are present */
-#define CURL_VERSION_NTLM         (1<<4)  /* NTLM auth is supported */
-#define CURL_VERSION_GSSNEGOTIATE (1<<5)  /* Negotiate auth is supported
-                                             (deprecated) */
-#define CURL_VERSION_DEBUG        (1<<6)  /* Built with debug capabilities */
-#define CURL_VERSION_ASYNCHDNS    (1<<7)  /* Asynchronous DNS resolves */
-#define CURL_VERSION_SPNEGO       (1<<8)  /* SPNEGO auth is supported */
-#define CURL_VERSION_LARGEFILE    (1<<9)  /* Supports files larger than 2GB */
-#define CURL_VERSION_IDN          (1<<10) /* Internationized Domain Names are
-                                             supported */
-#define CURL_VERSION_SSPI         (1<<11) /* Built against Windows SSPI */
-#define CURL_VERSION_CONV         (1<<12) /* Character conversions supported */
-#define CURL_VERSION_CURLDEBUG    (1<<13) /* Debug memory tracking supported */
-#define CURL_VERSION_TLSAUTH_SRP  (1<<14) /* TLS-SRP auth is supported */
-#define CURL_VERSION_NTLM_WB      (1<<15) /* NTLM delegation to winbind helper
-                                             is supported */
-#define CURL_VERSION_HTTP2        (1<<16) /* HTTP2 support built-in */
-#define CURL_VERSION_GSSAPI       (1<<17) /* Built against a GSS-API library */
-#define CURL_VERSION_KERBEROS5    (1<<18) /* Kerberos V5 auth is supported */
-#define CURL_VERSION_UNIX_SOCKETS (1<<19) /* Unix domain sockets support */
-#define CURL_VERSION_PSL          (1<<20) /* Mozilla's Public Suffix List, used
-                                             for cookie domain verification */
-#define CURL_VERSION_HTTPS_PROXY  (1<<21) /* HTTPS-proxy support built-in */
-#define CURL_VERSION_MULTI_SSL    (1<<22) /* Multiple SSL backends available */
-#define CURL_VERSION_BROTLI       (1<<23) /* Brotli features are present. */
-#define CURL_VERSION_ALTSVC       (1<<24) /* Alt-Svc handling built-in */
-#define CURL_VERSION_HTTP3        (1<<25) /* HTTP3 support built-in */
-#define CURL_VERSION_ZSTD         (1<<26) /* zstd features are present */
-#define CURL_VERSION_UNICODE      (1<<27) /* Unicode support on Windows */
-#define CURL_VERSION_HSTS         (1<<28) /* HSTS is supported */
-#define CURL_VERSION_GSASL        (1<<29) /* libgsasl is supported */
-
- /*
- * NAME curl_version_info()
- *
- * DESCRIPTION
- *
- * This function returns a pointer to a static copy of the version info
- * struct. See above.
- */
-CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion);
-
-/*
- * NAME curl_easy_strerror()
- *
- * DESCRIPTION
- *
- * The curl_easy_strerror function may be used to turn a CURLcode value
- * into the equivalent human readable error string.  This is useful
- * for printing meaningful error messages.
- */
-CURL_EXTERN const char *curl_easy_strerror(CURLcode);
-
-/*
- * NAME curl_share_strerror()
- *
- * DESCRIPTION
- *
- * The curl_share_strerror function may be used to turn a CURLSHcode value
- * into the equivalent human readable error string.  This is useful
- * for printing meaningful error messages.
- */
-CURL_EXTERN const char *curl_share_strerror(CURLSHcode);
-
-/*
- * NAME curl_easy_pause()
- *
- * DESCRIPTION
- *
- * The curl_easy_pause function pauses or unpauses transfers. Select the new
- * state by setting the bitmask, use the convenience defines below.
- *
- */
-CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask);
-
-#define CURLPAUSE_RECV      (1<<0)
-#define CURLPAUSE_RECV_CONT (0)
-
-#define CURLPAUSE_SEND      (1<<2)
-#define CURLPAUSE_SEND_CONT (0)
-
-#define CURLPAUSE_ALL       (CURLPAUSE_RECV|CURLPAUSE_SEND)
-#define CURLPAUSE_CONT      (CURLPAUSE_RECV_CONT|CURLPAUSE_SEND_CONT)
-
-#ifdef  __cplusplus
-}
-#endif
-
-/* unfortunately, the easy.h and multi.h include files need options and info
-  stuff before they can be included! */
-#include "easy.h" /* nothing in curl is fun without the easy stuff */
-#include "multi.h"
-#include "urlapi.h"
-#include "options.h"
-#include "header.h"
-
-/* the typechecker doesn't work in C++ (yet) */
-#if defined(__GNUC__) && defined(__GNUC_MINOR__) && \
-    ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \
-    !defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK)
-#include "typecheck-gcc.h"
-#else
-#if defined(__STDC__) && (__STDC__ >= 1)
-/* This preprocessor magic that replaces a call with the exact same call is
-   only done to make sure application authors pass exactly three arguments
-   to these functions. */
-#define curl_easy_setopt(handle,opt,param) curl_easy_setopt(handle,opt,param)
-#define curl_easy_getinfo(handle,info,arg) curl_easy_getinfo(handle,info,arg)
-#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param)
-#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param)
-#endif /* __STDC__ >= 1 */
-#endif /* gcc >= 4.3 && !__cplusplus */
-
-#endif /* CURLINC_CURL_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/curlver.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/curlver.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/curlver.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/curlver.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,77 +0,0 @@
-#ifndef CURLINC_CURLVER_H
-#define CURLINC_CURLVER_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2022, 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.
- *
- ***************************************************************************/
-
-/* This header file contains nothing but libcurl version info, generated by
-   a script at release-time. This was made its own header file in 7.11.2 */
-
-/* This is the global package copyright */
-#define LIBCURL_COPYRIGHT "1996 - 2022 Daniel Stenberg, <daniel@haxx.se>."
-
-/* This is the version number of the libcurl package from which this header
-   file origins: */
-#define LIBCURL_VERSION "7.83.1"
-
-/* The numeric version number is also available "in parts" by using these
-   defines: */
-#define LIBCURL_VERSION_MAJOR 7
-#define LIBCURL_VERSION_MINOR 83
-#define LIBCURL_VERSION_PATCH 1
-
-/* This is the numeric version of the libcurl version number, meant for easier
-   parsing and comparisons by programs. The LIBCURL_VERSION_NUM define will
-   always follow this syntax:
-
-         0xXXYYZZ
-
-   Where XX, YY and ZZ are the main version, release and patch numbers in
-   hexadecimal (using 8 bits each). All three numbers are always represented
-   using two digits.  1.2 would appear as "0x010200" while version 9.11.7
-   appears as "0x090b07".
-
-   This 6-digit (24 bits) hexadecimal number does not show pre-release number,
-   and it is always a greater number in a more recent release. It makes
-   comparisons with greater than and less than work.
-
-   Note: This define is the full hex number and _does not_ use the
-   CURL_VERSION_BITS() macro since curl's own configure script greps for it
-   and needs it to contain the full number.
-*/
-#define LIBCURL_VERSION_NUM 0x075301
-
-/*
- * This is the date and time when the full source package was created. The
- * timestamp is not stored in git, as the timestamp is properly set in the
- * tarballs by the maketgz script.
- *
- * The format of the date follows this template:
- *
- * "2007-11-23"
- */
-#define LIBCURL_TIMESTAMP "2022-05-11"
-
-#define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|(z))
-#define CURL_AT_LEAST_VERSION(x,y,z) \
-  (LIBCURL_VERSION_NUM >= CURL_VERSION_BITS(x, y, z))
-
-#endif /* CURLINC_CURLVER_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/easy.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/easy.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/easy.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/easy.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,123 +0,0 @@
-#ifndef CURLINC_EASY_H
-#define CURLINC_EASY_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2020, 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.
- *
- ***************************************************************************/
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-/* Flag bits in the curl_blob struct: */
-#define CURL_BLOB_COPY   1 /* tell libcurl to copy the data */
-#define CURL_BLOB_NOCOPY 0 /* tell libcurl to NOT copy the data */
-
-struct curl_blob {
-  void *data;
-  size_t len;
-  unsigned int flags; /* bit 0 is defined, the rest are reserved and should be
-                         left zeroes */
-};
-
-CURL_EXTERN CURL *curl_easy_init(void);
-CURL_EXTERN CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...);
-CURL_EXTERN CURLcode curl_easy_perform(CURL *curl);
-CURL_EXTERN void curl_easy_cleanup(CURL *curl);
-
-/*
- * NAME curl_easy_getinfo()
- *
- * DESCRIPTION
- *
- * Request internal information from the curl session with this function.  The
- * third argument MUST be a pointer to a long, a pointer to a char * or a
- * pointer to a double (as the documentation describes elsewhere).  The data
- * pointed to will be filled in accordingly and can be relied upon only if the
- * function returns CURLE_OK.  This function is intended to get used *AFTER* a
- * performed transfer, all results from this function are undefined until the
- * transfer is completed.
- */
-CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...);
-
-
-/*
- * NAME curl_easy_duphandle()
- *
- * DESCRIPTION
- *
- * Creates a new curl session handle with the same options set for the handle
- * passed in. Duplicating a handle could only be a matter of cloning data and
- * options, internal state info and things like persistent connections cannot
- * be transferred. It is useful in multithreaded applications when you can run
- * curl_easy_duphandle() for each new thread to avoid a series of identical
- * curl_easy_setopt() invokes in every thread.
- */
-CURL_EXTERN CURL *curl_easy_duphandle(CURL *curl);
-
-/*
- * NAME curl_easy_reset()
- *
- * DESCRIPTION
- *
- * Re-initializes a CURL handle to the default values. This puts back the
- * handle to the same state as it was in when it was just created.
- *
- * It does keep: live connections, the Session ID cache, the DNS cache and the
- * cookies.
- */
-CURL_EXTERN void curl_easy_reset(CURL *curl);
-
-/*
- * NAME curl_easy_recv()
- *
- * DESCRIPTION
- *
- * Receives data from the connected socket. Use after successful
- * curl_easy_perform() with CURLOPT_CONNECT_ONLY option.
- */
-CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen,
-                                    size_t *n);
-
-/*
- * NAME curl_easy_send()
- *
- * DESCRIPTION
- *
- * Sends data over the connected socket. Use after successful
- * curl_easy_perform() with CURLOPT_CONNECT_ONLY option.
- */
-CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer,
-                                    size_t buflen, size_t *n);
-
-
-/*
- * NAME curl_easy_upkeep()
- *
- * DESCRIPTION
- *
- * Performs connection upkeep for the given session handle.
- */
-CURL_EXTERN CURLcode curl_easy_upkeep(CURL *curl);
-
-#ifdef  __cplusplus
-}
-#endif
-
-#endif
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/header.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/header.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/header.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/header.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,64 +0,0 @@
-#ifndef CURLINC_HEADER_H
-#define CURLINC_HEADER_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2018 - 2022, 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.
- *
- ***************************************************************************/
-
-struct curl_header {
-  char *name;    /* this might not use the same case */
-  char *value;
-  size_t amount; /* number of headers using this name  */
-  size_t index;  /* ... of this instance, 0 or higher */
-  unsigned int origin; /* see bits below */
-  void *anchor; /* handle privately used by libcurl */
-};
-
-/* 'origin' bits */
-#define CURLH_HEADER    (1<<0) /* plain server header */
-#define CURLH_TRAILER   (1<<1) /* trailers */
-#define CURLH_CONNECT   (1<<2) /* CONNECT headers */
-#define CURLH_1XX       (1<<3) /* 1xx headers */
-#define CURLH_PSEUDO    (1<<4) /* pseudo headers */
-
-typedef enum {
-  CURLHE_OK,
-  CURLHE_BADINDEX,      /* header exists but not with this index */
-  CURLHE_MISSING,       /* no such header exists */
-  CURLHE_NOHEADERS,     /* no headers at all exist (yet) */
-  CURLHE_NOREQUEST,     /* no request with this number was used */
-  CURLHE_OUT_OF_MEMORY, /* out of memory while processing */
-  CURLHE_BAD_ARGUMENT,  /* a function argument was not okay */
-  CURLHE_NOT_BUILT_IN   /* if API was disabled in the build */
-} 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 /* CURLINC_HEADER_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/Makefile.am 8.0.32-1/extra/curl/curl-7.83.1/include/curl/Makefile.am
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/Makefile.am	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/Makefile.am	1970-01-01 00:00:00.000000000 +0000
@@ -1,39 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2022, 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.
-#
-###########################################################################
-pkginclude_HEADERS = \
-  curl.h curlver.h easy.h mprintf.h stdcheaders.h multi.h \
-  typecheck-gcc.h system.h urlapi.h options.h header.h
-
-pkgincludedir= $(includedir)/curl
-
-CHECKSRC = $(CS_$(V))
-CS_0 = @echo "  RUN     " $@;
-CS_1 =
-CS_ = $(CS_0)
-
-checksrc:
-	$(CHECKSRC)@PERL@ $(top_srcdir)/scripts/checksrc.pl -D$(top_srcdir)/include/curl $(pkginclude_HEADERS)
-
-if CURLDEBUG
-# for debug builds, we scan the sources on all regular make invokes
-all-local: checksrc
-endif
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/Makefile.in 8.0.32-1/extra/curl/curl-7.83.1/include/curl/Makefile.in
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/Makefile.in	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/Makefile.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,714 +0,0 @@
-# Makefile.in generated by automake 1.16.5 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2021 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-
-VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
-am__make_running_with_option = \
-  case $${target_option-} in \
-      ?) ;; \
-      *) echo "am__make_running_with_option: internal error: invalid" \
-              "target option '$${target_option-}' specified" >&2; \
-         exit 1;; \
-  esac; \
-  has_opt=no; \
-  sane_makeflags=$$MAKEFLAGS; \
-  if $(am__is_gnu_make); then \
-    sane_makeflags=$$MFLAGS; \
-  else \
-    case $$MAKEFLAGS in \
-      *\\[\ \	]*) \
-        bs=\\; \
-        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
-          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
-    esac; \
-  fi; \
-  skip_next=no; \
-  strip_trailopt () \
-  { \
-    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
-  }; \
-  for flg in $$sane_makeflags; do \
-    test $$skip_next = yes && { skip_next=no; continue; }; \
-    case $$flg in \
-      *=*|--*) continue;; \
-        -*I) strip_trailopt 'I'; skip_next=yes;; \
-      -*I?*) strip_trailopt 'I';; \
-        -*O) strip_trailopt 'O'; skip_next=yes;; \
-      -*O?*) strip_trailopt 'O';; \
-        -*l) strip_trailopt 'l'; skip_next=yes;; \
-      -*l?*) strip_trailopt 'l';; \
-      -[dEDm]) skip_next=yes;; \
-      -[JT]) skip_next=yes;; \
-    esac; \
-    case $$flg in \
-      *$$target_option*) has_opt=yes; break;; \
-    esac; \
-  done; \
-  test $$has_opt = yes
-am__make_dryrun = (target_option=n; $(am__make_running_with_option))
-am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = include/curl
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compile_check_sizeof.m4 \
-	$(top_srcdir)/m4/curl-amissl.m4 \
-	$(top_srcdir)/m4/curl-bearssl.m4 \
-	$(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-gnutls.m4 \
-	$(top_srcdir)/m4/curl-mbedtls.m4 $(top_srcdir)/m4/curl-nss.m4 \
-	$(top_srcdir)/m4/curl-openssl.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-rustls.m4 \
-	$(top_srcdir)/m4/curl-schannel.m4 \
-	$(top_srcdir)/m4/curl-sectransp.m4 \
-	$(top_srcdir)/m4/curl-sysconfig.m4 \
-	$(top_srcdir)/m4/curl-wolfssl.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/m4/xc-am-iface.m4 \
-	$(top_srcdir)/m4/xc-cc-check.m4 \
-	$(top_srcdir)/m4/xc-lt-iface.m4 \
-	$(top_srcdir)/m4/xc-translit.m4 \
-	$(top_srcdir)/m4/xc-val-flgs.m4 \
-	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
-	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
-	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
-	$(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(pkginclude_HEADERS) \
-	$(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-AM_V_P = $(am__v_P_@AM_V@)
-am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
-am__v_P_0 = false
-am__v_P_1 = :
-AM_V_GEN = $(am__v_GEN_@AM_V@)
-am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
-am__v_GEN_0 = @echo "  GEN     " $@;
-am__v_GEN_1 = 
-AM_V_at = $(am__v_at_@AM_V@)
-am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
-am__v_at_0 = @
-am__v_at_1 = 
-SOURCES =
-DIST_SOURCES =
-am__can_run_installinfo = \
-  case $$AM_UPDATE_INFO_DIR in \
-    n|no|NO) false;; \
-    *) (install-info --version) >/dev/null 2>&1;; \
-  esac
-am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
-am__vpath_adj = case $$p in \
-    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
-    *) f=$$p;; \
-  esac;
-am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
-am__install_max = 40
-am__nobase_strip_setup = \
-  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
-am__nobase_strip = \
-  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
-am__nobase_list = $(am__nobase_strip_setup); \
-  for p in $$list; do echo "$$p $$p"; done | \
-  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
-  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
-    if (++n[$$2] == $(am__install_max)) \
-      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
-    END { for (dir in files) print dir, files[dir] }'
-am__base_list = \
-  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
-  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
-am__uninstall_files_from_dir = { \
-  test -z "$$files" \
-    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
-    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
-         $(am__cd) "$$dir" && rm -f $$files; }; \
-  }
-am__installdirs = "$(DESTDIR)$(pkgincludedir)"
-HEADERS = $(pkginclude_HEADERS)
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-# Read a list of newline-separated strings from the standard input,
-# and print each of them once, without duplicates.  Input order is
-# *not* preserved.
-am__uniquify_input = $(AWK) '\
-  BEGIN { nonempty = 0; } \
-  { items[$$0] = 1; nonempty = 1; } \
-  END { if (nonempty) { for (i in items) print i; }; } \
-'
-# Make sure the list of sources is unique.  This is necessary because,
-# e.g., the same source file might be shared among _SOURCES variables
-# for different programs/libraries.
-am__define_uniq_tagged_files = \
-  list='$(am__tagged_files)'; \
-  unique=`for i in $$list; do \
-    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-  done | $(am__uniquify_input)`
-am__DIST_COMMON = $(srcdir)/Makefile.in
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-pkgincludedir = $(includedir)/curl
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
-AR = @AR@
-AR_FLAGS = @AR_FLAGS@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
-CSCOPE = @CSCOPE@
-CTAGS = @CTAGS@
-CURLVERSION = @CURLVERSION@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_MQTT = @CURL_DISABLE_MQTT@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
-CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
-CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
-CURL_PLIST_VERSION = @CURL_PLIST_VERSION@
-CURL_WITH_MULTI_SSL = @CURL_WITH_MULTI_SSL@
-CYGPATH_W = @CYGPATH_W@
-DEFAULT_SSL_BACKEND = @DEFAULT_SSL_BACKEND@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-ENABLE_SHARED = @ENABLE_SHARED@
-ENABLE_STATIC = @ENABLE_STATIC@
-ETAGS = @ETAGS@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FILECMD = @FILECMD@
-FISH_FUNCTIONS_DIR = @FISH_FUNCTIONS_DIR@
-GCOV = @GCOV@
-GREP = @GREP@
-HAVE_BROTLI = @HAVE_BROTLI@
-HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
-HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
-HAVE_PROTO_BSDSOCKET_H = @HAVE_PROTO_BSDSOCKET_H@
-HAVE_ZSTD = @HAVE_ZSTD@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-LCOV = @LCOV@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBCURL_NO_SHARED = @LIBCURL_NO_SHARED@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-NSS_LIBS = @NSS_LIBS@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_BACKENDS = @SSL_BACKENDS@
-SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-USE_ARES = @USE_ARES@
-USE_BEARSSL = @USE_BEARSSL@
-USE_GNUTLS = @USE_GNUTLS@
-USE_HYPER = @USE_HYPER@
-USE_LIBRTMP = @USE_LIBRTMP@
-USE_LIBSSH = @USE_LIBSSH@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_MBEDTLS = @USE_MBEDTLS@
-USE_MSH3 = @USE_MSH3@
-USE_NGHTTP2 = @USE_NGHTTP2@
-USE_NGHTTP3 = @USE_NGHTTP3@
-USE_NGTCP2 = @USE_NGTCP2@
-USE_NGTCP2_CRYPTO_GNUTLS = @USE_NGTCP2_CRYPTO_GNUTLS@
-USE_NGTCP2_CRYPTO_OPENSSL = @USE_NGTCP2_CRYPTO_OPENSSL@
-USE_NSS = @USE_NSS@
-USE_OPENLDAP = @USE_OPENLDAP@
-USE_QUICHE = @USE_QUICHE@
-USE_RUSTLS = @USE_RUSTLS@
-USE_SCHANNEL = @USE_SCHANNEL@
-USE_SECTRANSP = @USE_SECTRANSP@
-USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
-USE_WIN32_CRYPTO = @USE_WIN32_CRYPTO@
-USE_WIN32_LARGE_FILES = @USE_WIN32_LARGE_FILES@
-USE_WIN32_SMALL_FILES = @USE_WIN32_SMALL_FILES@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-USE_WOLFSSH = @USE_WOLFSSH@
-USE_WOLFSSL = @USE_WOLFSSL@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-ZLIB_LIBS = @ZLIB_LIBS@
-ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-runstatedir = @runstatedir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2022, 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.
-#
-###########################################################################
-pkginclude_HEADERS = \
-  curl.h curlver.h easy.h mprintf.h stdcheaders.h multi.h \
-  typecheck-gcc.h system.h urlapi.h options.h header.h
-
-CHECKSRC = $(CS_$(V))
-CS_0 = @echo "  RUN     " $@;
-CS_1 = 
-CS_ = $(CS_0)
-all: all-am
-
-.SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/curl/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign include/curl/Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-install-pkgincludeHEADERS: $(pkginclude_HEADERS)
-	@$(NORMAL_INSTALL)
-	@list='$(pkginclude_HEADERS)'; test -n "$(pkgincludedir)" || list=; \
-	if test -n "$$list"; then \
-	  echo " $(MKDIR_P) '$(DESTDIR)$(pkgincludedir)'"; \
-	  $(MKDIR_P) "$(DESTDIR)$(pkgincludedir)" || exit 1; \
-	fi; \
-	for p in $$list; do \
-	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  echo "$$d$$p"; \
-	done | $(am__base_list) | \
-	while read files; do \
-	  echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(pkgincludedir)'"; \
-	  $(INSTALL_HEADER) $$files "$(DESTDIR)$(pkgincludedir)" || exit $$?; \
-	done
-
-uninstall-pkgincludeHEADERS:
-	@$(NORMAL_UNINSTALL)
-	@list='$(pkginclude_HEADERS)'; test -n "$(pkgincludedir)" || list=; \
-	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
-	dir='$(DESTDIR)$(pkgincludedir)'; $(am__uninstall_files_from_dir)
-
-ID: $(am__tagged_files)
-	$(am__define_uniq_tagged_files); mkid -fID $$unique
-tags: tags-am
-TAGS: tags
-
-tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
-	set x; \
-	here=`pwd`; \
-	$(am__define_uniq_tagged_files); \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: ctags-am
-
-CTAGS: ctags
-ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
-	$(am__define_uniq_tagged_files); \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-cscopelist: cscopelist-am
-
-cscopelist-am: $(am__tagged_files)
-	list='$(am__tagged_files)'; \
-	case "$(srcdir)" in \
-	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
-	  *) sdir=$(subdir)/$(srcdir) ;; \
-	esac; \
-	for i in $$list; do \
-	  if test -f "$$i"; then \
-	    echo "$(subdir)/$$i"; \
-	  else \
-	    echo "$$sdir/$$i"; \
-	  fi; \
-	done >> $(top_builddir)/cscope.files
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-distdir: $(BUILT_SOURCES)
-	$(MAKE) $(AM_MAKEFLAGS) distdir-am
-
-distdir-am: $(DISTFILES)
-	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-	list='$(DISTFILES)'; \
-	  dist_files=`for file in $$list; do echo $$file; done | \
-	  sed -e "s|^$$srcdirstrip/||;t" \
-	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
-	case $$dist_files in \
-	  */*) $(MKDIR_P) `echo "$$dist_files" | \
-			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
-			   sort -u` ;; \
-	esac; \
-	for file in $$dist_files; do \
-	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-	  if test -d $$d/$$file; then \
-	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
-	    if test -d "$(distdir)/$$file"; then \
-	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
-	    fi; \
-	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
-	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
-	    fi; \
-	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
-	  else \
-	    test -f "$(distdir)/$$file" \
-	    || cp -p $$d/$$file "$(distdir)/$$file" \
-	    || exit 1; \
-	  fi; \
-	done
-check-am: all-am
-check: check-am
-@CURLDEBUG_FALSE@all-local:
-all-am: Makefile $(HEADERS) all-local
-installdirs:
-	for dir in "$(DESTDIR)$(pkgincludedir)"; do \
-	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
-	done
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
-	if test -z '$(STRIP)'; then \
-	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	      install; \
-	else \
-	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
-	fi
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-am
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-html-am:
-
-info: info-am
-
-info-am:
-
-install-data-am: install-pkgincludeHEADERS
-
-install-dvi: install-dvi-am
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-am
-
-install-html-am:
-
-install-info: install-info-am
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-am
-
-install-pdf-am:
-
-install-ps: install-ps-am
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am: uninstall-pkgincludeHEADERS
-
-.MAKE: install-am install-strip
-
-.PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \
-	clean-generic clean-libtool cscopelist-am ctags ctags-am \
-	distclean distclean-generic distclean-libtool distclean-tags \
-	distdir dvi dvi-am html html-am info info-am install \
-	install-am install-data install-data-am install-dvi \
-	install-dvi-am install-exec install-exec-am install-html \
-	install-html-am install-info install-info-am install-man \
-	install-pdf install-pdf-am install-pkgincludeHEADERS \
-	install-ps install-ps-am install-strip installcheck \
-	installcheck-am installdirs maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic \
-	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
-	uninstall-am uninstall-pkgincludeHEADERS
-
-.PRECIOUS: Makefile
-
-
-checksrc:
-	$(CHECKSRC)@PERL@ $(top_srcdir)/scripts/checksrc.pl -D$(top_srcdir)/include/curl $(pkginclude_HEADERS)
-
-# for debug builds, we scan the sources on all regular make invokes
-@CURLDEBUG_TRUE@all-local: checksrc
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/mprintf.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/mprintf.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/mprintf.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/mprintf.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,50 +0,0 @@
-#ifndef CURLINC_MPRINTF_H
-#define CURLINC_MPRINTF_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2020, 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.
- *
- ***************************************************************************/
-
-#include <stdarg.h>
-#include <stdio.h> /* needed for FILE */
-#include "curl.h"  /* for CURL_EXTERN */
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-CURL_EXTERN int curl_mprintf(const char *format, ...);
-CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...);
-CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...);
-CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength,
-                               const char *format, ...);
-CURL_EXTERN int curl_mvprintf(const char *format, va_list args);
-CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args);
-CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args);
-CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength,
-                                const char *format, va_list args);
-CURL_EXTERN char *curl_maprintf(const char *format, ...);
-CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args);
-
-#ifdef  __cplusplus
-}
-#endif
-
-#endif /* CURLINC_MPRINTF_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/multi.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/multi.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/multi.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/multi.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,457 +0,0 @@
-#ifndef CURLINC_MULTI_H
-#define CURLINC_MULTI_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2021, 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.
- *
- ***************************************************************************/
-/*
-  This is an "external" header file. Don't give away any internals here!
-
-  GOALS
-
-  o Enable a "pull" interface. The application that uses libcurl decides where
-    and when to ask libcurl to get/send data.
-
-  o Enable multiple simultaneous transfers in the same thread without making it
-    complicated for the application.
-
-  o Enable the application to select() on its own file descriptors and curl's
-    file descriptors simultaneous easily.
-
-*/
-
-/*
- * This header file should not really need to include "curl.h" since curl.h
- * itself includes this file and we expect user applications to do #include
- * <curl/curl.h> without the need for especially including multi.h.
- *
- * For some reason we added this include here at one point, and rather than to
- * break existing (wrongly written) libcurl applications, we leave it as-is
- * but with this warning attached.
- */
-#include "curl.h"
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-#if defined(BUILDING_LIBCURL) || defined(CURL_STRICTER)
-typedef struct Curl_multi CURLM;
-#else
-typedef void CURLM;
-#endif
-
-typedef enum {
-  CURLM_CALL_MULTI_PERFORM = -1, /* please call curl_multi_perform() or
-                                    curl_multi_socket*() soon */
-  CURLM_OK,
-  CURLM_BAD_HANDLE,      /* the passed-in handle is not a valid CURLM handle */
-  CURLM_BAD_EASY_HANDLE, /* an easy handle was not good/valid */
-  CURLM_OUT_OF_MEMORY,   /* if you ever get this, you're in deep sh*t */
-  CURLM_INTERNAL_ERROR,  /* this is a libcurl bug */
-  CURLM_BAD_SOCKET,      /* the passed in socket argument did not match */
-  CURLM_UNKNOWN_OPTION,  /* curl_multi_setopt() with unsupported option */
-  CURLM_ADDED_ALREADY,   /* an easy handle already added to a multi handle was
-                            attempted to get added - again */
-  CURLM_RECURSIVE_API_CALL, /* an api function was called from inside a
-                               callback */
-  CURLM_WAKEUP_FAILURE,  /* wakeup is unavailable or failed */
-  CURLM_BAD_FUNCTION_ARGUMENT, /* function called with a bad parameter */
-  CURLM_ABORTED_BY_CALLBACK,
-  CURLM_LAST
-} CURLMcode;
-
-/* just to make code nicer when using curl_multi_socket() you can now check
-   for CURLM_CALL_MULTI_SOCKET too in the same style it works for
-   curl_multi_perform() and CURLM_CALL_MULTI_PERFORM */
-#define CURLM_CALL_MULTI_SOCKET CURLM_CALL_MULTI_PERFORM
-
-/* bitmask bits for CURLMOPT_PIPELINING */
-#define CURLPIPE_NOTHING   0L
-#define CURLPIPE_HTTP1     1L
-#define CURLPIPE_MULTIPLEX 2L
-
-typedef enum {
-  CURLMSG_NONE, /* first, not used */
-  CURLMSG_DONE, /* This easy handle has completed. 'result' contains
-                   the CURLcode of the transfer */
-  CURLMSG_LAST /* last, not used */
-} CURLMSG;
-
-struct CURLMsg {
-  CURLMSG msg;       /* what this message means */
-  CURL *easy_handle; /* the handle it concerns */
-  union {
-    void *whatever;    /* message-specific data */
-    CURLcode result;   /* return code for transfer */
-  } data;
-};
-typedef struct CURLMsg CURLMsg;
-
-/* Based on poll(2) structure and values.
- * We don't use pollfd and POLL* constants explicitly
- * to cover platforms without poll(). */
-#define CURL_WAIT_POLLIN    0x0001
-#define CURL_WAIT_POLLPRI   0x0002
-#define CURL_WAIT_POLLOUT   0x0004
-
-struct curl_waitfd {
-  curl_socket_t fd;
-  short events;
-  short revents; /* not supported yet */
-};
-
-/*
- * Name:    curl_multi_init()
- *
- * Desc:    inititalize multi-style curl usage
- *
- * Returns: a new CURLM handle to use in all 'curl_multi' functions.
- */
-CURL_EXTERN CURLM *curl_multi_init(void);
-
-/*
- * Name:    curl_multi_add_handle()
- *
- * Desc:    add a standard curl handle to the multi stack
- *
- * Returns: CURLMcode type, general multi error code.
- */
-CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle,
-                                            CURL *curl_handle);
-
- /*
-  * Name:    curl_multi_remove_handle()
-  *
-  * Desc:    removes a curl handle from the multi stack again
-  *
-  * Returns: CURLMcode type, general multi error code.
-  */
-CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
-                                               CURL *curl_handle);
-
- /*
-  * Name:    curl_multi_fdset()
-  *
-  * Desc:    Ask curl for its fd_set sets. The app can use these to select() or
-  *          poll() on. We want curl_multi_perform() called as soon as one of
-  *          them are ready.
-  *
-  * Returns: CURLMcode type, general multi error code.
-  */
-CURL_EXTERN CURLMcode curl_multi_fdset(CURLM *multi_handle,
-                                       fd_set *read_fd_set,
-                                       fd_set *write_fd_set,
-                                       fd_set *exc_fd_set,
-                                       int *max_fd);
-
-/*
- * Name:     curl_multi_wait()
- *
- * Desc:     Poll on all fds within a CURLM set as well as any
- *           additional fds passed to the function.
- *
- * Returns:  CURLMcode type, general multi error code.
- */
-CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle,
-                                      struct curl_waitfd extra_fds[],
-                                      unsigned int extra_nfds,
-                                      int timeout_ms,
-                                      int *ret);
-
-/*
- * Name:     curl_multi_poll()
- *
- * Desc:     Poll on all fds within a CURLM set as well as any
- *           additional fds passed to the function.
- *
- * Returns:  CURLMcode type, general multi error code.
- */
-CURL_EXTERN CURLMcode curl_multi_poll(CURLM *multi_handle,
-                                      struct curl_waitfd extra_fds[],
-                                      unsigned int extra_nfds,
-                                      int timeout_ms,
-                                      int *ret);
-
-/*
- * Name:     curl_multi_wakeup()
- *
- * Desc:     wakes up a sleeping curl_multi_poll call.
- *
- * Returns:  CURLMcode type, general multi error code.
- */
-CURL_EXTERN CURLMcode curl_multi_wakeup(CURLM *multi_handle);
-
- /*
-  * Name:    curl_multi_perform()
-  *
-  * Desc:    When the app thinks there's data available for curl it calls this
-  *          function to read/write whatever there is right now. This returns
-  *          as soon as the reads and writes are done. This function does not
-  *          require that there actually is data available for reading or that
-  *          data can be written, it can be called just in case. It returns
-  *          the number of handles that still transfer data in the second
-  *          argument's integer-pointer.
-  *
-  * Returns: CURLMcode type, general multi error code. *NOTE* that this only
-  *          returns errors etc regarding the whole multi stack. There might
-  *          still have occurred problems on individual transfers even when
-  *          this returns OK.
-  */
-CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle,
-                                         int *running_handles);
-
- /*
-  * Name:    curl_multi_cleanup()
-  *
-  * Desc:    Cleans up and removes a whole multi stack. It does not free or
-  *          touch any individual easy handles in any way. We need to define
-  *          in what state those handles will be if this function is called
-  *          in the middle of a transfer.
-  *
-  * Returns: CURLMcode type, general multi error code.
-  */
-CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
-
-/*
- * Name:    curl_multi_info_read()
- *
- * Desc:    Ask the multi handle if there's any messages/informationals from
- *          the individual transfers. Messages include informationals such as
- *          error code from the transfer or just the fact that a transfer is
- *          completed. More details on these should be written down as well.
- *
- *          Repeated calls to this function will return a new struct each
- *          time, until a special "end of msgs" struct is returned as a signal
- *          that there is no more to get at this point.
- *
- *          The data the returned pointer points to will not survive calling
- *          curl_multi_cleanup().
- *
- *          The 'CURLMsg' struct is meant to be very simple and only contain
- *          very basic information. If more involved information is wanted,
- *          we will provide the particular "transfer handle" in that struct
- *          and that should/could/would be used in subsequent
- *          curl_easy_getinfo() calls (or similar). The point being that we
- *          must never expose complex structs to applications, as then we'll
- *          undoubtably get backwards compatibility problems in the future.
- *
- * Returns: A pointer to a filled-in struct, or NULL if it failed or ran out
- *          of structs. It also writes the number of messages left in the
- *          queue (after this read) in the integer the second argument points
- *          to.
- */
-CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle,
-                                          int *msgs_in_queue);
-
-/*
- * Name:    curl_multi_strerror()
- *
- * Desc:    The curl_multi_strerror function may be used to turn a CURLMcode
- *          value into the equivalent human readable error string.  This is
- *          useful for printing meaningful error messages.
- *
- * Returns: A pointer to a null-terminated error message.
- */
-CURL_EXTERN const char *curl_multi_strerror(CURLMcode);
-
-/*
- * Name:    curl_multi_socket() and
- *          curl_multi_socket_all()
- *
- * Desc:    An alternative version of curl_multi_perform() that allows the
- *          application to pass in one of the file descriptors that have been
- *          detected to have "action" on them and let libcurl perform.
- *          See man page for details.
- */
-#define CURL_POLL_NONE   0
-#define CURL_POLL_IN     1
-#define CURL_POLL_OUT    2
-#define CURL_POLL_INOUT  3
-#define CURL_POLL_REMOVE 4
-
-#define CURL_SOCKET_TIMEOUT CURL_SOCKET_BAD
-
-#define CURL_CSELECT_IN   0x01
-#define CURL_CSELECT_OUT  0x02
-#define CURL_CSELECT_ERR  0x04
-
-typedef int (*curl_socket_callback)(CURL *easy,      /* easy handle */
-                                    curl_socket_t s, /* socket */
-                                    int what,        /* see above */
-                                    void *userp,     /* private callback
-                                                        pointer */
-                                    void *socketp);  /* private socket
-                                                        pointer */
-/*
- * Name:    curl_multi_timer_callback
- *
- * Desc:    Called by libcurl whenever the library detects a change in the
- *          maximum number of milliseconds the app is allowed to wait before
- *          curl_multi_socket() or curl_multi_perform() must be called
- *          (to allow libcurl's timed events to take place).
- *
- * Returns: The callback should return zero.
- */
-typedef int (*curl_multi_timer_callback)(CURLM *multi,    /* multi handle */
-                                         long timeout_ms, /* see above */
-                                         void *userp);    /* private callback
-                                                             pointer */
-
-CURL_EXTERN CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t s,
-                                        int *running_handles);
-
-CURL_EXTERN CURLMcode curl_multi_socket_action(CURLM *multi_handle,
-                                               curl_socket_t s,
-                                               int ev_bitmask,
-                                               int *running_handles);
-
-CURL_EXTERN CURLMcode curl_multi_socket_all(CURLM *multi_handle,
-                                            int *running_handles);
-
-#ifndef CURL_ALLOW_OLD_MULTI_SOCKET
-/* This macro below was added in 7.16.3 to push users who recompile to use
-   the new curl_multi_socket_action() instead of the old curl_multi_socket()
-*/
-#define curl_multi_socket(x,y,z) curl_multi_socket_action(x,y,0,z)
-#endif
-
-/*
- * Name:    curl_multi_timeout()
- *
- * Desc:    Returns the maximum number of milliseconds the app is allowed to
- *          wait before curl_multi_socket() or curl_multi_perform() must be
- *          called (to allow libcurl's timed events to take place).
- *
- * Returns: CURLM error code.
- */
-CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle,
-                                         long *milliseconds);
-
-typedef enum {
-  /* This is the socket callback function pointer */
-  CURLOPT(CURLMOPT_SOCKETFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 1),
-
-  /* This is the argument passed to the socket callback */
-  CURLOPT(CURLMOPT_SOCKETDATA, CURLOPTTYPE_OBJECTPOINT, 2),
-
-    /* set to 1 to enable pipelining for this multi handle */
-  CURLOPT(CURLMOPT_PIPELINING, CURLOPTTYPE_LONG, 3),
-
-   /* This is the timer callback function pointer */
-  CURLOPT(CURLMOPT_TIMERFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 4),
-
-  /* This is the argument passed to the timer callback */
-  CURLOPT(CURLMOPT_TIMERDATA, CURLOPTTYPE_OBJECTPOINT, 5),
-
-  /* maximum number of entries in the connection cache */
-  CURLOPT(CURLMOPT_MAXCONNECTS, CURLOPTTYPE_LONG, 6),
-
-  /* maximum number of (pipelining) connections to one host */
-  CURLOPT(CURLMOPT_MAX_HOST_CONNECTIONS, CURLOPTTYPE_LONG, 7),
-
-  /* maximum number of requests in a pipeline */
-  CURLOPT(CURLMOPT_MAX_PIPELINE_LENGTH, CURLOPTTYPE_LONG, 8),
-
-  /* a connection with a content-length longer than this
-     will not be considered for pipelining */
-  CURLOPT(CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 9),
-
-  /* a connection with a chunk length longer than this
-     will not be considered for pipelining */
-  CURLOPT(CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 10),
-
-  /* a list of site names(+port) that are blocked from pipelining */
-  CURLOPT(CURLMOPT_PIPELINING_SITE_BL, CURLOPTTYPE_OBJECTPOINT, 11),
-
-  /* a list of server types that are blocked from pipelining */
-  CURLOPT(CURLMOPT_PIPELINING_SERVER_BL, CURLOPTTYPE_OBJECTPOINT, 12),
-
-  /* maximum number of open connections in total */
-  CURLOPT(CURLMOPT_MAX_TOTAL_CONNECTIONS, CURLOPTTYPE_LONG, 13),
-
-   /* This is the server push callback function pointer */
-  CURLOPT(CURLMOPT_PUSHFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 14),
-
-  /* This is the argument passed to the server push callback */
-  CURLOPT(CURLMOPT_PUSHDATA, CURLOPTTYPE_OBJECTPOINT, 15),
-
-  /* maximum number of concurrent streams to support on a connection */
-  CURLOPT(CURLMOPT_MAX_CONCURRENT_STREAMS, CURLOPTTYPE_LONG, 16),
-
-  CURLMOPT_LASTENTRY /* the last unused */
-} CURLMoption;
-
-
-/*
- * Name:    curl_multi_setopt()
- *
- * Desc:    Sets options for the multi handle.
- *
- * Returns: CURLM error code.
- */
-CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle,
-                                        CURLMoption option, ...);
-
-
-/*
- * Name:    curl_multi_assign()
- *
- * Desc:    This function sets an association in the multi handle between the
- *          given socket and a private pointer of the application. This is
- *          (only) useful for curl_multi_socket uses.
- *
- * Returns: CURLM error code.
- */
-CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle,
-                                        curl_socket_t sockfd, void *sockp);
-
-
-/*
- * Name: curl_push_callback
- *
- * Desc: This callback gets called when a new stream is being pushed by the
- *       server. It approves or denies the new stream. It can also decide
- *       to completely fail the connection.
- *
- * Returns: CURL_PUSH_OK, CURL_PUSH_DENY or CURL_PUSH_ERROROUT
- */
-#define CURL_PUSH_OK       0
-#define CURL_PUSH_DENY     1
-#define CURL_PUSH_ERROROUT 2 /* added in 7.72.0 */
-
-struct curl_pushheaders;  /* forward declaration only */
-
-CURL_EXTERN char *curl_pushheader_bynum(struct curl_pushheaders *h,
-                                        size_t num);
-CURL_EXTERN char *curl_pushheader_byname(struct curl_pushheaders *h,
-                                         const char *name);
-
-typedef int (*curl_push_callback)(CURL *parent,
-                                  CURL *easy,
-                                  size_t num_headers,
-                                  struct curl_pushheaders *headers,
-                                  void *userp);
-
-#ifdef __cplusplus
-} /* end of extern "C" */
-#endif
-
-#endif
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/options.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/options.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/options.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/options.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,68 +0,0 @@
-#ifndef CURLINC_OPTIONS_H
-#define CURLINC_OPTIONS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2018 - 2022, 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.
- *
- ***************************************************************************/
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-typedef enum {
-  CURLOT_LONG,    /* long (a range of values) */
-  CURLOT_VALUES,  /*      (a defined set or bitmask) */
-  CURLOT_OFF_T,   /* curl_off_t (a range of values) */
-  CURLOT_OBJECT,  /* pointer (void *) */
-  CURLOT_STRING,  /*         (char * to zero terminated buffer) */
-  CURLOT_SLIST,   /*         (struct curl_slist *) */
-  CURLOT_CBPTR,   /*         (void * passed as-is to a callback) */
-  CURLOT_BLOB,    /* blob (struct curl_blob *) */
-  CURLOT_FUNCTION /* function pointer */
-} curl_easytype;
-
-/* Flag bits */
-
-/* "alias" means it is provided for old programs to remain functional,
-   we prefer another name */
-#define CURLOT_FLAG_ALIAS (1<<0)
-
-/* The CURLOPTTYPE_* id ranges can still be used to figure out what type/size
-   to use for curl_easy_setopt() for the given id */
-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);
-
-#ifdef __cplusplus
-} /* end of extern "C" */
-#endif
-#endif /* CURLINC_OPTIONS_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/stdcheaders.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/stdcheaders.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/stdcheaders.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/stdcheaders.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,33 +0,0 @@
-#ifndef CURLINC_STDCHEADERS_H
-#define CURLINC_STDCHEADERS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2020, 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.
- *
- ***************************************************************************/
-
-#include <sys/types.h>
-
-size_t fread(void *, size_t, size_t, FILE *);
-size_t fwrite(const void *, size_t, size_t, FILE *);
-
-int strcasecmp(const char *, const char *);
-int strncasecmp(const char *, const char *, size_t);
-
-#endif /* CURLINC_STDCHEADERS_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/system.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/system.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/system.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/system.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,488 +0,0 @@
-#ifndef CURLINC_SYSTEM_H
-#define CURLINC_SYSTEM_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2022, 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.
- *
- ***************************************************************************/
-
-/*
- * Try to keep one section per platform, compiler and architecture, otherwise,
- * if an existing section is reused for a different one and later on the
- * original is adjusted, probably the piggybacking one can be adversely
- * changed.
- *
- * In order to differentiate between platforms/compilers/architectures use
- * only compiler built in predefined preprocessor symbols.
- *
- * curl_off_t
- * ----------
- *
- * For any given platform/compiler curl_off_t must be typedef'ed to a 64-bit
- * wide signed integral data type. The width of this data type must remain
- * constant and independent of any possible large file support settings.
- *
- * As an exception to the above, curl_off_t shall be typedef'ed to a 32-bit
- * wide signed integral data type if there is no 64-bit type.
- *
- * As a general rule, curl_off_t shall not be mapped to off_t. This rule shall
- * only be violated if off_t is the only 64-bit data type available and the
- * size of off_t is independent of large file support settings. Keep your
- * build on the safe side avoiding an off_t gating.  If you have a 64-bit
- * off_t then take for sure that another 64-bit data type exists, dig deeper
- * and you will find it.
- *
- */
-
-#if defined(__DJGPP__) || defined(__GO32__)
-#  if defined(__DJGPP__) && (__DJGPP__ > 1)
-#    define 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__) /* MCST eLbrus Compiler Collection */
-#    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                /* Local (or Little) C Compiler */
-#    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(__SYMBIAN32__)
-#  if defined(__EABI__) /* Treat all ARM compilers equally */
-#    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(__CW32__)
-#    pragma longlong on
-#    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(__VC32__)
-#    define CURL_TYPEOF_CURL_OFF_T     __int64
-#    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(__MWERKS__)
-#  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
-
-#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__)
-#  define CURL_TYPEOF_CURL_OFF_T     long long
-#  define CURL_FORMAT_CURL_OFF_T     "I64d"
-#  define CURL_FORMAT_CURL_OFF_TU    "I64u"
-#  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_WS2TCPIP_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__)
-#  if defined(__ILEC400__)
-#    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
-#  endif
-
-#elif defined(__MVS__)
-#  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(__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__) /* also known as tcc */
-#  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) /* Oracle Solaris Studio */
-#  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__) /* IBM xlc compiler */
-#  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
-
-/* ===================================== */
-/*    KEEP MSVC THE PENULTIMATE ENTRY    */
-/* ===================================== */
-
-#elif defined(_MSC_VER)
-#  if (_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
-
-/* ===================================== */
-/*    KEEP GENERIC GCC THE LAST ENTRY    */
-/* ===================================== */
-
-#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
-/* generic "safe guess" on old 32 bit style */
-# 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
-/* AIX needs <sys/poll.h> */
-#define CURL_PULL_SYS_POLL_H
-#endif
-
-
-/* CURL_PULL_WS2TCPIP_H is defined above when inclusion of header file  */
-/* ws2tcpip.h is required here to properly make type definitions below. */
-#ifdef CURL_PULL_WS2TCPIP_H
-#  include <winsock2.h>
-#  include <windows.h>
-#  include <ws2tcpip.h>
-#endif
-
-/* CURL_PULL_SYS_TYPES_H is defined above when inclusion of header file  */
-/* sys/types.h is required here to properly make type definitions below. */
-#ifdef CURL_PULL_SYS_TYPES_H
-#  include <sys/types.h>
-#endif
-
-/* CURL_PULL_SYS_SOCKET_H is defined above when inclusion of header file  */
-/* sys/socket.h is required here to properly make type definitions below. */
-#ifdef CURL_PULL_SYS_SOCKET_H
-#  include <sys/socket.h>
-#endif
-
-/* CURL_PULL_SYS_POLL_H is defined above when inclusion of header file    */
-/* sys/poll.h is required here to properly make type definitions below.   */
-#ifdef CURL_PULL_SYS_POLL_H
-#  include <sys/poll.h>
-#endif
-
-/* Data type definition of curl_socklen_t. */
-#ifdef CURL_TYPEOF_CURL_SOCKLEN_T
-  typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t;
-#endif
-
-/* Data type definition of curl_off_t. */
-
-#ifdef CURL_TYPEOF_CURL_OFF_T
-  typedef CURL_TYPEOF_CURL_OFF_T curl_off_t;
-#endif
-
-/*
- * CURL_ISOCPP and CURL_OFF_T_C definitions are done here in order to allow
- * these to be visible and exported by the external libcurl interface API,
- * while also making them visible to the library internals, simply including
- * curl_setup.h, without actually needing to include curl.h internally.
- * If some day this section would grow big enough, all this should be moved
- * to its own header file.
- */
-
-/*
- * Figure out if we can use the ## preprocessor operator, which is supported
- * by ISO/ANSI C and C++. Some compilers support it without setting __STDC__
- * or  __cplusplus so we need to carefully check for them too.
- */
-
-#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \
-  defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) || \
-  defined(__POCC__) || defined(__SALFORDC__) || defined(__HIGHC__) || \
-  defined(__ILEC400__)
-  /* This compiler is believed to have an ISO compatible preprocessor */
-#define CURL_ISOCPP
-#else
-  /* This compiler is believed NOT to have an ISO compatible preprocessor */
-#undef CURL_ISOCPP
-#endif
-
-/*
- * Macros for minimum-width signed and unsigned curl_off_t integer constants.
- */
-
-#if defined(__BORLANDC__) && (__BORLANDC__ == 0x0551)
-#  define 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) Val/**/Suffix
-#  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 /* CURLINC_SYSTEM_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/typecheck-gcc.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/typecheck-gcc.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/typecheck-gcc.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/typecheck-gcc.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,707 +0,0 @@
-#ifndef CURLINC_TYPECHECK_GCC_H
-#define CURLINC_TYPECHECK_GCC_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2021, 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.
- *
- ***************************************************************************/
-
-/* wraps curl_easy_setopt() with typechecking */
-
-/* To add a new kind of warning, add an
- *   if(curlcheck_sometype_option(_curl_opt))
- *     if(!curlcheck_sometype(value))
- *       _curl_easy_setopt_err_sometype();
- * block and define curlcheck_sometype_option, curlcheck_sometype and
- * _curl_easy_setopt_err_sometype below
- *
- * NOTE: We use two nested 'if' statements here instead of the && operator, in
- *       order to work around gcc bug #32061.  It affects only gcc 4.3.x/4.4.x
- *       when compiling with -Wlogical-op.
- *
- * To add an option that uses the same type as an existing option, you'll just
- * need to extend the appropriate _curl_*_option macro
- */
-#define curl_easy_setopt(handle, option, value)                         \
-  __extension__({                                                       \
-      __typeof__(option) _curl_opt = option;                            \
-      if(__builtin_constant_p(_curl_opt)) {                             \
-        if(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);                       \
-    })
-
-/* wraps curl_easy_getinfo() with typechecking */
-#define curl_easy_getinfo(handle, info, arg)                            \
-  __extension__({                                                      \
-      __typeof__(info) _curl_info = info;                               \
-      if(__builtin_constant_p(_curl_info)) {                            \
-        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);                       \
-    })
-
-/*
- * For now, just make sure that the functions are called with three arguments
- */
-#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param)
-#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param)
-
-
-/* the actual warnings, triggered by calling the _curl_easy_setopt_err*
- * functions */
-
-/* To define a new warning, use _CURL_WARNING(identifier, "message") */
-#define 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")
-
-/* groups of curl_easy_setops options that take the same type of argument */
-
-/* To add a new option to one of the groups, just add
- *   (option) == CURLOPT_SOMETHING
- * to the or-expression. If the option takes a long or curl_off_t, you don't
- * have to do anything
- */
-
-/* evaluates to true if option takes a long argument */
-#define curlcheck_long_option(option)                   \
-  (0 < (option) && (option) < CURLOPTTYPE_OBJECTPOINT)
-
-#define curlcheck_off_t_option(option)          \
-  (((option) > CURLOPTTYPE_OFF_T) && ((option) < CURLOPTTYPE_BLOB))
-
-/* evaluates to true if option takes a char* argument */
-#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_EGDSOCKET ||                                           \
-   (option) == CURLOPT_FTPPORT ||                                             \
-   (option) == CURLOPT_FTP_ACCOUNT ||                                         \
-   (option) == CURLOPT_FTP_ALTERNATIVE_TO_USER ||                             \
-   (option) == CURLOPT_HSTS ||                                                \
-   (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_PROXY ||                                               \
-   (option) == CURLOPT_PROXYPASSWORD ||                                       \
-   (option) == CURLOPT_PROXYUSERNAME ||                                       \
-   (option) == CURLOPT_PROXYUSERPWD ||                                        \
-   (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_SSLCERT ||                                       \
-   (option) == CURLOPT_PROXY_SSLCERTTYPE ||                                   \
-   (option) == CURLOPT_PROXY_SSLKEY ||                                        \
-   (option) == CURLOPT_PROXY_SSLKEYTYPE ||                                    \
-   (option) == CURLOPT_PROXY_SSL_CIPHER_LIST ||                               \
-   (option) == CURLOPT_PROXY_TLS13_CIPHERS ||                                 \
-   (option) == CURLOPT_PROXY_TLSAUTH_PASSWORD ||                              \
-   (option) == CURLOPT_PROXY_TLSAUTH_TYPE ||                                  \
-   (option) == CURLOPT_PROXY_TLSAUTH_USERNAME ||                              \
-   (option) == CURLOPT_RANDOM_FILE ||                                         \
-   (option) == CURLOPT_RANGE ||                                               \
-   (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)
-
-/* evaluates to true if option takes a curl_write_callback argument */
-#define curlcheck_write_cb_option(option)                               \
-  ((option) == CURLOPT_HEADERFUNCTION ||                                \
-   (option) == CURLOPT_WRITEFUNCTION)
-
-/* evaluates to true if option takes a curl_conv_callback argument */
-#define curlcheck_conv_cb_option(option)                                \
-  ((option) == CURLOPT_CONV_TO_NETWORK_FUNCTION ||                      \
-   (option) == CURLOPT_CONV_FROM_NETWORK_FUNCTION ||                    \
-   (option) == CURLOPT_CONV_FROM_UTF8_FUNCTION)
-
-/* evaluates to true if option takes a data argument to pass to a callback */
-#define 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 ||                                         \
-   0)
-
-/* evaluates to true if option takes a POST data argument (void* or char*) */
-#define curlcheck_postfields_option(option)                                   \
-  ((option) == CURLOPT_POSTFIELDS ||                                          \
-   (option) == CURLOPT_COPYPOSTFIELDS ||                                      \
-   0)
-
-/* evaluates to true if option takes a struct curl_slist * argument */
-#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)
-
-/* groups of curl_easy_getinfo infos that take the same type of argument */
-
-/* evaluates to true if info expects a pointer to char * argument */
-#define curlcheck_string_info(info)                             \
-  (CURLINFO_STRING < (info) && (info) < CURLINFO_LONG &&        \
-   (info) != CURLINFO_PRIVATE)
-
-/* evaluates to true if info expects a pointer to long argument */
-#define curlcheck_long_info(info)                       \
-  (CURLINFO_LONG < (info) && (info) < CURLINFO_DOUBLE)
-
-/* evaluates to true if info expects a pointer to double argument */
-#define curlcheck_double_info(info)                     \
-  (CURLINFO_DOUBLE < (info) && (info) < CURLINFO_SLIST)
-
-/* true if info expects a pointer to struct curl_slist * argument */
-#define curlcheck_slist_info(info)                                      \
-  (((info) == CURLINFO_SSL_ENGINES) || ((info) == CURLINFO_COOKIELIST))
-
-/* true if info expects a pointer to struct curl_tlssessioninfo * argument */
-#define curlcheck_tlssessioninfo_info(info)                              \
-  (((info) == CURLINFO_TLS_SSL_PTR) || ((info) == CURLINFO_TLS_SESSION))
-
-/* true if info expects a pointer to struct curl_certinfo * argument */
-#define curlcheck_certinfo_info(info) ((info) == CURLINFO_CERTINFO)
-
-/* true if info expects a pointer to struct curl_socket_t argument */
-#define curlcheck_socket_info(info)                     \
-  (CURLINFO_SOCKET < (info) && (info) < CURLINFO_OFF_T)
-
-/* true if info expects a pointer to curl_off_t argument */
-#define curlcheck_off_t_info(info)              \
-  (CURLINFO_OFF_T < (info))
-
-
-/* typecheck helpers -- check whether given expression has requested type*/
-
-/* For pointers, you can use the curlcheck_ptr/curlcheck_arr macros,
- * otherwise define a new macro. Search for __builtin_types_compatible_p
- * in the GCC manual.
- * NOTE: these macros MUST NOT EVALUATE their arguments! The argument is
- * the actual expression passed to the curl_easy_setopt macro. This
- * means that you can only apply the sizeof and __typeof__ operators, no
- * == or whatsoever.
- */
-
-/* XXX: should evaluate to true if expr is a pointer */
-#define curlcheck_any_ptr(expr)                 \
-  (sizeof(expr) == sizeof(void *))
-
-/* evaluates to true if expr is NULL */
-/* XXX: must not evaluate expr, so this check is not accurate */
-#define curlcheck_NULL(expr)                                            \
-  (__builtin_types_compatible_p(__typeof__(expr), __typeof__(NULL)))
-
-/* evaluates to true if expr is type*, const type* or NULL */
-#define curlcheck_ptr(expr, type)                                       \
-  (curlcheck_NULL(expr) ||                                              \
-   __builtin_types_compatible_p(__typeof__(expr), type *) ||            \
-   __builtin_types_compatible_p(__typeof__(expr), const type *))
-
-/* evaluates to true if expr is one of type[], type*, NULL or const type* */
-#define curlcheck_arr(expr, type)                                       \
-  (curlcheck_ptr((expr), type) ||                                       \
-   __builtin_types_compatible_p(__typeof__(expr), type []))
-
-/* evaluates to true if expr is a string */
-#define curlcheck_string(expr)                                          \
-  (curlcheck_arr((expr), char) ||                                       \
-   curlcheck_arr((expr), signed char) ||                                \
-   curlcheck_arr((expr), unsigned char))
-
-/* evaluates to true if expr is a long (no matter the signedness)
- * XXX: for now, int is also accepted (and therefore short and char, which
- * are promoted to int when passed to a variadic function) */
-#define 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))
-
-/* evaluates to true if expr is of type curl_off_t */
-#define curlcheck_off_t(expr)                                   \
-  (__builtin_types_compatible_p(__typeof__(expr), curl_off_t))
-
-/* evaluates to true if expr is abuffer suitable for CURLOPT_ERRORBUFFER */
-/* XXX: also check size of an char[] array? */
-#define curlcheck_error_buffer(expr)                                    \
-  (curlcheck_NULL(expr) ||                                              \
-   __builtin_types_compatible_p(__typeof__(expr), char *) ||            \
-   __builtin_types_compatible_p(__typeof__(expr), char[]))
-
-/* evaluates to true if expr is of type (const) void* or (const) FILE* */
-#if 0
-#define curlcheck_cb_data(expr)                                         \
-  (curlcheck_ptr((expr), void) ||                                       \
-   curlcheck_ptr((expr), FILE))
-#else /* be less strict */
-#define curlcheck_cb_data(expr)                 \
-  curlcheck_any_ptr(expr)
-#endif
-
-/* evaluates to true if expr is of type FILE* */
-#define curlcheck_FILE(expr)                                            \
-  (curlcheck_NULL(expr) ||                                              \
-   (__builtin_types_compatible_p(__typeof__(expr), FILE *)))
-
-/* evaluates to true if expr can be passed as POST data (void* or char*) */
-#define curlcheck_postfields(expr)                                      \
-  (curlcheck_ptr((expr), void) ||                                       \
-   curlcheck_arr((expr), char) ||                                       \
-   curlcheck_arr((expr), unsigned char))
-
-/* helper: __builtin_types_compatible_p distinguishes between functions and
- * function pointers, hide it */
-#define curlcheck_cb_compatible(func, type)                             \
-  (__builtin_types_compatible_p(__typeof__(func), type) ||              \
-   __builtin_types_compatible_p(__typeof__(func) *, type))
-
-/* evaluates to true if expr is of type curl_resolver_start_callback */
-#define curlcheck_resolver_start_callback(expr)       \
-  (curlcheck_NULL(expr) || \
-   curlcheck_cb_compatible((expr), curl_resolver_start_callback))
-
-/* evaluates to true if expr is of type curl_read_callback or "similar" */
-#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 *);
-
-/* evaluates to true if expr is of type curl_write_callback or "similar" */
-#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 *);
-
-/* evaluates to true if expr is of type curl_ioctl_callback or "similar" */
-#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 *);
-
-/* evaluates to true if expr is of type curl_sockopt_callback or "similar" */
-#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);
-
-/* evaluates to true if expr is of type curl_opensocket_callback or
-   "similar" */
-#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 *);
-
-/* evaluates to true if expr is of type curl_progress_callback or "similar" */
-#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);
-
-/* evaluates to true if expr is of type curl_debug_callback or "similar" */
-#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 *);
-
-/* evaluates to true if expr is of type curl_ssl_ctx_callback or "similar" */
-/* this is getting even messier... */
-#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
-/* hack: if we included OpenSSL's ssl.h, we know about SSL_CTX
- * this will of course break if we're included before OpenSSL headers...
- */
-typedef CURLcode (*_curl_ssl_ctx_callback5)(CURL *, SSL_CTX *, void *);
-typedef CURLcode (*_curl_ssl_ctx_callback6)(CURL *, SSL_CTX *, const void *);
-typedef CURLcode (*_curl_ssl_ctx_callback7)(CURL *, const SSL_CTX *, void *);
-typedef CURLcode (*_curl_ssl_ctx_callback8)(CURL *, const SSL_CTX *,
-                                            const void *);
-#else
-typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback5;
-typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback6;
-typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback7;
-typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback8;
-#endif
-
-/* evaluates to true if expr is of type curl_conv_callback or "similar" */
-#define 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);
-
-/* evaluates to true if expr is of type curl_seek_callback or "similar" */
-#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 /* CURLINC_TYPECHECK_GCC_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/curl/urlapi.h 8.0.32-1/extra/curl/curl-7.83.1/include/curl/urlapi.h
--- 8.0.31-1/extra/curl/curl-7.83.1/include/curl/urlapi.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/curl/urlapi.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,145 +0,0 @@
-#ifndef CURLINC_URLAPI_H
-#define CURLINC_URLAPI_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2018 - 2021, 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.
- *
- ***************************************************************************/
-
-#include "curl.h"
-
-#ifdef  __cplusplus
-extern "C" {
-#endif
-
-/* the error codes for the URL API */
-typedef enum {
-  CURLUE_OK,
-  CURLUE_BAD_HANDLE,          /* 1 */
-  CURLUE_BAD_PARTPOINTER,     /* 2 */
-  CURLUE_MALFORMED_INPUT,     /* 3 */
-  CURLUE_BAD_PORT_NUMBER,     /* 4 */
-  CURLUE_UNSUPPORTED_SCHEME,  /* 5 */
-  CURLUE_URLDECODE,           /* 6 */
-  CURLUE_OUT_OF_MEMORY,       /* 7 */
-  CURLUE_USER_NOT_ALLOWED,    /* 8 */
-  CURLUE_UNKNOWN_PART,        /* 9 */
-  CURLUE_NO_SCHEME,           /* 10 */
-  CURLUE_NO_USER,             /* 11 */
-  CURLUE_NO_PASSWORD,         /* 12 */
-  CURLUE_NO_OPTIONS,          /* 13 */
-  CURLUE_NO_HOST,             /* 14 */
-  CURLUE_NO_PORT,             /* 15 */
-  CURLUE_NO_QUERY,            /* 16 */
-  CURLUE_NO_FRAGMENT,         /* 17 */
-  CURLUE_NO_ZONEID,           /* 18 */
-  CURLUE_BAD_FILE_URL,        /* 19 */
-  CURLUE_BAD_FRAGMENT,        /* 20 */
-  CURLUE_BAD_HOSTNAME,        /* 21 */
-  CURLUE_BAD_IPV6,            /* 22 */
-  CURLUE_BAD_LOGIN,           /* 23 */
-  CURLUE_BAD_PASSWORD,        /* 24 */
-  CURLUE_BAD_PATH,            /* 25 */
-  CURLUE_BAD_QUERY,           /* 26 */
-  CURLUE_BAD_SCHEME,          /* 27 */
-  CURLUE_BAD_SLASHES,         /* 28 */
-  CURLUE_BAD_USER,            /* 29 */
-  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 /* added in 7.65.0 */
-} CURLUPart;
-
-#define CURLU_DEFAULT_PORT (1<<0)       /* return default port number */
-#define CURLU_NO_DEFAULT_PORT (1<<1)    /* act as if no port number was set,
-                                           if the port number matches the
-                                           default for the scheme */
-#define CURLU_DEFAULT_SCHEME (1<<2)     /* return default scheme if
-                                           missing */
-#define CURLU_NON_SUPPORT_SCHEME (1<<3) /* allow non-supported scheme */
-#define CURLU_PATH_AS_IS (1<<4)         /* leave dot sequences */
-#define CURLU_DISALLOW_USER (1<<5)      /* no user+password allowed */
-#define CURLU_URLDECODE (1<<6)          /* URL decode on get */
-#define CURLU_URLENCODE (1<<7)          /* URL encode on set */
-#define CURLU_APPENDQUERY (1<<8)        /* append a form style part */
-#define CURLU_GUESS_SCHEME (1<<9)       /* legacy curl-style guessing */
-#define CURLU_NO_AUTHORITY (1<<10)      /* Allow empty authority when the
-                                           scheme is unknown. */
-#define CURLU_ALLOW_SPACE (1<<11)       /* Allow spaces in the URL */
-
-typedef struct Curl_URL CURLU;
-
-/*
- * curl_url() creates a new CURLU handle and returns a pointer to it.
- * Must be freed with curl_url_cleanup().
- */
-CURL_EXTERN CURLU *curl_url(void);
-
-/*
- * curl_url_cleanup() frees the CURLU handle and related resources used for
- * the URL parsing. It will not free strings previously returned with the URL
- * API.
- */
-CURL_EXTERN void curl_url_cleanup(CURLU *handle);
-
-/*
- * curl_url_dup() duplicates a CURLU handle and returns a new copy. The new
- * handle must also be freed with curl_url_cleanup().
- */
-CURL_EXTERN CURLU *curl_url_dup(CURLU *in);
-
-/*
- * curl_url_get() extracts a specific part of the URL from a CURLU
- * handle. Returns error code. The returned pointer MUST be freed with
- * curl_free() afterwards.
- */
-CURL_EXTERN CURLUcode curl_url_get(CURLU *handle, CURLUPart what,
-                                   char **part, unsigned int flags);
-
-/*
- * curl_url_set() sets a specific part of the URL in a CURLU handle. Returns
- * error code. The passed in string will be copied. Passing a NULL instead of
- * a part string, clears that part.
- */
-CURL_EXTERN CURLUcode curl_url_set(CURLU *handle, CURLUPart what,
-                                   const char *part, unsigned int flags);
-
-/*
- * curl_url_strerror() turns a CURLUcode value into the equivalent human
- * readable error string.  This is useful for printing meaningful error
- * messages.
- */
-CURL_EXTERN const char *curl_url_strerror(CURLUcode);
-
-#ifdef __cplusplus
-} /* end of extern "C" */
-#endif
-
-#endif /* CURLINC_URLAPI_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/Makefile.am 8.0.32-1/extra/curl/curl-7.83.1/include/Makefile.am
--- 8.0.31-1/extra/curl/curl-7.83.1/include/Makefile.am	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/Makefile.am	1970-01-01 00:00:00.000000000 +0000
@@ -1,26 +0,0 @@
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-SUBDIRS = curl
-
-EXTRA_DIST = README.md
-
-AUTOMAKE_OPTIONS = foreign no-dependencies
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/Makefile.in 8.0.32-1/extra/curl/curl-7.83.1/include/Makefile.in
--- 8.0.31-1/extra/curl/curl-7.83.1/include/Makefile.in	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/Makefile.in	1970-01-01 00:00:00.000000000 +0000
@@ -1,763 +0,0 @@
-# Makefile.in generated by automake 1.16.5 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994-2021 Free Software Foundation, Inc.
-
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-VPATH = @srcdir@
-am__is_gnu_make = { \
-  if test -z '$(MAKELEVEL)'; then \
-    false; \
-  elif test -n '$(MAKE_HOST)'; then \
-    true; \
-  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
-    true; \
-  else \
-    false; \
-  fi; \
-}
-am__make_running_with_option = \
-  case $${target_option-} in \
-      ?) ;; \
-      *) echo "am__make_running_with_option: internal error: invalid" \
-              "target option '$${target_option-}' specified" >&2; \
-         exit 1;; \
-  esac; \
-  has_opt=no; \
-  sane_makeflags=$$MAKEFLAGS; \
-  if $(am__is_gnu_make); then \
-    sane_makeflags=$$MFLAGS; \
-  else \
-    case $$MAKEFLAGS in \
-      *\\[\ \	]*) \
-        bs=\\; \
-        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
-          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
-    esac; \
-  fi; \
-  skip_next=no; \
-  strip_trailopt () \
-  { \
-    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
-  }; \
-  for flg in $$sane_makeflags; do \
-    test $$skip_next = yes && { skip_next=no; continue; }; \
-    case $$flg in \
-      *=*|--*) continue;; \
-        -*I) strip_trailopt 'I'; skip_next=yes;; \
-      -*I?*) strip_trailopt 'I';; \
-        -*O) strip_trailopt 'O'; skip_next=yes;; \
-      -*O?*) strip_trailopt 'O';; \
-        -*l) strip_trailopt 'l'; skip_next=yes;; \
-      -*l?*) strip_trailopt 'l';; \
-      -[dEDm]) skip_next=yes;; \
-      -[JT]) skip_next=yes;; \
-    esac; \
-    case $$flg in \
-      *$$target_option*) has_opt=yes; break;; \
-    esac; \
-  done; \
-  test $$has_opt = yes
-am__make_dryrun = (target_option=n; $(am__make_running_with_option))
-am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
-pkgdatadir = $(datadir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkglibexecdir = $(libexecdir)/@PACKAGE@
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-subdir = include
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compile_check_sizeof.m4 \
-	$(top_srcdir)/m4/curl-amissl.m4 \
-	$(top_srcdir)/m4/curl-bearssl.m4 \
-	$(top_srcdir)/m4/curl-compilers.m4 \
-	$(top_srcdir)/m4/curl-confopts.m4 \
-	$(top_srcdir)/m4/curl-functions.m4 \
-	$(top_srcdir)/m4/curl-gnutls.m4 \
-	$(top_srcdir)/m4/curl-mbedtls.m4 $(top_srcdir)/m4/curl-nss.m4 \
-	$(top_srcdir)/m4/curl-openssl.m4 \
-	$(top_srcdir)/m4/curl-override.m4 \
-	$(top_srcdir)/m4/curl-reentrant.m4 \
-	$(top_srcdir)/m4/curl-rustls.m4 \
-	$(top_srcdir)/m4/curl-schannel.m4 \
-	$(top_srcdir)/m4/curl-sectransp.m4 \
-	$(top_srcdir)/m4/curl-sysconfig.m4 \
-	$(top_srcdir)/m4/curl-wolfssl.m4 $(top_srcdir)/m4/libtool.m4 \
-	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
-	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
-	$(top_srcdir)/m4/xc-am-iface.m4 \
-	$(top_srcdir)/m4/xc-cc-check.m4 \
-	$(top_srcdir)/m4/xc-lt-iface.m4 \
-	$(top_srcdir)/m4/xc-translit.m4 \
-	$(top_srcdir)/m4/xc-val-flgs.m4 \
-	$(top_srcdir)/m4/zz40-xc-ovr.m4 \
-	$(top_srcdir)/m4/zz50-xc-ovr.m4 \
-	$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
-	$(top_srcdir)/configure.ac
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
-	$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
-CONFIG_HEADER = $(top_builddir)/lib/curl_config.h
-CONFIG_CLEAN_FILES =
-CONFIG_CLEAN_VPATH_FILES =
-AM_V_P = $(am__v_P_@AM_V@)
-am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
-am__v_P_0 = false
-am__v_P_1 = :
-AM_V_GEN = $(am__v_GEN_@AM_V@)
-am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
-am__v_GEN_0 = @echo "  GEN     " $@;
-am__v_GEN_1 = 
-AM_V_at = $(am__v_at_@AM_V@)
-am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
-am__v_at_0 = @
-am__v_at_1 = 
-depcomp =
-am__maybe_remake_depfiles =
-SOURCES =
-DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
-	ctags-recursive dvi-recursive html-recursive info-recursive \
-	install-data-recursive install-dvi-recursive \
-	install-exec-recursive install-html-recursive \
-	install-info-recursive install-pdf-recursive \
-	install-ps-recursive install-recursive installcheck-recursive \
-	installdirs-recursive pdf-recursive ps-recursive \
-	tags-recursive uninstall-recursive
-am__can_run_installinfo = \
-  case $$AM_UPDATE_INFO_DIR in \
-    n|no|NO) false;; \
-    *) (install-info --version) >/dev/null 2>&1;; \
-  esac
-RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
-  distclean-recursive maintainer-clean-recursive
-am__recursive_targets = \
-  $(RECURSIVE_TARGETS) \
-  $(RECURSIVE_CLEAN_TARGETS) \
-  $(am__extra_recursive_targets)
-AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
-	distdir distdir-am
-am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-# Read a list of newline-separated strings from the standard input,
-# and print each of them once, without duplicates.  Input order is
-# *not* preserved.
-am__uniquify_input = $(AWK) '\
-  BEGIN { nonempty = 0; } \
-  { items[$$0] = 1; nonempty = 1; } \
-  END { if (nonempty) { for (i in items) print i; }; } \
-'
-# Make sure the list of sources is unique.  This is necessary because,
-# e.g., the same source file might be shared among _SOURCES variables
-# for different programs/libraries.
-am__define_uniq_tagged_files = \
-  list='$(am__tagged_files)'; \
-  unique=`for i in $$list; do \
-    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-  done | $(am__uniquify_input)`
-DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in README.md
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
-am__relativize = \
-  dir0=`pwd`; \
-  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
-  sed_rest='s,^[^/]*/*,,'; \
-  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
-  sed_butlast='s,/*[^/]*$$,,'; \
-  while test -n "$$dir1"; do \
-    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
-    if test "$$first" != "."; then \
-      if test "$$first" = ".."; then \
-        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
-        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
-      else \
-        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
-        if test "$$first2" = "$$first"; then \
-          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
-        else \
-          dir2="../$$dir2"; \
-        fi; \
-        dir0="$$dir0"/"$$first"; \
-      fi; \
-    fi; \
-    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
-  done; \
-  reldir="$$dir2"
-ACLOCAL = @ACLOCAL@
-AMTAR = @AMTAR@
-AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
-AR = @AR@
-AR_FLAGS = @AR_FLAGS@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
-CC = @CC@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
-CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
-CSCOPE = @CSCOPE@
-CTAGS = @CTAGS@
-CURLVERSION = @CURLVERSION@
-CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
-CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
-CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
-CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
-CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
-CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
-CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
-CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
-CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
-CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
-CURL_DISABLE_MQTT = @CURL_DISABLE_MQTT@
-CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
-CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
-CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
-CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
-CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
-CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
-CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
-CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
-CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
-CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
-CURL_PLIST_VERSION = @CURL_PLIST_VERSION@
-CURL_WITH_MULTI_SSL = @CURL_WITH_MULTI_SSL@
-CYGPATH_W = @CYGPATH_W@
-DEFAULT_SSL_BACKEND = @DEFAULT_SSL_BACKEND@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-ENABLE_SHARED = @ENABLE_SHARED@
-ENABLE_STATIC = @ENABLE_STATIC@
-ETAGS = @ETAGS@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-FILECMD = @FILECMD@
-FISH_FUNCTIONS_DIR = @FISH_FUNCTIONS_DIR@
-GCOV = @GCOV@
-GREP = @GREP@
-HAVE_BROTLI = @HAVE_BROTLI@
-HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
-HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
-HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
-HAVE_PROTO_BSDSOCKET_H = @HAVE_PROTO_BSDSOCKET_H@
-HAVE_ZSTD = @HAVE_ZSTD@
-IDN_ENABLED = @IDN_ENABLED@
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-IPV6_ENABLED = @IPV6_ENABLED@
-LCOV = @LCOV@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBCURL_LIBS = @LIBCURL_LIBS@
-LIBCURL_NO_SHARED = @LIBCURL_NO_SHARED@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
-MAINT = @MAINT@
-MAKEINFO = @MAKEINFO@
-MANIFEST_TOOL = @MANIFEST_TOOL@
-MANOPT = @MANOPT@
-MKDIR_P = @MKDIR_P@
-NM = @NM@
-NMEDIT = @NMEDIT@
-NROFF = @NROFF@
-NSS_LIBS = @NSS_LIBS@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_URL = @PACKAGE_URL@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-PERL = @PERL@
-PKGADD_NAME = @PKGADD_NAME@
-PKGADD_PKG = @PKGADD_PKG@
-PKGADD_VENDOR = @PKGADD_VENDOR@
-PKGCONFIG = @PKGCONFIG@
-RANDOM_FILE = @RANDOM_FILE@
-RANLIB = @RANLIB@
-REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-SSL_BACKENDS = @SSL_BACKENDS@
-SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
-STRIP = @STRIP@
-SUPPORT_FEATURES = @SUPPORT_FEATURES@
-SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
-USE_ARES = @USE_ARES@
-USE_BEARSSL = @USE_BEARSSL@
-USE_GNUTLS = @USE_GNUTLS@
-USE_HYPER = @USE_HYPER@
-USE_LIBRTMP = @USE_LIBRTMP@
-USE_LIBSSH = @USE_LIBSSH@
-USE_LIBSSH2 = @USE_LIBSSH2@
-USE_MBEDTLS = @USE_MBEDTLS@
-USE_MSH3 = @USE_MSH3@
-USE_NGHTTP2 = @USE_NGHTTP2@
-USE_NGHTTP3 = @USE_NGHTTP3@
-USE_NGTCP2 = @USE_NGTCP2@
-USE_NGTCP2_CRYPTO_GNUTLS = @USE_NGTCP2_CRYPTO_GNUTLS@
-USE_NGTCP2_CRYPTO_OPENSSL = @USE_NGTCP2_CRYPTO_OPENSSL@
-USE_NSS = @USE_NSS@
-USE_OPENLDAP = @USE_OPENLDAP@
-USE_QUICHE = @USE_QUICHE@
-USE_RUSTLS = @USE_RUSTLS@
-USE_SCHANNEL = @USE_SCHANNEL@
-USE_SECTRANSP = @USE_SECTRANSP@
-USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
-USE_WIN32_CRYPTO = @USE_WIN32_CRYPTO@
-USE_WIN32_LARGE_FILES = @USE_WIN32_LARGE_FILES@
-USE_WIN32_SMALL_FILES = @USE_WIN32_SMALL_FILES@
-USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
-USE_WOLFSSH = @USE_WOLFSSH@
-USE_WOLFSSL = @USE_WOLFSSL@
-VERSION = @VERSION@
-VERSIONNUM = @VERSIONNUM@
-ZLIB_LIBS = @ZLIB_LIBS@
-ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
-abs_builddir = @abs_builddir@
-abs_srcdir = @abs_srcdir@
-abs_top_builddir = @abs_top_builddir@
-abs_top_srcdir = @abs_top_srcdir@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-builddir = @builddir@
-datadir = @datadir@
-datarootdir = @datarootdir@
-docdir = @docdir@
-dvidir = @dvidir@
-exec_prefix = @exec_prefix@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-htmldir = @htmldir@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libext = @libext@
-localedir = @localedir@
-localstatedir = @localstatedir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-oldincludedir = @oldincludedir@
-pdfdir = @pdfdir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-psdir = @psdir@
-runstatedir = @runstatedir@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-srcdir = @srcdir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-top_build_prefix = @top_build_prefix@
-top_builddir = @top_builddir@
-top_srcdir = @top_srcdir@
-
-#***************************************************************************
-#                                  _   _ ____  _
-#  Project                     ___| | | |  _ \| |
-#                             / __| | | | |_) | |
-#                            | (__| |_| |  _ <| |___
-#                             \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1998 - 2020, 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.
-#
-###########################################################################
-SUBDIRS = curl
-EXTRA_DIST = README.md
-AUTOMAKE_OPTIONS = foreign no-dependencies
-all: all-recursive
-
-.SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
-	@for dep in $?; do \
-	  case '$(am__configure_deps)' in \
-	    *$$dep*) \
-	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
-	        && { if test -f $@; then exit 0; else break; fi; }; \
-	      exit 1;; \
-	  esac; \
-	done; \
-	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/Makefile'; \
-	$(am__cd) $(top_srcdir) && \
-	  $(AUTOMAKE) --foreign include/Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
-	@case '$?' in \
-	  *config.status*) \
-	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
-	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
-	esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
-	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(am__aclocal_m4_deps):
-
-mostlyclean-libtool:
-	-rm -f *.lo
-
-clean-libtool:
-	-rm -rf .libs _libs
-
-# This directory's subdirectories are mostly independent; you can cd
-# into them and run 'make' without going through this Makefile.
-# To change the values of 'make' variables: instead of editing Makefiles,
-# (1) if the variable is set in 'config.status', edit 'config.status'
-#     (which will cause the Makefiles to be regenerated when you run 'make');
-# (2) otherwise, pass the desired values on the 'make' command line.
-$(am__recursive_targets):
-	@fail=; \
-	if $(am__make_keepgoing); then \
-	  failcom='fail=yes'; \
-	else \
-	  failcom='exit 1'; \
-	fi; \
-	dot_seen=no; \
-	target=`echo $@ | sed s/-recursive//`; \
-	case "$@" in \
-	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-	  *) list='$(SUBDIRS)' ;; \
-	esac; \
-	for subdir in $$list; do \
-	  echo "Making $$target in $$subdir"; \
-	  if test "$$subdir" = "."; then \
-	    dot_seen=yes; \
-	    local_target="$$target-am"; \
-	  else \
-	    local_target="$$target"; \
-	  fi; \
-	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	  || eval $$failcom; \
-	done; \
-	if test "$$dot_seen" = "no"; then \
-	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
-	fi; test -z "$$fail"
-
-ID: $(am__tagged_files)
-	$(am__define_uniq_tagged_files); mkid -fID $$unique
-tags: tags-recursive
-TAGS: tags
-
-tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
-	set x; \
-	here=`pwd`; \
-	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
-	  include_option=--etags-include; \
-	  empty_fix=.; \
-	else \
-	  include_option=--include; \
-	  empty_fix=; \
-	fi; \
-	list='$(SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    test ! -f $$subdir/TAGS || \
-	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
-	  fi; \
-	done; \
-	$(am__define_uniq_tagged_files); \
-	shift; \
-	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
-	  test -n "$$unique" || unique=$$empty_fix; \
-	  if test $$# -gt 0; then \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      "$$@" $$unique; \
-	  else \
-	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	      $$unique; \
-	  fi; \
-	fi
-ctags: ctags-recursive
-
-CTAGS: ctags
-ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
-	$(am__define_uniq_tagged_files); \
-	test -z "$(CTAGS_ARGS)$$unique" \
-	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-	     $$unique
-
-GTAGS:
-	here=`$(am__cd) $(top_builddir) && pwd` \
-	  && $(am__cd) $(top_srcdir) \
-	  && gtags -i $(GTAGS_ARGS) "$$here"
-cscopelist: cscopelist-recursive
-
-cscopelist-am: $(am__tagged_files)
-	list='$(am__tagged_files)'; \
-	case "$(srcdir)" in \
-	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
-	  *) sdir=$(subdir)/$(srcdir) ;; \
-	esac; \
-	for i in $$list; do \
-	  if test -f "$$i"; then \
-	    echo "$(subdir)/$$i"; \
-	  else \
-	    echo "$$sdir/$$i"; \
-	  fi; \
-	done >> $(top_builddir)/cscope.files
-
-distclean-tags:
-	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-distdir: $(BUILT_SOURCES)
-	$(MAKE) $(AM_MAKEFLAGS) distdir-am
-
-distdir-am: $(DISTFILES)
-	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
-	list='$(DISTFILES)'; \
-	  dist_files=`for file in $$list; do echo $$file; done | \
-	  sed -e "s|^$$srcdirstrip/||;t" \
-	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
-	case $$dist_files in \
-	  */*) $(MKDIR_P) `echo "$$dist_files" | \
-			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
-			   sort -u` ;; \
-	esac; \
-	for file in $$dist_files; do \
-	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
-	  if test -d $$d/$$file; then \
-	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
-	    if test -d "$(distdir)/$$file"; then \
-	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
-	    fi; \
-	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
-	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
-	    fi; \
-	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
-	  else \
-	    test -f "$(distdir)/$$file" \
-	    || cp -p $$d/$$file "$(distdir)/$$file" \
-	    || exit 1; \
-	  fi; \
-	done
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
-	    $(am__make_dryrun) \
-	      || test -d "$(distdir)/$$subdir" \
-	      || $(MKDIR_P) "$(distdir)/$$subdir" \
-	      || exit 1; \
-	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
-	    $(am__relativize); \
-	    new_distdir=$$reldir; \
-	    dir1=$$subdir; dir2="$(top_distdir)"; \
-	    $(am__relativize); \
-	    new_top_distdir=$$reldir; \
-	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
-	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
-	    ($(am__cd) $$subdir && \
-	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$$new_top_distdir" \
-	        distdir="$$new_distdir" \
-		am__remove_distdir=: \
-		am__skip_length_check=: \
-		am__skip_mode_fix=: \
-	        distdir) \
-	      || exit 1; \
-	  fi; \
-	done
-check-am: all-am
-check: check-recursive
-all-am: Makefile
-installdirs: installdirs-recursive
-installdirs-am:
-install: install-recursive
-install-exec: install-exec-recursive
-install-data: install-data-recursive
-uninstall: uninstall-recursive
-
-install-am: all-am
-	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-recursive
-install-strip:
-	if test -z '$(STRIP)'; then \
-	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	      install; \
-	else \
-	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
-	fi
-mostlyclean-generic:
-
-clean-generic:
-
-distclean-generic:
-	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-
-maintainer-clean-generic:
-	@echo "This command is intended for maintainers to use"
-	@echo "it deletes files that may require special tools to rebuild."
-clean: clean-recursive
-
-clean-am: clean-generic clean-libtool mostlyclean-am
-
-distclean: distclean-recursive
-	-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-tags
-
-dvi: dvi-recursive
-
-dvi-am:
-
-html: html-recursive
-
-html-am:
-
-info: info-recursive
-
-info-am:
-
-install-data-am:
-
-install-dvi: install-dvi-recursive
-
-install-dvi-am:
-
-install-exec-am:
-
-install-html: install-html-recursive
-
-install-html-am:
-
-install-info: install-info-recursive
-
-install-info-am:
-
-install-man:
-
-install-pdf: install-pdf-recursive
-
-install-pdf-am:
-
-install-ps: install-ps-recursive
-
-install-ps-am:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-recursive
-	-rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-recursive
-
-mostlyclean-am: mostlyclean-generic mostlyclean-libtool
-
-pdf: pdf-recursive
-
-pdf-am:
-
-ps: ps-recursive
-
-ps-am:
-
-uninstall-am:
-
-.MAKE: $(am__recursive_targets) install-am install-strip
-
-.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
-	check-am clean clean-generic clean-libtool cscopelist-am ctags \
-	ctags-am distclean distclean-generic distclean-libtool \
-	distclean-tags distdir dvi dvi-am html html-am info info-am \
-	install install-am install-data install-data-am install-dvi \
-	install-dvi-am install-exec install-exec-am install-html \
-	install-html-am install-info install-info-am install-man \
-	install-pdf install-pdf-am install-ps install-ps-am \
-	install-strip installcheck installcheck-am installdirs \
-	installdirs-am maintainer-clean maintainer-clean-generic \
-	mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
-	ps ps-am tags tags-am uninstall uninstall-am
-
-.PRECIOUS: Makefile
-
-
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/include/README.md 8.0.32-1/extra/curl/curl-7.83.1/include/README.md
--- 8.0.31-1/extra/curl/curl-7.83.1/include/README.md	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/include/README.md	1970-01-01 00:00:00.000000000 +0000
@@ -1,14 +0,0 @@
-# include
-
-Public include files for libcurl, external users.
-
-They're all placed in the curl subdirectory here for better fit in any kind of
-environment. You must include files from here using...
-
-    #include <curl/curl.h>
-
-... style and point the compiler's include path to the directory holding the
-curl subdirectory. It makes it more likely to survive future modifications.
-
-The public curl include files can be shared freely between different platforms
-and different architectures.
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/install-sh 8.0.32-1/extra/curl/curl-7.83.1/install-sh
--- 8.0.31-1/extra/curl/curl-7.83.1/install-sh	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/install-sh	1970-01-01 00:00:00.000000000 +0000
@@ -1,541 +0,0 @@
-#!/bin/sh
-# install - install a program, script, or datafile
-
-scriptversion=2020-11-14.01; # UTC
-
-# This originates from X11R5 (mit/util/scripts/install.sh), which was
-# later released in X11R6 (xc/config/util/install.sh) with the
-# following copyright and license.
-#
-# Copyright (C) 1994 X Consortium
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# 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.  IN NO EVENT SHALL THE
-# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
-# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Except as contained in this notice, the name of the X Consortium shall not
-# be used in advertising or otherwise to promote the sale, use or other deal-
-# ings in this Software without prior written authorization from the X Consor-
-# tium.
-#
-#
-# FSF changes to this file are in the public domain.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# 'make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-
-tab='	'
-nl='
-'
-IFS=" $tab$nl"
-
-# Set DOITPROG to "echo" to test this script.
-
-doit=${DOITPROG-}
-doit_exec=${doit:-exec}
-
-# Put in absolute file names if you don't have them in your path;
-# or use environment vars.
-
-chgrpprog=${CHGRPPROG-chgrp}
-chmodprog=${CHMODPROG-chmod}
-chownprog=${CHOWNPROG-chown}
-cmpprog=${CMPPROG-cmp}
-cpprog=${CPPROG-cp}
-mkdirprog=${MKDIRPROG-mkdir}
-mvprog=${MVPROG-mv}
-rmprog=${RMPROG-rm}
-stripprog=${STRIPPROG-strip}
-
-posix_mkdir=
-
-# Desired mode of installed file.
-mode=0755
-
-# Create dirs (including intermediate dirs) using mode 755.
-# This is like GNU 'install' as of coreutils 8.32 (2020).
-mkdir_umask=22
-
-backupsuffix=
-chgrpcmd=
-chmodcmd=$chmodprog
-chowncmd=
-mvcmd=$mvprog
-rmcmd="$rmprog -f"
-stripcmd=
-
-src=
-dst=
-dir_arg=
-dst_arg=
-
-copy_on_change=false
-is_target_a_directory=possibly
-
-usage="\
-Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
-   or: $0 [OPTION]... SRCFILES... DIRECTORY
-   or: $0 [OPTION]... -t DIRECTORY SRCFILES...
-   or: $0 [OPTION]... -d DIRECTORIES...
-
-In the 1st form, copy SRCFILE to DSTFILE.
-In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
-In the 4th, create DIRECTORIES.
-
-Options:
-     --help     display this help and exit.
-     --version  display version info and exit.
-
-  -c            (ignored)
-  -C            install only if different (preserve data modification time)
-  -d            create directories instead of installing files.
-  -g GROUP      $chgrpprog installed files to GROUP.
-  -m MODE       $chmodprog installed files to MODE.
-  -o USER       $chownprog installed files to USER.
-  -p            pass -p to $cpprog.
-  -s            $stripprog installed files.
-  -S SUFFIX     attempt to back up existing files, with suffix SUFFIX.
-  -t DIRECTORY  install into DIRECTORY.
-  -T            report an error if DSTFILE is a directory.
-
-Environment variables override the default commands:
-  CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
-  RMPROG STRIPPROG
-
-By default, rm is invoked with -f; when overridden with RMPROG,
-it's up to you to specify -f if you want it.
-
-If -S is not specified, no backups are attempted.
-
-Email bug reports to bug-automake@gnu.org.
-Automake home page: https://www.gnu.org/software/automake/
-"
-
-while test $# -ne 0; do
-  case $1 in
-    -c) ;;
-
-    -C) copy_on_change=true;;
-
-    -d) dir_arg=true;;
-
-    -g) chgrpcmd="$chgrpprog $2"
-        shift;;
-
-    --help) echo "$usage"; exit $?;;
-
-    -m) mode=$2
-        case $mode in
-          *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
-            echo "$0: invalid mode: $mode" >&2
-            exit 1;;
-        esac
-        shift;;
-
-    -o) chowncmd="$chownprog $2"
-        shift;;
-
-    -p) cpprog="$cpprog -p";;
-
-    -s) stripcmd=$stripprog;;
-
-    -S) backupsuffix="$2"
-        shift;;
-
-    -t)
-        is_target_a_directory=always
-        dst_arg=$2
-        # Protect names problematic for 'test' and other utilities.
-        case $dst_arg in
-          -* | [=\(\)!]) dst_arg=./$dst_arg;;
-        esac
-        shift;;
-
-    -T) is_target_a_directory=never;;
-
-    --version) echo "$0 $scriptversion"; exit $?;;
-
-    --) shift
-        break;;
-
-    -*) echo "$0: invalid option: $1" >&2
-        exit 1;;
-
-    *)  break;;
-  esac
-  shift
-done
-
-# We allow the use of options -d and -T together, by making -d
-# take the precedence; this is for compatibility with GNU install.
-
-if test -n "$dir_arg"; then
-  if test -n "$dst_arg"; then
-    echo "$0: target directory not allowed when installing a directory." >&2
-    exit 1
-  fi
-fi
-
-if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
-  # When -d is used, all remaining arguments are directories to create.
-  # When -t is used, the destination is already specified.
-  # Otherwise, the last argument is the destination.  Remove it from $@.
-  for arg
-  do
-    if test -n "$dst_arg"; then
-      # $@ is not empty: it contains at least $arg.
-      set fnord "$@" "$dst_arg"
-      shift # fnord
-    fi
-    shift # arg
-    dst_arg=$arg
-    # Protect names problematic for 'test' and other utilities.
-    case $dst_arg in
-      -* | [=\(\)!]) dst_arg=./$dst_arg;;
-    esac
-  done
-fi
-
-if test $# -eq 0; then
-  if test -z "$dir_arg"; then
-    echo "$0: no input file specified." >&2
-    exit 1
-  fi
-  # It's OK to call 'install-sh -d' without argument.
-  # This can happen when creating conditional directories.
-  exit 0
-fi
-
-if test -z "$dir_arg"; then
-  if test $# -gt 1 || test "$is_target_a_directory" = always; then
-    if test ! -d "$dst_arg"; then
-      echo "$0: $dst_arg: Is not a directory." >&2
-      exit 1
-    fi
-  fi
-fi
-
-if test -z "$dir_arg"; then
-  do_exit='(exit $ret); exit $ret'
-  trap "ret=129; $do_exit" 1
-  trap "ret=130; $do_exit" 2
-  trap "ret=141; $do_exit" 13
-  trap "ret=143; $do_exit" 15
-
-  # Set umask so as not to create temps with too-generous modes.
-  # However, 'strip' requires both read and write access to temps.
-  case $mode in
-    # Optimize common cases.
-    *644) cp_umask=133;;
-    *755) cp_umask=22;;
-
-    *[0-7])
-      if test -z "$stripcmd"; then
-        u_plus_rw=
-      else
-        u_plus_rw='% 200'
-      fi
-      cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
-    *)
-      if test -z "$stripcmd"; then
-        u_plus_rw=
-      else
-        u_plus_rw=,u+rw
-      fi
-      cp_umask=$mode$u_plus_rw;;
-  esac
-fi
-
-for src
-do
-  # Protect names problematic for 'test' and other utilities.
-  case $src in
-    -* | [=\(\)!]) src=./$src;;
-  esac
-
-  if test -n "$dir_arg"; then
-    dst=$src
-    dstdir=$dst
-    test -d "$dstdir"
-    dstdir_status=$?
-    # Don't chown directories that already exist.
-    if test $dstdir_status = 0; then
-      chowncmd=""
-    fi
-  else
-
-    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
-    # might cause directories to be created, which would be especially bad
-    # if $src (and thus $dsttmp) contains '*'.
-    if test ! -f "$src" && test ! -d "$src"; then
-      echo "$0: $src does not exist." >&2
-      exit 1
-    fi
-
-    if test -z "$dst_arg"; then
-      echo "$0: no destination specified." >&2
-      exit 1
-    fi
-    dst=$dst_arg
-
-    # If destination is a directory, append the input filename.
-    if test -d "$dst"; then
-      if test "$is_target_a_directory" = never; then
-        echo "$0: $dst_arg: Is a directory" >&2
-        exit 1
-      fi
-      dstdir=$dst
-      dstbase=`basename "$src"`
-      case $dst in
-	*/) dst=$dst$dstbase;;
-	*)  dst=$dst/$dstbase;;
-      esac
-      dstdir_status=0
-    else
-      dstdir=`dirname "$dst"`
-      test -d "$dstdir"
-      dstdir_status=$?
-    fi
-  fi
-
-  case $dstdir in
-    */) dstdirslash=$dstdir;;
-    *)  dstdirslash=$dstdir/;;
-  esac
-
-  obsolete_mkdir_used=false
-
-  if test $dstdir_status != 0; then
-    case $posix_mkdir in
-      '')
-        # With -d, create the new directory with the user-specified mode.
-        # Otherwise, rely on $mkdir_umask.
-        if test -n "$dir_arg"; then
-          mkdir_mode=-m$mode
-        else
-          mkdir_mode=
-        fi
-
-        posix_mkdir=false
-	# The $RANDOM variable is not portable (e.g., dash).  Use it
-	# here however when possible just to lower collision chance.
-	tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-
-	trap '
-	  ret=$?
-	  rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null
-	  exit $ret
-	' 0
-
-	# Because "mkdir -p" follows existing symlinks and we likely work
-	# directly in world-writeable /tmp, make sure that the '$tmpdir'
-	# directory is successfully created first before we actually test
-	# 'mkdir -p'.
-	if (umask $mkdir_umask &&
-	    $mkdirprog $mkdir_mode "$tmpdir" &&
-	    exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
-	then
-	  if test -z "$dir_arg" || {
-	       # Check for POSIX incompatibilities with -m.
-	       # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-	       # other-writable bit of parent directory when it shouldn't.
-	       # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-	       test_tmpdir="$tmpdir/a"
-	       ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
-	       case $ls_ld_tmpdir in
-		 d????-?r-*) different_mode=700;;
-		 d????-?--*) different_mode=755;;
-		 *) false;;
-	       esac &&
-	       $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
-		 ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
-		 test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
-	       }
-	     }
-	  then posix_mkdir=:
-	  fi
-	  rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
-	else
-	  # Remove any dirs left behind by ancient mkdir implementations.
-	  rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
-	fi
-	trap '' 0;;
-    esac
-
-    if
-      $posix_mkdir && (
-        umask $mkdir_umask &&
-        $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
-      )
-    then :
-    else
-
-      # mkdir does not conform to POSIX,
-      # or it failed possibly due to a race condition.  Create the
-      # directory the slow way, step by step, checking for races as we go.
-
-      case $dstdir in
-        /*) prefix='/';;
-        [-=\(\)!]*) prefix='./';;
-        *)  prefix='';;
-      esac
-
-      oIFS=$IFS
-      IFS=/
-      set -f
-      set fnord $dstdir
-      shift
-      set +f
-      IFS=$oIFS
-
-      prefixes=
-
-      for d
-      do
-        test X"$d" = X && continue
-
-        prefix=$prefix$d
-        if test -d "$prefix"; then
-          prefixes=
-        else
-          if $posix_mkdir; then
-            (umask $mkdir_umask &&
-             $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
-            # Don't fail if two instances are running concurrently.
-            test -d "$prefix" || exit 1
-          else
-            case $prefix in
-              *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
-              *) qprefix=$prefix;;
-            esac
-            prefixes="$prefixes '$qprefix'"
-          fi
-        fi
-        prefix=$prefix/
-      done
-
-      if test -n "$prefixes"; then
-        # Don't fail if two instances are running concurrently.
-        (umask $mkdir_umask &&
-         eval "\$doit_exec \$mkdirprog $prefixes") ||
-          test -d "$dstdir" || exit 1
-        obsolete_mkdir_used=true
-      fi
-    fi
-  fi
-
-  if test -n "$dir_arg"; then
-    { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
-    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
-    { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
-      test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
-  else
-
-    # Make a couple of temp file names in the proper directory.
-    dsttmp=${dstdirslash}_inst.$$_
-    rmtmp=${dstdirslash}_rm.$$_
-
-    # Trap to clean up those temp files at exit.
-    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-
-    # Copy the file name to the temp name.
-    (umask $cp_umask &&
-     { test -z "$stripcmd" || {
-	 # Create $dsttmp read-write so that cp doesn't create it read-only,
-	 # which would cause strip to fail.
-	 if test -z "$doit"; then
-	   : >"$dsttmp" # No need to fork-exec 'touch'.
-	 else
-	   $doit touch "$dsttmp"
-	 fi
-       }
-     } &&
-     $doit_exec $cpprog "$src" "$dsttmp") &&
-
-    # and set any options; do chmod last to preserve setuid bits.
-    #
-    # If any of these fail, we abort the whole thing.  If we want to
-    # ignore errors from any of these, just make sure not to ignore
-    # errors from the above "$doit $cpprog $src $dsttmp" command.
-    #
-    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
-    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
-    { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
-    { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
-
-    # If -C, don't bother to copy if it wouldn't change the file.
-    if $copy_on_change &&
-       old=`LC_ALL=C ls -dlL "$dst"     2>/dev/null` &&
-       new=`LC_ALL=C ls -dlL "$dsttmp"  2>/dev/null` &&
-       set -f &&
-       set X $old && old=:$2:$4:$5:$6 &&
-       set X $new && new=:$2:$4:$5:$6 &&
-       set +f &&
-       test "$old" = "$new" &&
-       $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
-    then
-      rm -f "$dsttmp"
-    else
-      # If $backupsuffix is set, and the file being installed
-      # already exists, attempt a backup.  Don't worry if it fails,
-      # e.g., if mv doesn't support -f.
-      if test -n "$backupsuffix" && test -f "$dst"; then
-        $doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null
-      fi
-
-      # Rename the file to the real destination.
-      $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
-
-      # The rename failed, perhaps because mv can't rename something else
-      # to itself, or perhaps because mv is so ancient that it does not
-      # support -f.
-      {
-        # Now remove or move aside any old file at destination location.
-        # We try this two ways since rm can't unlink itself on some
-        # systems and the destination file might be busy for other
-        # reasons.  In this case, the final cleanup might fail but the new
-        # file should still install successfully.
-        {
-          test ! -f "$dst" ||
-          $doit $rmcmd "$dst" 2>/dev/null ||
-          { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
-            { $doit $rmcmd "$rmtmp" 2>/dev/null; :; }
-          } ||
-          { echo "$0: cannot unlink or rename $dst" >&2
-            (exit 1); exit 1
-          }
-        } &&
-
-        # Now rename the file to the real destination.
-        $doit $mvcmd "$dsttmp" "$dst"
-      }
-    fi || exit 1
-
-    trap '' 0
-  fi
-done
-
-# Local variables:
-# eval: (add-hook 'before-save-hook 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC0"
-# time-stamp-end: "; # UTC"
-# End:
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/lib/altsvc.c 8.0.32-1/extra/curl/curl-7.83.1/lib/altsvc.c
--- 8.0.31-1/extra/curl/curl-7.83.1/lib/altsvc.c	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/lib/altsvc.c	1970-01-01 00:00:00.000000000 +0000
@@ -1,670 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2019 - 2022, 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.
- *
- ***************************************************************************/
-/*
- * The Alt-Svc: header is defined in RFC 7838:
- * https://datatracker.ietf.org/doc/html/rfc7838
- */
-#include "curl_setup.h"
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_ALTSVC)
-#include <curl/curl.h>
-#include "urldata.h"
-#include "altsvc.h"
-#include "curl_get_line.h"
-#include "strcase.h"
-#include "parsedate.h"
-#include "sendf.h"
-#include "warnless.h"
-#include "rand.h"
-#include "rename.h"
-
-/* The last 3 #include files should be in this order */
-#include "curl_printf.h"
-#include "curl_memory.h"
-#include "memdebug.h"
-
-#define MAX_ALTSVC_LINE 4095
-#define MAX_ALTSVC_DATELENSTR "64"
-#define MAX_ALTSVC_DATELEN 64
-#define MAX_ALTSVC_HOSTLENSTR "512"
-#define MAX_ALTSVC_HOSTLEN 512
-#define MAX_ALTSVC_ALPNLENSTR "10"
-#define MAX_ALTSVC_ALPNLEN 10
-
-#if defined(USE_QUICHE) && !defined(UNITTESTS)
-#define H3VERSION "h3-29"
-#elif defined(USE_NGTCP2) && !defined(UNITTESTS)
-#define H3VERSION "h3-29"
-#elif defined(USE_MSH3) && !defined(UNITTESTS)
-#define H3VERSION "h3-29"
-#else
-#define H3VERSION "h3"
-#endif
-
-static enum alpnid alpn2alpnid(char *name)
-{
-  if(strcasecompare(name, "h1"))
-    return ALPN_h1;
-  if(strcasecompare(name, "h2"))
-    return ALPN_h2;
-  if(strcasecompare(name, H3VERSION))
-    return ALPN_h3;
-  return ALPN_none; /* unknown, probably rubbish input */
-}
-
-/* Given the ALPN ID, return the name */
-const char *Curl_alpnid2str(enum alpnid id)
-{
-  switch(id) {
-  case ALPN_h1:
-    return "h1";
-  case ALPN_h2:
-    return "h2";
-  case ALPN_h3:
-    return H3VERSION;
-  default:
-    return ""; /* bad */
-  }
-}
-
-
-static void altsvc_free(struct altsvc *as)
-{
-  free(as->src.host);
-  free(as->dst.host);
-  free(as);
-}
-
-static struct altsvc *altsvc_createid(const char *srchost,
-                                      const char *dsthost,
-                                      enum alpnid srcalpnid,
-                                      enum alpnid dstalpnid,
-                                      unsigned int srcport,
-                                      unsigned int dstport)
-{
-  struct altsvc *as = calloc(sizeof(struct altsvc), 1);
-  size_t hlen;
-  if(!as)
-    return NULL;
-  hlen = strlen(srchost);
-  DEBUGASSERT(hlen);
-  as->src.host = strdup(srchost);
-  if(!as->src.host)
-    goto error;
-  if(hlen && (srchost[hlen - 1] == '.'))
-    /* strip off trailing any dot */
-    as->src.host[--hlen] = 0;
-  as->dst.host = strdup(dsthost);
-  if(!as->dst.host)
-    goto error;
-
-  as->src.alpnid = srcalpnid;
-  as->dst.alpnid = dstalpnid;
-  as->src.port = curlx_ultous(srcport);
-  as->dst.port = curlx_ultous(dstport);
-
-  return as;
-  error:
-  altsvc_free(as);
-  return NULL;
-}
-
-static struct altsvc *altsvc_create(char *srchost,
-                                    char *dsthost,
-                                    char *srcalpn,
-                                    char *dstalpn,
-                                    unsigned int srcport,
-                                    unsigned int dstport)
-{
-  enum alpnid dstalpnid = alpn2alpnid(dstalpn);
-  enum alpnid srcalpnid = alpn2alpnid(srcalpn);
-  if(!srcalpnid || !dstalpnid)
-    return NULL;
-  return altsvc_createid(srchost, dsthost, srcalpnid, dstalpnid,
-                         srcport, dstport);
-}
-
-/* only returns SERIOUS errors */
-static CURLcode altsvc_add(struct altsvcinfo *asi, char *line)
-{
-  /* Example line:
-     h2 example.com 443 h3 shiny.example.com 8443 "20191231 10:00:00" 1
-   */
-  char srchost[MAX_ALTSVC_HOSTLEN + 1];
-  char dsthost[MAX_ALTSVC_HOSTLEN + 1];
-  char srcalpn[MAX_ALTSVC_ALPNLEN + 1];
-  char dstalpn[MAX_ALTSVC_ALPNLEN + 1];
-  char date[MAX_ALTSVC_DATELEN + 1];
-  unsigned int srcport;
-  unsigned int dstport;
-  unsigned int prio;
-  unsigned int persist;
-  int rc;
-
-  rc = sscanf(line,
-              "%" MAX_ALTSVC_ALPNLENSTR "s %" MAX_ALTSVC_HOSTLENSTR "s %u "
-              "%" MAX_ALTSVC_ALPNLENSTR "s %" MAX_ALTSVC_HOSTLENSTR "s %u "
-              "\"%" MAX_ALTSVC_DATELENSTR "[^\"]\" %u %u",
-              srcalpn, srchost, &srcport,
-              dstalpn, dsthost, &dstport,
-              date, &persist, &prio);
-  if(9 == rc) {
-    struct altsvc *as;
-    time_t expires = Curl_getdate_capped(date);
-    as = altsvc_create(srchost, dsthost, srcalpn, dstalpn, srcport, dstport);
-    if(as) {
-      as->expires = expires;
-      as->prio = prio;
-      as->persist = persist ? 1 : 0;
-      Curl_llist_insert_next(&asi->list, asi->list.tail, as, &as->node);
-    }
-  }
-
-  return CURLE_OK;
-}
-
-/*
- * Load alt-svc entries from the given file. The text based line-oriented file
- * format is documented here:
- * https://github.com/curl/curl/wiki/QUIC-implementation
- *
- * This function only returns error on major problems that prevents alt-svc
- * handling to work completely. It will ignore individual syntactical errors
- * etc.
- */
-static CURLcode altsvc_load(struct altsvcinfo *asi, const char *file)
-{
-  CURLcode result = CURLE_OK;
-  char *line = NULL;
-  FILE *fp;
-
-  /* we need a private copy of the file name so that the altsvc cache file
-     name survives an easy handle reset */
-  free(asi->filename);
-  asi->filename = strdup(file);
-  if(!asi->filename)
-    return CURLE_OUT_OF_MEMORY;
-
-  fp = fopen(file, FOPEN_READTEXT);
-  if(fp) {
-    line = malloc(MAX_ALTSVC_LINE);
-    if(!line)
-      goto fail;
-    while(Curl_get_line(line, MAX_ALTSVC_LINE, fp)) {
-      char *lineptr = line;
-      while(*lineptr && ISBLANK(*lineptr))
-        lineptr++;
-      if(*lineptr == '#')
-        /* skip commented lines */
-        continue;
-
-      altsvc_add(asi, lineptr);
-    }
-    free(line); /* free the line buffer */
-    fclose(fp);
-  }
-  return result;
-
-  fail:
-  Curl_safefree(asi->filename);
-  free(line);
-  fclose(fp);
-  return CURLE_OUT_OF_MEMORY;
-}
-
-/*
- * Write this single altsvc entry to a single output line
- */
-
-static CURLcode altsvc_out(struct altsvc *as, FILE *fp)
-{
-  struct tm stamp;
-  CURLcode result = Curl_gmtime(as->expires, &stamp);
-  if(result)
-    return result;
-
-  fprintf(fp,
-          "%s %s %u "
-          "%s %s %u "
-          "\"%d%02d%02d "
-          "%02d:%02d:%02d\" "
-          "%u %d\n",
-          Curl_alpnid2str(as->src.alpnid), as->src.host, as->src.port,
-          Curl_alpnid2str(as->dst.alpnid), as->dst.host, as->dst.port,
-          stamp.tm_year + 1900, stamp.tm_mon + 1, stamp.tm_mday,
-          stamp.tm_hour, stamp.tm_min, stamp.tm_sec,
-          as->persist, as->prio);
-  return CURLE_OK;
-}
-
-/* ---- library-wide functions below ---- */
-
-/*
- * Curl_altsvc_init() creates a new altsvc cache.
- * It returns the new instance or NULL if something goes wrong.
- */
-struct altsvcinfo *Curl_altsvc_init(void)
-{
-  struct altsvcinfo *asi = calloc(sizeof(struct altsvcinfo), 1);
-  if(!asi)
-    return NULL;
-  Curl_llist_init(&asi->list, NULL);
-
-  /* set default behavior */
-  asi->flags = CURLALTSVC_H1
-#ifdef USE_HTTP2
-    | CURLALTSVC_H2
-#endif
-#ifdef ENABLE_QUIC
-    | CURLALTSVC_H3
-#endif
-    ;
-  return asi;
-}
-
-/*
- * Curl_altsvc_load() loads alt-svc from file.
- */
-CURLcode Curl_altsvc_load(struct altsvcinfo *asi, const char *file)
-{
-  CURLcode result;
-  DEBUGASSERT(asi);
-  result = altsvc_load(asi, file);
-  return result;
-}
-
-/*
- * Curl_altsvc_ctrl() passes on the external bitmask.
- */
-CURLcode Curl_altsvc_ctrl(struct altsvcinfo *asi, const long ctrl)
-{
-  DEBUGASSERT(asi);
-  if(!ctrl)
-    /* unexpected */
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-  asi->flags = ctrl;
-  return CURLE_OK;
-}
-
-/*
- * Curl_altsvc_cleanup() frees an altsvc cache instance and all associated
- * resources.
- */
-void Curl_altsvc_cleanup(struct altsvcinfo **altsvcp)
-{
-  struct Curl_llist_element *e;
-  struct Curl_llist_element *n;
-  if(*altsvcp) {
-    struct altsvcinfo *altsvc = *altsvcp;
-    for(e = altsvc->list.head; e; e = n) {
-      struct altsvc *as = e->ptr;
-      n = e->next;
-      altsvc_free(as);
-    }
-    free(altsvc->filename);
-    free(altsvc);
-    *altsvcp = NULL; /* clear the pointer */
-  }
-}
-
-/*
- * Curl_altsvc_save() writes the altsvc cache to a file.
- */
-CURLcode Curl_altsvc_save(struct Curl_easy *data,
-                          struct altsvcinfo *altsvc, const char *file)
-{
-  struct Curl_llist_element *e;
-  struct Curl_llist_element *n;
-  CURLcode result = CURLE_OK;
-  FILE *out;
-  char *tempstore;
-  unsigned char randsuffix[9];
-
-  if(!altsvc)
-    /* no cache activated */
-    return CURLE_OK;
-
-  /* if not new name is given, use the one we stored from the load */
-  if(!file && altsvc->filename)
-    file = altsvc->filename;
-
-  if((altsvc->flags & CURLALTSVC_READONLYFILE) || !file || !file[0])
-    /* marked as read-only, no file or zero length file name */
-    return CURLE_OK;
-
-  if(Curl_rand_hex(data, randsuffix, sizeof(randsuffix)))
-    return CURLE_FAILED_INIT;
-
-  tempstore = aprintf("%s.%s.tmp", file, randsuffix);
-  if(!tempstore)
-    return CURLE_OUT_OF_MEMORY;
-
-  out = fopen(tempstore, FOPEN_WRITETEXT);
-  if(!out)
-    result = CURLE_WRITE_ERROR;
-  else {
-    fputs("# Your alt-svc cache. https://curl.se/docs/alt-svc.html\n"
-          "# This file was generated by libcurl! Edit at your own risk.\n",
-          out);
-    for(e = altsvc->list.head; e; e = n) {
-      struct altsvc *as = e->ptr;
-      n = e->next;
-      result = altsvc_out(as, out);
-      if(result)
-        break;
-    }
-    fclose(out);
-    if(!result && Curl_rename(tempstore, file))
-      result = CURLE_WRITE_ERROR;
-
-    if(result)
-      unlink(tempstore);
-  }
-  free(tempstore);
-  return result;
-}
-
-static CURLcode getalnum(const char **ptr, char *alpnbuf, size_t buflen)
-{
-  size_t len;
-  const char *protop;
-  const char *p = *ptr;
-  while(*p && ISBLANK(*p))
-    p++;
-  protop = p;
-  while(*p && !ISBLANK(*p) && (*p != ';') && (*p != '='))
-    p++;
-  len = p - protop;
-  *ptr = p;
-
-  if(!len || (len >= buflen))
-    return CURLE_BAD_FUNCTION_ARGUMENT;
-  memcpy(alpnbuf, protop, len);
-  alpnbuf[len] = 0;
-  return CURLE_OK;
-}
-
-/* hostcompare() returns true if 'host' matches 'check'. The first host
- * argument may have a trailing dot present that will be ignored.
- */
-static bool hostcompare(const char *host, const char *check)
-{
-  size_t hlen = strlen(host);
-  size_t clen = strlen(check);
-
-  if(hlen && (host[hlen - 1] == '.'))
-    hlen--;
-  if(hlen != clen)
-    /* they can't match if they have different lengths */
-    return FALSE;
-  return strncasecompare(host, check, hlen);
-}
-
-/* altsvc_flush() removes all alternatives for this source origin from the
-   list */
-static void altsvc_flush(struct altsvcinfo *asi, enum alpnid srcalpnid,
-                         const char *srchost, unsigned short srcport)
-{
-  struct Curl_llist_element *e;
-  struct Curl_llist_element *n;
-  for(e = asi->list.head; e; e = n) {
-    struct altsvc *as = e->ptr;
-    n = e->next;
-    if((srcalpnid == as->src.alpnid) &&
-       (srcport == as->src.port) &&
-       hostcompare(srchost, as->src.host)) {
-      Curl_llist_remove(&asi->list, e, NULL);
-      altsvc_free(as);
-    }
-  }
-}
-
-#ifdef DEBUGBUILD
-/* to play well with debug builds, we can *set* a fixed time this will
-   return */
-static time_t debugtime(void *unused)
-{
-  char *timestr = getenv("CURL_TIME");
-  (void)unused;
-  if(timestr) {
-    unsigned long val = strtol(timestr, NULL, 10);
-    return (time_t)val;
-  }
-  return time(NULL);
-}
-#define time(x) debugtime(x)
-#endif
-
-#define ISNEWLINE(x) (((x) == '\n') || (x) == '\r')
-
-/*
- * Curl_altsvc_parse() takes an incoming alt-svc response header and stores
- * the data correctly in the cache.
- *
- * 'value' points to the header *value*. That's contents to the right of the
- * header name.
- *
- * Currently this function rejects invalid data without returning an error.
- * Invalid host name, port number will result in the specific alternative
- * being rejected. Unknown protocols are skipped.
- */
-CURLcode Curl_altsvc_parse(struct Curl_easy *data,
-                           struct altsvcinfo *asi, const char *value,
-                           enum alpnid srcalpnid, const char *srchost,
-                           unsigned short srcport)
-{
-  const char *p = value;
-  size_t len;
-  char namebuf[MAX_ALTSVC_HOSTLEN] = "";
-  char alpnbuf[MAX_ALTSVC_ALPNLEN] = "";
-  struct altsvc *as;
-  unsigned short dstport = srcport; /* the same by default */
-  CURLcode result = getalnum(&p, alpnbuf, sizeof(alpnbuf));
-#ifdef CURL_DISABLE_VERBOSE_STRINGS
-  (void)data;
-#endif
-  if(result) {
-    infof(data, "Excessive alt-svc header, ignoring.");
-    return CURLE_OK;
-  }
-
-  DEBUGASSERT(asi);
-
-  /* Flush all cached alternatives for this source origin, if any */
-  altsvc_flush(asi, srcalpnid, srchost, srcport);
-
-  /* "clear" is a magic keyword */
-  if(strcasecompare(alpnbuf, "clear")) {
-    return CURLE_OK;
-  }
-
-  do {
-    if(*p == '=') {
-      /* [protocol]="[host][:port]" */
-      enum alpnid dstalpnid = alpn2alpnid(alpnbuf); /* the same by default */
-      p++;
-      if(*p == '\"') {
-        const char *dsthost = "";
-        const char *value_ptr;
-        char option[32];
-        unsigned long num;
-        char *end_ptr;
-        bool quoted = FALSE;
-        time_t maxage = 24 * 3600; /* default is 24 hours */
-        bool persist = FALSE;
-        p++;
-        if(*p != ':') {
-          /* host name starts here */
-          const char *hostp = p;
-          while(*p && (ISALNUM(*p) || (*p == '.') || (*p == '-')))
-            p++;
-          len = p - hostp;
-          if(!len || (len >= MAX_ALTSVC_HOSTLEN)) {
-            infof(data, "Excessive alt-svc host name, ignoring.");
-            dstalpnid = ALPN_none;
-          }
-          else {
-            memcpy(namebuf, hostp, len);
-            namebuf[len] = 0;
-            dsthost = namebuf;
-          }
-        }
-        else {
-          /* no destination name, use source host */
-          dsthost = srchost;
-        }
-        if(*p == ':') {
-          /* a port number */
-          unsigned long port = strtoul(++p, &end_ptr, 10);
-          if(port > USHRT_MAX || end_ptr == p || *end_ptr != '\"') {
-            infof(data, "Unknown alt-svc port number, ignoring.");
-            dstalpnid = ALPN_none;
-          }
-          p = end_ptr;
-          dstport = curlx_ultous(port);
-        }
-        if(*p++ != '\"')
-          break;
-        /* Handle the optional 'ma' and 'persist' flags. Unknown flags
-           are skipped. */
-        for(;;) {
-          while(ISBLANK(*p))
-            p++;
-          if(*p != ';')
-            break;
-          p++; /* pass the semicolon */
-          if(!*p || ISNEWLINE(*p))
-            break;
-          result = getalnum(&p, option, sizeof(option));
-          if(result) {
-            /* skip option if name is too long */
-            option[0] = '\0';
-          }
-          while(*p && ISBLANK(*p))
-            p++;
-          if(*p != '=')
-            return CURLE_OK;
-          p++;
-          while(*p && ISBLANK(*p))
-            p++;
-          if(!*p)
-            return CURLE_OK;
-          if(*p == '\"') {
-            /* quoted value */
-            p++;
-            quoted = TRUE;
-          }
-          value_ptr = p;
-          if(quoted) {
-            while(*p && *p != '\"')
-              p++;
-            if(!*p++)
-              return CURLE_OK;
-          }
-          else {
-            while(*p && !ISBLANK(*p) && *p!= ';' && *p != ',')
-              p++;
-          }
-          num = strtoul(value_ptr, &end_ptr, 10);
-          if((end_ptr != value_ptr) && (num < ULONG_MAX)) {
-            if(strcasecompare("ma", option))
-              maxage = num;
-            else if(strcasecompare("persist", option) && (num == 1))
-              persist = TRUE;
-          }
-        }
-        if(dstalpnid) {
-          as = altsvc_createid(srchost, dsthost,
-                               srcalpnid, dstalpnid,
-                               srcport, dstport);
-          if(as) {
-            /* The expires time also needs to take the Age: value (if any) into
-               account. [See RFC 7838 section 3.1] */
-            as->expires = maxage + time(NULL);
-            as->persist = persist;
-            Curl_llist_insert_next(&asi->list, asi->list.tail, as, &as->node);
-            infof(data, "Added alt-svc: %s:%d over %s", dsthost, dstport,
-                  Curl_alpnid2str(dstalpnid));
-          }
-        }
-        else {
-          infof(data, "Unknown alt-svc protocol \"%s\", skipping.",
-                alpnbuf);
-        }
-      }
-      else
-        break;
-      /* after the double quote there can be a comma if there's another
-         string or a semicolon if no more */
-      if(*p == ',') {
-        /* comma means another alternative is presented */
-        p++;
-        result = getalnum(&p, alpnbuf, sizeof(alpnbuf));
-        if(result)
-          break;
-      }
-    }
-    else
-      break;
-  } while(*p && (*p != ';') && (*p != '\n') && (*p != '\r'));
-
-  return CURLE_OK;
-}
-
-/*
- * Return TRUE on a match
- */
-bool Curl_altsvc_lookup(struct altsvcinfo *asi,
-                        enum alpnid srcalpnid, const char *srchost,
-                        int srcport,
-                        struct altsvc **dstentry,
-                        const int versions) /* one or more bits */
-{
-  struct Curl_llist_element *e;
-  struct Curl_llist_element *n;
-  time_t now = time(NULL);
-  DEBUGASSERT(asi);
-  DEBUGASSERT(srchost);
-  DEBUGASSERT(dstentry);
-
-  for(e = asi->list.head; e; e = n) {
-    struct altsvc *as = e->ptr;
-    n = e->next;
-    if(as->expires < now) {
-      /* an expired entry, remove */
-      Curl_llist_remove(&asi->list, e, NULL);
-      altsvc_free(as);
-      continue;
-    }
-    if((as->src.alpnid == srcalpnid) &&
-       hostcompare(srchost, as->src.host) &&
-       (as->src.port == srcport) &&
-       (versions & as->dst.alpnid)) {
-      /* match */
-      *dstentry = as;
-      return TRUE;
-    }
-  }
-  return FALSE;
-}
-
-#endif /* !CURL_DISABLE_HTTP && !CURL_DISABLE_ALTSVC */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/lib/altsvc.h 8.0.32-1/extra/curl/curl-7.83.1/lib/altsvc.h
--- 8.0.31-1/extra/curl/curl-7.83.1/lib/altsvc.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/lib/altsvc.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,79 +0,0 @@
-#ifndef HEADER_CURL_ALTSVC_H
-#define HEADER_CURL_ALTSVC_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2019 - 2020, 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.
- *
- ***************************************************************************/
-#include "curl_setup.h"
-
-#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_ALTSVC)
-#include <curl/curl.h>
-#include "llist.h"
-
-enum alpnid {
-  ALPN_none = 0,
-  ALPN_h1 = CURLALTSVC_H1,
-  ALPN_h2 = CURLALTSVC_H2,
-  ALPN_h3 = CURLALTSVC_H3
-};
-
-struct althost {
-  char *host;
-  unsigned short port;
-  enum alpnid alpnid;
-};
-
-struct altsvc {
-  struct althost src;
-  struct althost dst;
-  time_t expires;
-  bool persist;
-  int prio;
-  struct Curl_llist_element node;
-};
-
-struct altsvcinfo {
-  char *filename;
-  struct Curl_llist list; /* list of entries */
-  long flags; /* the publicly set bitmask */
-};
-
-const char *Curl_alpnid2str(enum alpnid id);
-struct altsvcinfo *Curl_altsvc_init(void);
-CURLcode Curl_altsvc_load(struct altsvcinfo *asi, const char *file);
-CURLcode Curl_altsvc_save(struct Curl_easy *data,
-                          struct altsvcinfo *asi, const char *file);
-CURLcode Curl_altsvc_ctrl(struct altsvcinfo *asi, const long ctrl);
-void Curl_altsvc_cleanup(struct altsvcinfo **altsvc);
-CURLcode Curl_altsvc_parse(struct Curl_easy *data,
-                           struct altsvcinfo *altsvc, const char *value,
-                           enum alpnid srcalpn, const char *srchost,
-                           unsigned short srcport);
-bool Curl_altsvc_lookup(struct altsvcinfo *asi,
-                        enum alpnid srcalpnid, const char *srchost,
-                        int srcport,
-                        struct altsvc **dstentry,
-                        const int versions); /* CURLALTSVC_H* bits */
-#else
-/* disabled */
-#define Curl_altsvc_save(a,b,c)
-#define Curl_altsvc_cleanup(x)
-#endif /* !CURL_DISABLE_HTTP && !CURL_DISABLE_ALTSVC */
-#endif /* HEADER_CURL_ALTSVC_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/lib/amigaos.c 8.0.32-1/extra/curl/curl-7.83.1/lib/amigaos.c
--- 8.0.31-1/extra/curl/curl-7.83.1/lib/amigaos.c	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/lib/amigaos.c	1970-01-01 00:00:00.000000000 +0000
@@ -1,122 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2021, 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.
- *
- ***************************************************************************/
-
-#include "curl_setup.h"
-
-#ifdef __AMIGA__
-#  include "amigaos.h"
-#  if defined(HAVE_PROTO_BSDSOCKET_H) && !defined(USE_AMISSL)
-#    include <amitcp/socketbasetags.h>
-#  endif
-#  ifdef __libnix__
-#    include <stabs.h>
-#  endif
-#endif
-
-/* The last #include files should be: */
-#include "curl_memory.h"
-#include "memdebug.h"
-
-#ifdef __AMIGA__
-#if defined(HAVE_PROTO_BSDSOCKET_H) && !defined(USE_AMISSL)
-struct Library *SocketBase = NULL;
-extern int errno, h_errno;
-
-#ifdef __libnix__
-void __request(const char *msg);
-#else
-# define __request(msg)       Printf(msg "\n\a")
-#endif
-
-void Curl_amiga_cleanup()
-{
-  if(SocketBase) {
-    CloseLibrary(SocketBase);
-    SocketBase = NULL;
-  }
-}
-
-bool Curl_amiga_init()
-{
-  if(!SocketBase)
-    SocketBase = OpenLibrary("bsdsocket.library", 4);
-
-  if(!SocketBase) {
-    __request("No TCP/IP Stack running!");
-    return FALSE;
-  }
-
-  if(SocketBaseTags(SBTM_SETVAL(SBTC_ERRNOPTR(sizeof(errno))), (ULONG) &errno,
-                    SBTM_SETVAL(SBTC_LOGTAGPTR), (ULONG) "curl",
-                    TAG_DONE)) {
-    __request("SocketBaseTags ERROR");
-    return FALSE;
-  }
-
-#ifndef __libnix__
-  atexit(Curl_amiga_cleanup);
-#endif
-
-  return TRUE;
-}
-
-#ifdef __libnix__
-ADD2EXIT(Curl_amiga_cleanup, -50);
-#endif
-
-#endif /* HAVE_PROTO_BSDSOCKET_H */
-
-#ifdef USE_AMISSL
-void Curl_amiga_X509_free(X509 *a)
-{
-  X509_free(a);
-}
-
-/* AmiSSL replaces many functions with macros. Curl requires pointer
- * to some of these functions. Thus, we have to encapsulate these macros.
- */
-
-#include "warnless.h"
-
-int (SHA256_Init)(SHA256_CTX *c)
-{
-  return SHA256_Init(c);
-};
-
-int (SHA256_Update)(SHA256_CTX *c, const void *data, size_t len)
-{
-  return SHA256_Update(c, data, curlx_uztoui(len));
-};
-
-int (SHA256_Final)(unsigned char *md, SHA256_CTX *c)
-{
-  return SHA256_Final(md, c);
-};
-
-void (X509_INFO_free)(X509_INFO *a)
-{
-  X509_INFO_free(a);
-};
-
-#endif /* USE_AMISSL */
-#endif /* __AMIGA__ */
-
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/lib/amigaos.h 8.0.32-1/extra/curl/curl-7.83.1/lib/amigaos.h
--- 8.0.31-1/extra/curl/curl-7.83.1/lib/amigaos.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/lib/amigaos.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,44 +0,0 @@
-#ifndef HEADER_CURL_AMIGAOS_H
-#define HEADER_CURL_AMIGAOS_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2020, 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.
- *
- ***************************************************************************/
-#include "curl_setup.h"
-
-#if defined(__AMIGA__) && defined(HAVE_BSDSOCKET_H) && !defined(USE_AMISSL)
-
-bool Curl_amiga_init();
-void Curl_amiga_cleanup();
-
-#else
-
-#define Curl_amiga_init() 1
-#define Curl_amiga_cleanup() Curl_nop_stmt
-
-#endif
-
-#ifdef USE_AMISSL
-#include <openssl/x509v3.h>
-void Curl_amiga_X509_free(X509 *a);
-#endif /* USE_AMISSL */
-
-#endif /* HEADER_CURL_AMIGAOS_H */
-
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/lib/arpa_telnet.h 8.0.32-1/extra/curl/curl-7.83.1/lib/arpa_telnet.h
--- 8.0.31-1/extra/curl/curl-7.83.1/lib/arpa_telnet.h	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/lib/arpa_telnet.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,108 +0,0 @@
-#ifndef HEADER_CURL_ARPA_TELNET_H
-#define HEADER_CURL_ARPA_TELNET_H
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2020, 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.
- *
- ***************************************************************************/
-#ifndef CURL_DISABLE_TELNET
-/*
- * Telnet option defines. Add more here if in need.
- */
-#define CURL_TELOPT_BINARY   0  /* binary 8bit data */
-#define CURL_TELOPT_ECHO     1  /* just echo! */
-#define CURL_TELOPT_SGA      3  /* Suppress Go Ahead */
-#define CURL_TELOPT_EXOPL  255  /* EXtended OPtions List */
-#define CURL_TELOPT_TTYPE   24  /* Terminal TYPE */
-#define CURL_TELOPT_NAWS    31  /* Negotiate About Window Size */
-#define CURL_TELOPT_XDISPLOC 35 /* X DISPlay LOCation */
-
-#define CURL_TELOPT_NEW_ENVIRON 39  /* NEW ENVIRONment variables */
-#define CURL_NEW_ENV_VAR   0
-#define CURL_NEW_ENV_VALUE 1
-
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-/*
- * The telnet options represented as strings
- */
-static const char * const telnetoptions[]=
-{
-  "BINARY",      "ECHO",           "RCP",           "SUPPRESS GO AHEAD",
-  "NAME",        "STATUS",         "TIMING MARK",   "RCTE",
-  "NAOL",        "NAOP",           "NAOCRD",        "NAOHTS",
-  "NAOHTD",      "NAOFFD",         "NAOVTS",        "NAOVTD",
-  "NAOLFD",      "EXTEND ASCII",   "LOGOUT",        "BYTE MACRO",
-  "DE TERMINAL", "SUPDUP",         "SUPDUP OUTPUT", "SEND LOCATION",
-  "TERM TYPE",   "END OF RECORD",  "TACACS UID",    "OUTPUT MARKING",
-  "TTYLOC",      "3270 REGIME",    "X3 PAD",        "NAWS",
-  "TERM SPEED",  "LFLOW",          "LINEMODE",      "XDISPLOC",
-  "OLD-ENVIRON", "AUTHENTICATION", "ENCRYPT",       "NEW-ENVIRON"
-};
-#endif
-
-#define CURL_TELOPT_MAXIMUM CURL_TELOPT_NEW_ENVIRON
-
-#define CURL_TELOPT_OK(x) ((x) <= CURL_TELOPT_MAXIMUM)
-#define CURL_TELOPT(x)    telnetoptions[x]
-
-#define CURL_NTELOPTS 40
-
-/*
- * First some defines
- */
-#define CURL_xEOF 236 /* End Of File */
-#define CURL_SE   240 /* Sub negotiation End */
-#define CURL_NOP  241 /* No OPeration */
-#define CURL_DM   242 /* Data Mark */
-#define CURL_GA   249 /* Go Ahead, reverse the line */
-#define CURL_SB   250 /* SuBnegotiation */
-#define CURL_WILL 251 /* Our side WILL use this option */
-#define CURL_WONT 252 /* Our side WON'T use this option */
-#define CURL_DO   253 /* DO use this option! */
-#define CURL_DONT 254 /* DON'T use this option! */
-#define CURL_IAC  255 /* Interpret As Command */
-
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-/*
- * Then those numbers represented as strings:
- */
-static const char * const telnetcmds[]=
-{
-  "EOF",  "SUSP",  "ABORT", "EOR",  "SE",
-  "NOP",  "DMARK", "BRK",   "IP",   "AO",
-  "AYT",  "EC",    "EL",    "GA",   "SB",
-  "WILL", "WONT",  "DO",    "DONT", "IAC"
-};
-#endif
-
-#define CURL_TELCMD_MINIMUM CURL_xEOF /* the first one */
-#define CURL_TELCMD_MAXIMUM CURL_IAC  /* surprise, 255 is the last one! ;-) */
-
-#define CURL_TELQUAL_IS   0
-#define CURL_TELQUAL_SEND 1
-#define CURL_TELQUAL_INFO 2
-#define CURL_TELQUAL_NAME 3
-
-#define CURL_TELCMD_OK(x) ( ((unsigned int)(x) >= CURL_TELCMD_MINIMUM) && \
-                       ((unsigned int)(x) <= CURL_TELCMD_MAXIMUM) )
-#define CURL_TELCMD(x)    telnetcmds[(x)-CURL_TELCMD_MINIMUM]
-
-#endif /* CURL_DISABLE_TELNET */
-
-#endif /* HEADER_CURL_ARPA_TELNET_H */
diff -pruN 8.0.31-1/extra/curl/curl-7.83.1/lib/asyn-ares.c 8.0.32-1/extra/curl/curl-7.83.1/lib/asyn-ares.c
--- 8.0.31-1/extra/curl/curl-7.83.1/lib/asyn-ares.c	2022-09-13 16:15:16.000000000 +0000
+++ 8.0.32-1/extra/curl/curl-7.83.1/lib/asyn-ares.c	1970-01-01 00:00:00.000000000 +0000
@@ -1,937 +0,0 @@
-/***************************************************************************
- *                                  _   _ ____  _
- *  Project                     ___| | | |  _ \| |
- *                             / __| | | | |_) | |
- *                            | (__| |_| |  _ <| |___
- *                             \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2022, 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.
- *
- ***************************************************************************/
-
-#include "curl_setup.h"
-
-/***********************************************************************
- * Only for ares-enabled builds
- * And only for functions that fulfill the asynch resolver backend API
- * as defined in asyn.h, nothing else belongs in this file!
- **********************************************************************/
-
-#ifdef CURLRES_ARES
-
-#include <limits.h>
-#ifdef HAVE_NETINET_IN_H
-#include <netinet/in.h>
-#endif
-#ifdef HAVE_NETDB_H
-#include <netdb.h>
-#endif
-#ifdef HAVE_ARPA_INET_H
-#include <arpa/inet.h>
-#endif
-#ifdef __VMS
-#include <in.h>
-#include <inet.h>
-#endif
-
-#ifdef HAVE_PROCESS_H
-#include <process.h>
-#endif
-
-#if (defined(NETWARE) && defined(__NOVELL_LIBC__))
-#undef in_addr_t
-#define in_addr_t unsigned long
-#endif
-
-#include "urldata.h"
-#include "sendf.h"
-#include "hostip.h"
-#include "hash.h"
-#include "share.h"
-#include "url.h"
-#include "multiif.h"
-#include "inet_pton.h"
-#include "connect.h"
-#include "select.h"
-#include "progress.h"
-#include "timediff.h"
-
-#  if defined(CURL_STATICLIB) && !defined(CARES_STATICLIB) &&   \
-  defined(WIN32)
-#    define CARES_STATICLIB
-#  endif
-#  include <ares.h>
-#  include <ares_version.h> /* really old c-ares didn't include this by
-                               itself */
-
-#if ARES_VERSION >= 0x010500
-/* c-ares 1.5.0 or later, the callback proto is modified */
-#define HAVE_CARES_CALLBACK_TIMEOUTS 1
-#endif
-
-#if ARES_VERSION >= 0x010601
-/* IPv6 supported since 1.6.1 */
-#define HAVE_CARES_IPV6 1
-#endif
-
-#if ARES_VERSION >= 0x010704
-#define HAVE_CARES_SERVERS_CSV 1
-#define HAVE_CARES_LOCAL_DEV 1
-#define HAVE_CARES_SET_LOCAL 1
-#endif
-
-#if ARES_VERSION >= 0x010b00
-#define HAVE_CARES_PORTS_CSV 1
-#endif
-
-#if ARES_VERSION >= 0x011000
-/* 1.16.0 or later has ares_getaddrinfo */
-#define HAVE_CARES_GETADDRINFO 1
-#endif
-
-/* The last 3 #include files should be in this order */
-#include "curl_printf.h"
-#include "curl_memory.h"
-#include "memdebug.h"
-
-struct thread_data {
-  int num_pending; /* number of outstanding c-ares requests */
-  struct Curl_addrinfo *temp_ai; /* intermediary result while fetching c-ares
-                                    parts */
-  int last_status;
-#ifndef HAVE_CARES_GETADDRINFO
-  struct curltime happy_eyeballs_dns_time; /* when this timer started, or 0 */
-#endif
-};
-
-/* How long we are willing to wait for additional parallel responses after
-   obtaining a "definitive" one.
-
-   This is intended to equal the c-ares default timeout.  cURL always uses that
-   default value.  Unfortunately, c-ares doesn't expose its default timeout in
-   its API, but it is officially documented as 5 seconds.
-
-   See query_completed_cb() for an explanation of how this is used.
- */
-#define HAPPY_EYEBALLS_DNS_TIMEOUT 5000
-
-/*
- * Curl_resolver_global_init() - the generic low-level asynchronous name
- * resolve API.  Called from curl_global_init() to initialize global resolver
- * environment.  Initializes ares library.
- */
-int Curl_resolver_global_init(void)
-{
-#ifdef CARES_HAVE_ARES_LIBRARY_INIT
-  if(ares_library_init(ARES_LIB_INIT_ALL)) {
-    return CURLE_FAILED_INIT;
-  }
-#endif
-  return CURLE_OK;
-}
-
-/*
- * Curl_resolver_global_cleanup()
- *
- * Called from curl_global_cleanup() to destroy global resolver environment.
- * Deinitializes ares library.
- */
-void Curl_resolver_global_cleanup(void)
-{
-#ifdef CARES_HAVE_ARES_LIBRARY_CLEANUP
-  ares_library_cleanup();
-#endif
-}
-
-
-static void sock_state_cb(void *data, ares_socket_t socket_fd,
-                          int readable, int writable)
-{
-  struct Curl_easy *easy = data;
-  if(!readable && !writable) {
-    DEBUGASSERT(easy);
-    Curl_multi_closed(easy, socket_fd);
-  }
-}
-
-/*
- * Curl_resolver_init()
- *
- * Called from curl_easy_init() -> Curl_open() to initialize resolver
- * URL-state specific environment ('resolver' member of the UrlState
- * structure).  Fills the passed pointer by the initialized ares_channel.
- */
-CURLcode Curl_resolver_init(struct Curl_easy *easy, void **resolver)
-{
-  int status;
-  struct ares_options options;
-  int optmask = ARES_OPT_SOCK_STATE_CB;
-  options.sock_state_cb = sock_state_cb;
-  options.sock_state_cb_data = easy;
-  status = ares_init_options((ares_channel*)resolver, &options, optmask);
-  if(status != ARES_SUCCESS) {
-    if(status == ARES_ENOMEM)
-      return CURLE_OUT_OF_MEMORY;
-    else
-      return CURLE_FAILED_INIT;
-  }
-  return CURLE_OK;
-  /* make sure that all other returns from this function should destroy the
-     ares channel before returning error! */
-}
-
-/*
- * Curl_resolver_cleanup()
- *
- * Called from curl_easy_cleanup() -> Curl_close() to cleanup resolver
- * URL-state specific environment ('resolver' member of the UrlState
- * structure).  Destroys the ares channel.
- */
-void Curl_resolver_cleanup(void *resolver)
-{
-  ares_destroy((ares_channel)resolver);
-}
-
-/*
- * Curl_resolver_duphandle()
- *
- * Called from curl_easy_duphandle() to duplicate resolver URL-state specific
- * environment ('resolver' member of the UrlState structure).  Duplicates the
- * 'from' ares channel and passes the resulting channel to the 'to' pointer.
- */
-CURLcode Curl_resolver_duphandle(struct Curl_easy *easy, void **to, void *from)
-{
-  (void)from;
-  /*
-   * it would be better to call ares_dup instead, but right now
-   * it is not possible to set 'sock_state_cb_data' outside of
-   * ares_init_options
-   */
-  return Curl_resolver_init(easy, to);
-}
-
-static void destroy_async_data(struct Curl_async *async);
-
-/*
- * Cancel all possibly still on-going resolves for this connection.
- */
-void Curl_resolver_cancel(struct Curl_easy *data)
-{
-  DEBUGASSERT(data);
-  if(data->state.async.resolver)
-    ares_cancel((ares_channel)data->state.async.resolver);
-  destroy_async_data(&data->state.async);
-}
-
-/*
- * We're equivalent to Curl_resolver_cancel() for the c-ares resolver.  We
- * never block.
- */
-void Curl_resolver_kill(struct Curl_easy *data)
-{
-  /* We don't need to check the resolver state because we can be called safely
-     at any time and we always do the same thing. */
-  Curl_resolver_cancel(data);
-}
-
-/*
- * destroy_async_data() cleans up async resolver data.
- */
-static void destroy_async_data(struct Curl_async *async)
-{
-  free(async->hostname);
-
-  if(async->tdata) {
-    struct thread_data *res = async->tdata;
-    if(res) {
-      if(res->temp_ai) {
-        Curl_freeaddrinfo(res->temp_ai);
-        res->temp_ai = NULL;
-      }
-      free(res);
-    }
-    async->tdata = NULL;
-  }
-
-  async->hostname = NULL;
-}
-
-/*
- * Curl_resolver_getsock() is called when someone from the outside world
- * (using curl_multi_fdset()) wants to get our fd_set setup and we're talking
- * with ares. The caller must make sure that this function is only called when
- * we have a working ares channel.
- *
- * Returns: sockets-in-use-bitmap
- */
-
-int Curl_resolver_getsock(struct Curl_easy *data,
-                          curl_socket_t *socks)
-{
-  struct timeval maxtime;
-  struct timeval timebuf;
-  struct timeval *timeout;
-  long milli;
-  int max = ares_getsock((ares_channel)data->state.async.resolver,
-                         (ares_socket_t *)socks, MAX_SOCKSPEREASYHANDLE);
-
-  maxtime.tv_sec = CURL_TIMEOUT_RESOLVE;
-  maxtime.tv_usec = 0;
-
-  timeout = ares_timeout((ares_channel)data->state.async.resolver, &maxtime,
-                         &timebuf);
-  milli = (long)curlx_tvtoms(timeout);
-  if(milli == 0)
-    milli += 10;
-  Curl_expire(data, milli, EXPIRE_ASYNC_NAME);
-
-  return max;
-}
-
-/*
- * waitperform()
- *
- * 1) Ask ares what sockets it currently plays with, then
- * 2) wait for the timeout period to check for action on ares' sockets.
- * 3) tell ares to act on all the sockets marked as "with action"
- *
- * return number of sockets it worked on
- */
-
-static int waitperform(struct Curl_easy *data, timediff_t timeout_ms)
-{
-  int nfds;
-  int bitmask;
-  ares_socket_t socks[ARES_GETSOCK_MAXNUM];
-  struct pollfd pfd[ARES_GETSOCK_MAXNUM];
-  int i;
-  int num = 0;
-
-  bitmask = ares_getsock((ares_channel)data->state.async.resolver, socks,
-                         ARES_GETSOCK_MAXNUM);
-
-  for(i = 0; i < ARES_GETSOCK_MAXNUM; i++) {
-    pfd[i].events = 0;
-    pfd[i].revents = 0;
-    if(ARES_GETSOCK_READABLE(bitmask, i)) {
-      pfd[i].fd = socks[i];
-      pfd[i].events |= POLLRDNORM|POLLIN;
-    }
-    if(ARES_GETSOCK_WRITABLE(bitmask, i)) {
-      pfd[i].fd = socks[i];
-      pfd[i].events |= POLLWRNORM|POLLOUT;
-    }
-    if(pfd[i].events)
-      num++;
-    else
-      break;
-  }
-
-  if(num)
-    nfds = Curl_poll(pfd, num, timeout_ms);
-  else
-    nfds = 0;
-
-  if(!nfds)
-    /* Call ares_process() unconditionally here, even if we simply timed out
-       above, as otherwise the ares name resolve won't timeout! */
-    ares_process_fd((ares_channel)data->state.async.resolver, ARES_SOCKET_BAD,
-                    ARES_SOCKET_BAD);
-  else {
-    /* move through the descriptors and ask for processing on them */
-    for(i = 0; i < num; i++)
-      ares_process_fd((ares_channel)data->state.async.resolver,
-                      (pfd[i].revents & (POLLRDNORM|POLLIN))?
-                      pfd[i].fd:ARES_SOCKET_BAD,
-                      (pfd[i].revents & (POLLWRNORM|POLLOUT))?
-                      pfd[i].fd:ARES_SOCKET_BAD);
-  }
-  return nfds;
-}
-
-/*
- * Curl_resolver_is_resolved() is called repeatedly to check if a previous
- * name resolve request has completed. It should also make sure to time-out if
- * the operation seems to take too long.
- *
- * Returns normal CURLcode errors.
- */
-CURLcode Curl_resolver_is_resolved(struct Curl_easy *data,
-                                   struct Curl_dns_entry **dns)
-{
-  struct thread_data *res = data->state.async.tdata;
-  CURLcode result = CURLE_OK;
-
-  DEBUGASSERT(dns);
-  *dns = NULL;
-
-  waitperform(data, 0);
-
-#ifndef HAVE_CARES_GETADDRINFO
-  /* Now that we've checked for any last minute results above, see if there are
-     any responses still pending when the EXPIRE_HAPPY_EYEBALLS_DNS timer
-     expires. */
-  if(res
-     && res->num_pending
-     /* This is only set to non-zero if the timer was started. */
-     && (res->happy_eyeballs_dns_time.tv_sec
-         || res->happy_eyeballs_dns_time.tv_usec)
-     && (Curl_timediff(Curl_now(), res->happy_eyeballs_dns_time)
-         >= HAPPY_EYEBALLS_DNS_TIMEOUT)) {
-    /* Remember that the EXPIRE_HAPPY_EYEBALLS_DNS timer is no longer
-       running. */
-    memset(
-      &res->happy_eyeballs_dns_time, 0, sizeof(res->happy_eyeballs_dns_time));
-
-    /* Cancel the raw c-ares request, which will fire query_completed_cb() with
-       ARES_ECANCELLED synchronously for all pending responses.  This will
-       leave us with res->num_pending == 0, which is perfect for the next
-       block. */
-    ares_cancel((ares_channel)data->state.async.resolver);
-    DEBUGASSERT(res->num_pending == 0);
-  }
-#endif
-
-  if(res && !res->num_pending) {
-    (void)Curl_addrinfo_callback(data, res->last_status, res->temp_ai);
-    /* temp_ai ownership is moved to the connection, so we need not free-up
-       them */
-    res->temp_ai = NULL;
-
-    if(!data->state.async.dns)
-      result = Curl_resolver_error(data);
-    else
-      *dns = data->state.async.dns;
-
-    destroy_async_data(&data->state.async);
-  }
-
-  return result;
-}
-
-/*
- * Curl_resolver_wait_resolv()
- *
- * Waits for a resolve to finish. This function should be avoided since using
- * this risk getting the multi interface to "hang".
- *
- * 'entry' MUST be non-NULL.
- *
- * Returns CURLE_COULDNT_RESOLVE_HOST if the host was not resolved,
- * CURLE_OPERATION_TIMEDOUT if a time-out occurred, or other errors.
- */
-CURLcode Curl_resolver_wait_resolv(struct Curl_easy *data,
-                                   struct Curl_dns_entry **entry)
-{
-  CURLcode result = CURLE_OK;
-  timediff_t timeout;
-  struct curltime now = Curl_now();
-
-  DEBUGASSERT(entry);
-  *entry = NULL; /* clear on entry */
-
-  timeout = Curl_timeleft(data, &now, TRUE);
-  if(timeout < 0) {
-    /* already expired! */
-    connclose(dat