pub struct AgentSession { /* private fields */ }Expand description
Wraps an AgentHandle to implement the ssh_agent_lib::agent::Session trait.
Each AgentSession holds a reference to an AgentHandle, enabling multiple
independent agent instances to coexist.
Implementations§
Source§impl AgentSession
impl AgentSession
Sourcepub fn new(handle: Arc<AgentHandle>) -> Self
pub fn new(handle: Arc<AgentHandle>) -> Self
Creates a new AgentSession wrapping the given AgentHandle.
Sourcepub fn handle(&self) -> &AgentHandle
pub fn handle(&self) -> &AgentHandle
Returns a reference to the underlying agent handle.
Trait Implementations§
Source§impl Clone for AgentSession
impl Clone for AgentSession
Source§fn clone(&self) -> AgentSession
fn clone(&self) -> AgentSession
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AgentSession
impl Debug for AgentSession
Source§impl Session for AgentSession
impl Session for AgentSession
Source§fn request_identities<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Identity>, SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn request_identities<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Identity>, SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Request a list of keys managed by this session.
Source§fn sign<'life0, 'async_trait>(
&'life0 mut self,
request: SignRequest,
) -> Pin<Box<dyn Future<Output = Result<Signature, SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn sign<'life0, 'async_trait>(
&'life0 mut self,
request: SignRequest,
) -> Pin<Box<dyn Future<Output = Result<Signature, SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Perform a private key signature operation.
Source§fn add_identity<'life0, 'async_trait>(
&'life0 mut self,
identity: AddIdentity,
) -> Pin<Box<dyn Future<Output = Result<(), SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_identity<'life0, 'async_trait>(
&'life0 mut self,
identity: AddIdentity,
) -> Pin<Box<dyn Future<Output = Result<(), SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add a private key to the agent.
Source§fn remove_identity<'life0, 'async_trait>(
&'life0 mut self,
identity: RemoveIdentity,
) -> Pin<Box<dyn Future<Output = Result<(), SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn remove_identity<'life0, 'async_trait>(
&'life0 mut self,
identity: RemoveIdentity,
) -> Pin<Box<dyn Future<Output = Result<(), SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove private key from an agent.
Source§fn remove_all_identities<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn remove_all_identities<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), SSHAgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove all keys from an agent.
Source§fn add_identity_constrained<'life0, 'async_trait>(
&'life0 mut self,
_identity: AddIdentityConstrained,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn add_identity_constrained<'life0, 'async_trait>(
&'life0 mut self,
_identity: AddIdentityConstrained,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Add a private key to the agent with a set of constraints.
Source§fn add_smartcard_key<'life0, 'async_trait>(
&'life0 mut self,
_key: SmartcardKey,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn add_smartcard_key<'life0, 'async_trait>(
&'life0 mut self,
_key: SmartcardKey,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Add a key stored on a smartcard.
Source§fn add_smartcard_key_constrained<'life0, 'async_trait>(
&'life0 mut self,
_key: AddSmartcardKeyConstrained,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn add_smartcard_key_constrained<'life0, 'async_trait>(
&'life0 mut self,
_key: AddSmartcardKeyConstrained,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Add a key stored on a smartcard with a set of constraints.
Source§fn remove_smartcard_key<'life0, 'async_trait>(
&'life0 mut self,
_key: SmartcardKey,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn remove_smartcard_key<'life0, 'async_trait>(
&'life0 mut self,
_key: SmartcardKey,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Remove a smartcard key from the agent.
Source§fn lock<'life0, 'async_trait>(
&'life0 mut self,
_key: String,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn lock<'life0, 'async_trait>(
&'life0 mut self,
_key: String,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Temporarily lock the agent with a password.
Source§fn unlock<'life0, 'async_trait>(
&'life0 mut self,
_key: String,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
fn unlock<'life0, 'async_trait>(
&'life0 mut self,
_key: String,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
'life0: 'async_trait,
Self: 'async_trait,
Unlock the agent with a password.
Auto Trait Implementations§
impl Freeze for AgentSession
impl RefUnwindSafe for AgentSession
impl Send for AgentSession
impl Sync for AgentSession
impl Unpin for AgentSession
impl UnsafeUnpin for AgentSession
impl UnwindSafe for AgentSession
Blanket Implementations§
Source§impl<T> Agent<TcpListener> for T
impl<T> Agent<TcpListener> for T
Source§impl<T> Agent<UnixListener> for T
impl<T> Agent<UnixListener> for T
Source§fn new_session(&mut self, _socket: &UnixStream) -> impl Session
fn new_session(&mut self, _socket: &UnixStream) -> impl Session
Create a
Session object for a given socket.Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more