aboutsummaryrefslogtreecommitdiff
path: root/src/error.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/error.rs')
-rw-r--r--src/error.rs20
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,
+}