pub struct SslChecker { /* private fields */ }Expand description
Client for performing SSL certificate chain inspection.
Implementations§
Source§impl SslChecker
impl SslChecker
Sourcepub fn from_config(config: &SeerConfig) -> Self
pub fn from_config(config: &SeerConfig) -> Self
Builds a checker honoring ~/.seer/config.toml settings.
Reads timeouts.http_secs (clamped to 1–120s by
crate::config::SeerConfig::load) for the TCP connect + TLS
handshake, and timeouts.dns_secs (1–60s) for the internal resolver
used by the parallel CAA lookup. Unlike the coarse
SslChecker::with_timeout (which reuses the TLS timeout for DNS),
this applies each protocol’s own configured timeout — matching the
crate::availability::AvailabilityChecker::from_config precedent.
Sourcepub fn with_timeout(self, timeout: Duration) -> Self
pub fn with_timeout(self, timeout: Duration) -> Self
Sets the timeout for the TCP connect and TLS handshake.
Sourcepub async fn check(&self, domain: &str) -> Result<SslReport>
pub async fn check(&self, domain: &str) -> Result<SslReport>
Inspects the SSL certificate chain for the given domain.
Connects to port 443, performs a TLS handshake, and extracts detailed certificate information including the full chain, SANs, and key details.
§Arguments
domain- The domain name to inspect (e.g., “example.com”)
§Returns
Ok(SslReport)- Detailed SSL certificate informationErr(SeerError)- If connection or certificate parsing fails
Trait Implementations§
Source§impl Clone for SslChecker
impl Clone for SslChecker
Source§fn clone(&self) -> SslChecker
fn clone(&self) -> SslChecker
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SslChecker
impl Debug for SslChecker
Auto Trait Implementations§
impl !RefUnwindSafe for SslChecker
impl !UnwindSafe for SslChecker
impl Freeze for SslChecker
impl Send for SslChecker
impl Sync for SslChecker
impl Unpin for SslChecker
impl UnsafeUnpin for SslChecker
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> 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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>
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