curl/lib/vtls
Jacob Hoffman-Andrews 246399a874
vtls: initial implementation of rustls backend
This adds a new TLS backend, rustls. It uses the C-to-rustls bindings
from https://github.com/abetterinternet/crustls.

Rustls is at https://github.com/ctz/rustls/.

There is still a fair bit to be done, like sending CloseNotify on
connection shutdown, respecting CAPATH, and properly indicating features
like "supports TLS 1.3 ciphersuites." But it works well enough to make
requests and receive responses.

Blog post for context:
https://www.abetterinternet.org/post/memory-safe-curl/

Closes #6350
2021-02-09 11:06:18 +01:00
..
bearssl.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
bearssl.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00
gskit.c gskit: correct the gskit_send() prototype 2021-02-05 08:43:32 +01:00
gskit.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00
gtls.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
gtls.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00
keylog.c curl.se: new home 2020-11-04 23:59:47 +01:00
keylog.h curl.se: new home 2020-11-04 23:59:47 +01:00
mbedtls_threadlock.c curl.se: new home 2020-11-04 23:59:47 +01:00
mbedtls_threadlock.h curl.se: new home 2020-11-04 23:59:47 +01:00
mbedtls.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
mbedtls.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00
mesalink.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
mesalink.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00
nss.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
nssg.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00
openssl.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
openssl.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00
rustls.c vtls: initial implementation of rustls backend 2021-02-09 11:06:18 +01:00
rustls.h vtls: initial implementation of rustls backend 2021-02-09 11:06:18 +01:00
schannel_verify.c vtls: reduce conn->data use 2021-01-19 09:14:40 +01:00
schannel.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
schannel.h vtls: reduce conn->data use 2021-01-19 09:14:40 +01:00
sectransp.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
sectransp.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00
vtls.c vtls: initial implementation of rustls backend 2021-02-09 11:06:18 +01:00
vtls.h vtls: initial implementation of rustls backend 2021-02-09 11:06:18 +01:00
wolfssl.c vtls: factor out Curl_ssl_getsock to field of Curl_ssl 2021-02-08 14:10:55 +01:00
wolfssl.h copyright: fix year ranges 2020-11-05 08:22:10 +01:00