libcurl libcurl is a client-side URL transfer
library that powers curl.. Advanced name-resolution features include
DNS-over-HTTPS, custom
DNS servers, host/port mappings, and DNS caching. Additional functionality includes file transfer resume,
FTP uploading, form-based
HTTP upload,
HTTPS certificates, and mechanisms for controlling and monitoring transfers such as configurable timeouts, automatic retries, rate limiting, and detection of stalled connections. The library also provides enhanced reporting features, including JSON-formatted metadata, content-disposition handling,
IDN hostname display, and customizable transfer information. The libcurl library is portable, as it builds and works identically on most platforms, including: The libcurl library supports
SSL/TLS through
GnuTLS,
mbedTLS,
SChannel (on Windows),
OpenSSL,
BoringSSL,
AWS-LC,
QuicTLS,
LibreSSL,
AmiSSL,
wolfSSL and .
curl curl is a command-line tool for getting or sending data, including files, using
URL syntax. curl provides an interface to the libcurl library; it supports every protocol libcurl supports. curl supports
HTTPS, and performs SSL or TLS certificate verification by default. When curl connects to a remote server via HTTPS, it will obtain the remote server certificate, then checks against its
CA certificate store the validity of the remote server to ensure the remote server is the one it claims to be. Some curl packages are bundled with a CA certificate store file. There are several options to specify a CA certificate, such as --cacert and --capath. The --cacert option can be used to specify the location of the CA certificate store file. Starting with Windows 10 version 1809, Windows ships with curl.exe. On Microsoft Windows, if a CA certificate file is not specified, curl will look for the curl-ca-bundle.crt file in the following locations, in the order given: • App's folder (where curl.exe is located) • Current working directory • C:\Windows\System32 directory • C:\Windows directory • Directories specified in the
PATH environment variable curl will return an error message if the remote server is using a self-signed certificate, or if the remote server certificate is not signed by a CA listed in the CA cert file. -k or --insecure option can be used to skip certificate verification. Alternatively, if the remote server is trusted, the remote server CA certificate can be added to the CA certificate store file.
tiny-curl tiny-curl is a lightweight version of libcurl developed by wolfSSL Inc. for embedded and resource-constrained devices. It implements HTTPS functionality in roughly 100 KB of code on typical 32-bit architectures. ==Licensing==