-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathCargo.toml
83 lines (69 loc) · 2.53 KB
/
Cargo.toml
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
74
75
76
77
78
79
80
81
82
83
[package]
name = "sunset"
version = "0.2.0-alpha"
edition = "2021"
description = "A SSH library suitable for embedded and larger programs"
repository = "https://github.com/mkj/sunset"
categories = ["network-programming", "no-std"]
license = "MPL-2.0"
keywords = ["ssh"]
[workspace]
members = [
"sshwire-derive",
"async",
"embassy",
]
exclude = [
"embassy/demos/picow",
"embassy/demos/tun",
]
[profile.release]
opt-level = 'z'
lto = "fat"
debug = 1
[dependencies]
sunset-sshwire-derive = { version = "0.1", path = "sshwire-derive" }
snafu = { version = "0.7", default-features = false, features = ["rust_1_61"] }
# TODO: check that log macro calls disappear in no_std builds
log = { version = "0.4" }
heapless = "0.7.10"
# allows avoiding utf8 for SSH identifier names
ascii = { version = "1.0", default-features = false }
getrandom = "0.2"
rand_core = { version = "0.6", default-features = false, features = ["getrandom"]}
ctr = { version = "0.9", features = ["zeroize"] }
aes = { version = "0.8", features = ["zeroize"] }
chacha20 = { version = "0.9", features = ["zeroize"] }
sha2 = { version = "0.10", default-features = false }
hmac = "0.12"
poly1305 = "0.8"
digest = "0.10"
signature = { version = "2.0", default-features = false }
zeroize = { version = "1", default-features = false, features = ["derive"] }
cipher = { version = "0.4", features = ["zeroize"] }
subtle = { version = "2.4", default-features = false }
# ed25519/x25519
# fork allows hashing by parts (sign/verify from sshwire), and zeroize
salty = { version = "0.2", git = "https://github.com/mkj/salty", branch = "sunset" }
rsa = { version = "0.8", default-features = false, optional = true, features = ["sha2"] }
# TODO: getrandom feature is a workaround for missing ssh-key dependency with rsa. fixed in pending 0.6
ssh-key = { version = "0.5", default-features = false, optional = true, features = ["getrandom"] }
embedded-io = { version = "0.4", optional = true }
# for debug printing
pretty-hex = { version = "0.3", default-features = false }
# for non_async
futures = { version = "0.3", default-features = false }
[features]
std = ["snafu/std", "snafu/backtraces"]
rsa = ["dep:rsa", "ssh-key/rsa"]
# allows conversion to/from OpenSSH key formats
openssh-key = ["ssh-key"]
# implements embedded_io::Error for sunset::Error
embedded-io = ["dep:embedded-io"]
[dev-dependencies]
# examples want std::error
snafu = { version = "0.7", default-features = true }
anyhow = { version = "1.0" }
pretty-hex = "0.3"
simplelog = { version = "0.12", features = ["test"] }
[patch.crates-io]