1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
[package]
name = "tor-dirserver"
version = "0.45.0"
authors = ["The Tor Project, Inc.", "Clara Engler <[email protected]>"]
edition = "2024"
rust-version = "1.91"
license = "MIT OR Apache-2.0"
homepage = "https://gitlab.torproject.org/tpo/core/arti/-/wikis/home"
description = "Implements dirserver functionality"
keywords = ["tor", "arti"]
# We must put *something* here and this will do
categories = ["network-programming"]
repository = "https://gitlab.torproject.org/tpo/core/arti.git/"
[features]
full = [
"tor-error/full",
"tor-basic-utils/full",
"tor-dircommon/full",
"tor-netdoc/full",
"retry-error/full",
"tor-dirclient/full",
"tor-rtcompat/full",
"tor-llcrypto/full",
"tor-checkable/full",
]
experimental = ["dir-plugin-backend"]
dir-plugin-backend = ["__is_experimental"]
__is_experimental = []
[dependencies]
bytes = "1.10.1"
digest = "0.10.7"
flate2 = "1.1.5"
futures = "0.3.31"
hex = "0.4.3"
http = "1.3.1"
http-body = "1.0.1"
http-body-util = "0.1.3"
hyper = { version = "1.7.0", default-features = false, features = ["server", "http1"] }
hyper-util = { version = "0.1.16", features = ["full"] }
lzma-rs = "0.3.0"
r2d2 = "0.8.10"
# NOTE: See the note for `rusqlite` in `../tor-dirmgr/Cargo.toml`.
r2d2_sqlite = ">=0.29.0, <0.34.0"
rand = "0.10.1"
retry-error = { version = "0.13.0", path = "../retry-error" }
# NOTE: See the note for `rusqlite` in `../tor-dirmgr/Cargo.toml`.
rusqlite = ">=0.36.0, <0.40.0"
saturating-time = "0.4.0"
strum = { version = "0.28.0", features = ["derive"] }
thiserror = "2.0.16"
tokio = { version = "1.47.1", features = ["full", "test-util"] }
tokio-util = { version = "0.7.16", features = ["compat"] }
tor-basic-utils = { version = "0.45.0", path = "../tor-basic-utils" }
tor-checkable = { path = "../tor-checkable", version = "0.45.0" }
tor-dirclient = { version = "0.45.0", path = "../tor-dirclient" }
tor-dircommon = { version = "0.45.0", path = "../tor-dircommon", features = ["experimental"] }
tor-error = { version = "0.45.0", path = "../tor-error" }
tor-llcrypto = { version = "0.45.0", path = "../tor-llcrypto" }
tor-netdoc = { version = "0.45.0", path = "../tor-netdoc", features = ["full", "experimental"] }
tor-rtcompat = { version = "0.45.0", path = "../tor-rtcompat", features = [ "tokio", "native-tls", "rustls" ] }
tracing = "0.1.41"
weak-table = "0.4.0"
zstd = "0.13.3"
[dev-dependencies]
lazy_static = "1.5.0"
tempfile = "3.23.0"
tokio-stream = { version = "0.1.17", features = ["full"] }
[package.metadata.docs.rs]
all-features = true
|