Files
nym/common/verloc/src/error.rs
T
Jędrzej Stuczyński 5a07b73375 feature: hopefully final steps of the smoosh™️ (#5201)
* 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
2024-12-05 17:21:36 +00:00

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,
}