summaryrefslogtreecommitdiff
path: root/src/agent.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/agent.rs')
-rw-r--r--src/agent.rs11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/agent.rs b/src/agent.rs
index 85ba4e6..0434002 100644
--- a/src/agent.rs
+++ b/src/agent.rs
@@ -4,7 +4,7 @@ use std::slice;
use std::str;
use std::sync::Arc;
-use {raw, Error, SessionInner};
+use {raw, Error, ErrorCode, SessionInner};
/// A structure representing a connection to an SSH agent.
///
@@ -110,9 +110,12 @@ impl Agent {
pub fn userauth(&self, username: &str, identity: &PublicKey) -> Result<(), Error> {
let username = CString::new(username)?;
let sess = self.sess.lock();
- let raw_ident = self
- .resolve_raw_identity(&sess, identity)?
- .ok_or_else(|| Error::new(raw::LIBSSH2_ERROR_BAD_USE, "Identity not found in agent"))?;
+ let raw_ident = self.resolve_raw_identity(&sess, identity)?.ok_or_else(|| {
+ Error::new(
+ ErrorCode::Session(raw::LIBSSH2_ERROR_BAD_USE),
+ "Identity not found in agent",
+ )
+ })?;
unsafe {
sess.rc(raw::libssh2_agent_userauth(
self.raw,