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

#19 in #friendly

Download history 50/week @ 2024-07-20 131/week @ 2024-07-27 56/week @ 2024-08-03 36/week @ 2024-08-10 38/week @ 2024-08-17 24/week @ 2024-08-24 51/week @ 2024-08-31 56/week @ 2024-09-07 94/week @ 2024-09-14 94/week @ 2024-09-21 40/week @ 2024-09-28 31/week @ 2024-10-05 42/week @ 2024-10-12 17/week @ 2024-10-19 16/week @ 2024-10-26 45/week @ 2024-11-02

124 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

~29MB
~606K SLoC