2021-03-16 20:09:47 -04:00
|
|
|
# Rustls
|
|
|
|
|
|
|
|
[Rustls is a TLS backend written in Rust.](https://docs.rs/rustls/). Curl can
|
|
|
|
be built to use it as an alternative to OpenSSL or other TLS backends. We use
|
|
|
|
the [crustls C bindings](https://github.com/abetterinternet/crustls/). This
|
2021-05-14 21:45:49 -04:00
|
|
|
version of curl depends on version v0.6.0 of crustls.
|
2021-03-16 20:09:47 -04:00
|
|
|
|
|
|
|
# Building with rustls
|
|
|
|
|
|
|
|
First, [install Rust](https://rustup.rs/).
|
|
|
|
|
|
|
|
Next, check out, build, and install the appropriate version of crustls:
|
|
|
|
|
|
|
|
% cargo install cbindgen
|
2021-05-14 21:45:49 -04:00
|
|
|
% git clone https://github.com/abetterinternet/crustls/ -b v0.6.0
|
2021-03-16 20:09:47 -04:00
|
|
|
% cd crustls
|
|
|
|
% make
|
|
|
|
% make DESTDIR=${HOME}/crustls-built/ install
|
|
|
|
|
|
|
|
Now configure and build curl with rustls:
|
|
|
|
|
|
|
|
% git clone https://github.com/curl/curl
|
|
|
|
% cd curl
|
|
|
|
% ./buildconf
|
|
|
|
% ./configure --without-ssl --with-rustls=${HOME}/crustls-built
|
|
|
|
% make
|