Struct trust_dns_proto::openssl::TlsClientStreamBuilder
source · pub struct TlsClientStreamBuilder<S>(/* private fields */);
Available on crate feature
dns-over-openssl
only.Expand description
A Builder for the TlsClientStream
Implementations§
source§impl<S: DnsTcpStream> TlsClientStreamBuilder<S>
impl<S: DnsTcpStream> TlsClientStreamBuilder<S>
sourcepub fn add_ca(&mut self, ca: X509)
pub fn add_ca(&mut self, ca: X509)
Add a custom trusted peer certificate or certificate authority.
If this is the ‘client’ then the ‘server’ must have it associated as it’s identity
, or have had the identity
signed by this certificate.
sourcepub fn add_ca_der(&mut self, ca_der: &[u8]) -> Result<()>
pub fn add_ca_der(&mut self, ca_der: &[u8]) -> Result<()>
Add a custom trusted peer certificate or certificate authority encoded as a (binary) DER-encoded X.509 certificate.
If this is the ‘client’ then the ‘server’ must have it associated as it’s identity
, or have had the identity
signed by this certificate.
sourcepub fn bind_addr(&mut self, bind_addr: SocketAddr)
pub fn bind_addr(&mut self, bind_addr: SocketAddr)
Sets the address to connect from.
sourcepub fn build_with_future<F>(
self,
future: F,
name_server: SocketAddr,
dns_name: String
) -> (Pin<Box<dyn Future<Output = Result<TlsClientStream<S>, ProtoError>> + Send>>, BufDnsStreamHandle)where
F: Future<Output = Result<S>> + Send + Unpin + 'static,
pub fn build_with_future<F>( self, future: F, name_server: SocketAddr, dns_name: String ) -> (Pin<Box<dyn Future<Output = Result<TlsClientStream<S>, ProtoError>> + Send>>, BufDnsStreamHandle)where F: Future<Output = Result<S>> + Send + Unpin + 'static,
Creates a new TlsStream to the specified name_server with future
Arguments
future
- future for underlying tcp streamname_server
- IP and Port for the remote DNS resolverdns_name
- The DNS name, Subject Public Key Info (SPKI) name, as associated to a certificate
source§impl<S: Connect> TlsClientStreamBuilder<S>
impl<S: Connect> TlsClientStreamBuilder<S>
sourcepub fn build(
self,
name_server: SocketAddr,
dns_name: String
) -> (Pin<Box<dyn Future<Output = Result<TlsClientStream<S>, ProtoError>> + Send>>, BufDnsStreamHandle)
pub fn build( self, name_server: SocketAddr, dns_name: String ) -> (Pin<Box<dyn Future<Output = Result<TlsClientStream<S>, ProtoError>> + Send>>, BufDnsStreamHandle)
Creates a new TlsStream to the specified name_server
Arguments
name_server
- IP and Port for the remote DNS resolverbind_addr
- IP and port to connect fromdns_name
- The DNS name, Subject Public Key Info (SPKI) name, as associated to a certificate
Trait Implementations§
source§impl<S: DnsTcpStream> Default for TlsClientStreamBuilder<S>
impl<S: DnsTcpStream> Default for TlsClientStreamBuilder<S>
Auto Trait Implementations§
impl<S> RefUnwindSafe for TlsClientStreamBuilder<S>where S: RefUnwindSafe,
impl<S> Send for TlsClientStreamBuilder<S>where S: Send,
impl<S> Sync for TlsClientStreamBuilder<S>where S: Sync,
impl<S> Unpin for TlsClientStreamBuilder<S>where S: Unpin,
impl<S> UnwindSafe for TlsClientStreamBuilder<S>where S: UnwindSafe,
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