pub struct ClientHelloPayload {
pub client_version: ProtocolVersion,
pub random: Random,
pub session_id: SessionID,
pub cipher_suites: CipherSuites,
pub compression_methods: Compressions,
pub extensions: ClientExtensions,
}
Fields§
§client_version: ProtocolVersion
§random: Random
§session_id: SessionID
§cipher_suites: CipherSuites
§compression_methods: Compressions
§extensions: ClientExtensions
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<&ServerNameRequest>
pub fn get_sigalgs_extension(&self) -> Option<&SupportedSignatureSchemes>
pub fn get_namedgroups_extension(&self) -> Option<&NamedGroups>
pub fn get_ecpoints_extension(&self) -> Option<&ECPointFormatList>
pub fn get_alpn_extension(&self) -> Option<&ProtocolNameList>
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<&ProtocolVersions>
pub fn get_psk(&self) -> Option<&PresharedKeyOffer>
pub fn check_psk_ext_is_last(&self) -> bool
pub fn get_psk_modes(&self) -> Option<&PSKKeyExchangeModes>
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 Clone for ClientHelloPayload
impl Clone for ClientHelloPayload
source§fn clone(&self) -> ClientHelloPayload
fn clone(&self) -> ClientHelloPayload
Returns a copy 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 Codec for ClientHelloPayload
impl Codec for ClientHelloPayload
source§fn read(r: &mut Reader<'_>) -> Option<Self>
fn read(r: &mut Reader<'_>) -> Option<Self>
Decode yourself by fiddling with the
Reader
.
Return Some if it worked, None if not.source§fn get_encoding(&self) -> Vec<u8>
fn get_encoding(&self) -> Vec<u8>
Convenience function to get the results of
encode()
.source§fn read_bytes(bytes: &[u8]) -> Option<Self>
fn read_bytes(bytes: &[u8]) -> Option<Self>
Read one of these from the front of
bytes
and
return it.source§impl Debug for ClientHelloPayload
impl Debug for ClientHelloPayload
source§impl Extractable<TLSProtocolTypes> for ClientHelloPayload
impl Extractable<TLSProtocolTypes> for ClientHelloPayload
source§fn extract_knowledge<'a>(
&'a self,
knowledges: &mut Vec<Knowledge<'a, TLSProtocolTypes>>,
matcher: Option<TlsQueryMatcher>,
source: &'a Source,
) -> Result<(), Error>
fn extract_knowledge<'a>( &'a self, knowledges: &mut Vec<Knowledge<'a, TLSProtocolTypes>>, matcher: Option<TlsQueryMatcher>, source: &'a Source, ) -> Result<(), Error>
Fill
knowledges
with new knowledge gathered form the type implementing EvaluatedTerm
by recursively calling extract_knowledge
on all contained element
This will put source as the source of all the produced knowledge, matcher is also passed
recursively but might be overwritten by a type with a more specific matcherAuto 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
§impl<T> CloneAny for T
impl<T> CloneAny for T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)source§impl<T> CodecP for Twhere
T: Codec,
impl<T> CodecP for Twhere
T: Codec,
source§impl<T, PT> EvaluatedTerm<PT> for T
impl<T, PT> EvaluatedTerm<PT> for T
§impl<Tail, T> Prepend<T> for Tail
impl<Tail, T> Prepend<T> for Tail
§type PreprendResult = Tail
type PreprendResult = Tail
The Resulting [
TupleList
], of an [Prepend::prepend()
] call,
including the prepended entry.