Struct ssh_packet::trans::KexInit
source · pub struct KexInit {
pub cookie: [u8; 16],
pub kex_algorithms: NameList,
pub server_host_key_algorithms: NameList,
pub encryption_algorithms_client_to_server: NameList,
pub encryption_algorithms_server_to_client: NameList,
pub mac_algorithms_client_to_server: NameList,
pub mac_algorithms_server_to_client: NameList,
pub compression_algorithms_client_to_server: NameList,
pub compression_algorithms_server_to_client: NameList,
pub languages_client_to_server: NameList,
pub languages_server_to_client: NameList,
pub first_kex_packet_follows: Bool,
}
Expand description
The SSH_MSG_KEXINIT
message.
see https://datatracker.ietf.org/doc/html/rfc4253#section-7.1.
Fields§
The kex-init cookie.
kex_algorithms: NameList
Kex algorithms.
server_host_key_algorithms: NameList
Server host-key algorithms.
encryption_algorithms_client_to_server: NameList
Client -> server encryption algorithms.
encryption_algorithms_server_to_client: NameList
Server -> client encryption algorithms.
mac_algorithms_client_to_server: NameList
Client -> server MAC algorithms.
mac_algorithms_server_to_client: NameList
Server -> client MAC algorithms.
compression_algorithms_client_to_server: NameList
Client -> server compression algorithms.
compression_algorithms_server_to_client: NameList
Server -> client compression algorithms.
languages_client_to_server: NameList
Client -> server languages.
languages_server_to_client: NameList
Server -> client languages.
first_kex_packet_follows: Bool
Whether the first kex packet follows.
Trait Implementations§
source§impl BinRead for KexInit
impl BinRead for KexInit
source§fn read_options<R: Read + Seek>(
__binrw_generated_var_reader: &mut R,
__binrw_generated_var_endian: Endian,
__binrw_generated_var_arguments: Self::Args<'_>
) -> BinResult<Self>
fn read_options<R: Read + Seek>( __binrw_generated_var_reader: &mut R, __binrw_generated_var_endian: Endian, __binrw_generated_var_arguments: Self::Args<'_> ) -> BinResult<Self>
source§fn read<R>(reader: &mut R) -> Result<Self, Error>where
R: Read + Seek,
Self: ReadEndian,
Self::Args<'a>: for<'a> Required,
fn read<R>(reader: &mut R) -> Result<Self, Error>where R: Read + Seek, Self: ReadEndian, Self::Args<'a>: for<'a> Required,
Read
Self
from the reader using default arguments. Read moresource§fn read_be<R>(reader: &mut R) -> Result<Self, Error>where
R: Read + Seek,
Self::Args<'a>: for<'a> Required,
fn read_be<R>(reader: &mut R) -> Result<Self, Error>where R: Read + Seek, Self::Args<'a>: for<'a> Required,
Read
Self
from the reader using default arguments and assuming
big-endian byte order. Read moresource§fn read_le<R>(reader: &mut R) -> Result<Self, Error>where
R: Read + Seek,
Self::Args<'a>: for<'a> Required,
fn read_le<R>(reader: &mut R) -> Result<Self, Error>where R: Read + Seek, Self::Args<'a>: for<'a> Required,
Read
Self
from the reader using default arguments and assuming
little-endian byte order. Read moresource§fn read_ne<R>(reader: &mut R) -> Result<Self, Error>where
R: Read + Seek,
Self::Args<'a>: for<'a> Required,
fn read_ne<R>(reader: &mut R) -> Result<Self, Error>where R: Read + Seek, Self::Args<'a>: for<'a> Required,
Read
T
from the reader assuming native-endian byte order. Read moresource§fn read_args<R>(reader: &mut R, args: Self::Args<'_>) -> Result<Self, Error>where
R: Read + Seek,
Self: ReadEndian,
fn read_args<R>(reader: &mut R, args: Self::Args<'_>) -> Result<Self, Error>where R: Read + Seek, Self: ReadEndian,
Read
Self
from the reader using the given arguments. Read moresource§fn read_be_args<R>(reader: &mut R, args: Self::Args<'_>) -> Result<Self, Error>where
R: Read + Seek,
fn read_be_args<R>(reader: &mut R, args: Self::Args<'_>) -> Result<Self, Error>where R: Read + Seek,
Read
Self
from the reader, assuming big-endian byte order, using the
given arguments. Read moresource§impl BinWrite for KexInit
impl BinWrite for KexInit
source§fn write_options<W: Write + Seek>(
&self,
__binrw_generated_var_writer: &mut W,
__binrw_generated_var_endian: Endian,
__binrw_generated_var_arguments: Self::Args<'_>
) -> BinResult<()>
fn write_options<W: Write + Seek>( &self, __binrw_generated_var_writer: &mut W, __binrw_generated_var_endian: Endian, __binrw_generated_var_arguments: Self::Args<'_> ) -> BinResult<()>
source§fn write<W>(&self, writer: &mut W) -> Result<(), Error>where
W: Write + Seek,
Self: WriteEndian,
Self::Args<'a>: for<'a> Required,
fn write<W>(&self, writer: &mut W) -> Result<(), Error>where W: Write + Seek, Self: WriteEndian, Self::Args<'a>: for<'a> Required,
Write
Self
to the writer using default arguments. Read moresource§fn write_be<W>(&self, writer: &mut W) -> Result<(), Error>where
W: Write + Seek,
Self::Args<'a>: for<'a> Required,
fn write_be<W>(&self, writer: &mut W) -> Result<(), Error>where W: Write + Seek, Self::Args<'a>: for<'a> Required,
Write
Self
to the writer assuming big-endian byte order. Read moresource§fn write_le<W>(&self, writer: &mut W) -> Result<(), Error>where
W: Write + Seek,
Self::Args<'a>: for<'a> Required,
fn write_le<W>(&self, writer: &mut W) -> Result<(), Error>where W: Write + Seek, Self::Args<'a>: for<'a> Required,
Write
Self
to the writer assuming little-endian byte order. Read moresource§fn write_args<W>(
&self,
writer: &mut W,
args: Self::Args<'_>
) -> Result<(), Error>where
W: Write + Seek,
Self: WriteEndian,
fn write_args<W>( &self, writer: &mut W, args: Self::Args<'_> ) -> Result<(), Error>where W: Write + Seek, Self: WriteEndian,
Write
Self
to the writer using the given arguments. Read moresource§impl ReadEndian for KexInit
impl ReadEndian for KexInit
source§const ENDIAN: EndianKind = _
const ENDIAN: EndianKind = _
The endianness of the type.
source§impl WriteEndian for KexInit
impl WriteEndian for KexInit
source§const ENDIAN: EndianKind = _
const ENDIAN: EndianKind = _
The endianness of the type.
Auto Trait Implementations§
impl RefUnwindSafe for KexInit
impl Send for KexInit
impl Sync for KexInit
impl Unpin for KexInit
impl UnwindSafe for KexInit
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
Mutably borrows from an owned value. Read more