pub struct MetadataProtector { /* private fields */ }Expand description
Metadata protection and anonymization utilities
Implementations§
Source§impl MetadataProtector
impl MetadataProtector
Sourcepub fn with_config(config: MetadataConfig) -> Self
pub fn with_config(config: MetadataConfig) -> Self
Create a new metadata protector with custom configuration
Sourcepub fn protect_metadata(
&self,
original_metadata: &[u8],
) -> Result<ProtectedMetadata, OnionError>
pub fn protect_metadata( &self, original_metadata: &[u8], ) -> Result<ProtectedMetadata, OnionError>
Protect metadata for a message
Sourcepub fn anonymize_ip(&self, original_ip: &str) -> Result<String, OnionError>
pub fn anonymize_ip(&self, original_ip: &str) -> Result<String, OnionError>
Anonymize IP addresses using proxy pools
Sourcepub fn scrub_packet_headers(
&self,
packet: &mut Vec<u8>,
) -> Result<(), OnionError>
pub fn scrub_packet_headers( &self, packet: &mut Vec<u8>, ) -> Result<(), OnionError>
Remove identifying information from packets
Trait Implementations§
Auto Trait Implementations§
impl Freeze for MetadataProtector
impl RefUnwindSafe for MetadataProtector
impl Send for MetadataProtector
impl Sync for MetadataProtector
impl Unpin for MetadataProtector
impl UnwindSafe for MetadataProtector
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
Converts
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>
Converts
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