mirror of
https://github.com/curl/curl.git
synced 2026-06-14 17:05:37 +03:00
Merge cf0037bafe into 73daec6620
This commit is contained in:
commit
f20ba9b95f
115 changed files with 449 additions and 450 deletions
|
|
@ -54,7 +54,7 @@ if(NOT DEFINED ZSTD_INCLUDE_DIR AND
|
|||
endif()
|
||||
if(NOT _zstd_FOUND AND CURL_USE_CMAKECONFIG)
|
||||
find_package(zstd CONFIG QUIET)
|
||||
# Skip using if older than v1.4.5
|
||||
# Skip using if lower than v1.4.5
|
||||
if(zstd_CONFIG AND
|
||||
NOT TARGET zstd::libzstd_static AND
|
||||
NOT TARGET zstd::libzstd_shared)
|
||||
|
|
|
|||
|
|
@ -255,7 +255,7 @@ macro(curl_collect_target_link_options _target)
|
|||
get_target_property(_val ${_target} IMPORTED)
|
||||
if(_val)
|
||||
# LOCATION is empty for interface library targets and safe to ignore.
|
||||
# Explicitly skip this query to avoid CMake v3.18 and older erroring out.
|
||||
# Explicitly skip this query to avoid CMake v3.18 or lower erroring out.
|
||||
get_target_property(_val ${_target} TYPE)
|
||||
if(NOT "${_val}" STREQUAL "INTERFACE_LIBRARY")
|
||||
get_target_property(_val ${_target} LOCATION)
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ if(PICKY_COMPILER)
|
|||
# to suppress undesired warnings in case -Weverything is passed as a custom option.
|
||||
|
||||
# Assume these options always exist with both clang and gcc.
|
||||
# Require clang 3.0 / gcc 2.95 or later.
|
||||
# Require clang 3.0 / gcc 2.95 or greater.
|
||||
list(APPEND _picky_enable
|
||||
-Wbad-function-cast # clang 2.7 gcc 2.95
|
||||
-Wconversion # clang 2.7 gcc 2.95
|
||||
|
|
@ -215,7 +215,7 @@ if(PICKY_COMPILER)
|
|||
if((CMAKE_C_COMPILER_ID STREQUAL "Clang" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 10.0) OR
|
||||
(CMAKE_C_COMPILER_ID STREQUAL "AppleClang" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 12))
|
||||
list(APPEND _picky_enable
|
||||
-Wimplicit-fallthrough # clang 4.0 gcc 7.0 appleclang 9.0 # We do silencing for clang 10.0 and above only
|
||||
-Wimplicit-fallthrough # clang 4.0 gcc 7.0 appleclang 9.0 # We do silencing for clang 10.0 or greater only
|
||||
-Wxor-used-as-pow # clang 10.0 gcc 13.0 appleclang 12.0
|
||||
)
|
||||
endif()
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ option(CURL_USE_PKGCONFIG "Enable pkg-config to detect @PROJECT_NAME@ dependenci
|
|||
|
||||
if(CMAKE_VERSION VERSION_LESS @CMAKE_MINIMUM_REQUIRED_VERSION@)
|
||||
message(STATUS "@PROJECT_NAME@: @PROJECT_NAME@-specific Find modules require "
|
||||
"CMake @CMAKE_MINIMUM_REQUIRED_VERSION@ or upper, found: ${CMAKE_VERSION}.")
|
||||
"CMake @CMAKE_MINIMUM_REQUIRED_VERSION@ or greater, found: ${CMAKE_VERSION}.")
|
||||
endif()
|
||||
|
||||
include(CMakeFindDependencyMacro)
|
||||
|
|
|
|||
|
|
@ -256,7 +256,7 @@ set(HAVE_STRINGS_H 1)
|
|||
if(_CURL_OLD_LINUX)
|
||||
set(HAVE_STROPTS_H 1)
|
||||
else()
|
||||
set(HAVE_STROPTS_H 0) # glibc 2.30 or newer. https://sourceware.org/legacy-ml/libc-alpha/2019-08/msg00029.html
|
||||
set(HAVE_STROPTS_H 0) # glibc 2.30 or greater. https://sourceware.org/legacy-ml/libc-alpha/2019-08/msg00029.html
|
||||
endif()
|
||||
set(HAVE_STRUCT_SOCKADDR_STORAGE 1)
|
||||
set(HAVE_STRUCT_TIMEVAL 1)
|
||||
|
|
|
|||
|
|
@ -229,7 +229,7 @@ if(WIN32)
|
|||
if(MINGW64_VERSION)
|
||||
message(STATUS "Found MINGW64_VERSION=${MINGW64_VERSION}")
|
||||
if(MINGW64_VERSION VERSION_LESS 3.0)
|
||||
message(FATAL_ERROR "mingw-w64 3.0 or upper is required")
|
||||
message(FATAL_ERROR "mingw-w64 3.0 or greater is required")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
|
@ -883,7 +883,7 @@ endif()
|
|||
if(CURL_USE_MBEDTLS)
|
||||
find_package(MbedTLS MODULE REQUIRED)
|
||||
if(MBEDTLS_VERSION VERSION_LESS 3.2.0)
|
||||
message(FATAL_ERROR "mbedTLS v3.2.0 or newer is required.")
|
||||
message(FATAL_ERROR "mbedTLS v3.2.0 or greater is required.")
|
||||
endif()
|
||||
set(_ssl_enabled ON)
|
||||
set(USE_MBEDTLS ON)
|
||||
|
|
@ -917,7 +917,7 @@ if(CURL_USE_WOLFSSL)
|
|||
set(_curl_ca_bundle_supported TRUE)
|
||||
|
||||
if(USE_OPENSSL AND WOLFSSL_VERSION VERSION_LESS 5.7.6)
|
||||
message(FATAL_ERROR "wolfSSL 5.7.6 or newer is required to coexist with OpenSSL.")
|
||||
message(FATAL_ERROR "wolfSSL 5.7.6 or greater is required to coexist with OpenSSL.")
|
||||
endif()
|
||||
|
||||
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS "WOLFSSL_OPTIONS_IGNORE_SYS")
|
||||
|
|
@ -939,7 +939,7 @@ if(CURL_USE_GNUTLS)
|
|||
if(NOT DEFINED HAVE_GNUTLS_SRP AND NOT CURL_DISABLE_SRP)
|
||||
cmake_push_check_state()
|
||||
list(APPEND CMAKE_REQUIRED_LIBRARIES CURL::gnutls)
|
||||
# In GnuTLS 3.8.0 (2023-02-10) and upper, this check always succeeds.
|
||||
# In GnuTLS 3.8.0 (2023-02-10) or greater, this check always succeeds.
|
||||
# Detecting actual TLS-SRP support needs poking the API at runtime.
|
||||
check_symbol_exists("gnutls_srp_verifier" "gnutls/gnutls.h" HAVE_GNUTLS_SRP)
|
||||
cmake_pop_check_state()
|
||||
|
|
@ -963,7 +963,7 @@ if(CURL_USE_RUSTLS)
|
|||
endif()
|
||||
endif()
|
||||
if(NOT HAVE_RUSTLS_SUPPORTED_HPKE)
|
||||
message(FATAL_ERROR "rustls-ffi library does not provide rustls_supported_hpke function. Required version is 0.15 or newer.")
|
||||
message(FATAL_ERROR "rustls-ffi library does not provide rustls_supported_hpke function. Required version is 0.15 or greater.")
|
||||
endif()
|
||||
|
||||
if(CURL_DEFAULT_SSL_BACKEND AND CURL_DEFAULT_SSL_BACKEND STREQUAL "rustls")
|
||||
|
|
@ -1002,7 +1002,7 @@ if(ZSTD_FOUND)
|
|||
set(HAVE_ZSTD ON)
|
||||
list(APPEND CURL_LIBS CURL::zstd)
|
||||
else()
|
||||
message(WARNING "zstd v1.0.0 or newer is required, disabling zstd support.")
|
||||
message(WARNING "zstd v1.0.0 or greater is required, disabling zstd support.")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
|
@ -1143,7 +1143,7 @@ if(USE_NGTCP2)
|
|||
elseif(OPENSSL_VERSION VERSION_GREATER_EQUAL 3.5.0)
|
||||
find_package(NGTCP2 MODULE REQUIRED COMPONENTS "ossl")
|
||||
if(NGTCP2_VERSION VERSION_LESS 1.12.0)
|
||||
message(FATAL_ERROR "ngtcp2 1.12.0 or upper required for OpenSSL")
|
||||
message(FATAL_ERROR "ngtcp2 1.12.0 or greater required for OpenSSL")
|
||||
endif()
|
||||
set(OPENSSL_QUIC_API2 1)
|
||||
elseif(HAVE_LIBRESSL)
|
||||
|
|
|
|||
|
|
@ -1564,7 +1564,7 @@ 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 is 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.
|
||||
dnl or newer.
|
||||
|
||||
AC_DEFUN([CURL_SUPPORTS_BUILTIN_AVAILABLE], [
|
||||
AC_MSG_CHECKING([to see if the compiler supports __builtin_available()])
|
||||
|
|
|
|||
|
|
@ -649,10 +649,10 @@ 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
|
||||
dnl icc 10.x or greater
|
||||
CFLAGS="$CFLAGS -shared-intel"
|
||||
elif test "$compiler_num" -ge "900"; then
|
||||
dnl icc 9.X specific
|
||||
dnl icc 9.x specific
|
||||
CFLAGS="$CFLAGS -i-dynamic"
|
||||
fi
|
||||
fi
|
||||
|
|
@ -670,7 +670,7 @@ CURL_CFLAG_EXTRAS=""
|
|||
if test "$want_werror" = "yes"; then
|
||||
CURL_CFLAG_EXTRAS="-Werror"
|
||||
if test "$compiler_id" = "GNU_C"; then
|
||||
dnl enable -pedantic-errors for GCC 5 and later,
|
||||
dnl enable -pedantic-errors for GCC 5 or greater,
|
||||
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"
|
||||
|
|
|
|||
|
|
@ -75,10 +75,10 @@ Local crypto gets removed in October 2026.
|
|||
- winbuild build system (removed in 8.17.0)
|
||||
- Windows CE (removed in 8.18.0)
|
||||
- Support for Visual Studio 2008 (removed in 8.18.0)
|
||||
- OpenSSL 1.1.1 and older (removed in 8.18.0)
|
||||
- OpenSSL 1.1.1 and lower (removed in 8.18.0)
|
||||
- Support for Windows XP (removed in 8.19.0)
|
||||
- OpenSSL-QUIC (removed in 8.19.0)
|
||||
- CMake 3.17 and older (removed in 8.20.0)
|
||||
- CMake 3.17 and lower (removed in 8.20.0)
|
||||
- RTMP (removed in 8.20.0)
|
||||
- SMB (became opt-in in 8.20.0)
|
||||
- NTLM (became opt-in in 8.20.0)
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ placeholders for the version you build.
|
|||
|
||||
## Build with OpenSSL or fork
|
||||
|
||||
OpenSSL v3.5.0+ requires *ngtcp2* v1.12.0+. Earlier versions do not work.
|
||||
OpenSSL v3.5.0+ requires *ngtcp2* v1.12.0+. Lower versions do not work.
|
||||
|
||||
Build OpenSSL (v3.5.0+) or fork AWS-LC, BoringSSL, LibreSSL or quictls:
|
||||
|
||||
|
|
@ -256,7 +256,7 @@ See this [list of public HTTP/3 servers](https://bagder.github.io/HTTP3-test/)
|
|||
|
||||
### HTTPS eyeballing
|
||||
|
||||
With option `--http3` curl attempts earlier HTTP versions as well should the
|
||||
With option `--http3` curl attempts lower HTTP versions as well should the
|
||||
connect attempt via HTTP/3 fail "fast enough". This strategy is similar
|
||||
to IPv4/6 happy eyeballing where the alternate address family is used in
|
||||
parallel after a short delay.
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ returned, curl parses it and stores the retrieved information.
|
|||
|
||||
If DoH is not used for name resolving in an HTTPS RR enabled build, we must
|
||||
provide the ability using the regular resolver backends. We use the c-ares DNS
|
||||
library for the HTTPS RR lookup. Version 1.28.0 or later.
|
||||
library for the HTTPS RR lookup. Version 1.28.0 or greater.
|
||||
|
||||
### c-ares
|
||||
|
||||
|
|
|
|||
|
|
@ -224,7 +224,7 @@ target_link_libraries(my_target PRIVATE CURL::libcurl)
|
|||
- `IMPORT_LIB_SUFFIX`: Import library suffix. Default: `_imp` for MSVC-like toolchains, otherwise empty.
|
||||
- `LIBCURL_OUTPUT_NAME`: Basename of the curl library. Default: `libcurl`
|
||||
- `PICKY_COMPILER`: Enable picky compiler options. Default: `ON`
|
||||
- `SHARE_LIB_OBJECT`: Build shared and static libcurl in a single pass (requires CMake 3.12 or newer). Default: `ON` for Windows
|
||||
- `SHARE_LIB_OBJECT`: Build shared and static libcurl in a single pass (requires CMake 3.12 or greater). Default: `ON` for Windows
|
||||
- `STATIC_LIB_SUFFIX`: Static library suffix. Default: (empty)
|
||||
|
||||
## Root CA options
|
||||
|
|
@ -562,7 +562,7 @@ We recommend using CMake to build curl with MSVC.
|
|||
The project build files reside in project/Windows/VC\* for VS2010, VS2012 and
|
||||
VS2013.
|
||||
|
||||
These CMake Visual Studio generators require CMake v3.24 or older. You can
|
||||
These CMake Visual Studio generators require CMake v3.24 or lower. You can
|
||||
download them from <https://cmake.org/files/v3.24/>.
|
||||
|
||||
You can also use `-G "NMake Makefiles"`, which is supported by all CMake
|
||||
|
|
|
|||
|
|
@ -206,8 +206,8 @@ Building for Windows Vista/Server 2008 is required as a minimum.
|
|||
|
||||
You can build curl with:
|
||||
|
||||
- Microsoft Visual Studio 2010 v10.0 or later (`_MSC_VER >= 1600`)
|
||||
- MinGW-w64 3.0 or later (`__MINGW64_VERSION_MAJOR >= 3`)
|
||||
- Microsoft Visual Studio 2010 v10.0 or greater (`_MSC_VER >= 1600`)
|
||||
- MinGW-w64 3.0 or greater (`__MINGW64_VERSION_MAJOR >= 3`)
|
||||
|
||||
## Building Windows DLLs and C runtime (CRT) linkage issues
|
||||
|
||||
|
|
@ -334,7 +334,7 @@ cmake . \
|
|||
|
||||
Notes:
|
||||
|
||||
- Requires DJGPP 2.04 or upper.
|
||||
- Requires DJGPP 2.04 or greater.
|
||||
|
||||
- Compile Watt-32 (and OpenSSL) with the same version of DJGPP. Otherwise
|
||||
things go wrong because things like FS-extensions and `errno` values have
|
||||
|
|
@ -429,7 +429,7 @@ for dynamic import symbols.
|
|||
Schannel (from Windows SSPI), is the native SSL library in Windows. Schannel
|
||||
in Windows <= XP is unable to connect to servers that no longer support the
|
||||
legacy handshakes and algorithms used by those versions. If you are using curl
|
||||
in one of those earlier versions of Windows you should choose another SSL
|
||||
in one of those older versions of Windows you should choose another SSL
|
||||
backend such as OpenSSL.
|
||||
|
||||
# Android
|
||||
|
|
|
|||
|
|
@ -19,12 +19,12 @@ supply a stdint.h header file that defines C99-style fixed-width integer types
|
|||
like uint32_t.
|
||||
|
||||
We write libcurl to build and work with lots of third party tools, and we
|
||||
want it to remain functional and buildable with these and later versions
|
||||
(older versions may still work but is not what we work hard to maintain):
|
||||
want it to remain functional and buildable with these and greater versions
|
||||
(lower versions may still work but is not what we work hard to maintain):
|
||||
|
||||
## Dependencies
|
||||
|
||||
We aim to support these or later versions.
|
||||
We aim to support these or later versions:
|
||||
|
||||
- brotli 1.0.0 (2017-09-21)
|
||||
- c-ares 1.16.0 (2020-03-13)
|
||||
|
|
@ -49,9 +49,9 @@ We aim to support these or later versions.
|
|||
|
||||
When writing code (mostly for generating stuff included in release tarballs)
|
||||
we use a few "build tools" and we make sure that we remain functional with
|
||||
these versions:
|
||||
these or later versions:
|
||||
|
||||
- clang-tidy 17.0.0 (2023-09-19), recommended: 19.1.0 or later (2024-09-17)
|
||||
- clang-tidy 17.0.0 (2023-09-19), recommended: 19.1.0 (2024-09-17)
|
||||
- cmake 3.18 (2020-07-15)
|
||||
- GNU autoconf 2.59 (2003-11-06)
|
||||
- GNU automake 1.7 (2002-09-25)
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ Once downloaded, build `curl` using `--with-rustls` and the path to the extracte
|
|||
Building `rustls-ffi` from source requires both a rust compiler, and the [cargo-c] cargo plugin.
|
||||
|
||||
To install a Rust compiler, use [rustup] or your package manager to install
|
||||
the **1.73** or newer toolchain.
|
||||
the **1.73** or greater toolchain.
|
||||
|
||||
To install `cargo-c`, use your [package manager][cargo-c pkg], download
|
||||
[a pre-built archive][cargo-c prebuilt], or build it from source with `cargo install cargo-c`.
|
||||
|
|
|
|||
|
|
@ -44,10 +44,10 @@ completely. Sometimes you may need to explicitly select an SSL version to
|
|||
use when connecting to make the connection succeed.
|
||||
|
||||
An additional complication can be that modern SSL libraries sometimes are
|
||||
built with support for older SSL and TLS versions disabled.
|
||||
built with support for lower SSL and TLS versions disabled.
|
||||
|
||||
All versions of SSL and the TLS versions before 1.2 are considered insecure
|
||||
and should be avoided. Use TLS 1.2 or later.
|
||||
and should be avoided. Use TLS 1.2 or greater.
|
||||
|
||||
## Ciphers
|
||||
|
||||
|
|
|
|||
|
|
@ -331,7 +331,7 @@ line.
|
|||
|
||||
Additionally this should be implemented for proxy base URLs as well.
|
||||
|
||||
## Require HTTP version X or higher
|
||||
## Require HTTP version X or greater
|
||||
|
||||
curl and libcurl provide options for trying higher HTTP versions (for example
|
||||
HTTP/2) but then still allows the server to pick version 1.1. We could
|
||||
|
|
@ -571,7 +571,7 @@ See [curl issue 5396](https://github.com/curl/curl/issues/5396)
|
|||
|
||||
Certain stupid networks and middle boxes have a problem with SSL handshake
|
||||
packets that are within a certain size range because how that sets some bits
|
||||
that previously (in older TLS version) were not set. The `clienthello`
|
||||
that previously (in lower TLS version) were not set. The `clienthello`
|
||||
extension adds padding to avoid that size range.
|
||||
|
||||
- https://datatracker.ietf.org/doc/html/rfc7685
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ failed.
|
|||
FTP quote error. A quote command returned error from the server.
|
||||
## 22
|
||||
HTTP page not retrieved. The requested URL was not found or returned another
|
||||
error with the HTTP error code being 400 or above. This return code only
|
||||
error with the HTTP error code being 400 or higher. This return code only
|
||||
appears if --fail is used.
|
||||
## 23
|
||||
Write error. curl could not write data to a local file system or similar.
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ Current Working Directory, or in any folder along your PATH.
|
|||
curl 8.11.0 added a build-time option to disable this search behavior, and
|
||||
another option to restrict search to the application's directory.
|
||||
|
||||
(Schannel) This option is supported for Schannel in Windows 7 or later (added
|
||||
(Schannel) This option is supported for Schannel in Windows 7 or newer (added
|
||||
in 7.60.0). This option is supported for backward compatibility with other SSL
|
||||
engines; instead it is recommended to use Windows' store of root certificates
|
||||
(the default for Schannel).
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ Example:
|
|||
# `--fail`
|
||||
|
||||
Fail with error code 22 and with no response body output at all for HTTP
|
||||
transfers returning HTTP response codes at 400 or greater.
|
||||
transfers returning HTTP response codes at 400 or higher.
|
||||
|
||||
In normal cases when an HTTP server fails to deliver a document, it returns a
|
||||
body of text stating so (which often also describes why and more) and a 4xx
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ Example:
|
|||
# `--http3-only`
|
||||
|
||||
Instruct curl to use HTTP/3 to the host in the URL, with no fallback to
|
||||
earlier HTTP versions. HTTP/3 can only be used for HTTPS and not for HTTP
|
||||
lower HTTP versions. HTTP/3 can only be used for HTTPS and not for HTTP
|
||||
URLs. For HTTP, this option triggers an error.
|
||||
|
||||
This option allows a user to avoid using the Alt-Svc method of upgrading to
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ Example:
|
|||
|
||||
# `--http3`
|
||||
|
||||
Attempt HTTP/3 to the host in the URL, but fallback to earlier HTTP versions
|
||||
Attempt HTTP/3 to the host in the URL, but fallback to lower HTTP versions
|
||||
if the HTTP/3 connection establishment fails or is slow. HTTP/3 is only
|
||||
available for HTTPS and not for HTTP URLs.
|
||||
|
||||
|
|
@ -27,9 +27,9 @@ This option allows a user to avoid using the Alt-Svc method of upgrading to
|
|||
HTTP/3 when you know or suspect that the target speaks HTTP/3 on the given
|
||||
host and port.
|
||||
|
||||
When asked to use HTTP/3, curl issues a separate attempt to use older HTTP
|
||||
When asked to use HTTP/3, curl issues a separate attempt to use lower HTTP
|
||||
versions with a slight delay, so if the HTTP/3 transfer fails or is slow, curl
|
||||
still tries to proceed with an older HTTP version. The fallback performs the
|
||||
still tries to proceed with a lower HTTP version. The fallback performs the
|
||||
regular negotiation between HTTP/1 and HTTP/2.
|
||||
|
||||
Use --http3-only for similar functionality *without* a fallback.
|
||||
|
|
|
|||
|
|
@ -26,8 +26,8 @@ Read up on TLS 1.3 cipher suite details on this URL:
|
|||
|
||||
https://curl.se/docs/ssl-ciphers.html
|
||||
|
||||
This option is used when curl is built to use OpenSSL 1.1.1 or later,
|
||||
Schannel, wolfSSL, or mbedTLS 3.6.0 or later.
|
||||
This option is used when curl is built to use OpenSSL 1.1.1 or greater,
|
||||
Schannel, wolfSSL, or mbedTLS 3.6.0 or greater.
|
||||
|
||||
Before curl 8.10.0 with mbedTLS or wolfSSL, TLS 1.3 cipher suites were set
|
||||
by using the --proxy-ciphers option.
|
||||
|
|
|
|||
|
|
@ -15,6 +15,6 @@ Example:
|
|||
# `--proxy-tlsv1`
|
||||
|
||||
Use at least TLS version 1.x when negotiating with an HTTPS proxy. That means
|
||||
TLS version 1.0 or higher
|
||||
TLS version 1.0 or greater
|
||||
|
||||
Equivalent to --tlsv1 but for an HTTPS proxy context.
|
||||
|
|
|
|||
|
|
@ -22,4 +22,4 @@ file.
|
|||
curl attempts to automatically extract the public key from the private key
|
||||
file, so passing this option is generally not required. Note that this public
|
||||
key extraction requires libcurl to be linked against a copy of libssh2 1.2.8
|
||||
or higher that is itself linked against OpenSSL. (Added in 7.39.0.)
|
||||
or greater that is itself linked against OpenSSL. (Added in 7.39.0.)
|
||||
|
|
|
|||
|
|
@ -24,8 +24,8 @@ suite details on this URL:
|
|||
|
||||
https://curl.se/docs/ssl-ciphers.html
|
||||
|
||||
This option is used when curl is built to use OpenSSL 1.1.1 or later,
|
||||
wolfSSL, or mbedTLS 3.6.0 or later.
|
||||
This option is used when curl is built to use OpenSSL 1.1.1 or greater,
|
||||
wolfSSL, or mbedTLS 3.6.0 or greater.
|
||||
|
||||
Before curl 8.10.0 with mbedTLS or wolfSSL, TLS 1.3 cipher suites were set
|
||||
by using the --ciphers option.
|
||||
|
|
|
|||
|
|
@ -15,7 +15,8 @@ Example:
|
|||
|
||||
# `--tlsv1.0`
|
||||
|
||||
Force curl to use TLS version 1.0 or later when connecting to a remote TLS server.
|
||||
Force curl to use TLS version 1.0 or greater when connecting to a remote TLS
|
||||
server.
|
||||
|
||||
In old versions of curl this option was documented to allow _only_ TLS 1.0.
|
||||
That behavior was inconsistent depending on the TLS library. Use --tls-max if
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ Example:
|
|||
|
||||
# `--tlsv1.1`
|
||||
|
||||
Force curl to use TLS version 1.1 or later when connecting to a remote TLS server.
|
||||
Force curl to use TLS version 1.1 or greater when connecting to a remote TLS
|
||||
server.
|
||||
|
||||
In old versions of curl this option was documented to allow _only_ TLS 1.1.
|
||||
That behavior was inconsistent depending on the TLS library. Use --tls-max if
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ Example:
|
|||
|
||||
# `--tlsv1.2`
|
||||
|
||||
Force curl to use TLS version 1.2 or later when connecting to a remote TLS server.
|
||||
Force curl to use TLS version 1.2 or greater when connecting to a remote TLS
|
||||
server.
|
||||
|
||||
In old versions of curl this option was documented to allow _only_ TLS 1.2.
|
||||
That behavior was inconsistent depending on the TLS library. Use --tls-max if
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ Example:
|
|||
|
||||
# `--tlsv1.3`
|
||||
|
||||
Force curl to use TLS version 1.3 or later when connecting to a remote TLS
|
||||
Force curl to use TLS version 1.3 or greater when connecting to a remote TLS
|
||||
server.
|
||||
|
||||
If the connection is done without TLS, this option has no effect. This
|
||||
|
|
|
|||
|
|
@ -21,4 +21,4 @@ Example:
|
|||
# `--tlsv1`
|
||||
|
||||
Use at least TLS version 1.x when negotiating with a remote TLS server. That
|
||||
means TLS version 1.0 or higher
|
||||
means TLS version 1.0 or greater.
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ int main(void)
|
|||
if(curl) {
|
||||
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
|
||||
|
||||
/* Use HTTP/3 but fallback to earlier HTTP if necessary */
|
||||
/* Use HTTP/3 but fallback to lower HTTP if necessary */
|
||||
curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_3);
|
||||
|
||||
/* Perform the request, result gets the return code */
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
/* This is a simple example showing how to send mail using libcurl's IMAP
|
||||
* capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
#define FROM "<sender@example.org>"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to fetch mail using libcurl's IMAP
|
||||
* capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.66.0 or above.
|
||||
* Note that this example requires libcurl 7.66.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to copy a mail from one mailbox folder
|
||||
* to another using libcurl's IMAP capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to create a new mailbox folder using
|
||||
* libcurl's IMAP capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to delete an existing mailbox folder
|
||||
* using libcurl's IMAP capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to obtain information about a mailbox
|
||||
* folder using libcurl's IMAP capabilities via the EXAMINE command.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to fetch mail using libcurl's IMAP
|
||||
* capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to list the folders within an IMAP
|
||||
* mailbox.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to list the subscribed folders within
|
||||
* an IMAP mailbox.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to perform a noop using libcurl's IMAP
|
||||
* capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to search for new messages using
|
||||
* libcurl's IMAP capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
* capabilities. It builds on the imap-fetch.c example adding transport
|
||||
* security to protect the authentication details from being snooped.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to modify an existing mail using
|
||||
* libcurl's IMAP capabilities with the STORE command.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
* capabilities. It builds on the imap-fetch.c example adding transport
|
||||
* security to protect the authentication details from being snooped.
|
||||
*
|
||||
* Note that this example requires libcurl 7.30.0 or above.
|
||||
* Note that this example requires libcurl 7.30.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
#include <curl/curl.h>
|
||||
|
||||
#if !CURL_AT_LEAST_VERSION(7, 62, 0)
|
||||
#error "this example requires curl 7.62.0 or later"
|
||||
#error "this example requires curl 7.62.0 or greater"
|
||||
#endif
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to retrieve mail using libcurl's POP3
|
||||
* capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.66.0 or above.
|
||||
* Note that this example requires libcurl 7.66.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to delete an existing mail using
|
||||
* libcurl's POP3 capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.26.0 or above.
|
||||
* Note that this example requires libcurl 7.26.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example using libcurl's POP3 capabilities to list the
|
||||
* contents of a mailbox.
|
||||
*
|
||||
* Note that this example requires libcurl 7.20.0 or above.
|
||||
* Note that this example requires libcurl 7.20.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to perform a noop using libcurl's POP3
|
||||
* capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.26.0 or above.
|
||||
* Note that this example requires libcurl 7.26.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to retrieve mail using libcurl's POP3
|
||||
* capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.20.0 or above.
|
||||
* Note that this example requires libcurl 7.20.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
* capabilities. It builds on the pop3-retr.c example adding transport
|
||||
* security to protect the authentication details from being snooped.
|
||||
*
|
||||
* Note that this example requires libcurl 7.20.0 or above.
|
||||
* Note that this example requires libcurl 7.20.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to obtain message statistics using
|
||||
* libcurl's POP3 capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.26.0 or above.
|
||||
* Note that this example requires libcurl 7.26.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
* capabilities. It builds on the pop3-retr.c example adding transport
|
||||
* security to protect the authentication details from being snooped.
|
||||
*
|
||||
* Note that this example requires libcurl 7.20.0 or above.
|
||||
* Note that this example requires libcurl 7.20.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example showing how to retrieve only the headers of a mail
|
||||
* using libcurl's POP3 capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.26.0 or above.
|
||||
* Note that this example requires libcurl 7.26.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
/* This is a simple example using libcurl's POP3 capabilities to list the
|
||||
* contents of a mailbox by unique ID.
|
||||
*
|
||||
* Note that this example requires libcurl 7.26.0 or above.
|
||||
* Note that this example requires libcurl 7.26.0 or greater.
|
||||
*/
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@
|
|||
* This is a simple example show how to send an email using libcurl's SMTP
|
||||
* capabilities.
|
||||
*
|
||||
* Note that this example requires libcurl 7.66.0 or above.
|
||||
* Note that this example requires libcurl 7.66.0 or greater.
|
||||
*/
|
||||
|
||||
/* The libcurl options want plain addresses, the viewable headers in the mail
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@
|
|||
*
|
||||
* Notes:
|
||||
*
|
||||
* 1) This example requires libcurl 7.34.0 or above.
|
||||
* 1) This example requires libcurl 7.34.0 or greater.
|
||||
* 2) Not all email servers support this command.
|
||||
*/
|
||||
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@
|
|||
* capabilities. For an example of using the multi interface please see
|
||||
* smtp-multi.c.
|
||||
*
|
||||
* Note that this example requires libcurl 7.56.0 or above.
|
||||
* Note that this example requires libcurl 7.56.0 or greater.
|
||||
*/
|
||||
|
||||
#define FROM "<sender@example.org>"
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@
|
|||
* and, more importantly, transport security to protect the authentication
|
||||
* details from being snooped.
|
||||
*
|
||||
* Note that this example requires libcurl 7.20.0 or above.
|
||||
* Note that this example requires libcurl 7.20.0 or greater.
|
||||
*/
|
||||
|
||||
#define FROM_MAIL "<sender@example.com>"
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@
|
|||
* and, more importantly, transport security to protect the authentication
|
||||
* details from being snooped.
|
||||
*
|
||||
* Note that this example requires libcurl 7.20.0 or above.
|
||||
* Note that this example requires libcurl 7.20.0 or greater.
|
||||
*/
|
||||
|
||||
#define FROM_MAIL "<sender@example.com>"
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@
|
|||
*
|
||||
* Notes:
|
||||
*
|
||||
* 1) This example requires libcurl 7.34.0 or above.
|
||||
* 1) This example requires libcurl 7.34.0 or greater.
|
||||
* 2) Not all email servers support this command and even if your email server
|
||||
* does support it, it may respond with a 252 response code even though the
|
||||
* address does not exist.
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@
|
|||
* An SSL-enabled libcurl is required for this sample to work (at least one
|
||||
* SSL backend has to be configured).
|
||||
*
|
||||
* **** This example only works with libcurl 7.56.0 and later! ****
|
||||
* **** This example only works with libcurl 7.56.0 or greater! ****
|
||||
*/
|
||||
|
||||
int main(int argc, const char **argv)
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
#include <curl/curl.h>
|
||||
|
||||
#if !CURL_AT_LEAST_VERSION(7, 80, 0)
|
||||
#error "this example requires curl 7.80.0 or later"
|
||||
#error "this example requires curl 7.80.0 or greater"
|
||||
#endif
|
||||
|
||||
int main(void)
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ of data and even latency. In the case of QUIC, resumption may send
|
|||
application data without having seen any reply from the server, hence
|
||||
this is named 0-RTT data.
|
||||
|
||||
The exact mechanism of session tickets in TLSv1.2 (and earlier) and
|
||||
The exact mechanism of session tickets in TLSv1.2 (and lower) and
|
||||
TLSv1.3 differs. TLSv1.2 tickets have several weaknesses (that can
|
||||
be exploited by attackers) which TLSv1.3 then fixed. See
|
||||
[Session Tickets in the real world](https://words.filippo.io/we-need-to-talk-about-session-tickets/)
|
||||
|
|
|
|||
|
|
@ -48,26 +48,26 @@ typedef struct {
|
|||
const char *libz_version; /* human readable string */
|
||||
const char *const *protocols; /* protocols */
|
||||
|
||||
/* when 'age' is CURLVERSION_SECOND or higher, the members below exist */
|
||||
/* when 'age' is CURLVERSION_SECOND or greater, the members below exist */
|
||||
const char *ares; /* human readable string */
|
||||
int ares_num; /* number */
|
||||
|
||||
/* when 'age' is CURLVERSION_THIRD or higher, the members below exist */
|
||||
/* when 'age' is CURLVERSION_THIRD or greater, the members below exist */
|
||||
const char *libidn; /* human readable string */
|
||||
|
||||
/* when 'age' is CURLVERSION_FOURTH or higher (>= 7.16.1), the members
|
||||
/* when 'age' is CURLVERSION_FOURTH or greater (>= 7.16.1), the members
|
||||
below exist */
|
||||
int iconv_ver_num; /* '_libiconv_version' if iconv support enabled */
|
||||
|
||||
const char *libssh_version; /* human readable string */
|
||||
|
||||
/* when 'age' is CURLVERSION_FIFTH or higher (>= 7.57.0), the members
|
||||
/* when 'age' is CURLVERSION_FIFTH or greater (>= 7.57.0), the members
|
||||
below exist */
|
||||
unsigned int brotli_ver_num; /* Numeric Brotli version
|
||||
(MAJOR << 24) | (MINOR << 12) | PATCH */
|
||||
const char *brotli_version; /* human readable string. */
|
||||
|
||||
/* when 'age' is CURLVERSION_SIXTH or higher (>= 7.66.0), the members
|
||||
/* when 'age' is CURLVERSION_SIXTH or greater (>= 7.66.0), the members
|
||||
below exist */
|
||||
unsigned int nghttp2_ver_num; /* Numeric nghttp2 version
|
||||
(MAJOR << 16) | (MINOR << 8) | PATCH */
|
||||
|
|
@ -76,27 +76,27 @@ typedef struct {
|
|||
const char *quic_version; /* human readable quic (+ HTTP/3) library +
|
||||
version or NULL */
|
||||
|
||||
/* when 'age' is CURLVERSION_SEVENTH or higher (>= 7.70.0), the members
|
||||
/* when 'age' is CURLVERSION_SEVENTH or greater (>= 7.70.0), the members
|
||||
below exist */
|
||||
const char *cainfo; /* the built-in default CURLOPT_CAINFO, might
|
||||
be NULL */
|
||||
const char *capath; /* the built-in default CURLOPT_CAPATH, might
|
||||
be NULL */
|
||||
/* when 'age' is CURLVERSION_EIGHTH or higher (>= 7.71.0), the members
|
||||
/* when 'age' is CURLVERSION_EIGHTH or greater (>= 7.71.0), the members
|
||||
below exist */
|
||||
unsigned int zstd_ver_num; /* Numeric Zstd version
|
||||
(MAJOR << 24) | (MINOR << 12) | PATCH */
|
||||
const char *zstd_version; /* human readable string. */
|
||||
/* when 'age' is CURLVERSION_NINTH or higher (>= 7.75.0), the members
|
||||
/* when 'age' is CURLVERSION_NINTH or greater (>= 7.75.0), the members
|
||||
below exist */
|
||||
const char *hyper_version; /* human readable string. */
|
||||
/* when 'age' is CURLVERSION_TENTH or higher (>= 7.77.0), the members
|
||||
/* when 'age' is CURLVERSION_TENTH or greater (>= 7.77.0), the members
|
||||
below exist */
|
||||
const char *gsasl_version; /* human readable string. */
|
||||
/* when 'age' is CURLVERSION_ELEVENTH or higher (>= 7.87.0), the members
|
||||
/* when 'age' is CURLVERSION_ELEVENTH or greater (>= 7.87.0), the members
|
||||
below exist */
|
||||
const char *const *feature_names; /* Feature names. */
|
||||
/* when 'age' is CURLVERSION_TWELFTH or higher (>= 8.8.0), the members
|
||||
/* when 'age' is CURLVERSION_TWELFTH or greater (>= 8.8.0), the members
|
||||
below exist */
|
||||
const char *const *rtmp_version; /* human readable string */
|
||||
} curl_version_info_data;
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ Not used in modern versions.
|
|||
## CURLE_QUOTE_ERROR (21)
|
||||
|
||||
When sending custom "QUOTE" commands to the remote server, one of the commands
|
||||
returned an error code that was 400 or higher (for FTP) or otherwise
|
||||
returned an error code that was 400 or greater (for FTP) or otherwise
|
||||
indicated unsuccessful completion of the command.
|
||||
|
||||
## CURLE_HTTP_RETURNED_ERROR (22)
|
||||
|
|
|
|||
|
|
@ -1444,7 +1444,7 @@ example cookies so the only way to share that is with the share interface.
|
|||
|
||||
## [1]
|
||||
|
||||
libcurl 7.10.3 and later have the ability to switch over to chunked
|
||||
libcurl 7.10.3 or greater have the ability to switch over to chunked
|
||||
Transfer-Encoding in cases where HTTP uploads are done with data of an unknown
|
||||
size.
|
||||
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ callback configured in CURLOPT_WRITEFUNCTION(3), whenever an incoming chunk
|
|||
of WebSocket data is received. The callback is handed a pointer to the payload
|
||||
data as an argument and can call curl_ws_meta(3) to get relevant metadata.
|
||||
|
||||
With libcurl 8.16.0 or later, sending of WebSocket frames via a
|
||||
With libcurl 8.16.0 or greater, sending of WebSocket frames via a
|
||||
CURLOPT_READFUNCTION(3) is supported. To use that on such a connection,
|
||||
register a callback via CURLOPT_READFUNCTION(3) and set CURLOPT_UPLOAD(3)
|
||||
as well. Once, the WebSocket connection is established, your callback is
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ accessible file.
|
|||
This option is by default set to the system path where libcurl's CA
|
||||
certificate bundle is assumed to be stored, as established at build time.
|
||||
|
||||
(Schannel) This option is supported for Schannel in Windows 7 or later but we
|
||||
(Schannel) This option is supported for Schannel in Windows 7 or newer but we
|
||||
recommend not using it until Windows 8 since it works better starting then.
|
||||
If the option is not set, then curl uses the certificates in the Windows'
|
||||
store of root certificates (the default for Schannel).
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ that both HTTP/1.1 and HTTP/2 were offered.
|
|||
## CURL_HTTP_VERSION_3
|
||||
|
||||
(Added in 7.66.0) This option makes libcurl attempt to use HTTP/3 to the host
|
||||
given in the URL, with fallback to earlier HTTP versions if needed.
|
||||
given in the URL, with fallback to lower HTTP versions if needed.
|
||||
|
||||
## CURL_HTTP_VERSION_3ONLY
|
||||
|
||||
|
|
|
|||
|
|
@ -105,7 +105,7 @@ int main(void)
|
|||
CURLcode result;
|
||||
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
|
||||
|
||||
/* ask libcurl to use TLS version 1.0 or later */
|
||||
/* ask libcurl to use TLS version 1.0 or greater */
|
||||
curl_easy_setopt(curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
|
||||
|
||||
/* Perform the request */
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ default TLS v1.2 since 8.16.0 (unless the TLS library has a stricter rule).
|
|||
|
||||
## CURL_SSLVERSION_TLSv1
|
||||
|
||||
TLS v1.0 or later
|
||||
TLS v1.0 or greater
|
||||
|
||||
## CURL_SSLVERSION_SSLv2
|
||||
|
||||
|
|
@ -58,19 +58,19 @@ SSL v3 - refused
|
|||
|
||||
## CURL_SSLVERSION_TLSv1_0
|
||||
|
||||
TLS v1.0 or later
|
||||
TLS v1.0 or greater
|
||||
|
||||
## CURL_SSLVERSION_TLSv1_1
|
||||
|
||||
TLS v1.1 or later
|
||||
TLS v1.1 or greater
|
||||
|
||||
## CURL_SSLVERSION_TLSv1_2
|
||||
|
||||
TLS v1.2 or later
|
||||
TLS v1.2 or greater
|
||||
|
||||
## CURL_SSLVERSION_TLSv1_3
|
||||
|
||||
TLS v1.3 or later
|
||||
TLS v1.3 or greater
|
||||
|
||||
##
|
||||
|
||||
|
|
@ -117,7 +117,7 @@ int main(void)
|
|||
CURLcode result;
|
||||
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
|
||||
|
||||
/* ask libcurl to use TLS version 1.0 or later */
|
||||
/* ask libcurl to use TLS version 1.0 or greater */
|
||||
curl_easy_setopt(curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
|
||||
|
||||
/* Perform the request */
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ int main(void)
|
|||
|
||||
# NOTES
|
||||
|
||||
This option is only supported on Linux and macOS 10.11 or later.
|
||||
This option is only supported on Linux and macOS 10.11 or greater.
|
||||
|
||||
# %AVAILABILITY%
|
||||
|
||||
|
|
|
|||
|
|
@ -136,7 +136,7 @@ set to identify the IP address and port number of the DNS server to use.
|
|||
host information
|
||||
|
||||
- curl built to use `getaddrinfo()` for resolving *and* is built with c-ares
|
||||
1.26.0 or later, gets a special workaround. In such builds, when the
|
||||
1.26.0 or greater, gets a special workaround. In such builds, when the
|
||||
environment variable is set, curl instead invokes a getaddrinfo wrapper
|
||||
that emulates the function and acknowledges the DNS server environment
|
||||
variable. This way, the getaddrinfo-using code paths in curl are verified,
|
||||
|
|
|
|||
|
|
@ -61,12 +61,12 @@
|
|||
#include <ares.h>
|
||||
|
||||
#if ARES_VERSION < 0x011000
|
||||
#error "requires c-ares 1.16.0 or newer"
|
||||
#error "requires c-ares 1.16.0 or greater"
|
||||
#endif
|
||||
|
||||
#ifdef USE_HTTPSRR
|
||||
#if ARES_VERSION < 0x011c00
|
||||
#error "requires c-ares 1.28.0 or newer for HTTPSRR"
|
||||
#error "requires c-ares 1.28.0 or greater for HTTPSRR"
|
||||
#endif
|
||||
#define HTTPSRR_WORKS
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ timediff_t Curl_async_timeleft_ms(struct Curl_easy *data,
|
|||
#ifdef USE_ARES
|
||||
|
||||
#if ARES_VERSION < 0x011000
|
||||
#error "requires c-ares 1.16.0 or newer"
|
||||
#error "requires c-ares 1.16.0 or greater"
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -188,7 +188,7 @@ static void tcpkeepalive(struct Curl_cfilter *cf,
|
|||
}
|
||||
else {
|
||||
#ifdef USE_WINSOCK
|
||||
/* Windows 10, version 1709 (10.0.16299) and later versions can use
|
||||
/* Windows 10, version 1709 (10.0.16299) and newer versions can use
|
||||
setsockopt() TCP_KEEP*. Older versions return with failure. */
|
||||
if(curlx_verify_windows_version(10, 0, 16299, PLATFORM_WINNT,
|
||||
VERSION_GREATER_THAN_EQUAL)) {
|
||||
|
|
@ -1173,9 +1173,9 @@ static CURLcode cf_socket_open(struct Curl_cfilter *cf,
|
|||
#ifdef USE_WINSOCK
|
||||
/* Turn on support for IPv4-mapped IPv6 addresses.
|
||||
* Linux kernel, NetBSD, FreeBSD, Darwin, lwIP: default is off;
|
||||
* Windows Vista and later: default is on;
|
||||
* Windows Vista and newer: default is on;
|
||||
* DragonFly BSD: acts like off, and dummy setting;
|
||||
* OpenBSD and earlier Windows: unsupported.
|
||||
* OpenBSD and older Windows: unsupported.
|
||||
* Linux: controlled by /proc/sys/net/ipv6/bindv6only.
|
||||
*/
|
||||
int on = 0;
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@
|
|||
#ifdef HAVE_LIBZ
|
||||
|
||||
#if !defined(ZLIB_VERNUM) || (ZLIB_VERNUM < 0x1252)
|
||||
#error "requires zlib 1.2.5.2 or newer"
|
||||
#error "requires zlib 1.2.5.2 or greater"
|
||||
#endif
|
||||
|
||||
typedef enum {
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@
|
|||
#elif defined(USE_MBEDTLS) && defined(HAVE_MBEDTLS_DES_CRYPT_ECB)
|
||||
# include <mbedtls/version.h>
|
||||
# if MBEDTLS_VERSION_NUMBER < 0x03020000
|
||||
# error "mbedTLS 3.2.0 or later required"
|
||||
# error "mbedTLS 3.2.0 or greater required"
|
||||
# endif
|
||||
# include <mbedtls/des.h>
|
||||
# define USE_MBEDTLS_DES
|
||||
|
|
|
|||
|
|
@ -56,12 +56,12 @@
|
|||
#ifdef __APPLE__
|
||||
#include <sys/types.h>
|
||||
#include <TargetConditionals.h>
|
||||
/* Fixup faulty target macro initialization in macOS SDK since v14.4 (as of
|
||||
15.0 beta). The SDK target detection in `TargetConditionals.h` correctly
|
||||
/* Fixup faulty target macro initialization in macOS SDK v14.4 or greater (as
|
||||
of 15.0 beta). The SDK target detection in `TargetConditionals.h` correctly
|
||||
detects macOS, but fails to set the macro's old name `TARGET_OS_OSX`, then
|
||||
continues to set it to a default value of 0. Other parts of the SDK still
|
||||
rely on the old name, and with this inconsistency our builds fail due to
|
||||
missing declarations. It happens when using mainline llvm older than v18.
|
||||
missing declarations. It happens when using mainline llvm v17 or lower.
|
||||
Later versions fixed it by predefining these target macros, avoiding the
|
||||
faulty dynamic detection. gcc is not affected (for now) because it lacks
|
||||
the necessary dynamic detection features, so the SDK falls back to
|
||||
|
|
@ -77,7 +77,7 @@
|
|||
|
||||
#if defined(__MINGW32__) && \
|
||||
(!defined(__MINGW64_VERSION_MAJOR) || (__MINGW64_VERSION_MAJOR < 3))
|
||||
#error "Building curl requires mingw-w64 3.0 or later"
|
||||
#error "Building curl requires mingw-w64 3.0 or greater"
|
||||
#endif
|
||||
|
||||
/* Visual Studio 2010 is the minimum Visual Studio version we support.
|
||||
|
|
@ -182,12 +182,12 @@
|
|||
|
||||
#ifdef HAVE_LIBZ
|
||||
# ifndef ZLIB_CONST
|
||||
# define ZLIB_CONST /* Use z_const. Supported by v1.2.5.2 and upper. */
|
||||
# define ZLIB_CONST /* Use z_const. Supported by v1.2.5.2 or greater. */
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
* AIX 4.3 and newer needs _THREAD_SAFE defined to build
|
||||
* AIX 4.3 and greater needs _THREAD_SAFE defined to build
|
||||
* proper reentrant code. Others may also need it.
|
||||
*/
|
||||
#ifdef NEED_THREAD_SAFE
|
||||
|
|
@ -381,7 +381,7 @@
|
|||
/* Override default printf mask check rules in "curl/mprintf.h" */
|
||||
#define CURL_TEMP_PRINTF CURL_PRINTF
|
||||
|
||||
/* Workaround for mainline llvm v16 and earlier missing a built-in macro
|
||||
/* Workaround for mainline llvm v16 and lower missing a built-in macro
|
||||
expected by macOS SDK v14 / Xcode v15 (2023) and newer.
|
||||
gcc (as of v14) is also missing it. */
|
||||
#if defined(__APPLE__) && \
|
||||
|
|
|
|||
|
|
@ -204,7 +204,7 @@ struct Curl_addrinfo *Curl_ipv4_resolve_r(const char *hostname,
|
|||
#elif defined(HAVE_GETHOSTBYNAME_R_3)
|
||||
/* AIX, Digital UNIX/Tru64, HP-UX 10, more? */
|
||||
|
||||
/* For AIX 4.3 or later, we do not use gethostbyname_r() at all, because of
|
||||
/* For AIX 4.3 or greater, we do not use gethostbyname_r() at all, because of
|
||||
* the plain fact that it does not return unique full buffers on each
|
||||
* call, but instead several of the pointers in the hostent structs will
|
||||
* point to the same actual data! This have the unfortunate down-side that
|
||||
|
|
@ -214,7 +214,7 @@ struct Curl_addrinfo *Curl_ipv4_resolve_r(const char *hostname,
|
|||
* the plain old gethostbyname() work fine even for multi-threaded
|
||||
* programs.
|
||||
*
|
||||
* This AIX 4.3 or later detection is all made in the configure script.
|
||||
* This AIX 4.3 or greater detection is all made in the configure script.
|
||||
*
|
||||
* Troels Walsted Hansen helped us work this out on March 3rd, 2003.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2378,7 +2378,7 @@ static CURLcode http_req_set_TE(struct Curl_easy *data,
|
|||
STRCONST("Transfer-Encoding:"), STRCONST("chunked"));
|
||||
if(data->req.upload_chunky && (httpversion >= 20)) {
|
||||
infof(data, "suppressing chunked transfer encoding on connection "
|
||||
"using HTTP version 2 or higher");
|
||||
"using HTTP version 2 or greater");
|
||||
data->req.upload_chunky = FALSE;
|
||||
}
|
||||
}
|
||||
|
|
@ -2388,7 +2388,7 @@ static CURLcode http_req_set_TE(struct Curl_easy *data,
|
|||
if(req_clen < 0) {
|
||||
/* indeterminate request content length */
|
||||
if(httpversion > 10) {
|
||||
/* On HTTP/1.1, enable chunked, on HTTP/2 and later we do not
|
||||
/* On HTTP/1.1, enable chunked, on HTTP/2 or greater we do not
|
||||
* need it */
|
||||
data->req.upload_chunky = (httpversion < 20);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@
|
|||
#ifdef USE_MBEDTLS
|
||||
#include <mbedtls/version.h>
|
||||
#if MBEDTLS_VERSION_NUMBER < 0x03020000
|
||||
#error "mbedTLS 3.2.0 or later required"
|
||||
#error "mbedTLS 3.2.0 or greater required"
|
||||
#endif
|
||||
#include <psa/crypto_config.h>
|
||||
#endif
|
||||
|
|
@ -157,8 +157,8 @@ static void my_md5_final(unsigned char *digest, void *ctx)
|
|||
#include <CommonCrypto/CommonDigest.h>
|
||||
|
||||
/* For Apple operating systems: CommonCrypto has the functions we need.
|
||||
These functions are available on Tiger and later, as well as iOS 2.0
|
||||
and later. If you are building for an older cat, well, sorry.
|
||||
These functions are available on 10.4 (Tiger) or greater, as well as
|
||||
iOS 2.0 or greater. If you are building for an older cat, well, sorry.
|
||||
|
||||
Declaring the functions as static like this seems to be a bit more
|
||||
reliable than defining COMMON_DIGEST_FOR_OPENSSL on older cats. */
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@ static char *vms_getenv(const char *envvar)
|
|||
/* may do a malloc(2048) for each call to getenv(), so you will need */
|
||||
/* to add a free(vms_path) */
|
||||
/* Do not do a free() for DEC C RTL builds, which should be used for */
|
||||
/* VMS 5.5-2 and later, even if using GCC */
|
||||
/* VMS 5.5-2 or greater, even if using GCC */
|
||||
|
||||
return result;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
#ifdef USE_MBEDTLS
|
||||
#include <mbedtls/version.h>
|
||||
#if MBEDTLS_VERSION_NUMBER < 0x03020000
|
||||
#error "mbedTLS 3.2.0 or later required"
|
||||
#error "mbedTLS 3.2.0 or greater required"
|
||||
#endif
|
||||
#include <psa/crypto_config.h>
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -545,7 +545,7 @@ static bool xfer_may_multiplex(const struct Curl_easy *data,
|
|||
|
||||
if(Curl_multiplex_wanted(data->multi) &&
|
||||
(data->state.http_neg.allowed & (CURL_HTTP_V2x | CURL_HTTP_V3x)))
|
||||
/* allows HTTP/2 or newer */
|
||||
/* allows HTTP/2 or greater */
|
||||
return TRUE;
|
||||
}
|
||||
#else
|
||||
|
|
|
|||
|
|
@ -162,7 +162,7 @@ void Curl_auth_gsasl_cleanup(struct gsasldata *gsasl);
|
|||
struct ntlmdata {
|
||||
#ifdef USE_WINDOWS_SSPI
|
||||
/* The sslContext is used for the Schannel bindings. The
|
||||
* api is available on the Windows 7 SDK and later.
|
||||
* api is available on the Windows 7 SDK and newer.
|
||||
*/
|
||||
#ifdef SECPKG_ATTR_ENDPOINT_BINDINGS
|
||||
CtxtHandle *sslContext;
|
||||
|
|
|
|||
|
|
@ -616,7 +616,7 @@ curl_version_info_data *curl_version_info(CURLversion stamp)
|
|||
}
|
||||
#endif
|
||||
#ifdef USE_LIBIDN2
|
||||
/* This returns a version string if we use the given version or later,
|
||||
/* This returns a version string if we use the given version or greater,
|
||||
otherwise it returns NULL */
|
||||
version_info.libidn = idn2_check_version(IDN2_VERSION);
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -3020,8 +3020,8 @@ static CURLcode sftp_send(struct Curl_easy *data, int sockindex,
|
|||
* https://datatracker.ietf.org/doc/html/draft-ietf-secsh-filexfer-02
|
||||
*
|
||||
* libssh started applying appropriate read/write length limits
|
||||
* internally since version 0.11.0, hence such an operation is
|
||||
* not needed for versions after (and including) 0.11.0.
|
||||
* internally in v0.11.0 and greater, hence such an operation is not
|
||||
* needed for these versions.
|
||||
*/
|
||||
if(len > 32768)
|
||||
len = 32768;
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ extern const struct Curl_protocol Curl_protocol_scp;
|
|||
#include <libssh2.h>
|
||||
#include <libssh2_sftp.h>
|
||||
#elif defined(USE_LIBSSH)
|
||||
/* in 0.10.0 or later, ignore deprecated warnings */
|
||||
/* in 0.10.0 or greater, ignore deprecated warnings */
|
||||
#define SSH_SUPPRESS_DEPRECATED
|
||||
#include <libssh/libssh.h>
|
||||
#include <libssh/sftp.h>
|
||||
|
|
@ -220,7 +220,7 @@ struct ssh_conn {
|
|||
|
||||
#ifdef USE_LIBSSH
|
||||
#if LIBSSH_VERSION_INT < SSH_VERSION_INT(0, 9, 0)
|
||||
#error "SCP/SFTP protocols require libssh 0.9.0 or later"
|
||||
#error "SCP/SFTP protocols require libssh 0.9.0 or greater"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
#include <mbedtls/version.h>
|
||||
#if MBEDTLS_VERSION_NUMBER < 0x03020000
|
||||
#error "mbedTLS 3.2.0 or later required"
|
||||
#error "mbedTLS 3.2.0 or greater required"
|
||||
#endif
|
||||
#include <psa/crypto_config.h>
|
||||
#include <mbedtls/net_sockets.h>
|
||||
|
|
|
|||
|
|
@ -87,11 +87,11 @@
|
|||
#ifdef LIBRESSL_VERSION_NUMBER
|
||||
/* As of LibreSSL 2.0.0-4.0.0: OPENSSL_VERSION_NUMBER == 0x20000000L */
|
||||
# if LIBRESSL_VERSION_NUMBER < 0x2090100fL /* 2019-04-13 */
|
||||
# error "LibreSSL 2.9.1 or later required"
|
||||
# error "LibreSSL 2.9.1 or greater required"
|
||||
# endif
|
||||
#elif !defined(HAVE_BORINGSSL_LIKE)
|
||||
# ifndef HAVE_OPENSSL3 /* 2021-09-07 */
|
||||
# error "OpenSSL 3.0.0 or later required"
|
||||
# error "OpenSSL 3.0.0 or greater required"
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
|
@ -2175,7 +2175,7 @@ static CURLcode ossl_verifyhost(struct Curl_easy *data,
|
|||
const ASN1_STRING *tmp =
|
||||
X509_NAME_ENTRY_get_data(X509_NAME_get_entry(name, i));
|
||||
|
||||
/* In OpenSSL 0.9.7d and earlier, ASN1_STRING_to_UTF8 fails if the input
|
||||
/* In OpenSSL 0.9.7d and lower, ASN1_STRING_to_UTF8 fails if the input
|
||||
is already UTF-8 encoded. We check for this case and copy the raw
|
||||
string manually to avoid the problem. This code can be made
|
||||
conditional in the future when OpenSSL has been fixed. */
|
||||
|
|
@ -4148,7 +4148,7 @@ static CURLcode ossl_connect_step2(struct Curl_cfilter *cf,
|
|||
|
||||
#if !defined(HAVE_KEYLOG_UPSTREAM) && !defined(HAVE_KEYLOG_CALLBACK)
|
||||
/* If key logging is enabled, wait for the handshake to complete and then
|
||||
* proceed with logging secrets (for TLS 1.2 or older).
|
||||
* proceed with logging secrets (for TLS 1.2 or lower).
|
||||
*/
|
||||
if(Curl_tls_keylog_enabled() && !octx->keylog_done)
|
||||
ossl_log_tls12_secret(octx->ssl, &octx->keylog_done);
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@
|
|||
#include "urldata.h"
|
||||
|
||||
#if OPENSSL_VERSION_NUMBER >= 0x30000000L
|
||||
#define HAVE_OPENSSL3 /* non-fork OpenSSL 3.x or later */
|
||||
#define HAVE_OPENSSL3 /* non-fork OpenSSL 3.x or greater */
|
||||
#endif
|
||||
|
||||
#if defined(OPENSSL_IS_AWSLC) || defined(OPENSSL_IS_BORINGSSL)
|
||||
|
|
|
|||
|
|
@ -122,7 +122,7 @@
|
|||
/* ALPN requires version 8.1 of the Windows SDK, which was
|
||||
shipped with Visual Studio 2013, aka _MSC_VER 1800:
|
||||
https://learn.microsoft.com/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/hh831771
|
||||
Or mingw-w64 9.0 or upper.
|
||||
Or mingw-w64 9.0 or greater.
|
||||
*/
|
||||
#if (defined(__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR >= 9) || \
|
||||
(defined(_MSC_VER) && (_MSC_VER >= 1800) && !defined(_USING_V110_SDK71_))
|
||||
|
|
@ -167,7 +167,7 @@ static CURLcode schannel_set_ssl_version_min_max(DWORD *enabled_protocols,
|
|||
VERSION_GREATER_THAN_EQUAL)) {
|
||||
ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_3;
|
||||
}
|
||||
else /* Windows 10 and older */
|
||||
else /* Windows 10 or older */
|
||||
ssl_version_max = CURL_SSLVERSION_MAX_TLSv1_2;
|
||||
|
||||
break;
|
||||
|
|
@ -186,14 +186,14 @@ static CURLcode schannel_set_ssl_version_min_max(DWORD *enabled_protocols,
|
|||
break;
|
||||
case CURL_SSLVERSION_TLSv1_3:
|
||||
|
||||
/* Windows Server 2022 and newer */
|
||||
/* Windows Server 2022 or newer */
|
||||
if(curlx_verify_windows_version(10, 0, 20348, PLATFORM_WINNT,
|
||||
VERSION_GREATER_THAN_EQUAL)) {
|
||||
*enabled_protocols |= SP_PROT_TLS1_3_CLIENT;
|
||||
break;
|
||||
}
|
||||
else { /* Windows 10 and older */
|
||||
failf(data, "schannel: TLS 1.3 not supported on Windows prior to 11");
|
||||
else { /* Windows 10 or older */
|
||||
failf(data, "schannel: TLS 1.3 not supported on Windows 10 or older");
|
||||
return CURLE_SSL_CONNECT_ERROR;
|
||||
}
|
||||
}
|
||||
|
|
@ -505,7 +505,7 @@ static CURLcode get_client_cert(struct Curl_cfilter *cf,
|
|||
}
|
||||
|
||||
/* CERT_FIND_HAS_PRIVATE_KEY is only available in Windows 8 / Server
|
||||
2012, (NT v6.2). For earlier versions we use CURL_FIND_ANY. */
|
||||
2012, (NT v6.2). For older versions we use CURL_FIND_ANY. */
|
||||
if(curlx_verify_windows_version(6, 2, 0, PLATFORM_WINNT,
|
||||
VERSION_GREATER_THAN_EQUAL))
|
||||
cert_find_flags = CERT_FIND_HAS_PRIVATE_KEY;
|
||||
|
|
@ -1513,7 +1513,7 @@ static void traverse_cert_store(const CERT_CONTEXT *context,
|
|||
(current_context = CertEnumCertificatesInStore(
|
||||
context->hCertStore,
|
||||
current_context)) != NULL) {
|
||||
/* Windows 11 22H2 OS Build 22621.674 or higher enumerates certificates in
|
||||
/* Windows 11 22H2 OS Build 22621.674 or greater enumerates certificates in
|
||||
leaf-to-root order while all previous versions of Windows enumerate
|
||||
certificates in root-to-leaf order. Determine the order of enumeration
|
||||
by comparing SECPKG_ATTR_REMOTE_CERT_CONTEXT's pbCertContext with the
|
||||
|
|
@ -1746,7 +1746,7 @@ static CURLcode schannel_connect(struct Curl_cfilter *cf,
|
|||
/* When SSPI is used in combination with Schannel
|
||||
* we need the Schannel context to create the Schannel
|
||||
* binding to pass the IIS extended protection checks.
|
||||
* Available on Windows 7 or later.
|
||||
* Available on Windows 7 or newer.
|
||||
*/
|
||||
{
|
||||
struct schannel_ssl_backend_data *backend =
|
||||
|
|
@ -2610,13 +2610,13 @@ static int schannel_init(void)
|
|||
if(p_wine_get_version) { /* WINE detected */
|
||||
curl_off_t ver = 0;
|
||||
const char *wine_version = p_wine_get_version(); /* e.g. "6.0.2" */
|
||||
/* Assume ALPN support with WINE 6.0 or upper */
|
||||
/* Assume ALPN support with WINE 6.0 or greater */
|
||||
if(wine_version)
|
||||
curlx_str_number(&wine_version, &ver, 20);
|
||||
s_win_has_alpn = (ver >= 6);
|
||||
}
|
||||
else {
|
||||
/* ALPN is supported on Windows 8.1 / Server 2012 R2 and above. */
|
||||
/* ALPN is supported on Windows 8.1 / Server 2012 R2 or newer. */
|
||||
s_win_has_alpn = curlx_verify_windows_version(6, 3, 0, PLATFORM_WINNT,
|
||||
VERSION_GREATER_THAN_EQUAL);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,10 +34,10 @@
|
|||
#include <wolfssl/version.h>
|
||||
|
||||
#if LIBWOLFSSL_VERSION_HEX < 0x05000000 /* wolfSSL 5.0.0 (2021-11-01) */
|
||||
#error "wolfSSL version should be at least 5.0.0"
|
||||
#error "wolfSSL version should be 5.0.0 or greater"
|
||||
#endif
|
||||
#if defined(OPENSSL_COEXIST) && LIBWOLFSSL_VERSION_HEX < 0x05007006
|
||||
#error "wolfSSL 5.7.6 or newer is required to coexist with OpenSSL"
|
||||
#error "wolfSSL 5.7.6 or greater is required to coexist with OpenSSL"
|
||||
#endif
|
||||
|
||||
/* To determine what functions are available we rely on one or both of:
|
||||
|
|
@ -93,7 +93,7 @@
|
|||
#else /* HAVE_WOLFSSL_BIO_SET_SHUTDOWN */
|
||||
#undef USE_FULL_BIO
|
||||
#endif
|
||||
/* wolfSSL 5.7.4 and older do not have these symbols, but only the
|
||||
/* wolfSSL 5.7.4 and lower do not have these symbols, but only the
|
||||
* OpenSSL ones. */
|
||||
#ifndef WOLFSSL_BIO_CTRL_GET_CLOSE
|
||||
#define WOLFSSL_BIO_CTRL_GET_CLOSE BIO_CTRL_GET_CLOSE
|
||||
|
|
@ -1729,7 +1729,7 @@ static CURLcode wssl_handshake(struct Curl_cfilter *cf, struct Curl_easy *data)
|
|||
#ifdef OPENSSL_EXTRA
|
||||
if(Curl_tls_keylog_enabled()) {
|
||||
/* If key logging is enabled, wait for the handshake to complete and then
|
||||
* proceed with logging secrets (for TLS 1.2 or older).
|
||||
* proceed with logging secrets (for TLS 1.2 or lower).
|
||||
*
|
||||
* During the handshake (ret==-1), wolfSSL_want_read() is true as it waits
|
||||
* for the server response. At that point the master secret is not yet
|
||||
|
|
|
|||
|
|
@ -174,7 +174,7 @@ dnl -------------------------------------------------
|
|||
dnl Verify if compiler being used is GNU C
|
||||
dnl
|
||||
dnl $compiler_num is set to MAJOR * 100 + MINOR for gcc less than version
|
||||
dnl 7 and $MAJOR * 100 for gcc version 7 and later.
|
||||
dnl 7 and $MAJOR * 100 for gcc version 7 or greater.
|
||||
dnl
|
||||
dnl Examples:
|
||||
dnl Version 1.2.3 => 102
|
||||
|
|
@ -548,7 +548,7 @@ AC_DEFUN([CURL_SET_COMPILER_BASIC_OPTS], [
|
|||
GNU_C)
|
||||
|
||||
dnl turn implicit-function-declaration warning into error,
|
||||
dnl at least gcc 2.95 and later support this
|
||||
dnl at least gcc 2.95 or greater support this
|
||||
if test "$compiler_num" -ge "295"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Werror-implicit-function-declaration"
|
||||
fi
|
||||
|
|
@ -816,12 +816,12 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shorten-64-to-32])
|
||||
|
||||
dnl Only clang 1.1 or later
|
||||
dnl Only clang 1.1 or greater
|
||||
if test "$compiler_num" -ge "101"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused])
|
||||
fi
|
||||
|
||||
dnl Only clang 2.7 or later
|
||||
dnl Only clang 2.7 or greater
|
||||
if test "$compiler_num" -ge "207"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [address])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [attributes])
|
||||
|
|
@ -843,13 +843,13 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unreachable-code unused-parameter])
|
||||
fi
|
||||
|
||||
dnl Only clang 2.8 or later
|
||||
dnl Only clang 2.8 or greater
|
||||
if test "$compiler_num" -ge "208"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [ignored-qualifiers])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [vla])
|
||||
fi
|
||||
|
||||
dnl Only clang 2.9 or later
|
||||
dnl Only clang 2.9 or greater
|
||||
if test "$compiler_num" -ge "209"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-sign-conversion"
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-padded" # Not used because we cannot change public structs
|
||||
|
|
@ -857,20 +857,20 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shift-sign-overflow])
|
||||
fi
|
||||
|
||||
dnl Only clang 3.0 or later
|
||||
dnl Only clang 3.0 or greater
|
||||
if test "$compiler_num" -ge "300"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [conditional-uninitialized])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [language-extension-token])
|
||||
fi
|
||||
|
||||
dnl Only clang 3.1 or later
|
||||
dnl Only clang 3.1 or greater
|
||||
if test "$compiler_num" -ge "301"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [format-non-iso])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-covered-switch-default" # Annoying to fix or silence
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-disabled-macro-expansion" # for std headers, and curl/curl.h (rare combos)
|
||||
fi
|
||||
|
||||
dnl Only clang 3.2 or later
|
||||
dnl Only clang 3.2 or greater
|
||||
if test "$compiler_num" -ge "302"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [enum-conversion])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sometimes-uninitialized])
|
||||
|
|
@ -885,29 +885,29 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
esac
|
||||
fi
|
||||
|
||||
dnl Only clang 3.3 or later
|
||||
dnl Only clang 3.3 or greater
|
||||
if test "$compiler_num" -ge "303"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-documentation-unknown-command"
|
||||
fi
|
||||
|
||||
dnl Only clang 3.4 or later
|
||||
dnl Only clang 3.4 or greater
|
||||
if test "$compiler_num" -ge "304"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [header-guard])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused-const-variable])
|
||||
fi
|
||||
|
||||
dnl Only clang 3.5 or later
|
||||
dnl Only clang 3.5 or greater
|
||||
if test "$compiler_num" -ge "305"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [pragmas])
|
||||
# CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unreachable-code-break]) # Not used: Silent in "unity" builds
|
||||
fi
|
||||
|
||||
dnl Only clang 3.6 or later
|
||||
dnl Only clang 3.6 or greater
|
||||
if test "$compiler_num" -ge "306"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [double-promotion])
|
||||
fi
|
||||
|
||||
dnl Only clang 3.9 or later
|
||||
dnl Only clang 3.9 or greater
|
||||
if test "$compiler_num" -ge "309"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [comma])
|
||||
dnl avoid the varargs warning, fixed in 4.0
|
||||
|
|
@ -917,46 +917,46 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
fi
|
||||
fi
|
||||
|
||||
dnl clang 7 or later
|
||||
dnl clang 7 or greater
|
||||
if test "$compiler_num" -ge "700"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [assign-enum])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [extra-semi-stmt])
|
||||
fi
|
||||
|
||||
dnl clang 10 or later
|
||||
dnl clang 10 or greater
|
||||
if test "$compiler_num" -ge "1000"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wimplicit-fallthrough" # we have silencing markup for clang 10.0 and above only
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wimplicit-fallthrough" # we have silencing markup for clang 10.0 or greater only
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [xor-used-as-pow])
|
||||
fi
|
||||
|
||||
dnl clang 13 or later
|
||||
dnl clang 13 or greater
|
||||
if test "$compiler_num" -ge "1300"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [cast-function-type])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [reserved-identifier]) # Keep it before -Wno-reserved-macro-identifier
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-reserved-macro-identifier" # Sometimes such external macros need to be set
|
||||
fi
|
||||
|
||||
dnl clang 16 or later
|
||||
dnl clang 16 or greater
|
||||
if test "$compiler_num" -ge "1600"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-unsafe-buffer-usage"
|
||||
fi
|
||||
|
||||
dnl clang 17 or later
|
||||
dnl clang 17 or greater
|
||||
if test "$compiler_num" -ge "1700"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [cast-function-type-strict]) # with Apple clang it requires 16.0 or above
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [cast-function-type-strict]) # with Apple clang it requires 16.0 or greater
|
||||
fi
|
||||
|
||||
dnl clang 19 or later
|
||||
dnl clang 19 or greater
|
||||
if test "$compiler_num" -ge "1901"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [format-signedness])
|
||||
fi
|
||||
|
||||
dnl clang 20 or later
|
||||
dnl clang 20 or greater
|
||||
if test "$compiler_num" -ge "2001"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [array-compare])
|
||||
fi
|
||||
|
||||
dnl clang 21 or later
|
||||
dnl clang 21 or greater
|
||||
if test "$compiler_num" -ge "2101"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [c++-hidden-decl])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [implicit-int-enum-cast])
|
||||
|
|
@ -996,8 +996,8 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
dnl Leave disabled for GCC <4.6, because they lack #pragma features to silence locally.
|
||||
if test "$want_warnings" = "yes" && test "$compiler_num" -ge "406"; then
|
||||
|
||||
dnl Do not enable -pedantic when cross-compiling with a gcc older
|
||||
dnl than 3.0, to avoid warnings from third party system headers.
|
||||
dnl Do not enable -pedantic when cross-compiling with gcc 2.x
|
||||
dnl or lower, to avoid warnings from third party system headers.
|
||||
if test "$cross_compiling" != "yes" ||
|
||||
test "$compiler_num" -ge "300"; then
|
||||
if test "$compiler_num" -ge "408"; then
|
||||
|
|
@ -1011,20 +1011,20 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [all])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -W"
|
||||
|
||||
dnl Only gcc 1.4 or later
|
||||
dnl Only gcc 1.4 or greater
|
||||
if test "$compiler_num" -ge "104"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [pointer-arith write-strings])
|
||||
dnl If not cross-compiling with a gcc older than 3.0
|
||||
dnl If not cross-compiling with gcc 2.x or lower
|
||||
if test "$cross_compiling" != "yes" ||
|
||||
test "$compiler_num" -ge "300"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused shadow])
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl Only gcc 2.7 or later
|
||||
dnl Only gcc 2.7 or greater
|
||||
if test "$compiler_num" -ge "207"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [nested-externs])
|
||||
dnl If not cross-compiling with a gcc older than 3.0
|
||||
dnl If not cross-compiling with gcc 2.x or lower
|
||||
if test "$cross_compiling" != "yes" ||
|
||||
test "$compiler_num" -ge "300"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-declarations])
|
||||
|
|
@ -1032,24 +1032,24 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
fi
|
||||
fi
|
||||
|
||||
dnl Only gcc 2.95 or later
|
||||
dnl Only gcc 2.95 or greater
|
||||
if test "$compiler_num" -ge "295"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-long-long"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [bad-function-cast])
|
||||
fi
|
||||
|
||||
dnl Only gcc 2.96 or later
|
||||
dnl Only gcc 2.96 or greater
|
||||
if test "$compiler_num" -ge "296"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [float-equal])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-multichar"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sign-compare])
|
||||
dnl -Wundef used only if gcc is 2.96 or later since we get
|
||||
dnl -Wundef used only if gcc is 2.96 or greater since we get
|
||||
dnl lots of "`_POSIX_C_SOURCE' is not defined" in system
|
||||
dnl headers with gcc 2.95.4 on FreeBSD 4.9
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [undef])
|
||||
fi
|
||||
|
||||
dnl Only gcc 3.0 or later
|
||||
dnl Only gcc 3.0 or greater
|
||||
if test "$compiler_num" -ge "300"; then
|
||||
dnl -Wunreachable-code seems totally unreliable on my gcc 3.3.2 on
|
||||
dnl on i686-Linux as it gives us heaps with false positives.
|
||||
|
|
@ -1058,24 +1058,24 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
tmp_CFLAGS="$tmp_CFLAGS"
|
||||
fi
|
||||
|
||||
dnl Only gcc 3.3 or later
|
||||
dnl Only gcc 3.3 or greater
|
||||
if test "$compiler_num" -ge "303"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [endif-labels strict-prototypes])
|
||||
fi
|
||||
|
||||
dnl Only gcc 3.4 or later
|
||||
dnl Only gcc 3.4 or greater
|
||||
if test "$compiler_num" -ge "304"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [declaration-after-statement])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [old-style-definition])
|
||||
fi
|
||||
|
||||
dnl Only gcc 4.0 or later
|
||||
dnl Only gcc 4.0 or greater
|
||||
if test "$compiler_num" -ge "400"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [cast-qual])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wstrict-aliasing=3"
|
||||
fi
|
||||
|
||||
dnl Only gcc 4.1 or later
|
||||
dnl Only gcc 4.1 or greater
|
||||
if test "$compiler_num" -ge "401"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [attributes])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [div-by-zero format-security])
|
||||
|
|
@ -1097,12 +1097,12 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
# tmp_CFLAGS="$tmp_CFLAGS -Wno-error=unused-macros"
|
||||
fi
|
||||
|
||||
dnl Only gcc 4.2 or later
|
||||
dnl Only gcc 4.2 or greater
|
||||
if test "$compiler_num" -ge "402"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [cast-align])
|
||||
fi
|
||||
|
||||
dnl Only gcc 4.3 or later
|
||||
dnl Only gcc 4.3 or greater
|
||||
if test "$compiler_num" -ge "403"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [address])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [type-limits old-style-declaration])
|
||||
|
|
@ -1115,12 +1115,12 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
tmp_CFLAGS="$tmp_CFLAGS -ftree-vrp"
|
||||
fi
|
||||
|
||||
dnl Only gcc 4.4 or later
|
||||
dnl Only gcc 4.4 or greater
|
||||
if test "$compiler_num" -ge "404"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [logical-op])
|
||||
fi
|
||||
|
||||
dnl Only gcc 4.5 or later
|
||||
dnl Only gcc 4.5 or greater
|
||||
if test "$compiler_num" -ge "405"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [jump-misses-init])
|
||||
dnl Only Windows targets
|
||||
|
|
@ -1135,24 +1135,24 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
esac
|
||||
fi
|
||||
|
||||
dnl Only gcc 4.6 or later
|
||||
dnl Only gcc 4.6 or greater
|
||||
if test "$compiler_num" -ge "406"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [double-promotion])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [trampolines])
|
||||
fi
|
||||
|
||||
dnl only gcc 4.8 or later
|
||||
dnl only gcc 4.8 or greater
|
||||
if test "$compiler_num" -ge "408"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wformat=2"
|
||||
fi
|
||||
|
||||
dnl Only gcc 5 or later
|
||||
dnl Only gcc 5 or greater
|
||||
if test "$compiler_num" -ge "500"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Warray-bounds=2"
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [format-signedness])
|
||||
fi
|
||||
|
||||
dnl Only gcc 6 or later
|
||||
dnl Only gcc 6 or greater
|
||||
if test "$compiler_num" -ge "600"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shift-negative-value])
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wshift-overflow=2"
|
||||
|
|
@ -1162,7 +1162,7 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused-const-variable])
|
||||
fi
|
||||
|
||||
dnl Only gcc 7 or later
|
||||
dnl Only gcc 7 or greater
|
||||
if test "$compiler_num" -ge "700"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [duplicated-branches])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [restrict])
|
||||
|
|
@ -1171,24 +1171,24 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
tmp_CFLAGS="$tmp_CFLAGS -Wimplicit-fallthrough"
|
||||
fi
|
||||
|
||||
dnl Only gcc 10 or later
|
||||
dnl Only gcc 10 or greater
|
||||
if test "$compiler_num" -ge "1000"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [arith-conversion])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [enum-conversion])
|
||||
fi
|
||||
|
||||
dnl Only gcc 12 or later
|
||||
dnl Only gcc 12 or greater
|
||||
if test "$compiler_num" -ge "1200"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [array-compare])
|
||||
fi
|
||||
|
||||
dnl Only gcc 13 or later
|
||||
dnl Only gcc 13 or greater
|
||||
if test "$compiler_num" -ge "1300"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [enum-int-mismatch])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [xor-used-as-pow])
|
||||
fi
|
||||
|
||||
dnl Only gcc 15 or later
|
||||
dnl Only gcc 15 or greater
|
||||
if test "$compiler_num" -ge "1500"; then
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [leading-whitespace=spaces])
|
||||
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [trailing-whitespace=any])
|
||||
|
|
@ -1200,15 +1200,15 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
|
|||
if test "$compiler_num" -ge "300"; then
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-system-headers"
|
||||
else
|
||||
dnl When cross-compiling with a gcc older than 3.0, disable
|
||||
dnl When cross-compiling with gcc 2.x or lower, disable
|
||||
dnl some warnings triggered on third party system headers.
|
||||
if test "$cross_compiling" = "yes"; then
|
||||
if test "$compiler_num" -ge "104"; then
|
||||
dnl gcc 1.4 or later
|
||||
dnl gcc 1.4 or greater
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-unused -Wno-shadow"
|
||||
fi
|
||||
if test "$compiler_num" -ge "207"; then
|
||||
dnl gcc 2.7 or later
|
||||
dnl gcc 2.7 or greater
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-declarations"
|
||||
tmp_CFLAGS="$tmp_CFLAGS -Wno-missing-prototypes"
|
||||
fi
|
||||
|
|
@ -1508,7 +1508,7 @@ AC_DEFUN([CURL_CHECK_COMPILER_SYMBOL_HIDING], [
|
|||
supports_symbol_hiding="yes"
|
||||
;;
|
||||
GNU_C)
|
||||
dnl Only gcc 3.4 or later
|
||||
dnl Only gcc 3.4 or greater
|
||||
if test "$compiler_num" -ge "304"; then
|
||||
if $CC --help --verbose 2>/dev/null | grep fvisibility= >/dev/null; then
|
||||
tmp_EXTERN="__attribute__((__visibility__(\"default\")))"
|
||||
|
|
@ -1518,7 +1518,7 @@ AC_DEFUN([CURL_CHECK_COMPILER_SYMBOL_HIDING], [
|
|||
fi
|
||||
;;
|
||||
INTEL_UNIX_C)
|
||||
dnl Only icc 9.0 or later
|
||||
dnl Only icc 9.0 or greater
|
||||
if test "$compiler_num" -ge "900"; then
|
||||
if $CC --help --verbose 2>&1 | grep fvisibility= > /dev/null; then
|
||||
tmp_save_CFLAGS="$CFLAGS"
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#***************************************************************************
|
||||
,#***************************************************************************
|
||||
# _ _ ____ _
|
||||
# Project ___| | | | _ \| |
|
||||
# / __| | | | |_) | |
|
||||
|
|
@ -441,7 +441,7 @@ AC_DEFUN([CURL_CHECK_LIB_ARES], [
|
|||
LDFLAGSPC="$clean_LDFLAGSPC $ares_LDFLAGS"
|
||||
LIBS="$ares_LIBS $clean_LIBS"
|
||||
|
||||
dnl check if c-ares new enough, 1.16.0 or newer
|
||||
dnl check if c-ares new enough, 1.16.0 or greater
|
||||
AC_CHECK_FUNC([ares_getaddrinfo],
|
||||
[
|
||||
],[
|
||||
|
|
|
|||
|
|
@ -1330,36 +1330,36 @@ AC_DEFUN([CURL_CHECK_FUNC_GETADDRINFO], [
|
|||
if test "$curl_cv_func_getaddrinfo" = "yes"; then
|
||||
AC_MSG_CHECKING([if getaddrinfo is thread-safe])
|
||||
if test "$curl_cv_apple" = "yes"; then
|
||||
dnl Darwin 6.0 and macOS 10.2.X and newer
|
||||
dnl Darwin 6.0 and macOS 10.2.x or greater
|
||||
tst_tsafe_getaddrinfo="yes"
|
||||
fi
|
||||
case $host_os in
|
||||
aix[[1234]].* | aix5.[[01]].*)
|
||||
dnl AIX 5.1 and older
|
||||
dnl AIX 5.1 or lower
|
||||
tst_tsafe_getaddrinfo="no"
|
||||
;;
|
||||
aix*)
|
||||
dnl AIX 5.2 and newer
|
||||
dnl AIX 5.2 or greater
|
||||
tst_tsafe_getaddrinfo="yes"
|
||||
;;
|
||||
darwin[[12345]].*)
|
||||
dnl Darwin 5.0 and macOS 10.1.X and older
|
||||
dnl Darwin 5.0 and macOS 10.1.x or lower
|
||||
tst_tsafe_getaddrinfo="no"
|
||||
;;
|
||||
freebsd[[1234]].* | freebsd5.[[1234]]*)
|
||||
dnl FreeBSD 5.4 and older
|
||||
dnl FreeBSD 5.4 or lower
|
||||
tst_tsafe_getaddrinfo="no"
|
||||
;;
|
||||
freebsd*)
|
||||
dnl FreeBSD 5.5 and newer
|
||||
dnl FreeBSD 5.5 or greater
|
||||
tst_tsafe_getaddrinfo="yes"
|
||||
;;
|
||||
hpux[[123456789]].* | hpux10.* | hpux11.0* | hpux11.10*)
|
||||
dnl HP-UX 11.10 and older
|
||||
dnl HP-UX 11.10 or lower
|
||||
tst_tsafe_getaddrinfo="no"
|
||||
;;
|
||||
hpux*)
|
||||
dnl HP-UX 11.11 and newer
|
||||
dnl HP-UX 11.11 or greater
|
||||
tst_tsafe_getaddrinfo="yes"
|
||||
;;
|
||||
midnightbsd*)
|
||||
|
|
@ -1367,11 +1367,11 @@ AC_DEFUN([CURL_CHECK_FUNC_GETADDRINFO], [
|
|||
tst_tsafe_getaddrinfo="yes"
|
||||
;;
|
||||
netbsd[[123]].*)
|
||||
dnl NetBSD 3.X and older
|
||||
dnl NetBSD 3.x or lower
|
||||
tst_tsafe_getaddrinfo="no"
|
||||
;;
|
||||
netbsd*)
|
||||
dnl NetBSD 4.X and newer
|
||||
dnl NetBSD 4.x or greater
|
||||
tst_tsafe_getaddrinfo="yes"
|
||||
;;
|
||||
*bsd*)
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue