summaryrefslogtreecommitdiff
path: root/src/error.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/error.rs')
-rw-r--r--src/error.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/error.rs b/src/error.rs
index ef9b149..b27124c 100644
--- a/src/error.rs
+++ b/src/error.rs
@@ -14,6 +14,8 @@ pub enum Error {
LibraryError(LibraryError),
/// An error that occured during random number generation.
RandError(rand_core::Error),
+ /// An error that is caused by an unexpected value returned by libnitrokey.
+ UnexpectedError,
/// An unknown error returned by libnitrokey.
Unknown(i64),
}
@@ -63,6 +65,7 @@ impl error::Error for Error {
Error::CommunicationError(ref err) => Some(err),
Error::LibraryError(ref err) => Some(err),
Error::RandError(ref err) => Some(err),
+ Error::UnexpectedError => None,
Error::Unknown(_) => None,
}
}
@@ -75,6 +78,7 @@ impl fmt::Display for Error {
Error::CommunicationError(ref err) => write!(f, "Communication error: {}", err),
Error::LibraryError(ref err) => write!(f, "Library error: {}", err),
Error::RandError(ref err) => write!(f, "RNG error: {}", err),
+ Error::UnexpectedError => write!(f, "An unexpected error occurred"),
Error::Unknown(ref err) => write!(f, "Unknown error: {}", err),
}
}