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

#31 in #resolver

Download history 48/week @ 2023-12-08 47/week @ 2023-12-15 43/week @ 2023-12-22 35/week @ 2023-12-29 58/week @ 2024-01-05 38/week @ 2024-01-12 57/week @ 2024-01-19 54/week @ 2024-01-26 46/week @ 2024-02-02 59/week @ 2024-02-09 74/week @ 2024-02-16 81/week @ 2024-02-23 65/week @ 2024-03-01 78/week @ 2024-03-08 73/week @ 2024-03-15 69/week @ 2024-03-22

302 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
~596K SLoC