Rustls
Rustls is a TLS backend written in Rust. curl can be built to use it as an alternative to OpenSSL or other TLS backends. We use the rustls-ffi C bindings. This version of curl is compatible with rustls-ffi
v0.15.x.
Getting rustls-ffi
To build curl
with rustls
support you need to have rustls-ffi
available first. There are three options for this:
Install it from your package manager, if available.
Download pre-built binaries.
Build it from source.
Installing rustls-ffi from a package manager
See the rustls-ffi README for packaging status. Availability and details for installation differ between distributions.
Once installed, build curl
using --with-rustls
.
Downloading pre-built rustls-ffi binaries
Pre-built binaries are available on the releases page on GitHub for releases since 0.15.0. Download the appropriate archive for your platform and extract it to a directory of your choice (e.g. ${HOME}/rustls-ffi-built
).
Once downloaded, build curl
using --with-rustls
and the path to the extracted binaries.
Building rustls-ffi from source
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.
To install cargo-c
, use your package manager, download a pre-built archive, or build it from source with cargo install cargo-c
.
Next, check out, build, and install the appropriate version of rustls-ffi
using cargo
:
Now configure and build curl
using --with-rustls
:
See the rustls-ffi README for more information on cryptography providers and their build/platform requirements.