bd94dd3055
* Store wireguard peers in db * Add update to nym-node * Move gateway-requests and gateway-storage to common * Carry storage to PeerController field * Double kernel modifications with storage ones * Take storage peers at boot * Link storage query for registration flow * Move authenticator peer comms in peer manager * Modify template too * Remove unused * Fix clippy * Fix clippy non-linux * Keep storage data up-to-date on every check * Check for staleness in storage timestamps * Remove potential for panic in unwrap * Fix clippy * Fmt * Clippy after rebase * Remove in memory test structure
124 lines
3.9 KiB
TOML
124 lines
3.9 KiB
TOML
# Copyright 2020 - Nym Technologies SA <contact@nymtech.net>
|
|
# SPDX-License-Identifier: GPL-3.0-only
|
|
|
|
[package]
|
|
name = "nym-gateway"
|
|
license = "GPL-3.0"
|
|
version = "1.1.36"
|
|
authors = [
|
|
"Dave Hrycyszyn <futurechimp@users.noreply.github.com>",
|
|
"Jędrzej Stuczyński <andrew@nymtech.net>",
|
|
]
|
|
description = "Implementation of the Nym Mixnet Gateway"
|
|
edition = "2021"
|
|
rust-version = "1.76"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[lib]
|
|
path = "src/lib.rs"
|
|
|
|
[[bin]]
|
|
name = "nym-gateway"
|
|
required-features = ["bin-deps"]
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
anyhow = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
bip39 = { workspace = true }
|
|
bs58 = { workspace = true }
|
|
clap = { workspace = true, features = ["cargo", "derive"], optional = true }
|
|
colored = { workspace = true }
|
|
cosmwasm-std = { workspace = true }
|
|
cw-utils = { workspace = true }
|
|
dashmap = { workspace = true }
|
|
dirs = { workspace = true }
|
|
dotenvy = { workspace = true }
|
|
futures = { workspace = true }
|
|
humantime-serde = { workspace = true }
|
|
ipnetwork = { workspace = true }
|
|
once_cell = { workspace = true }
|
|
rand = { workspace = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
si-scale = { workspace = true }
|
|
sqlx = { workspace = true, features = [
|
|
"runtime-tokio-rustls",
|
|
"sqlite",
|
|
"macros",
|
|
"migrate",
|
|
"time",
|
|
] }
|
|
subtle-encoding = { workspace = true, features = ["bech32-preview"] }
|
|
thiserror = { workspace = true }
|
|
tokio = { workspace = true, features = [
|
|
"rt-multi-thread",
|
|
"net",
|
|
"signal",
|
|
"fs",
|
|
"time",
|
|
] }
|
|
tokio-stream = { workspace = true, features = ["fs"] }
|
|
tokio-tungstenite = { workspace = true }
|
|
tokio-util = { workspace = true, features = ["codec"] }
|
|
tracing = { workspace = true }
|
|
url = { workspace = true, features = ["serde"] }
|
|
time = { workspace = true }
|
|
zeroize = { workspace = true }
|
|
bloomfilter = { workspace = true }
|
|
|
|
# internal
|
|
|
|
nym-authenticator = { path = "../service-providers/authenticator" }
|
|
nym-api-requests = { path = "../nym-api/nym-api-requests" }
|
|
nym-bin-common = { path = "../common/bin-common" }
|
|
nym-config = { path = "../common/config" }
|
|
nym-credentials = { path = "../common/credentials" }
|
|
nym-credentials-interface = { path = "../common/credentials-interface" }
|
|
nym-crypto = { path = "../common/crypto" }
|
|
nym-ecash-contract-common = { path = "../common/cosmwasm-smart-contracts/ecash-contract" }
|
|
nym-ecash-double-spending = { path = "../common/ecash-double-spending" }
|
|
nym-gateway-storage = { path = "../common/gateway-storage" }
|
|
nym-gateway-requests = { path = "../common/gateway-requests" }
|
|
nym-mixnet-client = { path = "../common/client-libs/mixnet-client" }
|
|
nym-mixnode-common = { path = "../common/mixnode-common" }
|
|
nym-network-defaults = { path = "../common/network-defaults" }
|
|
nym-network-requester = { path = "../service-providers/network-requester" }
|
|
nym-node-http-api = { path = "../nym-node/nym-node-http-api" }
|
|
nym-pemstore = { path = "../common/pemstore" }
|
|
nym-sphinx = { path = "../common/nymsphinx" }
|
|
nym-task = { path = "../common/task" }
|
|
nym-types = { path = "../common/types" }
|
|
nym-validator-client = { path = "../common/client-libs/validator-client" }
|
|
nym-ip-packet-router = { path = "../service-providers/ip-packet-router" }
|
|
|
|
nym-wireguard = { path = "../common/wireguard", optional = true }
|
|
nym-wireguard-types = { path = "../common/wireguard-types", default-features = false }
|
|
|
|
defguard_wireguard_rs = { workspace = true, optional = true }
|
|
|
|
|
|
[build-dependencies]
|
|
tokio = { workspace = true, features = ["rt-multi-thread", "macros"] }
|
|
sqlx = { workspace = true, features = [
|
|
"runtime-tokio-rustls",
|
|
"sqlite",
|
|
"macros",
|
|
"migrate",
|
|
] }
|
|
|
|
[features]
|
|
wireguard = [
|
|
"nym-wireguard",
|
|
"defguard_wireguard_rs",
|
|
"nym-gateway-storage/wireguard",
|
|
]
|
|
bin-deps = ["clap", 'nym-bin-common/output_format']
|
|
|
|
[package.metadata.deb]
|
|
name = "nym-gateway"
|
|
maintainer-scripts = "debian"
|
|
depends = "curl"
|
|
systemd-units = { enable = false }
|