40 releases (26 breaking)

0.28.0 Mar 3, 2025
0.26.0 Jan 7, 2025
0.25.0 Dec 2, 2024
0.24.0 Oct 31, 2024
0.0.0 Jun 24, 2021

#1073 in Network programming

Download history 1723/week @ 2024-11-23 2148/week @ 2024-11-30 2435/week @ 2024-12-07 2295/week @ 2024-12-14 746/week @ 2024-12-21 904/week @ 2024-12-28 1475/week @ 2025-01-04 1732/week @ 2025-01-11 1273/week @ 2025-01-18 1356/week @ 2025-01-25 1393/week @ 2025-02-01 2844/week @ 2025-02-08 1352/week @ 2025-02-15 1308/week @ 2025-02-22 1569/week @ 2025-03-01 1206/week @ 2025-03-08

5,606 downloads per month
Used in 41 crates (4 directly)

MIT/Apache and maybe LGPL-3.0-only

3MB
48K SLoC

tor-dirclient

Implements a minimal directory client for Tor.

Overview

Tor makes its directory requests as HTTP/1.0 requests tunneled over Tor circuits. For most objects, Tor uses a one-hop tunnel. Tor also uses a few strange and ad-hoc HTTP headers to select particular functionality, such as asking for diffs, compression, or multiple documents.

This crate provides an API for downloading Tor directory resources over a Tor circuit.

This crate is part of Arti, a project to implement Tor in Rust.

Features

xz -- enable XZ compression. This can be expensive in RAM and CPU, but it saves a lot of bandwidth. (On by default.)

zstd -- enable ZSTD compression. (On by default.)

routerdesc -- Add support for downloading router descriptors.

License: MIT OR Apache-2.0


lib.rs:

Dependencies

~27–39MB
~619K SLoC