pub struct Ja4Fingerprint { /* private fields */ }Expand description
The JA4 fingerprint of one ClientHello.
Ja4Fingerprint::ja4 is computed up front, since it is the form that
is normally logged; the raw and original-order forms are built when
asked for.
Implementations§
Source§impl Ja4Fingerprint
impl Ja4Fingerprint
Sourcepub fn from_client_hello(body: &[u8]) -> Option<Self>
pub fn from_client_hello(body: &[u8]) -> Option<Self>
Fingerprints a ClientHello message body, as returned by
read_client_hello. None when it is malformed: a fingerprint of
a broken hello would not match what any other tool computes.
Trait Implementations§
Source§impl Clone for Ja4Fingerprint
impl Clone for Ja4Fingerprint
Source§impl Debug for Ja4Fingerprint
impl Debug for Ja4Fingerprint
Source§impl Display for Ja4Fingerprint
impl Display for Ja4Fingerprint
impl Eq for Ja4Fingerprint
Source§impl PartialEq for Ja4Fingerprint
impl PartialEq for Ja4Fingerprint
impl StructuralPartialEq for Ja4Fingerprint
Auto Trait Implementations§
impl Freeze for Ja4Fingerprint
impl RefUnwindSafe for Ja4Fingerprint
impl Send for Ja4Fingerprint
impl Sync for Ja4Fingerprint
impl Unpin for Ja4Fingerprint
impl UnsafeUnpin for Ja4Fingerprint
impl UnwindSafe for Ja4Fingerprint
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.