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

#27 in #friendly

Download history 51/week @ 2024-01-17 43/week @ 2024-01-24 62/week @ 2024-01-31 48/week @ 2024-02-07 66/week @ 2024-02-14 81/week @ 2024-02-21 79/week @ 2024-02-28 73/week @ 2024-03-06 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 73/week @ 2024-05-01

284 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

~27MB
~590K SLoC