aboutsummaryrefslogtreecommitdiff
path: root/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib.rs')
-rw-r--r--src/lib.rs14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/lib.rs b/src/lib.rs
index a4da317..6ec60db 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -7,6 +7,8 @@
extern crate regex;
#[macro_use]
extern crate log;
+#[cfg(feature = "ssl")]
+extern crate openssl;
pub mod client;
pub mod color;
@@ -19,6 +21,9 @@ pub mod reply;
use std::io;
use std::result;
+#[cfg(feature = "ssl")]
+use openssl::ssl::error::SslError;
+
pub use ident::Ident;
pub use message::{ Message, MsgType };
pub use command::Command;
@@ -29,7 +34,14 @@ pub enum IrscError {
Io(io::Error),
AlreadyConnected,
NotConnected,
- NotFound
+ NotFound,
+ #[cfg(feature = "ssl")]
+ Ssl(SslError)
+}
+
+#[cfg(feature = "ssl")]
+impl From<SslError> for IrscError {
+ fn from(e: SslError) -> IrscError { IrscError::Ssl(e) }
}
pub type Result<T> = result::Result<T, IrscError>;