diff options
Diffstat (limited to 'src/error.rs')
| -rw-r--r-- | src/error.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/error.rs b/src/error.rs new file mode 100644 index 0000000..c07b418 --- /dev/null +++ b/src/error.rs @@ -0,0 +1,20 @@ +use std::io; +use thiserror::Error; + +#[derive(Error, Debug)] +pub enum HotlineError { + #[error("client disconnected")] + Disconnected(#[from] io::Error), + #[error("handshake failed")] + HandshakeFailed, + #[error("invalid protocol ID")] + InvalidProtocolId, + #[error("unsupported version: {0}")] + UnsupportedVersion(u16), + #[error("incomplete handshake data")] + IncompleteHandshake, + #[error("server rejected handshake")] + ServerRejected, + #[error("invalid server response")] + InvalidServerResponse, +} |