diff options
author | Wez Furlong <wez@wezfurlong.org> | 2019-07-23 16:34:16 -0700 |
---|---|---|
committer | Wez Furlong <wez@wezfurlong.org> | 2019-07-29 08:55:06 -0700 |
commit | 19c95e8c79723e22a35de302cb8f768f9d133dbc (patch) | |
tree | 70aeab07baf122c04a0c7127967cad2ff1e79e8a /src | |
parent | 18dc0f59e0b29c50da525dbe85d36fb5cb0ecf62 (diff) | |
download | ssh2-rs-19c95e8c79723e22a35de302cb8f768f9d133dbc.zip |
Session::new() now returns Result rather than Option
Refs: https://github.com/alexcrichton/ssh2-rs/issues/96
This is a breaking change, so bump the package version
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)) } } } |