curl and libcurl 8.9.1

curl and libcurl is a tool for transferring files using URL syntax. It supports HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP, POP3, IMAP, SMTP, RTSP, RTMP, and FILE, as well as HTTP-post, HTTP-put, cookies, FTP upload, resumed transfers, passwords, port numbers, SSL certificates, Kerberos, and proxies. It is powered by libcurl, the client-side URL transfer library. There are bindings to libcurl for about 40 languages and environments.

Tags internet web ftp software-development libraries networking curl
License MITL
State initial

Recent Releases

8.9.102 Sep 2024 15:05 minor bugfix: 8.9.1 8.9.1 8.9.1 only . : . cmake: detect `libssh` via `pkg-config`. cmake: detect `nettle` when building with GnuTLS. cmake: drop `if(PKG_CONFIG_FOUND)` guard for `pkg_check_modules()`. configure: limit `__builtin_available` test to Darwin. connect: connection shutdown for event based processing. contrithanks.sh: use -F with -v to match lines as strings. curl: more defensive socket code for --ip-tos. CURLOPT_SSL_CTX_FUNCTION.md: mention CA caching. CURLSHOPT_SHARE.md: mention sessions/cookies as not thread-safe. example/multi-uv: remove the use of globals. ftpserver.pl: make POP3 LIST serve content from the test file. GHA/windows: increase timeout for vcpkg build step. lib: survive some NULL input args. macos: Apple SDK workaround for non-macOS targets. misc: cleanup after removing years from copyright. os400: build cli manual.. os400: workaround an IBM ASCII run-time library . RELEASE-PROCEDURE.md: remove the initial build step. runtests: fold timing details with GHA, sync `-r` tflags. tests: provide FTP directory contents in the test file. tidy-up: URL updates. TODO: thread-safe sharing. transfer: speed limiting for 32bit systems. vtls: avoid forward declaration in MultiSSL builds. wolfSSL: allow wolfSSL apos;s implementation of kyber to be used. wolfssl: avoid calling get_cached_x509_store if store is uncachable. wolfssl: CA store share . x509asn1: unittests and for gtime2str. . . .
8.9.013 Aug 2024 06:25 major bugfix: 8.9.0 8.9.0 8.9.0 only . Changes: . curl: add --ip-tos (IP Type of Service / Traffic Class). curl: add --mptcp. curl: add --vlan-priority. curl: add -w apos; num_retries apos;. gnutls: support CA caching. mbedtls: support CURLOPT_CERTINFO. noproxy: patterns need to be comma separated. socket: support binding to interface *AND IP. tcpkeepalive: add CURLOPT_TCP_KEEPCNT and --keepalive-cnt. urlapi: add CURLU_NO_GUESS_SCHEME. wolfssl: support CA caching. . : . (lib)curl.rc: set deflag also for `CURLDE` and `UNITTESTS`. asyn-thread: avoid using GetAddrInfoExW with impersonation. aws-sigv4: url encode the canonical path. BINDINGS: update java link to one that exists. build: add De, TrackMemory, ECH to feature list. build: add more supported attributes to the IAR compiler. build: llvm 16 or older + Xcode 15 or newer, and gcc. build: llvm 17 and older + macOS SDK 14.4 and newer. build: sync warning options between autotools, cmake compilers. build: tidy up `__builtin_available` feature checks (Apple). build: untangle `CURLDE` and `DEBUILD` macros. build: use `#error` instead of invalid syntax. cd2nroff: convert two warnings to errors. cd2nroff: use an empty quot;## quot; to signal end of.IP sequence. cf-socket: improve SO_SNDBUF update for Winsock. cf-socket: optimize curlx_nonblock() and check its return error. cf-socket: remove obsolete recvbuf. cf-socket: remove two quot;useless quot; assignments. cfilters: make Curl_conn_connect always assign apos;done apos;. cmake: add CURL_USE_GSASL option with detection + CI test. cmake: allow `ENABLE_CURLDE=OFF` with `ENABLE_DE=ON`. cmake: allow SOVERSION override with `CURL_LIBCURL_SOVERSION`. cmake: alpha-sort feature list. cmake: always build unit tests with the `testdeps` target. cmake: bring `curl-config.cmake` r to `FindCURL`. cmake: create `configurehelp.pm` like autotools does. cmake: delete unused `HAVE_LIBSSH2`, `HAVE_LIBSOCKET` macros. cmake: detect `libidn2` also via
8.8.023 May 2024 15:45 major bugfix: . 8.8.0. Changes: . curl_version_info: provide librtmp version. file: add support for directory listings. idn: add native AppleIDN (icucore) support for macOS/iOS. lib: add curl_multi_waitfds. mbedTLS: implement CURLOPT_SSL_CIPHER_LIST option. NTLM_WB: drop support. TLS: add support for ECH (Encrypted Client Hello). urlapi: add CURLU_GET_EMPTY for empty queries and fragments. . : . appveyor: drop unnecessary `--clean-first` cmake option. appveyor: guard against crash-build with VS2008. appveyor: make gcc 6 mingw64 job build-only. asyn-thread: curl_global_cleanup crash in Windows. asyn-thread: Curl_thread_create result check. autotools: delete unused functions. autotools: `HAVE_IOCTLSOCKET_FIONBIO` test for gcc 14. autotools: only probe for SGI MIPS compilers on IRIX. bearssl: compiler warnings. bearssl: use common code for cipher suite lookup. bufq: remove duplicate word in comment. -BOUNTY.md: clarify the third party situation. build: prefer `USE_IPV6` macro internally (was: `ENABLE_IPV6`). build: remove MacOSX-Framework script. cd2nroff/manage: use UTC when SOURCE_DATE_EPOCH is set. cf-https-connect: use timeouts as unsigned ints. cf-socket: don apos;t try getting local IP without socket. cf-socket: remove references to l_ip, l_port. ci: add curl-for-win builds: Linux MUSL, macOS, Windows. cmake: add `BUILD_EXAMPLES` option to build examples. cmake: add librtmp/rtmpdump option and detection. cmake: check fseeko after detecting HAVE_FILE_OFFSET_BITS. cmake: do not pass linker flags to the static library tool. cmake: enable `-pedantic-errors` for clang when `CURL_WERROR=ON`. cmake: FindNGHTTP2 add static lib name to find_library call. cmake: `CURL_WERROR=ON` for old CMake and use it in GHA/linux-old. cmake: `HAVE_IOCTLSOCKET_FIONBIO` test with gcc 14. cmake: up `DEPENDS` filename. cmake: forward `USE_LIBRTMP` option to C. cmake: generate misc manpages and install `mk-ca-bundle.pl`. cmake: initialize `BUILD_TESTING` befor
8.7.129 Mar 2024 01:45 minor bugfix: . 8.7.1. : . empty tool_hugehelp.c file. . . .
8.6.001 Feb 2024 21:25 major bugfix: . 8.6.0. Changes: . add CURLE_TOO_LARGE. add CURLINFO_QUEUE_TIME_T. add CURLOPT_SERVER_RESPONSE_TIMEOUT_MS: add. asyn-thread: use GetAddrInfoExW on gt;= Windows 8. configure: make libpsl detection failure cause error. docs/cmdline: change to.md for cmdline docs. docs: introduce quot;curldown quot; for libcurl man page format. runtests: support -gl. Like -g but for lldb.. . : . altsvc: free apos;as apos; when returning error. appveyor: replace PowerShell with bash + parallel autotools. appveyor: switch to out-of-tree builds. asyn-ares: with modern c-ares, use its default timeout. build: delete unused `HAVE_ GSSHEIMDAL,GSSMIT,HEIMDAL `. build: delete/replace clang warning pragmas. build: enable missing OpenSSF-recommended warnings, with . build: `-Wconversion`/`-Wsign-conversion` warnings. build: Windows ADDRESS_FAMILY detection. build: more `-Wformat` . build: remove redundant `CURL_PULL_*` settings. cf-h1-proxy: no CURLOPT_USERAGENT in CONNECT with hyper. cf-socket: show errno in tcpkeepalive error messages. CI/distcheck: run full tests. cmake: add option to disable building docs. cmake: generation for system name iOS. cmake: typo. cmake: freshen up docs/INSTALL.cmake. cmake: prefill/cache `HAVE_STRUCT_SOCKADDR_STORAGE`. cmake: rework options to enable curl and libcurl docs. cmake: when USE_MANUAL=YES, build the curl.1 man page. cmdline-opts/write-out.d: remove spurious double quotes. cmdline-opts: update availability for the *-ca-native options. cmdline/gen: the sorting of the man page options. configure: add libngtcp2_crypto_boringssl detection. configure: no default int compile error in ipv6 detection. configure: when enabling QUIC, check that TLS supports QUIC. connect: remove margin from eyeballer alloc. content_encoding: change return code to typedef apos;ed enum. cookie.d: document use of empty string to enable cookie engine. cookie: avoid fopen with empty file name. curl.h: CURLOPT_DNS_SERVERS is only availab
7.65.027 May 2019 19:31 major bugfix:
7.63.005 Feb 2019 16:58 major bugfix:
7.40.009 Jan 2015 06:45 major feature: http_digest: Added support for Windows SSPI based authentication. version info: Added Kerberos V5 to the supported features. Makefile: Added VC targets for WinIDN. config-win32: Introduce build targets for VS2012+. SSL: Add PEM format support for public key pinning. smtp: Added support for the conversion of Unix newlines during mail send. smb: Added initial support for the SMB/CIFS protocol. Added support for HTTP over unix domain sockets, via CURLOPT_UNIX_SOCKET_PATH and --unix-socket. SASL: Added support for GSS-API based Kerberos V5 authentication .
7.38.011 Sep 2014 16:44 minor feature: Various bug and two security fixes for cookie leaks were applied. CURLE_HTTP2 is a new error code. CURLAUTH_NEGOTIATE is a new auth define. CURL_VERSION_GSSAPI is a new capability bit. No longer use fbopenssl for anything. schannel: use CryptGenRandom for random numbers. axtls: define curlssl_random using axTLS's PRNG. cyassl: use RNG_GenerateBlock to generate a good random number. findprotocol: show unsupported protocol within quotes. version: detect and show LibreSSL. version: detect and show BoringSSL. imap/pop3/smtp: Kerberos (SASL GSSAPI) authentication via Windows SSPI. http2: requires nghttp2 0.6.0 or later.
7.37.121 Jul 2014 21:13 minor feature: bits.close: introduce connection close tracking. darwinssl: Add support for --cacert. polarssl: add ALPN support. docs: Added new option man pages.