diff options
author | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-11-14 17:35:54 +0100 |
---|---|---|
committer | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-11-14 17:35:54 +0100 |
commit | 1c2a4a8ace82f3ed0696e112b0434301538b3500 (patch) | |
tree | cfa2eb80f7f1cbcbbc67ba6b2f7bfbb568b5cdba /src/error.rs | |
parent | e1d63ff533bd1b56ac5394635c96aa354308d859 (diff) |
initial split
Diffstat (limited to 'src/error.rs')
-rw-r--r-- | src/error.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/error.rs b/src/error.rs new file mode 100644 index 0000000..26e2444 --- /dev/null +++ b/src/error.rs @@ -0,0 +1,27 @@ +use std::{ffi, io, net}; + +use thiserror::Error; + +#[derive(Debug, Error)] +pub enum Error { + #[error("link {0} not found")] + LinkNotFound(String), + #[error("not enough ipv6 subnets")] + NotEnoughIpv6Subnets, + + #[error("ffi nul: {0}")] + Nul(#[from] ffi::NulError), + #[error("io: {0}")] + Io(#[from] io::Error), + + #[error("ipnet prefix len: {0}")] + IpnetPrefixLen(#[from] ipnet::PrefixLenError), + #[error("net: parse ip address: {0}")] + NetAddrParseError(#[from] net::AddrParseError), + #[error("rtnetlink: {0}")] + RtNetlink(#[from] rtnetlink::Error), + #[error("serde_json: {0}")] + SerdeJson(#[from] serde_json::Error), +} + +pub type Result<T> = std::result::Result<T, Error>; |