pub struct ClientHelloPayload {
pub client_version: ProtocolVersion,
pub random: Random,
pub session_id: SessionID,
pub cipher_suites: Vec<CipherSuite>,
pub compression_methods: Vec<Compression>,
pub extensions: Vec<ClientExtension>,
}
Fields§
§client_version: ProtocolVersion
§random: Random
§session_id: SessionID
§cipher_suites: Vec<CipherSuite>
§compression_methods: Vec<Compression>
§extensions: Vec<ClientExtension>
Implementations§
Source§impl ClientHelloPayload
impl ClientHelloPayload
Sourcepub fn has_duplicate_extension(&self) -> bool
pub fn has_duplicate_extension(&self) -> bool
Returns true if there is more than one extension of a given type.
pub fn find_extension(&self, ext: ExtensionType) -> Option<&ClientExtension>
pub fn get_sni_extension(&self) -> Option<&Vec<ServerName>>
pub fn get_sigalgs_extension(&self) -> Option<&Vec<SignatureScheme>>
pub fn get_namedgroups_extension(&self) -> Option<&Vec<NamedGroup>>
pub fn get_ecpoints_extension(&self) -> Option<&Vec<ECPointFormat>>
pub fn get_alpn_extension(&self) -> Option<&Vec<PayloadU8>>
pub fn get_quic_params_extension(&self) -> Option<Vec<u8>>
pub fn get_ticket_extension(&self) -> Option<&ClientExtension>
pub fn get_versions_extension(&self) -> Option<&Vec<ProtocolVersion>>
pub fn get_psk(&self) -> Option<&PresharedKeyOffer>
pub fn check_psk_ext_is_last(&self) -> bool
pub fn get_psk_modes(&self) -> Option<&Vec<PSKKeyExchangeMode>>
pub fn psk_mode_offered(&self, mode: PSKKeyExchangeMode) -> bool
pub fn set_psk_binder(&mut self, binder: impl Into<Vec<u8>>)
pub fn ems_support_offered(&self) -> bool
pub fn early_data_extension_offered(&self) -> bool
Trait Implementations§
Source§impl Codec for ClientHelloPayload
impl Codec for ClientHelloPayload
Source§fn encode(&self, bytes: &mut Vec<u8>)
fn encode(&self, bytes: &mut Vec<u8>)
Function for encoding itself by appending itself to
the provided vec of bytes.
Source§fn read(r: &mut Reader<'_>) -> Option<ClientHelloPayload>
fn read(r: &mut Reader<'_>) -> Option<ClientHelloPayload>
Function for decoding itself from the provided reader
will return Some if the decoding was successful or
None if it was not.
Source§fn get_encoding(&self) -> Vec<u8> ⓘ
fn get_encoding(&self) -> Vec<u8> ⓘ
Convenience function for encoding the implementation
into a vec and returning it
Source§fn read_bytes(bytes: &[u8]) -> Option<Self>
fn read_bytes(bytes: &[u8]) -> Option<Self>
Function for wrapping a call to the read function in
a Reader for the slice of bytes provided
Source§impl Debug for ClientHelloPayload
impl Debug for ClientHelloPayload
Source§impl From<&ClientHelloPayload> for Ja3
impl From<&ClientHelloPayload> for Ja3
Source§fn from(chp: &ClientHelloPayload) -> Ja3
fn from(chp: &ClientHelloPayload) -> Ja3
Converts to this type from the input type.
Source§impl Ja3Extractor for ClientHelloPayload
impl Ja3Extractor for ClientHelloPayload
Source§fn ja3(&self) -> Ja3
fn ja3(&self) -> Ja3
Get the JA3 of a
ClientHelloPayload
Source§fn ja3_with_real_version(&self) -> Ja3
fn ja3_with_real_version(&self) -> Ja3
Almost same as
ja3
, except that the TLS version specified in extensions, if any, are
preferred over the one indicated by the record header. Read moreSource§fn ja3_with_real_version_and_grease(&self) -> Ja3
fn ja3_with_real_version_and_grease(&self) -> Ja3
Check
ja3_with_real_version
and ja3_with_grease
for more info.Source§fn ja3_with_grease(&self) -> Ja3
fn ja3_with_grease(&self) -> Ja3
Source§fn ja3_and_more(&self) -> Ja3andMore
fn ja3_and_more(&self) -> Ja3andMore
Get the JA3 and more fields of a
ClientHelloPayload
Read moreSource§fn ja3_and_more_with_grease(&self) -> Ja3andMore
fn ja3_and_more_with_grease(&self) -> Ja3andMore
Auto Trait Implementations§
impl Freeze for ClientHelloPayload
impl RefUnwindSafe for ClientHelloPayload
impl Send for ClientHelloPayload
impl Sync for ClientHelloPayload
impl Unpin for ClientHelloPayload
impl UnwindSafe for ClientHelloPayload
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