Browse Source

Update contrib/libs/curl to 8.2.1

robot-contrib 1 year ago
parent
commit
175ec788d1

+ 15 - 6
contrib/libs/curl/CMakeLists.darwin-x86_64.txt

@@ -41,8 +41,15 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/asyn-ares.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/asyn-thread.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/base64.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/bufq.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/bufref.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/c-hyper.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-h1-proxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-h2-proxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-haproxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-https-connect.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-socket.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cfilters.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/conncache.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/connect.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/content_encoding.c
@@ -54,6 +61,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_get_line.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_gethostname.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_gssapi.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_log.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_memrchr.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_multibyte.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_ntlm_core.c
@@ -67,6 +75,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dict.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/doh.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dynbuf.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dynhds.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easy.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easygetopt.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easyoptions.c
@@ -80,7 +89,6 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/getenv.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/getinfo.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/gopher.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/h2h3.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hash.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/headers.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hmac.c
@@ -91,6 +99,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hostsyn.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hsts.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http1.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http2.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_aws_sigv4.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_chunks.c
@@ -98,7 +107,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_negotiate.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_ntlm.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_proxy.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/idn_win32.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/idn.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/if2ip.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/imap.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/inet_ntop.c
@@ -106,6 +115,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/krb5.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/ldap.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/llist.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/macos.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/md4.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/md5.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/memdebug.c
@@ -167,9 +177,9 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vauth/vauth.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/version.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/version_win32.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/msh3.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/ngtcp2.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/quiche.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_msh3.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_ngtcp2.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_quiche.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/vquic.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vssh/libssh.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vssh/libssh2.c
@@ -185,6 +195,5 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vtls/wolfssl.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vtls/x509asn1.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/warnless.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/wildcard.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/ws.c
 )

+ 15 - 6
contrib/libs/curl/CMakeLists.linux-aarch64.txt

@@ -38,8 +38,15 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/asyn-ares.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/asyn-thread.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/base64.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/bufq.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/bufref.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/c-hyper.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-h1-proxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-h2-proxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-haproxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-https-connect.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-socket.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cfilters.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/conncache.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/connect.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/content_encoding.c
@@ -51,6 +58,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_get_line.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_gethostname.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_gssapi.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_log.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_memrchr.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_multibyte.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_ntlm_core.c
@@ -64,6 +72,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dict.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/doh.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dynbuf.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dynhds.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easy.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easygetopt.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easyoptions.c
@@ -77,7 +86,6 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/getenv.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/getinfo.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/gopher.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/h2h3.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hash.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/headers.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hmac.c
@@ -88,6 +96,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hostsyn.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hsts.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http1.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http2.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_aws_sigv4.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_chunks.c
@@ -95,7 +104,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_negotiate.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_ntlm.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_proxy.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/idn_win32.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/idn.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/if2ip.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/imap.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/inet_ntop.c
@@ -103,6 +112,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/krb5.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/ldap.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/llist.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/macos.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/md4.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/md5.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/memdebug.c
@@ -164,9 +174,9 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vauth/vauth.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/version.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/version_win32.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/msh3.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/ngtcp2.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/quiche.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_msh3.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_ngtcp2.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_quiche.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/vquic.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vssh/libssh.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vssh/libssh2.c
@@ -182,6 +192,5 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vtls/wolfssl.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vtls/x509asn1.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/warnless.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/wildcard.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/ws.c
 )

+ 15 - 6
contrib/libs/curl/CMakeLists.linux-x86_64.txt

@@ -38,8 +38,15 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/asyn-ares.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/asyn-thread.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/base64.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/bufq.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/bufref.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/c-hyper.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-h1-proxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-h2-proxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-haproxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-https-connect.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-socket.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cfilters.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/conncache.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/connect.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/content_encoding.c
@@ -51,6 +58,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_get_line.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_gethostname.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_gssapi.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_log.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_memrchr.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_multibyte.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_ntlm_core.c
@@ -64,6 +72,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dict.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/doh.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dynbuf.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dynhds.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easy.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easygetopt.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easyoptions.c
@@ -77,7 +86,6 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/getenv.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/getinfo.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/gopher.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/h2h3.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hash.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/headers.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hmac.c
@@ -88,6 +96,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hostsyn.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hsts.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http1.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http2.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_aws_sigv4.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_chunks.c
@@ -95,7 +104,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_negotiate.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_ntlm.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_proxy.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/idn_win32.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/idn.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/if2ip.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/imap.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/inet_ntop.c
@@ -103,6 +112,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/krb5.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/ldap.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/llist.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/macos.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/md4.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/md5.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/memdebug.c
@@ -164,9 +174,9 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vauth/vauth.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/version.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/version_win32.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/msh3.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/ngtcp2.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/quiche.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_msh3.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_ngtcp2.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_quiche.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/vquic.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vssh/libssh.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vssh/libssh2.c
@@ -182,6 +192,5 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vtls/wolfssl.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vtls/x509asn1.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/warnless.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/wildcard.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/ws.c
 )

+ 15 - 6
contrib/libs/curl/CMakeLists.windows-x86_64.txt

@@ -36,8 +36,15 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/asyn-ares.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/asyn-thread.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/base64.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/bufq.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/bufref.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/c-hyper.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-h1-proxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-h2-proxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-haproxy.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-https-connect.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cf-socket.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/cfilters.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/conncache.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/connect.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/content_encoding.c
@@ -49,6 +56,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_get_line.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_gethostname.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_gssapi.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_log.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_memrchr.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_multibyte.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/curl_ntlm_core.c
@@ -62,6 +70,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dict.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/doh.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dynbuf.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/dynhds.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easy.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easygetopt.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/easyoptions.c
@@ -75,7 +84,6 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/getenv.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/getinfo.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/gopher.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/h2h3.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hash.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/headers.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hmac.c
@@ -86,6 +94,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hostsyn.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/hsts.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http1.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http2.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_aws_sigv4.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_chunks.c
@@ -93,7 +102,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_negotiate.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_ntlm.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/http_proxy.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/idn_win32.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/idn.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/if2ip.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/imap.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/inet_ntop.c
@@ -101,6 +110,7 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/krb5.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/ldap.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/llist.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/macos.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/md4.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/md5.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/memdebug.c
@@ -162,9 +172,9 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vauth/vauth.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/version.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/version_win32.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/msh3.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/ngtcp2.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/quiche.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_msh3.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_ngtcp2.c
+  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/curl_quiche.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vquic/vquic.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vssh/libssh.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vssh/libssh2.c
@@ -180,6 +190,5 @@ target_sources(contrib-libs-curl PRIVATE
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vtls/wolfssl.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/vtls/x509asn1.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/warnless.c
-  ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/wildcard.c
   ${CMAKE_SOURCE_DIR}/contrib/libs/curl/lib/ws.c
 )

+ 1 - 1
contrib/libs/curl/COPYING

@@ -1,6 +1,6 @@
 COPYRIGHT AND PERMISSION NOTICE
 
-Copyright (c) 1996 - 2022, Daniel Stenberg, <daniel@haxx.se>, and many
+Copyright (c) 1996 - 2023, Daniel Stenberg, <daniel@haxx.se>, and many
 contributors, see the THANKS file.
 
 All rights reserved.

+ 68 - 398
contrib/libs/curl/RELEASE-NOTES

@@ -1,210 +1,43 @@
-curl and libcurl 7.86.0
+curl and libcurl 8.2.1
 
- Public curl releases:         211
- Command line options:         248
- curl_easy_setopt() options:   300
+ Public curl releases:         221
+ Command line options:         255
+ curl_easy_setopt() options:   303
  Public functions in libcurl:  91
- Contributors:                 2733
+ Contributors:                 2927
 
 This release includes the following changes:
 
- o NPN: remove support for and use of [16]
- o Websockets: initial support [23]
 
 This release includes the following bugfixes:
 
- o altsvc: reject bad port numbers [86]
- o altsvc: use 'h3' for h3 [46]
- o amiga: do not hardcode openssl/zlib into the os config [158]
- o amiga: set SIZEOF_CURL_OFF_T=8 by default [150]
- o amigaos: add missing curl header [159]
- o asyn-ares: set hint flags when calling ares_getaddrinfo [93]
- o autotools: allow --enable-symbol-hiding with windows [65]
- o autotools: allow unix sockets on Windows [144]
- o autotools: reduce brute-force when detecting recv/send arg list [66]
- o aws_sigv4: fix header computation [139]
- o bearssl: make it proper C89 compliant
- o CI/GHA: cancel outdated CI runs on new PR changes [20]
- o CI/GHA: merge msh3 and openssl3 builds into linux workflow [110]
- o cirrus-ci: add macOS build with m1 [81]
- o cirrus: use make LDFLAGS=-all-static instead of curl_LDFLAGS [129]
- o cli tool: do not use disabled protocols
- o cmake: add missing inet_ntop check [145]
- o cmake: add the check of HAVE_SOCKETPAIR [98]
- o cmake: define BUILDING_LIBCURL in lib/CMakeLists, not config.h [5]
- o cmake: delete duplicate HAVE_GETADDRINFO test [149]
- o cmake: enable more detection on Windows [143]
- o cmake: fix original MinGW builds [177]
- o cmake: improve usability of CMake build as a sub-project [186]
- o cmake: set HAVE_GETADDRINFO_THREADSAFE on Windows [147]
- o cmake: set HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID on Windows [146]
- o cmake: sync HAVE_SIGNAL detection with autotools [148]
- o cmdline/docs: add a required 'multi' keyword for each option [160]
- o configure: correct the wording when checking grep -E [13]
- o configure: deprecate builds with small curl_off_t [89]
- o configure: fail if '--without-ssl' + explicit parameter for an ssl lib [164]
- o configure: the ngtcp2 option should default to 'no' [125]
- o connect: change verbose IPv6 address:port to [address]:port [83]
- o connect: fix builds without AF_INET6 [152]
- o connect: fix Curl_updateconninfo for TRNSPRT_UNIX [108]
- o connect: fix the wrong error message on connect failures [55]
- o content_encoding: use writer struct subclasses for different encodings [8]
- o cookie: reject cookie names or content with TAB characters [94]
- o ctype: remove all use of <ctype.h>, use our own versions [12]
- o curl-compilers.m4: for gcc + want warnings, set gnu89 standard [72]
- o curl-compilers.m4: use -O2 as default optimize for clang [6]
- o curl-wolfssl.m4: error out if wolfSSL is not usable [102]
- o curl.h: fix mention of wrong error code in comment
- o curl/add_file_name_to_url: use the libcurl URL parser [99]
- o curl/add_parallel_transfers: better error handling [101]
- o curl/get_url_file_name: use libcurl URL parser [97]
- o curl: warn for --ssl use, considered insecure [49]
- o curl_ctype: convert to macros-only [10]
- o curl_easy_pause.3: unpausing is as fast as possible [14]
- o curl_escape.3: fix typo [50]
- o curl_setup: disable use of FLOSS for 64-bit NonStop builds [69]
- o curl_setup: include curl.h after platform setup headers [37]
- o curl_setup: include only system.h instead of curl.h [34]
- o curl_strequal.3: fix argument typo [60]
- o curl_url_set.3: document CURLU_APPENDQUERY proper [96]
- o CURLMOPT_PIPELINING.3: dedup manpage xref [111]
- o CURLOPT_ACCEPT_ENCODING.3: remove "four" as they are five [85]
- o CURLOPT_AUTOREFERER.3: highlight the privacy leak risk [161]
- o CURLOPT_COOKIEFILE: insist on "" for enable-without-file [119]
- o CURLOPT_COOKIELIST.3: fix formatting mistake [80]
- o CURLOPT_DNS_INTERFACE.3: mention it works for almost all protocols [15]
- o CURLOPT_MIMEPOST.3: add an (inline) example [126]
- o CURLOPT_POSTFIELDS.3: refer to CURLOPT_MIMEPOST [167]
- o CURLOPT_PROXY_SSLCERT_BLOB.3: this is for HTTPS proxies [9]
- o CURLOPT_WILDCARDMATCH.3: Fix backslash escaping under single quotes [172]
- o CURLSHOPT_UNLOCKFUNC.3: the callback has no 'access' argument [84]
- o DEPRECATE.md: Support for systems without 64 bit data types [19]
- o docs/examples: avoid deprecated options in examples where possible [115]
- o docs/INSTALL: update Android Instructions for newer NDKs [151]
- o docs/libcurl/symbols-in-versions: add several missing symbols
- o docs: 100+ spellfixes
- o docs: correct missing uppercase in Markdown files [38]
- o docs: document more server names for test files
- o docs: fix deprecation versions inconsistencies [123]
- o docs: make sure libcurl opts examples pass in long arguments [182]
- o docs: remove mentions of deprecated '--without-openssl' parameter [170]
- o docs: tag curl options better in man pages
- o docs: tell about disabled protocols in CURLOPT_*PROTOCOLS_STR.
- o docs: update sourceforge project links [95]
- o easy: fix the #include order [53]
- o easy: fix the altsvc init for curl_easy_duphandle [77]
- o easy_lock: check for HAVE_STDATOMIC_H as well [187]
- o examples/chkspeed: improve portability [48]
- o formdata: fix warning: 'CURLformoption' is promoted to 'int' [24]
- o ftp: ignore a 550 response to MDTM [1]
- o ftp: remove redundant if [163]
- o functypes: provide the recv and send arg and return types [87]
- o getparameter: return PARAM_MANUAL_REQUESTED for -M even when disabled [17]
- o GHA: build tests in a separate step from the running of them [78]
- o GHA: run proselint on markdown files [22]
- o github: initial CODEOWNERS setup for CI configuration [52]
- o header: define public API functions as extern c [26]
- o headers: reset the requests counter at transfer start [25]
- o hostip: guard PF_INET6 use [157]
- o hostip: lazily wait to figure out if IPv6 works until needed [36]
- o http, vauth: always provide Curl_allow_auth_to_host() functionality [90]
- o http2: make nghttp2 less picky about field whitespace [27]
- o HTTP3.md: update Caddy example [76]
- o http: try parsing Retry-After: as a number first [122]
- o http_proxy: restore the protocol pointer on error [104]
- o httpput-postfields.c: shorten string for C89 compliance [57]
- o ldap: delete stray CURL_HAS_MOZILLA_LDAP reference [79]
- o lib1560: extended to verify detect/reject of unknown schemes
- o lib517: fix C89 constant signedness [73]
- o lib: add missing limits.h includes [35]
- o lib: add required Win32 setup definitions in setup-win32.h [4]
- o lib: prepare the incoming of additional protocols [71]
- o lib: sanitize conditional exclusion around MIME [82]
- o lib: set more flags in config-win32.h [109]
- o lib: the number four in a sequence is the "fourth" [28]
- o libssh: if sftp_init fails, don't get the sftp error code [132]
- o Makefile.m32: deduplicate build rules [131]
- o Makefile.m32: drop CROSSPREFIX and our CC/AR defaults [137]
- o Makefile.m32: exclude libs & libpaths for shared mode exes [127]
- o Makefile.m32: fix regression with tool_hugehelp [130]
- o Makefile.m32: major rework [92]
- o Makefile.m32: reintroduce CROSSPREFIX and -W -Wall [179]
- o Makefile.m32: support more options [142]
- o manpage-syntax.pl: all libcurl option symbols should be \fI-tagged [75]
- o manpages: Fix spelling of "allows to" -> "allows one to" [171]
- o misc: ISSPACE() => ISBLANK() [11]
- o misc: use the term "null-terminate" consistently [41]
- o mprintf: reject two kinds of precision for the same argument [162]
- o mprintf: use snprintf if available [74]
- o mqtt: return error for too long topic [133]
- o mqtt: spell out CONNECT in comments [166]
- o msh3: change the static_assert to make the code C89
- o netrc: compare user name case sensitively [118]
- o netrc: replace fgets with Curl_get_line [174]
- o netrc: use the URL-decoded user [103]
- o ngtcp2: fix build errors due to changes in ngtcp2 library [107]
- o ngtcp2: fix C89 compliance nit
- o noproxy: support proxies specified using cidr notation [184]
- o openssl: make certinfo available for QUIC [91]
- o README.md: add GHA status badges for Linux and macOS builds [40]
- o RELEASE-PROCEDURE.md: mention patch releases [21]
- o resolve: make forced IPv4 resolve only use A queries [61]
- o runtests: fix uninitialized value on ignored tests [128]
- o schannel: ban server ALPN change during recv renegotiation [63]
- o schannel: don't reset recv/send function pointers on renegotiation [156]
- o schannel: when importing PFX, disable key persistence [141]
- o scripts: use `grep -E` instead of `egrep` [30]
- o setopt: use the handler table for protocol name to number conversions [45]
- o setopt: when POST is set, reset the 'upload' field [51]
- o setup-win32: no longer define UNICODE/_UNICODE implicitly [3]
- o single_transfer: use the libcurl URL parser when appending query parts [100]
- o smb: replace CURL_WIN32 with WIN32 [138]
- o strcase: add and use Curl_timestrcmp [106]
- o strerror: improve two URL API error messages
- o symbol-scan.pl: also check for LIBCURL* symbols [43]
- o symbol-scan.pl: scan and verify .3 man pages [42]
- o symbols-in-versions: add missing LIBCURL* symbols
- o symbols-in-versions: CURLOPT_ENCODING is deprecated since 7.21.6
- o test1119: scan all public headers [44]
- o test1275: verify uppercase after period in markdown [135]
- o test972: verify the output without using external tool [32]
- o tests/certs/scripts: insert standard curl source headers [169]
- o tests/Makefile: remove run time stats from ci-test [120]
- o tests: avoid CreateThread if _beginthreadex is available [155]
- o tests: fix tag syntax errors in test files
- o tests: skip mime/form tests when mime is not built-in [54]
- o tidy-up: delete parallel/unused feature flags [117]
- o tidy-up: delete unused HAVE_STRUCT_POLLFD [134]
- o TODO: provide the error body from a CONNECT response [67]
- o tool: avoid generating ambiguous escaped characters in --libcurl [124]
- o tool: remove dead code [70]
- o tool: reorganize function c_escape around a dynbuf [121]
- o tool_hugehelp: make hugehelp a blank macro when disabled [7]
- o tool_main: exit at once if out of file descriptors [113]
- o tool_operate: avoid a few #ifdefs for disabled-libcurl builds [29]
- o tool_operate: more transfer cleanup after parallel transfer fail [165]
- o tool_operate: prevent over-queuing in parallel mode [176]
- o tool_operate: reduce errorbuffer allocs [173]
- o tool_paramhelp: asserts verify maximum sizes for string loading [112]
- o tool_paramhelp: make the max argument a 'double' [136]
- o tool_progress: remove 'Qd' from the parallel progress bar [175]
- o tool_setopt: use better English in --libcurl source comments [39]
- o tool_xattr: save the original URL, not the final redirected one [181]
- o unit test 1655: make it C89-compliant [59]
- o url: a zero-length userinfo part in the URL is still a (blank) user [64]
- o url: allow non-HTTPS HSTS-matching for debug builds [105]
- o url: rename function due to name-clash in Watt-32 [62]
- o url: use IDN decoded names for HSTS checks [140]
- o urlapi: detect scheme better when not guessing [56]
- o urlapi: fix parsing URL without slash with CURLU_URLENCODE [154]
- o urlapi: leaner with fewer allocs [2]
- o urlapi: reject more bad characters from the host name field [88]
- o winbuild/MakefileBuild.vc: handle spaces in libssh(2) include paths [18]
- o winbuild: use NMake batch-rules for compilation [47]
- o windows: add .rc support to autotools builds [33]
- o windows: adjust name of two internal public functions [58]
- o windows: autotools .rc warnings fixup [68]
- o wolfSSL: fix session management bug. [31]
+ o amigaos: fix sys/mbuf.h m_len macro clash [9]
+ o amissl: add missing signal.h include [8]
+ o amissl: fix AmiSSL v5 detection [2]
+ o cfilters: rename close/connect functions to avoid clashes [12]
+ o ciphers.d: put URL in first column [1]
+ o cmake: add `libcurlu`/`libcurltool` for unit tests [5]
+ o cmake: update ngtcp2 detection [4]
+ o configure: check for nghttp2_session_get_stream_local_window_size [14]
+ o CONTRIBUTE: drop mention of copyright year ranges [20]
+ o CONTRIBUTE: fix syntax in commit message description [21]
+ o curl_multi_wait.3: fix arg quoting to doc macro .BR [27]
+ o docs: mark two TLS options for TLS, not SSL [26]
+ o docs: provide more see also for cipher options [23]
+ o hostip: return IPv6 first for localhost resolves [16]
+ o http2: fix regression on upload EOF handling [13]
+ o http: VLH, very large header test and fixes [19]
+ o libcurl-errors.3: add CURLUE_OK [11]
+ o os400: correct EXPECTED_STRING_LASTZEROTERMINATED [7]
+ o quiche: fix lookup of transfer at multi [18]
+ o quiche: fix segfault and other things [15]
+ o rustls: update rustls-ffi 0.10.0 [24]
+ o socks: print ipv6 address within brackets [10]
+ o src/mkhelp: strip off escape sequences [22]
+ o tool: fix tool_seek_cb build when SIZEOF_CURL_OFF_T > SIZEOF_OFF_T [17]
+ o transfer: do not clear the credentials on redirect to absolute URL [6]
+ o unittest: remove unneeded *_LDADD [3]
+ o websocket: rename arguments/variables to match docs [25]
 
 This release includes the following known bugs:
 
@@ -212,212 +45,49 @@ This release includes the following known bugs:
 
 Planned upcoming removals include:
 
+ o gskit
  o NSS
- o Support for systems without 64 bit data types
+ o support for space-separated NOPROXY patterns
+ o support for the original legacy mingw version 1
 
  See https://curl.se/dev/deprecate.html for details
 
 This release would not have looked like this without help, code, reports and
 advice from friends like these:
 
-  12932 on github, a1346054 on github, Aftab Alam, ajak in #curl,
-  Andrew Lambert, Benjamin Loison, Brad Harder, bsergean on github,
-  Christopher Sauer, Dan Fandrich, Daniel Gustafsson, Daniel Hallberg,
-  Daniel Stenberg, David Hu, David McLaughlin, Dmitry Karpov, Dominik Klemba,
-  Don J Olmstead, Dustin Howett, Edoardo Lolletti, Eloy Degen, Emanuele Torre,
-  Emilio López, Gisle Vanem, Hayden Roche, Hiroki Kurosawa, James Fuller,
-  Jeremy Maitin-Shepard, Joel Depooter, John Bampton, Jonas Haag,
-  jurisuk on github, justchen1369 on github, Keitagit-kun on github,
-  Kelly Kaoudis, Marcel Raad, Marc Hörsken, Mark Itzcovitz, Martin Ågren,
-  Martin Strunz, Mathieu Carbonneaux, Matthias Gatto, Matt Holt, Max Dymond,
-  Michael Drake, Michael Heimpold, n0name321 on github, Orgad Shaneh,
-  Patrick Monnerat, Paul Seligman, Peter Goodman, Petr Štetiar, Philip H,
-  Philip H., Philip Heiduck, ProceduralMan on github, Randall S. Becker,
-  Ray Satiro, Rickard Hallerbäck, RobBotic1 on github, Robby Simpson,
-  Samuel Henrique, Sergey Bronnikov, ShadowZzj on github, Shaun Mirani,
-  ssdbest on github, Thiago Suchorski, Tobias Schaefer, Trail of Bits,
-  Vasiliy Ulyanov, Viktor Szakats, Xiang Xiao, Yuriy Chernyshov,
-  zhanghu on xiaomi
-  (74 contributors)
+  Aleksander Mazur, Alois Klink, Andrei Rybak, Brad Harder,
+  Chilledheart on github, Christian Schmitz, Cloudogu Siebels, Daniel Stenberg,
+  Harry Sintonen, Jacob Hoffman-Andrews, Jan Macku, John Haugabook, Jon Rumsey,
+  Oliver Roberts, Paul Howarth, Stefan Eissing, VictorVG on github,
+  Viktor Szakats, Yair Lenga, ウさん
+  (20 contributors)
 
 References to bug reports and discussions on issues:
 
- [1] = https://curl.se/bug/?i=9357
- [2] = https://curl.se/bug/?i=9408
- [3] = https://curl.se/bug/?i=9375
- [4] = https://curl.se/bug/?i=9375
- [5] = https://curl.se/bug/?i=9498
- [6] = https://curl.se/bug/?i=9444
- [7] = https://curl.se/bug/?i=9485
- [8] = https://curl.se/bug/?i=9455
- [9] = https://curl.se/bug/?i=9434
- [10] = https://curl.se/bug/?i=9429
- [11] = https://curl.se/bug/?i=9432
- [12] = https://curl.se/bug/?i=9433
- [13] = https://curl.se/bug/?i=9471
- [14] = https://curl.se/bug/?i=9410
- [15] = https://curl.se/bug/?i=9427
- [16] = https://curl.se/bug/?i=9307
- [17] = https://curl.se/bug/?i=9485
- [18] = https://curl.se/mail/lib-2022-09/0038.html
- [19] = https://curl.se/bug/?i=9604
- [20] = https://curl.se/bug/?i=9533
- [21] = https://curl.se/bug/?i=9495
- [22] = https://curl.se/bug/?i=9520
- [23] = https://curl.se/bug/?i=8995
- [24] = https://curl.se/bug/?i=9484
- [25] = https://curl.se/bug/?i=9424
- [26] = https://curl.se/bug/?i=9424
- [27] = https://curl.se/bug/?i=9448
- [28] = https://curl.se/bug/?i=9535
- [29] = https://curl.se/bug/?i=9486
- [30] = https://curl.se/bug/?i=9491
- [31] = https://curl.se/bug/?i=9492
- [32] = https://curl.se/bug/?i=9563
- [33] = https://curl.se/bug/?i=9521
- [34] = https://curl.se/bug/?i=9453
- [35] = https://curl.se/bug/?i=9453
- [36] = https://curl.se/bug/?i=9553
- [37] = https://curl.se/bug/?i=9453
- [38] = https://curl.se/bug/?i=9474
- [39] = https://curl.se/bug/?i=9475
- [40] = https://curl.se/bug/?i=9530
- [41] = https://curl.se/bug/?i=9527
- [42] = https://curl.se/bug/?i=9544
- [43] = https://curl.se/bug/?i=9544
- [44] = https://curl.se/bug/?i=9544
- [45] = https://curl.se/bug/?i=9472
- [46] = https://curl.se/bug/?i=9515
- [47] = https://curl.se/bug/?i=9512
- [48] = https://curl.se/bug/?i=9562
- [49] = https://curl.se/bug/?i=9519
- [50] = https://curl.se/bug/?i=9517
- [51] = https://curl.se/bug/?i=9507
- [52] = https://curl.se/bug/?i=9505
- [53] = https://curl.se/bug/?i=9560
- [54] = https://curl.se/bug/?i=9596
- [55] = https://curl.se/bug/?i=9549
- [56] = https://curl.se/bug/?i=9503
- [57] = https://curl.se/bug/?i=9555
- [58] = https://curl.se/bug/?i=9598
- [59] = https://curl.se/bug/?i=9551
- [60] = https://curl.se/bug/?i=9548
- [61] = https://curl.se/bug/?i=9540
- [62] = https://curl.se/bug/?i=9585
- [63] = https://curl.se/bug/?i=9463
- [64] = https://curl.se/bug/?i=9088
- [65] = https://curl.se/bug/?i=9586
- [66] = https://curl.se/bug/?i=9591
- [67] = https://curl.se/bug/?i=9513
- [68] = https://curl.se/bug/?i=9582
- [69] = https://curl.se/bug/?i=9575
- [70] = https://curl.se/bug/?i=9576
- [71] = https://curl.se/bug/?i=9534
- [72] = https://curl.se/bug/?i=9542
- [73] = https://curl.se/bug/?i=9572
- [74] = https://curl.se/bug/?i=9569
- [75] = https://curl.se/bug/?i=9574
- [76] = https://curl.se/bug/?i=9623
- [77] = https://curl.se/bug/?i=9624
- [78] = https://curl.se/bug/?i=9619
- [79] = https://curl.se/bug/?i=9625
- [80] = https://curl.se/bug/?i=9639
- [81] = https://curl.se/bug/?i=9565
- [82] = https://curl.se/bug/?i=9610
- [83] = https://curl.se/mail/archive-2022-02/0041.html
- [84] = https://curl.se/bug/?i=9612
- [85] = https://curl.se/bug/?i=9614
- [86] = https://curl.se/bug/?i=9607
- [87] = https://curl.se/bug/?i=9592
- [88] = https://curl.se/bug/?i=9608
- [89] = https://curl.se/bug/?i=9605
- [90] = https://curl.se/bug/?i=9600
- [91] = https://curl.se/bug/?i=9584
- [92] = https://curl.se/bug/?i=9632
- [93] = https://curl.se/bug/?i=9694
- [94] = https://curl.se/bug/?i=9659
- [95] = https://curl.se/bug/?i=9630
- [96] = https://curl.se/bug/?i=9628
- [97] = https://curl.se/bug/?i=9684
- [98] = https://curl.se/bug/?i=9686
- [99] = https://curl.se/bug/?i=9683
- [100] = https://curl.se/bug/?i=9681
- [101] = https://curl.se/bug/?i=9729
- [102] = https://curl.se/bug/?i=9682
- [103] = https://curl.se/bug/?i=9709
- [104] = https://curl.se/bug/?i=9790
- [105] = https://curl.se/bug/?i=9728
- [106] = https://curl.se/bug/?i=9658
- [107] = https://curl.se/bug/?i=9747
- [108] = https://curl.se/bug/?i=9664
- [109] = https://curl.se/bug/?i=9712
- [110] = https://curl.se/bug/?i=9646
- [111] = https://curl.se/bug/?i=9776
- [112] = https://curl.se/bug/?i=9719
- [113] = https://curl.se/bug/?i=9663
- [115] = https://curl.se/bug/?i=9661
- [117] = https://curl.se/bug/?i=9652
- [118] = https://curl.se/bug/?i=9657
- [119] = https://curl.se/bug/?i=9654
- [120] = https://curl.se/bug/?i=9656
- [121] = https://curl.se/bug/?i=9653
- [122] = https://curl.se/bug/?i=9718
- [123] = https://curl.se/bug/?i=9711
- [124] = https://curl.se/bug/?i=9643
- [125] = https://curl.se/mail/lib-2022-10/0007.html
- [126] = https://curl.se/bug/?i=9637
- [127] = https://curl.se/bug/?i=9651
- [128] = https://curl.se/bug/?i=9648
- [129] = https://curl.se/bug/?i=9633
- [130] = https://curl.se/bug/?i=9645
- [131] = https://curl.se/bug/?i=9642
- [132] = https://curl.se/bug/?i=9737
- [133] = https://curl.se/bug/?i=9744
- [134] = https://curl.se/bug/?i=9707
- [135] = https://curl.se/bug/?i=9697
- [136] = https://curl.se/bug/?i=9700
- [137] = https://curl.se/bug/?i=9698
- [138] = https://curl.se/bug/?i=9701
- [139] = https://curl.se/bug/?i=7966
- [140] = https://curl.se/bug/?i=9791
- [141] = https://curl.se/bug/?i=9300
- [142] = https://curl.se/bug/?i=9680
- [143] = https://curl.se/bug/?i=9687
- [144] = https://github.com/curl/curl-for-win/blob/73a070d96fd906fdee929e2f1f00a9149fb39239/curl-autotools.sh#L44-L47
- [145] = https://curl.se/bug/?i=9689
- [146] = https://curl.se/bug/?i=9726
- [147] = https://curl.se/bug/?i=9727
- [148] = https://curl.se/bug/?i=9725
- [149] = https://curl.se/bug/?i=9731
- [150] = https://curl.se/bug/?i=9771
- [151] = https://curl.se/bug/?i=9732
- [152] = https://curl.se/bug/?i=9770
- [154] = https://curl.se/bug/?i=9763
- [155] = https://curl.se/bug/?i=9705
- [156] = https://curl.se/bug/?i=9451
- [157] = https://curl.se/bug/?i=9760
- [158] = https://curl.se/bug/?i=9762
- [159] = https://curl.se/bug/?i=9761
- [160] = https://curl.se/bug/?i=9759
- [161] = https://curl.se/bug/?i=9757
- [162] = https://curl.se/bug/?i=9754
- [163] = https://curl.se/bug/?i=9753
- [164] = https://curl.se/bug/?i=9414
- [165] = https://curl.se/bug/?i=9749
- [166] = https://curl.se/bug/?i=9751
- [167] = https://curl.se/bug/?i=9752
- [169] = https://curl.se/bug/?i=9417
- [170] = https://curl.se/bug/?i=9415
- [171] = https://curl.se/bug/?i=9419
- [172] = https://curl.se/bug/?i=9418
- [173] = https://curl.se/bug/?i=9394
- [174] = https://curl.se/bug/?i=9789
- [175] = https://curl.se/bug/?i=9389
- [176] = https://curl.se/bug/?i=8933
- [177] = https://curl.se/bug/?i=9214
- [179] = https://curl.se/bug/?i=9784
- [181] = https://curl.se/bug/?i=9766
- [182] = https://curl.se/bug/?i=9779
- [184] = https://curl.se/bug/?i=9773
- [186] = https://curl.se/bug/?i=9638
- [187] = https://curl.se/bug/?i=9755
+ [1] = https://curl.se/bug/?i=11464
+ [2] = https://curl.se/bug/?i=11477
+ [3] = https://curl.se/bug/?i=11494
+ [4] = https://curl.se/bug/?i=11508
+ [5] = https://curl.se/bug/?i=11446
+ [6] = https://curl.se/bug/?i=11486
+ [7] = https://curl.se/bug/?i=11476
+ [8] = https://curl.se/bug/?i=11478
+ [9] = https://curl.se/bug/?i=11479
+ [10] = https://curl.se/bug/?i=11483
+ [11] = https://curl.se/bug/?i=11488
+ [12] = https://curl.se/bug/?i=11491
+ [13] = https://curl.se/bug/?i=11485
+ [14] = https://curl.se/bug/?i=11470
+ [15] = https://curl.se/bug/?i=11449
+ [16] = https://curl.se/bug/?i=11465
+ [17] = https://curl.se/bug/?i=11468
+ [18] = https://curl.se/bug/?i=11462
+ [19] = https://curl.se/bug/?i=11509
+ [20] = https://curl.se/bug/?i=11504
+ [21] = https://curl.se/bug/?i=11504
+ [22] = https://curl.se/bug/?i=11501
+ [23] = https://curl.se/bug/?i=11513
+ [24] = https://curl.se/bug/?i=10865
+ [25] = https://curl.se/bug/?i=11493
+ [26] = https://curl.se/bug/?i=11514
+ [27] = https://curl.se/bug/?i=11511

+ 1 - 1
contrib/libs/curl/bin/ya.make

@@ -70,12 +70,12 @@ SRCS(
     src/tool_msgs.c
     src/tool_operate.c
     src/tool_operhlp.c
-    src/tool_panykey.c
     src/tool_paramhlp.c
     src/tool_parsecfg.c
     src/tool_progress.c
     src/tool_setopt.c
     src/tool_sleep.c
+    src/tool_stderr.c
     src/tool_strdup.c
     src/tool_urlglob.c
     src/tool_util.c

+ 1 - 1
contrib/libs/curl/include/README.md

@@ -1,5 +1,5 @@
 <!--
-Copyright (C) 2000 - 2022 Daniel Stenberg, <daniel@haxx.se>, et al.
+Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
 
 SPDX-License-Identifier: curl
 -->

+ 182 - 90
contrib/libs/curl/include/curl/curl.h

@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2022, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -33,6 +33,23 @@
 #define CURL_STRICTER
 #endif
 
+/* Compile-time deprecation macros. */
+#if defined(__GNUC__) &&                                                \
+  ((__GNUC__ > 12) || ((__GNUC__ == 12) && (__GNUC_MINOR__ >= 1 ))) &&  \
+  !defined(__INTEL_COMPILER) &&                                         \
+  !defined(CURL_DISABLE_DEPRECATION) && !defined(BUILDING_LIBCURL)
+#define CURL_DEPRECATED(version, message)                       \
+  __attribute__((deprecated("since " # version ". " message)))
+#define CURL_IGNORE_DEPRECATION(statements) \
+      _Pragma("GCC diagnostic push") \
+      _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") \
+      statements \
+      _Pragma("GCC diagnostic pop")
+#else
+#define CURL_DEPRECATED(version, message)
+#define CURL_IGNORE_DEPRECATION(statements)     statements
+#endif
+
 #include "curlver.h"         /* libcurl version defines   */
 #include "system.h"          /* determine things run-time */
 
@@ -76,7 +93,7 @@
     defined(__CYGWIN__) || defined(AMIGA) || defined(__NuttX__) || \
    (defined(__FreeBSD_version) && (__FreeBSD_version < 800000)) || \
    (defined(__MidnightBSD_version) && (__MidnightBSD_version < 100000)) || \
-    defined(__sun__)
+    defined(__sun__) || defined(__serenity__) || defined(__vxworks__)
 #include <sys/select.h>
 #endif
 
@@ -145,20 +162,21 @@ typedef enum {
   CURLSSLBACKEND_NSS = 3,
   CURLSSLBACKEND_OBSOLETE4 = 4,  /* Was QSOSSL. */
   CURLSSLBACKEND_GSKIT = 5,
-  CURLSSLBACKEND_POLARSSL = 6,
+  CURLSSLBACKEND_POLARSSL               CURL_DEPRECATED(7.69.0, "") = 6,
   CURLSSLBACKEND_WOLFSSL = 7,
   CURLSSLBACKEND_SCHANNEL = 8,
   CURLSSLBACKEND_SECURETRANSPORT = 9,
-  CURLSSLBACKEND_AXTLS = 10, /* never used since 7.63.0 */
+  CURLSSLBACKEND_AXTLS                  CURL_DEPRECATED(7.61.0, "") = 10,
   CURLSSLBACKEND_MBEDTLS = 11,
-  CURLSSLBACKEND_MESALINK = 12,
+  CURLSSLBACKEND_MESALINK               CURL_DEPRECATED(7.82.0, "") = 12,
   CURLSSLBACKEND_BEARSSL = 13,
   CURLSSLBACKEND_RUSTLS = 14
 } curl_sslbackend;
 
 /* aliases for library clones and renames */
-#define CURLSSLBACKEND_LIBRESSL CURLSSLBACKEND_OPENSSL
+#define CURLSSLBACKEND_AWSLC CURLSSLBACKEND_OPENSSL
 #define CURLSSLBACKEND_BORINGSSL CURLSSLBACKEND_OPENSSL
+#define CURLSSLBACKEND_LIBRESSL CURLSSLBACKEND_OPENSSL
 
 /* deprecated names: */
 #define CURLSSLBACKEND_CYASSL CURLSSLBACKEND_WOLFSSL
@@ -232,7 +250,7 @@ typedef int (*curl_xferinfo_callback)(void *clientp,
 
 #ifndef CURL_MAX_READ_SIZE
   /* The maximum receive buffer size configurable via CURLOPT_BUFFERSIZE. */
-#define CURL_MAX_READ_SIZE 524288
+#define CURL_MAX_READ_SIZE (10*1024*1024)
 #endif
 
 #ifndef CURL_MAX_WRITE_SIZE
@@ -256,6 +274,10 @@ typedef int (*curl_xferinfo_callback)(void *clientp,
    will signal libcurl to pause receiving on the current transfer. */
 #define CURL_WRITEFUNC_PAUSE 0x10000001
 
+/* This is a magic return code for the write callback that, when returned,
+   will signal an error from the callback. */
+#define CURL_WRITEFUNC_ERROR 0xFFFFFFFF
+
 typedef size_t (*curl_write_callback)(char *buffer,
                                       size_t size,
                                       size_t nitems,
@@ -310,7 +332,8 @@ struct curl_fileinfo {
 
   unsigned int flags;
 
-  /* used internally */
+  /* These are libcurl private struct fields. Previously used by libcurl, so
+     they must never be interfered with. */
   char *b_data;
   size_t b_size;
   size_t b_used;
@@ -368,7 +391,7 @@ typedef int (*curl_seek_callback)(void *instream,
 #define CURL_READFUNC_PAUSE 0x10000001
 
 /* Return code for when the trailing headers' callback has terminated
-   without any errors*/
+   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 */
@@ -450,7 +473,7 @@ 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*/
+/* the kind of data that is passed to information_callback */
 typedef enum {
   CURLINFO_TEXT = 0,
   CURLINFO_HEADER_IN,    /* 1 */
@@ -698,7 +721,7 @@ typedef enum {
 #define CURLOPT_WRITEINFO CURLOPT_OBSOLETE40
 #define CURLOPT_CLOSEPOLICY CURLOPT_OBSOLETE72
 
-#endif /*!CURL_NO_OLDIES*/
+#endif /* !CURL_NO_OLDIES */
 
 /*
  * Proxy error codes. Returned in CURLINFO_PROXY_ERROR if CURLE_PROXY was
@@ -757,7 +780,8 @@ typedef enum {
                            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_HTTPS = 2,  /* HTTPS but stick to HTTP/1 added in 7.52.0 */
+  CURLPROXY_HTTPS2 = 3, /* HTTPS and attempt HTTP/2 added in 8.2.0 */
   CURLPROXY_SOCKS4 = 4, /* support added in 7.15.2, enum existed already
                            in 7.10 */
   CURLPROXY_SOCKS5 = 5, /* added in 7.10 */
@@ -843,7 +867,7 @@ enum curl_khstat {
   CURLKHSTAT_DEFER,  /* do not accept it, but we can't answer right now.
                         Causes a CURLE_PEER_FAILED_VERIFICATION error but the
                         connection will be left intact etc */
-  CURLKHSTAT_FINE_REPLACE, /* accept and replace the wrong key*/
+  CURLKHSTAT_FINE_REPLACE, /* accept and replace the wrong key */
   CURLKHSTAT_LAST    /* not for use, only a marker for last-in-list */
 };
 
@@ -864,13 +888,13 @@ typedef int
                                           /* CURLOPT_SSH_KEYDATA */
 
 typedef int
-  (*curl_sshhostkeycallback) (void *clientp,/* custom pointer passed*/
+  (*curl_sshhostkeycallback) (void *clientp,/* custom pointer passed */
                                             /* with CURLOPT_SSH_HOSTKEYDATA */
                           int keytype, /* CURLKHTYPE */
-                          const char *key, /*hostkey to check*/
-                          size_t keylen); /*length of the key*/
-                          /*return CURLE_OK to accept*/
-                          /*or something else to refuse*/
+                          const char *key, /* hostkey to check */
+                          size_t keylen); /* length of the key */
+                          /* return CURLE_OK to accept */
+                          /* or something else to refuse */
 
 
 /* parameter for the CURLOPT_USE_SSL option */
@@ -932,7 +956,7 @@ typedef enum {
 #define CURLFTPSSL_ALL CURLUSESSL_ALL
 #define CURLFTPSSL_LAST CURLUSESSL_LAST
 #define curl_ftpssl curl_usessl
-#endif /*!CURL_NO_OLDIES*/
+#endif /* !CURL_NO_OLDIES */
 
 /* parameter for the CURLOPT_FTP_SSL_CCC option */
 typedef enum {
@@ -1058,6 +1082,7 @@ typedef CURLSTScode (*curl_hstswrite_callback)(CURL *easy,
 
 
 #define CURLOPT(na,t,nu) na = t + nu
+#define CURLOPTDEPRECATED(na,t,nu,v,m) na CURL_DEPRECATED(v,m) = t + nu
 
 /* CURLOPT aliases that make no run-time difference */
 
@@ -1119,7 +1144,7 @@ typedef enum {
   /* 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
+  /* If CURLOPT_READDATA 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.
@@ -1171,7 +1196,8 @@ typedef enum {
   CURLOPT(CURLOPT_HTTPHEADER, CURLOPTTYPE_SLISTPOINT, 23),
 
   /* This points to a linked list of post entries, struct curl_httppost */
-  CURLOPT(CURLOPT_HTTPPOST, CURLOPTTYPE_OBJECTPOINT, 24),
+  CURLOPTDEPRECATED(CURLOPT_HTTPPOST, CURLOPTTYPE_OBJECTPOINT, 24,
+                    7.56.0, "Use CURLOPT_MIMEPOST"),
 
   /* name of the file keeping your private SSL-certificate */
   CURLOPT(CURLOPT_SSLCERT, CURLOPTTYPE_STRINGPOINT, 25),
@@ -1261,7 +1287,8 @@ typedef enum {
   CURLOPT(CURLOPT_TRANSFERTEXT, CURLOPTTYPE_LONG, 53),
 
   /* HTTP PUT */
-  CURLOPT(CURLOPT_PUT, CURLOPTTYPE_LONG, 54),
+  CURLOPTDEPRECATED(CURLOPT_PUT, CURLOPTTYPE_LONG, 54,
+                    7.12.1, "Use CURLOPT_UPLOAD"),
 
   /* 55 = OBSOLETE */
 
@@ -1269,7 +1296,8 @@ typedef enum {
    * 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),
+  CURLOPTDEPRECATED(CURLOPT_PROGRESSFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 56,
+                    7.32.0, "Use CURLOPT_XFERINFOFUNCTION"),
 
   /* Data passed to the CURLOPT_PROGRESSFUNCTION and CURLOPT_XFERINFOFUNCTION
      callbacks */
@@ -1286,7 +1314,7 @@ typedef enum {
   /* 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 */
+  /* tunnel non-http operations through an HTTP proxy */
   CURLOPT(CURLOPT_HTTPPROXYTUNNEL, CURLOPTTYPE_LONG, 61),
 
   /* Set the interface string to use as outgoing network interface */
@@ -1337,10 +1365,12 @@ typedef enum {
 
   /* 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),
+  CURLOPTDEPRECATED(CURLOPT_RANDOM_FILE, CURLOPTTYPE_STRINGPOINT, 76,
+                    7.84.0, "Serves no purpose anymore"),
 
   /* Set to the Entropy Gathering Daemon socket pathname */
-  CURLOPT(CURLOPT_EGDSOCKET, CURLOPTTYPE_STRINGPOINT, 77),
+  CURLOPTDEPRECATED(CURLOPT_EGDSOCKET, CURLOPTTYPE_STRINGPOINT, 77,
+                    7.84.0, "Serves no purpose anymore"),
 
   /* Time-out connect operations after this amount of seconds, if connects are
      OK within this time, then fine... This only aborts the connect phase. */
@@ -1395,7 +1425,8 @@ typedef enum {
 
   /* Non-zero value means to use the global dns cache */
   /* DEPRECATED, do not use! */
-  CURLOPT(CURLOPT_DNS_USE_GLOBAL_CACHE, CURLOPTTYPE_LONG, 91),
+  CURLOPTDEPRECATED(CURLOPT_DNS_USE_GLOBAL_CACHE, CURLOPTTYPE_LONG, 91,
+                    7.11.1, "Use CURLOPT_SHARE"),
 
   /* DNS cache timeout */
   CURLOPT(CURLOPT_DNS_CACHE_TIMEOUT, CURLOPTTYPE_LONG, 92),
@@ -1550,8 +1581,10 @@ typedef enum {
   */
   CURLOPT(CURLOPT_FTPSSLAUTH, CURLOPTTYPE_VALUES, 129),
 
-  CURLOPT(CURLOPT_IOCTLFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 130),
-  CURLOPT(CURLOPT_IOCTLDATA, CURLOPTTYPE_CBPOINT, 131),
+  CURLOPTDEPRECATED(CURLOPT_IOCTLFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 130,
+                    7.18.0, "Use CURLOPT_SEEKFUNCTION"),
+  CURLOPTDEPRECATED(CURLOPT_IOCTLDATA, CURLOPTTYPE_CBPOINT, 131,
+                    7.18.0, "Use CURLOPT_SEEKDATA"),
 
   /* 132 OBSOLETE. Gone in 7.16.0 */
   /* 133 OBSOLETE. Gone in 7.16.0 */
@@ -1590,16 +1623,22 @@ typedef enum {
 
   /* 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),
+  CURLOPTDEPRECATED(CURLOPT_CONV_FROM_NETWORK_FUNCTION,
+                    CURLOPTTYPE_FUNCTIONPOINT, 142,
+                    7.82.0, "Serves no purpose anymore"),
 
   /* 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),
+  CURLOPTDEPRECATED(CURLOPT_CONV_TO_NETWORK_FUNCTION,
+                    CURLOPTTYPE_FUNCTIONPOINT, 143,
+                    7.82.0, "Serves no purpose anymore"),
 
   /* 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),
+  CURLOPTDEPRECATED(CURLOPT_CONV_FROM_UTF8_FUNCTION,
+                    CURLOPTTYPE_FUNCTIONPOINT, 144,
+                    7.82.0, "Serves no purpose anymore"),
 
   /* if the connection proceeds too quickly then need to slow it down */
   /* limit-rate: maximum number of bytes per second to send or receive */
@@ -1700,7 +1739,9 @@ typedef enum {
 
   /* Socks Service */
   /* DEPRECATED, do not use! */
-  CURLOPT(CURLOPT_SOCKS5_GSSAPI_SERVICE, CURLOPTTYPE_STRINGPOINT, 179),
+  CURLOPTDEPRECATED(CURLOPT_SOCKS5_GSSAPI_SERVICE,
+                    CURLOPTTYPE_STRINGPOINT, 179,
+                    7.49.0, "Use CURLOPT_PROXY_SERVICE_NAME"),
 
   /* Socks Service */
   CURLOPT(CURLOPT_SOCKS5_GSSAPI_NEC, CURLOPTTYPE_LONG, 180),
@@ -1709,12 +1750,14 @@ typedef enum {
      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),
+  CURLOPTDEPRECATED(CURLOPT_PROTOCOLS, CURLOPTTYPE_LONG, 181,
+                    7.85.0, "Use CURLOPT_PROTOCOLS_STR"),
 
   /* 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),
+  CURLOPTDEPRECATED(CURLOPT_REDIR_PROTOCOLS, CURLOPTTYPE_LONG, 182,
+                    7.85.0, "Use CURLOPT_REDIR_PROTOCOLS_STR"),
 
   /* set the SSH knownhost file name to use */
   CURLOPT(CURLOPT_SSH_KNOWNHOSTS, CURLOPTTYPE_STRINGPOINT, 183),
@@ -1859,12 +1902,13 @@ typedef enum {
   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),
+  CURLOPTDEPRECATED(CURLOPT_SSL_ENABLE_NPN, CURLOPTTYPE_LONG, 225,
+                    7.86.0, "Has no function"),
 
   /* 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
+  /* Time to wait for a response to an HTTP request containing an
    * Expect: 100-continue header before sending the data anyway. */
   CURLOPT(CURLOPT_EXPECT_100_TIMEOUT_MS, CURLOPTTYPE_LONG, 227),
 
@@ -2069,7 +2113,7 @@ typedef enum {
   CURLOPT(CURLOPT_SASL_AUTHZID, CURLOPTTYPE_STRINGPOINT, 289),
 
   /* allow RCPT TO command to fail for some recipients */
-  CURLOPT(CURLOPT_MAIL_RCPT_ALLLOWFAILS, CURLOPTTYPE_LONG, 290),
+  CURLOPT(CURLOPT_MAIL_RCPT_ALLOWFAILS, CURLOPTTYPE_LONG, 290),
 
   /* the private SSL-certificate as a "blob" */
   CURLOPT(CURLOPT_SSLCERT_BLOB, CURLOPTTYPE_BLOB, 291),
@@ -2157,6 +2201,15 @@ typedef enum {
   /* websockets options */
   CURLOPT(CURLOPT_WS_OPTIONS, CURLOPTTYPE_LONG, 320),
 
+  /* CA cache timeout */
+  CURLOPT(CURLOPT_CA_CACHE_TIMEOUT, CURLOPTTYPE_LONG, 321),
+
+  /* Can leak things, gonna exit() soon */
+  CURLOPT(CURLOPT_QUICK_EXIT, CURLOPTTYPE_LONG, 322),
+
+  /* set a specific client IP for HAProxy PROXY protocol header? */
+  CURLOPT(CURLOPT_HAPROXY_CLIENT_IP, CURLOPTTYPE_STRINGPOINT, 323),
+
   CURLOPT_LASTENTRY /* the last unused */
 } CURLoption;
 
@@ -2185,6 +2238,9 @@ typedef enum {
 /* */
 #define CURLOPT_FTP_RESPONSE_TIMEOUT CURLOPT_SERVER_RESPONSE_TIMEOUT
 
+/* Added in 8.2.0 */
+#define CURLOPT_MAIL_RCPT_ALLLOWFAILS CURLOPT_MAIL_RCPT_ALLOWFAILS
+
 #else
 /* This is set if CURL_NO_OLDIES is defined at compile-time */
 #undef CURLOPT_DNS_USE_GLOBAL_CACHE /* soon obsolete */
@@ -2213,8 +2269,13 @@ enum {
   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_3 = 30, /* Use HTTP/3, fallback to HTTP/2 or HTTP/1 if
+                               needed. For HTTPS only. For HTTP, this option
+                               makes libcurl return error. */
+  CURL_HTTP_VERSION_3ONLY = 31, /* Use HTTP/3 without fallback. For HTTPS
+                                   only. For HTTP, this makes libcurl
+                                   return error. */
+
   CURL_HTTP_VERSION_LAST /* *ILLEGAL* http version */
 };
 
@@ -2444,30 +2505,32 @@ CURL_EXTERN CURLcode curl_mime_headers(curl_mimepart *part,
                                        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,
+  /********* the first one is unused ************/
+  CURLFORM_NOTHING         CURL_DEPRECATED(7.56.0, ""),
+  CURLFORM_COPYNAME        CURL_DEPRECATED(7.56.0, "Use curl_mime_name()"),
+  CURLFORM_PTRNAME         CURL_DEPRECATED(7.56.0, "Use curl_mime_name()"),
+  CURLFORM_NAMELENGTH      CURL_DEPRECATED(7.56.0, ""),
+  CURLFORM_COPYCONTENTS    CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+  CURLFORM_PTRCONTENTS     CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+  CURLFORM_CONTENTSLENGTH  CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+  CURLFORM_FILECONTENT     CURL_DEPRECATED(7.56.0, "Use curl_mime_data_cb()"),
+  CURLFORM_ARRAY           CURL_DEPRECATED(7.56.0, ""),
   CURLFORM_OBSOLETE,
-  CURLFORM_FILE,
+  CURLFORM_FILE            CURL_DEPRECATED(7.56.0, "Use curl_mime_filedata()"),
 
-  CURLFORM_BUFFER,
-  CURLFORM_BUFFERPTR,
-  CURLFORM_BUFFERLENGTH,
+  CURLFORM_BUFFER          CURL_DEPRECATED(7.56.0, "Use curl_mime_filename()"),
+  CURLFORM_BUFFERPTR       CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
+  CURLFORM_BUFFERLENGTH    CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
 
-  CURLFORM_CONTENTTYPE,
-  CURLFORM_CONTENTHEADER,
-  CURLFORM_FILENAME,
+  CURLFORM_CONTENTTYPE     CURL_DEPRECATED(7.56.0, "Use curl_mime_type()"),
+  CURLFORM_CONTENTHEADER   CURL_DEPRECATED(7.56.0, "Use curl_mime_headers()"),
+  CURLFORM_FILENAME        CURL_DEPRECATED(7.56.0, "Use curl_mime_filename()"),
   CURLFORM_END,
   CURLFORM_OBSOLETE2,
 
-  CURLFORM_STREAM,
-  CURLFORM_CONTENTLEN, /* added in 7.46.0, provide a curl_off_t length */
+  CURLFORM_STREAM          CURL_DEPRECATED(7.56.0, "Use curl_mime_data_cb()"),
+  CURLFORM_CONTENTLEN  /* added in 7.46.0, provide a curl_off_t length */
+                           CURL_DEPRECATED(7.56.0, "Use curl_mime_data()"),
 
   CURLFORM_LASTENTRY /* the last unused */
 } CURLformoption;
@@ -2495,15 +2558,16 @@ struct curl_forms {
  *
  ***************************************************************************/
 typedef enum {
-  CURL_FORMADD_OK, /* first, no error */
+  CURL_FORMADD_OK             CURL_DEPRECATED(7.56.0, ""), /* 1st, 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_MEMORY         CURL_DEPRECATED(7.56.0, ""),
+  CURL_FORMADD_OPTION_TWICE   CURL_DEPRECATED(7.56.0, ""),
+  CURL_FORMADD_NULL           CURL_DEPRECATED(7.56.0, ""),
+  CURL_FORMADD_UNKNOWN_OPTION CURL_DEPRECATED(7.56.0, ""),
+  CURL_FORMADD_INCOMPLETE     CURL_DEPRECATED(7.56.0, ""),
+  CURL_FORMADD_ILLEGAL_ARRAY  CURL_DEPRECATED(7.56.0, ""),
+  /* libcurl was built with form api disabled */
+  CURL_FORMADD_DISABLED       CURL_DEPRECATED(7.56.0, ""),
 
   CURL_FORMADD_LAST /* last */
 } CURLFORMcode;
@@ -2517,9 +2581,10 @@ typedef enum {
  * 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,
-                                      ...);
+CURL_EXTERN CURLFORMcode CURL_DEPRECATED(7.56.0, "Use curl_mime_init()")
+curl_formadd(struct curl_httppost **httppost,
+             struct curl_httppost **last_post,
+             ...);
 
 /*
  * callback function for curl_formget()
@@ -2542,8 +2607,9 @@ typedef size_t (*curl_formget_callback)(void *arg, const char *buf,
  * the curl_formget_callback function.
  * Returns 0 on success.
  */
-CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg,
-                             curl_formget_callback append);
+CURL_EXTERN int CURL_DEPRECATED(7.56.0, "")
+curl_formget(struct curl_httppost *form, void *arg,
+             curl_formget_callback append);
 /*
  * NAME curl_formfree()
  *
@@ -2551,7 +2617,8 @@ CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg,
  *
  * Free a multipart formpost previously built with curl_formadd().
  */
-CURL_EXTERN void curl_formfree(struct curl_httppost *form);
+CURL_EXTERN void CURL_DEPRECATED(7.56.0, "Use curl_mime_free()")
+curl_formfree(struct curl_httppost *form);
 
 /*
  * NAME curl_getenv()
@@ -2720,8 +2787,8 @@ CURL_EXTERN CURLsslset curl_global_sslset(curl_sslbackend id, const char *name,
  * 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 *);
+CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *list,
+                                                 const char *data);
 
 /*
  * NAME curl_slist_free_all()
@@ -2730,7 +2797,7 @@ CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *,
  *
  * free a previously built curl_slist.
  */
-CURL_EXTERN void curl_slist_free_all(struct curl_slist *);
+CURL_EXTERN void curl_slist_free_all(struct curl_slist *list);
 
 /*
  * NAME curl_getdate()
@@ -2778,22 +2845,35 @@ typedef enum {
   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 CURL_DEPRECATED(7.55.0, "Use CURLINFO_SIZE_UPLOAD_T")
+                            = CURLINFO_DOUBLE + 7,
   CURLINFO_SIZE_UPLOAD_T    = CURLINFO_OFF_T  + 7,
-  CURLINFO_SIZE_DOWNLOAD    = CURLINFO_DOUBLE + 8,
+  CURLINFO_SIZE_DOWNLOAD
+                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SIZE_DOWNLOAD_T")
+                            = CURLINFO_DOUBLE + 8,
   CURLINFO_SIZE_DOWNLOAD_T  = CURLINFO_OFF_T  + 8,
-  CURLINFO_SPEED_DOWNLOAD   = CURLINFO_DOUBLE + 9,
+  CURLINFO_SPEED_DOWNLOAD
+                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SPEED_DOWNLOAD_T")
+                            = CURLINFO_DOUBLE + 9,
   CURLINFO_SPEED_DOWNLOAD_T = CURLINFO_OFF_T  + 9,
-  CURLINFO_SPEED_UPLOAD     = CURLINFO_DOUBLE + 10,
+  CURLINFO_SPEED_UPLOAD
+                       CURL_DEPRECATED(7.55.0, "Use CURLINFO_SPEED_UPLOAD_T")
+                            = CURLINFO_DOUBLE + 10,
   CURLINFO_SPEED_UPLOAD_T   = CURLINFO_OFF_T  + 10,
   CURLINFO_HEADER_SIZE      = CURLINFO_LONG   + 11,
   CURLINFO_REQUEST_SIZE     = CURLINFO_LONG   + 12,
   CURLINFO_SSL_VERIFYRESULT = CURLINFO_LONG   + 13,
   CURLINFO_FILETIME         = CURLINFO_LONG   + 14,
   CURLINFO_FILETIME_T       = CURLINFO_OFF_T  + 14,
-  CURLINFO_CONTENT_LENGTH_DOWNLOAD   = CURLINFO_DOUBLE + 15,
+  CURLINFO_CONTENT_LENGTH_DOWNLOAD
+                       CURL_DEPRECATED(7.55.0,
+                                      "Use CURLINFO_CONTENT_LENGTH_DOWNLOAD_T")
+                            = CURLINFO_DOUBLE + 15,
   CURLINFO_CONTENT_LENGTH_DOWNLOAD_T = CURLINFO_OFF_T  + 15,
-  CURLINFO_CONTENT_LENGTH_UPLOAD     = CURLINFO_DOUBLE + 16,
+  CURLINFO_CONTENT_LENGTH_UPLOAD
+                       CURL_DEPRECATED(7.55.0,
+                                       "Use CURLINFO_CONTENT_LENGTH_UPLOAD_T")
+                            = CURLINFO_DOUBLE + 16,
   CURLINFO_CONTENT_LENGTH_UPLOAD_T   = CURLINFO_OFF_T  + 16,
   CURLINFO_STARTTRANSFER_TIME = CURLINFO_DOUBLE + 17,
   CURLINFO_CONTENT_TYPE     = CURLINFO_STRING + 18,
@@ -2807,7 +2887,8 @@ typedef enum {
   CURLINFO_NUM_CONNECTS     = CURLINFO_LONG   + 26,
   CURLINFO_SSL_ENGINES      = CURLINFO_SLIST  + 27,
   CURLINFO_COOKIELIST       = CURLINFO_SLIST  + 28,
-  CURLINFO_LASTSOCKET       = CURLINFO_LONG   + 29,
+  CURLINFO_LASTSOCKET  CURL_DEPRECATED(7.45.0, "Use CURLINFO_ACTIVESOCKET")
+                            = CURLINFO_LONG   + 29,
   CURLINFO_FTP_ENTRY_PATH   = CURLINFO_STRING + 30,
   CURLINFO_REDIRECT_URL     = CURLINFO_STRING + 31,
   CURLINFO_PRIMARY_IP       = CURLINFO_STRING + 32,
@@ -2821,12 +2902,14 @@ typedef enum {
   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_TLS_SESSION CURL_DEPRECATED(7.48.0, "Use CURLINFO_TLS_SSL_PTR")
+                            = CURLINFO_PTR    + 43,
   CURLINFO_ACTIVESOCKET     = CURLINFO_SOCKET + 44,
   CURLINFO_TLS_SSL_PTR      = CURLINFO_PTR    + 45,
   CURLINFO_HTTP_VERSION     = CURLINFO_LONG   + 46,
   CURLINFO_PROXY_SSL_VERIFYRESULT = CURLINFO_LONG + 47,
-  CURLINFO_PROTOCOL         = CURLINFO_LONG   + 48,
+  CURLINFO_PROTOCOL    CURL_DEPRECATED(7.85.0, "Use CURLINFO_SCHEME")
+                            = CURLINFO_LONG   + 48,
   CURLINFO_SCHEME           = CURLINFO_STRING + 49,
   CURLINFO_TOTAL_TIME_T     = CURLINFO_OFF_T + 50,
   CURLINFO_NAMELOOKUP_TIME_T = CURLINFO_OFF_T + 51,
@@ -2841,7 +2924,9 @@ typedef enum {
   CURLINFO_REFERER          = CURLINFO_STRING + 60,
   CURLINFO_CAINFO           = CURLINFO_STRING + 61,
   CURLINFO_CAPATH           = CURLINFO_STRING + 62,
-  CURLINFO_LASTONE          = 62
+  CURLINFO_XFER_ID          = CURLINFO_OFF_T + 63,
+  CURLINFO_CONN_ID          = CURLINFO_OFF_T + 64,
+  CURLINFO_LASTONE          = 64
 } CURLINFO;
 
 /* CURLINFO_RESPONSE_CODE is the new name for the option previously known as
@@ -2885,6 +2970,7 @@ typedef enum {
   CURL_LOCK_DATA_SSL_SESSION,
   CURL_LOCK_DATA_CONNECT,
   CURL_LOCK_DATA_PSL,
+  CURL_LOCK_DATA_HSTS,
   CURL_LOCK_DATA_LAST
 } curl_lock_data;
 
@@ -2927,8 +3013,9 @@ typedef enum {
 } CURLSHoption;
 
 CURL_EXTERN CURLSH *curl_share_init(void);
-CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *, CURLSHoption option, ...);
-CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *);
+CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *share, CURLSHoption option,
+                                         ...);
+CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *share);
 
 /****************************************************************************
  * Structures for querying information about the curl library at runtime.
@@ -2945,6 +3032,7 @@ typedef enum {
   CURLVERSION_EIGHTH,
   CURLVERSION_NINTH,
   CURLVERSION_TENTH,
+  CURLVERSION_ELEVENTH,
   CURLVERSION_LAST /* never actually use this */
 } CURLversion;
 
@@ -2953,7 +3041,7 @@ typedef enum {
    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
+#define CURLVERSION_NOW CURLVERSION_ELEVENTH
 
 struct curl_version_info_data {
   CURLversion age;          /* age of the returned struct */
@@ -3009,6 +3097,10 @@ struct curl_version_info_data {
 
   /* These fields were added in CURLVERSION_TENTH */
   const char *gsasl_version; /* human readable string. */
+
+  /* These fields were added in CURLVERSION_ELEVENTH */
+  /* feature_names is terminated by an entry with a NULL feature name */
+  const char * const *feature_names;
 };
 typedef struct curl_version_info_data curl_version_info_data;
 
@@ -3102,7 +3194,7 @@ CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask);
 #define CURLPAUSE_CONT      (CURLPAUSE_RECV_CONT|CURLPAUSE_SEND_CONT)
 
 #ifdef  __cplusplus
-}
+} /* end of extern "C" */
 #endif
 
 /* unfortunately, the easy.h and multi.h include files need options and info
@@ -3129,6 +3221,6 @@ CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask);
 #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 /* gcc >= 4.3 && !__cplusplus && !CURL_DISABLE_TYPECHECK */
 
 #endif /* CURLINC_CURL_H */

+ 8 - 8
contrib/libs/curl/include/curl/curlver.h

@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2022, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -28,17 +28,17 @@
    a script at release-time. This was made its own header file in 7.11.2 */
 
 /* This is the global package copyright */
-#define LIBCURL_COPYRIGHT "1996 - 2022 Daniel Stenberg, <daniel@haxx.se>."
+#define LIBCURL_COPYRIGHT "Daniel Stenberg, <daniel@haxx.se>."
 
 /* This is the version number of the libcurl package from which this header
    file origins: */
-#define LIBCURL_VERSION "7.86.0"
+#define LIBCURL_VERSION "8.2.1"
 
 /* The numeric version number is also available "in parts" by using these
    defines: */
-#define LIBCURL_VERSION_MAJOR 7
-#define LIBCURL_VERSION_MINOR 86
-#define LIBCURL_VERSION_PATCH 0
+#define LIBCURL_VERSION_MAJOR 8
+#define LIBCURL_VERSION_MINOR 2
+#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
@@ -59,7 +59,7 @@
    CURL_VERSION_BITS() macro since curl's own configure script greps for it
    and needs it to contain the full number.
 */
-#define LIBCURL_VERSION_NUM 0x075600
+#define LIBCURL_VERSION_NUM 0x080201
 
 /*
  * This is the date and time when the full source package was created. The
@@ -70,7 +70,7 @@
  *
  * "2007-11-23"
  */
-#define LIBCURL_TIMESTAMP "2022-10-26"
+#define LIBCURL_TIMESTAMP "2023-07-26"
 
 #define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|(z))
 #define CURL_AT_LEAST_VERSION(x,y,z) \

Some files were not shown because too many files changed in this diff