pub struct Ssh {
pub client_version_exchange: Option<SshVersionExchange>,
pub server_version_exchange: Option<SshVersionExchange>,
pub key_exchange: Option<SshKeyExchange>,
pub client_dh_key_exchange: Option<SshDhInit>,
pub server_dh_key_exchange: Option<SshDhResponse>,
pub client_new_keys: Option<SshNewKeys>,
pub server_new_keys: Option<SshNewKeys>,
}
Expand description
Parsed SSH handshake contents.
Fields§
§client_version_exchange: Option<SshVersionExchange>
Client protocol version exchange message.
server_version_exchange: Option<SshVersionExchange>
Server protocol version exchange message.
key_exchange: Option<SshKeyExchange>
Key Exchange message.
client_dh_key_exchange: Option<SshDhInit>
Client Diffie-Hellman Key Exchange message.
server_dh_key_exchange: Option<SshDhResponse>
Server Diffie-Hellman Key Exchange message.
client_new_keys: Option<SshNewKeys>
Client New Keys message.
server_new_keys: Option<SshNewKeys>
Server New Keys message.
Implementations§
source§impl Ssh
impl Ssh
sourcepub fn protocol_version_ctos(&self) -> &str
pub fn protocol_version_ctos(&self) -> &str
Returns the SSH protocol version used by the client (e.g. 2.0).
sourcepub fn software_version_ctos(&self) -> &str
pub fn software_version_ctos(&self) -> &str
Returns the SSH software version used by the client.
sourcepub fn comments_ctos(&self) -> &str
pub fn comments_ctos(&self) -> &str
Returns comments, or ""
if there are no comments, in the protocol version exchange message sent from the client.
sourcepub fn protocol_version_stoc(&self) -> &str
pub fn protocol_version_stoc(&self) -> &str
Returns the SSH protocol version used by the server (e.g. 2.0).
sourcepub fn software_version_stoc(&self) -> &str
pub fn software_version_stoc(&self) -> &str
Returns the SSH software version used by the server.
sourcepub fn comments_stoc(&self) -> &str
pub fn comments_stoc(&self) -> &str
Returns comments, or ""
if there are no comments, in the protocol version exchange message sent from the server.
Returns the cookie used in SSH key exchange.
sourcepub fn kex_algs_stoc(&self) -> Vec<String>
pub fn kex_algs_stoc(&self) -> Vec<String>
Returns the key exchange algorithms used in SSH key exchange.
sourcepub fn server_host_key_algs_stoc(&self) -> Vec<String>
pub fn server_host_key_algs_stoc(&self) -> Vec<String>
Returns the algorithms supported for the server host key.
sourcepub fn encryption_algs_ctos(&self) -> Vec<String>
pub fn encryption_algs_ctos(&self) -> Vec<String>
Returns the symmetric encryption algorithms (ciphers) supported by the client.
sourcepub fn encryption_algs_stoc(&self) -> Vec<String>
pub fn encryption_algs_stoc(&self) -> Vec<String>
Returns the symmetric encryption algorithms (ciphers) supported by the server.
sourcepub fn mac_algs_ctos(&self) -> Vec<String>
pub fn mac_algs_ctos(&self) -> Vec<String>
Returns the MAC algorithms supported by the client.
sourcepub fn mac_algs_stoc(&self) -> Vec<String>
pub fn mac_algs_stoc(&self) -> Vec<String>
Returns the MAC algorithms supported by the server.
sourcepub fn compression_algs_ctos(&self) -> Vec<String>
pub fn compression_algs_ctos(&self) -> Vec<String>
Returns the compression algorithms supported by the client.
sourcepub fn compression_algs_stoc(&self) -> Vec<String>
pub fn compression_algs_stoc(&self) -> Vec<String>
Returns the compression algorithms supported by the server.
sourcepub fn languages_ctos(&self) -> Vec<String>
pub fn languages_ctos(&self) -> Vec<String>
Returns the language tags (if any) supported by the client.
sourcepub fn languages_stoc(&self) -> Vec<String>
pub fn languages_stoc(&self) -> Vec<String>
Returns the language tags (if any) supported by the server.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Ssh
impl RefUnwindSafe for Ssh
impl Send for Ssh
impl Sync for Ssh
impl Unpin for Ssh
impl UnwindSafe for Ssh
Blanket Implementations§
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
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more