pub enum IprevResult {
Pass,
Fail(Error),
TempError(Error),
PermError(Error),
None,
}Expand description
An iprev result code, as defined in RFC 8601 Section 3.
The error carried by the failure variants explains the result and is
written as a comment in the Authentication-Results header.
Variants§
Pass
A PTR name resolved back to the client IP address.
Fail(Error)
The PTR names were found, but none of them resolved back to the client
IP address. Carries Error::NotAligned.
TempError(Error)
A DNS lookup failed with a transient error (DnsError::Resolver).
The check may succeed if retried later.
PermError(Error)
A DNS lookup failed permanently: no PTR record exists, a name was malformed or a forward lookup returned no records.
None
No iprev check was performed. MessageAuthenticator::verify_iprev
never returns this variant.
Trait Implementations§
Source§impl Clone for IprevResult
impl Clone for IprevResult
Source§impl Debug for IprevResult
impl Debug for IprevResult
Source§impl Display for IprevResult
impl Display for IprevResult
impl Eq for IprevResult
Source§impl From<Error> for IprevResult
impl From<Error> for IprevResult
Source§impl PartialEq for IprevResult
impl PartialEq for IprevResult
impl StructuralPartialEq for IprevResult
Auto Trait Implementations§
impl Freeze for IprevResult
impl RefUnwindSafe for IprevResult
impl Send for IprevResult
impl Sync for IprevResult
impl Unpin for IprevResult
impl UnsafeUnpin for IprevResult
impl UnwindSafe for IprevResult
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
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<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