aboutsummaryrefslogtreecommitdiffstats
path: root/Cargo.toml
blob: 9d093830e61825a0edf0f44828508dd29c7232a2 (plain)
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
[package]
name = "MeshCore"
description = "MeshCore Packet processing crate"
homepage = "https://https://meshcore.co.uk/"
repository = "https://git.housedillon.com/wdillon/Meshcore-rs"
readme = "readme.md"
version = "0.0.1"
edition = "2024"
license = "MIT"
keywords = ["lora", "meshcore", "mesh", "packet", "no_std"]
categories = ["embedded", "config", "encoding", "network-programming", "parser-implementations"]
exclude = [".vscode"]
resolver = "3"

[dependencies]
bytes = { version = "1", default-features = false }
chrono = "0.4"
hex = { version = "0.4", default-features = false }
cayenne_lpp = "0.3.0"
arraystring = "0.3.0"
tinyvec = "1.10.0"

# Crypto functions needed for packet signatures and (en|de)cryption
sha2 = { version = "0.10", default-features = false }
hmac = { version = "0.12", default-features = false }
ed25519-dalek = { version = "2", features = ["hazmat", "rand_core"]}
x25519-dalek = { version = "2", features = ["static_secrets"]}
rand = "0.8"
curve25519-dalek = "4.1.3"
aes = "0.8.4"
log = { version = "0.4.28", default-features = false }

# Dependencies needed only for the Packet Analyzer
pcap-file-tokio = { version = "0.1.0", optional = true }
pcap-file = { version = "2.0.0", optional = true }
tokio = { version = "1.20.1", features = ["macros", "rt-multi-thread", "rt", "fs", "full"], optional = true }

# Serde stuff for loading config files and saving packet dissections, also only used by the binary.
serde = { version = "1.0", features = ["derive", "rc"], optional = true }
color-eyre = { version = "0.6.5", optional = true }
pretty_env_logger = {version = "0.5.0", optional = true }
clap = { version = "4.5.51", features = ["derive"], optional = true }
toml = { version = "0.9.8", optional = true }

[dev-dependencies]
hex = { version = "0.4" }
toml = { version = "0.9.8"}

[lib]
name = "meshcore"

[features]
std = ["alloc", "hex/alloc"]
alloc = []

default = ["build-binary"]
# default = []
build-binary = ["pcap-file-tokio", "pcap-file", "tokio", "serde", "color-eyre", "pretty_env_logger", "clap", "toml", "std"]

[[bin]]
name = "packet_analyzer"
required-features = ["build-binary"]