5a07b73375
* removed mnemonic from gateway config struct scaffolding for common mixnet listener running verloc unconditionally in a nym-node remove filtering by mixnode extracted verloc to separate crate integrated nym-node-http-server more tightly with the binary most logic for handling forward packets running all mixnode-related tasks natively inside nymnode removed gateway storage trait in favour of the only concrete implementation most logic for handling final hop packets using nym-node owned socket listener for gateways utility for sending plain message through mixnet + gateway fix using common packet forwarding in both modes nifying nym-node metrics reproduce behaviour of the console logger cleaned up cli args redesigned gateway tasks startup procedure removing dead code scaffolding for old config v6 config migration implemented MixnetMetricsCleaner * clippy * require entry/exit for wireguard * removed dead code in migration code * updated config template * use custom user agent for verloc queries * fixed premature shutdown of gateway tasks * hidden nym-api flag to allow illegal node ips * experiment: final hop handing with wireguard * added additional startup logs * typo * fixed legacy stats endpoint data * additional logs * apply review comments * fixed local testnet manager
73 lines
2.0 KiB
Rust
73 lines
2.0 KiB
Rust
// Copyright 2021 - Nym Technologies SA <contact@nymtech.net>
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
use std::io;
|
|
use std::net::SocketAddr;
|
|
use thiserror::Error;
|
|
|
|
#[derive(Debug, Error)]
|
|
pub enum VerlocError {
|
|
#[error("the received echo packet had unexpected size")]
|
|
UnexpectedEchoPacketSize,
|
|
|
|
#[error("the received reply packet had unexpected size")]
|
|
UnexpectedReplyPacketSize,
|
|
|
|
#[error("the received echo packet had malformed sender")]
|
|
MalformedSenderIdentity,
|
|
|
|
#[error("the received echo packet had malformed signature")]
|
|
MalformedEchoSignature,
|
|
|
|
#[error("the received reply packet had malformed signature")]
|
|
MalformedReplySignature,
|
|
|
|
#[error("the received echo packet had invalid signature")]
|
|
InvalidEchoSignature,
|
|
|
|
#[error("the received reply packet had invalid signature")]
|
|
InvalidReplySignature,
|
|
|
|
#[error("could not establish connection to {identity} on {address}: {err}")]
|
|
UnreachableNode {
|
|
identity: String,
|
|
address: SocketAddr,
|
|
#[source]
|
|
err: io::Error,
|
|
},
|
|
|
|
#[error("failed to write echo packet to {identity} on {address}: {err}")]
|
|
UnexpectedConnectionFailureWrite {
|
|
identity: String,
|
|
address: SocketAddr,
|
|
#[source]
|
|
err: io::Error,
|
|
},
|
|
|
|
#[error("failed to read reply packet from {identity} on {address}: {err}")]
|
|
UnexpectedConnectionFailureRead {
|
|
identity: String,
|
|
address: SocketAddr,
|
|
#[source]
|
|
err: io::Error,
|
|
},
|
|
|
|
#[error("timed out while trying to read reply packet from {identity} on {address}")]
|
|
ConnectionReadTimeout {
|
|
identity: String,
|
|
address: SocketAddr,
|
|
},
|
|
|
|
#[error("timed out while trying to write echo packet to {identity} on {address}")]
|
|
ConnectionWriteTimeout {
|
|
identity: String,
|
|
address: SocketAddr,
|
|
},
|
|
|
|
#[error("the received reply packet had an unexpected sequence number")]
|
|
UnexpectedReplySequence,
|
|
|
|
#[error("shutdown signal received")]
|
|
ShutdownReceived,
|
|
}
|