summaryrefslogtreecommitdiffhomepage
path: root/talpid-wireguard/Cargo.toml
blob: 5770fdb51f2044c6c3fed2be44d4a82b067a64fc (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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
[package]
name = "talpid-wireguard"
description = "Library for creating various WireGuard tunnels"
authors.workspace = true
repository.workspace = true
license.workspace = true
edition.workspace = true
rust-version.workspace = true

[lints]
workspace = true

[dependencies]
thiserror = { workspace = true }
futures = "0.3.15"
hex = "0.4"
ipnetwork = "0.16"
once_cell = { workspace = true }
libc = "0.2.150"
log = { workspace = true }
parking_lot = "0.12.0"
talpid-routing = { path = "../talpid-routing" }
talpid-types = { path = "../talpid-types" }
talpid-tunnel-config-client = { path = "../talpid-tunnel-config-client" }
talpid-tunnel = { path = "../talpid-tunnel" }
zeroize = "1"
chrono = { workspace = true, features = ["clock"] }
tokio = { workspace = true, features = ["process", "rt-multi-thread", "fs"] }
tunnel-obfuscation = { path = "../tunnel-obfuscation" }
rand = "0.8.5"
surge-ping = "0.8.0"

[target.'cfg(target_os="android")'.dependencies]
duct = "0.13"

[target.'cfg(not(target_os="android"))'.dependencies]
byteorder = "1"
internet-checksum = "0.2"
socket2 = { version = "0.5.3", features = ["all"] }
tokio-stream = { version = "0.1", features = ["io-util"] }

[target.'cfg(unix)'.dependencies]
nix = "0.23"

[target.'cfg(target_os = "linux")'.dependencies]
rtnetlink = "0.11"
netlink-packet-core = "0.4.2"
netlink-packet-route = "0.13"
netlink-packet-utils = "0.5.1"
netlink-proto = "0.10"
talpid-dbus = { path = "../talpid-dbus" }

[target.'cfg(windows)'.dependencies]
bitflags = "1.2"
talpid-windows = { path = "../talpid-windows" }
widestring = "1.0"

# TODO: Figure out which features are needed and which are not
[target.'cfg(windows)'.dependencies.windows-sys]
workspace = true
features = [
    "Win32_Foundation",
    "Win32_Globalization",
    "Win32_Security",
    "Win32_System_Com",
    "Win32_System_Diagnostics_ToolHelp",
    "Win32_System_Ioctl",
    "Win32_System_IO",
    "Win32_System_LibraryLoader",
    "Win32_System_ProcessStatus",
    "Win32_System_Registry",
    "Win32_System_Services",
    "Win32_System_SystemServices",
    "Win32_System_Threading",
    "Win32_System_WindowsProgramming",
    "Win32_Networking_WinSock",
    "Win32_NetworkManagement_IpHelper",
    "Win32_NetworkManagement_Ndis",
    "Win32_UI_Shell",
    "Win32_UI_WindowsAndMessaging",
]

[dev-dependencies]
proptest = "1.4"
tokio = { workspace = true, features = ["time", "test-util"] }