forked from vsilent/stackdog
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
95 lines (79 loc) · 2 KB
/
Cargo.toml
File metadata and controls
95 lines (79 loc) · 2 KB
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
84
85
86
87
88
89
90
91
92
93
94
95
[package]
name = "stackdog"
version = "0.2.2"
authors = ["Vasili Pascal <info@try.direct>"]
edition = "2021"
description = "Security platform for Docker containers and Linux servers"
license = "MIT"
repository = "https://github.com/vsilent/stackdog"
readme = "README.md"
keywords = ["security", "docker", "containers", "ebpf", "firewall"]
categories = ["security", "development-tools"]
[workspace]
members = [
".",
"ebpf",
]
[dependencies]
# Core
serde = { version = "1", features = ["derive"] }
serde_json = "1"
chrono = { version = "0.4", features = ["serde"] }
uuid = { version = "1", features = ["v4"] }
log = "0.4"
env_logger = "0.11"
tracing = "0.1"
tracing-subscriber = "0.3.23"
dotenvy = "0.15.7"
anyhow = "1"
thiserror = "1"
clap = { version = "4", features = ["derive"] }
# Async runtime
tokio = { version = "1", features = ["full"] }
actix-rt = "2"
actix-web = "4"
actix-cors = "0.6"
actix-web-actors = "4"
actix = "0.13"
async-trait = "0.1"
# Database
rusqlite = { version = "0.39", features = ["bundled"] }
r2d2 = "0.8"
# Docker
bollard = "0.16"
# HTTP client (for LLM API)
reqwest = { version = "0.12.24", default-features = false, features = ["json", "blocking", "rustls-tls"] }
sha2 = "0.10"
# Compression
zstd = "0.13"
# Stream utilities
futures-util = "0.3"
lettre = { version = "0.11", default-features = false, features = ["tokio1", "tokio1-rustls-tls", "builder", "smtp-transport"] }
# eBPF (Linux only)
[target.'cfg(target_os = "linux")'.dependencies]
aya = "0.12"
aya-obj = "0.2"
# Firewall (Linux only)
netlink-packet-route = "0.29"
netlink-sys = "0.8"
# ML (optional)
candle-core = { version = "0.10", optional = true }
candle-nn = { version = "0.3", optional = true }
[features]
default = []
ml = ["candle-core", "candle-nn"]
ebpf = []
[dev-dependencies]
# Testing
tokio-test = "0.4"
tempfile = "3"
actix-test = "0.1"
awc = "3"
# Benchmarking
criterion = { version = "0.5", features = ["html_reports"] }
[[bench]]
name = "throughput"
harness = false
[[bench]]
name = "latency"
harness = false