diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/session.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/session.rs b/src/session.rs index 71af745..10a0703 100644 --- a/src/session.rs +++ b/src/session.rs @@ -36,14 +36,14 @@ impl Session { /// mode, compression, sigpipe, the banner, etc. To associate this session /// with a TCP connection, use the `handshake` method to pass in an /// already-established TCP socket. - pub fn new() -> Option<Session> { + pub fn new() -> Result<Session, Error> { ::init(); unsafe { let ret = raw::libssh2_session_init_ex(None, None, None, 0 as *mut _); if ret.is_null() { - None + Err(Error::unknown()) } else { - Some(Binding::from_raw(ret)) + Ok(Binding::from_raw(ret)) } } } |