24 releases (15 breaking)

0.16.0 Sep 25, 2020
0.15.2 Mar 23, 2020
0.14.0 Jan 27, 2020
0.13.0 Oct 26, 2019
0.5.0 Nov 29, 2018

#29 in #friendly

Download history 73/week @ 2024-03-13 71/week @ 2024-03-20 79/week @ 2024-03-27 78/week @ 2024-04-03 61/week @ 2024-04-10 64/week @ 2024-04-17 79/week @ 2024-04-24 89/week @ 2024-05-01 66/week @ 2024-05-08 63/week @ 2024-05-15 68/week @ 2024-05-22 73/week @ 2024-05-29 73/week @ 2024-06-05 70/week @ 2024-06-12 43/week @ 2024-06-19 39/week @ 2024-06-26

235 downloads per month
Used in 2 crates

LGPL-3.0

48KB
1K SLoC

chrootable-https Build Status crates.io docs.rs

If you ever tried chrooting an https client into an empty folder you probably ran into two problems:

  • /etc/resolv.conf doesn't exist in an empty folder
  • ca-certificates doesn't exist in an empty folder

This crate is working around those issues by using:

  • trust-dns so the recursor can be specified expliticly
  • rustls and webpki-roots to avoid loading certificates from disk

We're also trying to avoid C dependencies and stick to safe rust as much as possible.

Examples

extern crate chrootable_https;
use chrootable_https::{Resolver, Client};

let resolver = Resolver::cloudflare();
let client = Client::new(resolver);

let reply = client.get("https://httpbin.org/anything").expect("request failed");
println!("{:#?}", reply);

License

LGPL-3+

Dependencies

~26MB
~564K SLoC