Struct security_framework::secure_transport::ClientBuilder[][src]

pub struct ClientBuilder { /* fields omitted */ }
Expand description

A builder type to simplify the creation of client side SslStreams.

Implementations

impl ClientBuilder[src]

pub fn new() -> Self[src]

Creates a new builder with default options.

pub fn anchor_certificates(&mut self, certs: &[SecCertificate]) -> &mut Self[src]

Specifies the set of root certificates to trust when verifying the server’s certificate.

pub fn trust_anchor_certificates_only(&mut self, only: bool) -> &mut Self[src]

Specifies whether to trust the built-in certificates in addition to specified anchor certificates.

pub fn danger_accept_invalid_certs(&mut self, noverify: bool) -> &mut Self[src]

Specifies whether to trust invalid certificates.

Warning

You should think very carefully before using this method. If invalid certificates are trusted, any certificate for any site will be trusted for use. This includes expired certificates. This introduces significant vulnerabilities, and should only be used as a last resort.

pub fn use_sni(&mut self, use_sni: bool) -> &mut Self[src]

Specifies whether to use Server Name Indication (SNI).

pub fn danger_accept_invalid_hostnames(
    &mut self,
    danger_accept_invalid_hostnames: bool
) -> &mut Self
[src]

Specifies whether to verify that the server’s hostname matches its certificate.

Warning

You should think very carefully before using this method. If hostnames are not verified, any valid certificate for any site will be trusted for use. This introduces significant vulnerabilities, and should only be used as a last resort.

pub fn whitelist_ciphers(
    &mut self,
    whitelisted_ciphers: &[CipherSuite]
) -> &mut Self
[src]

Set a whitelist of enabled ciphers. Any ciphers not whitelisted will be disabled.

pub fn blacklist_ciphers(
    &mut self,
    blacklisted_ciphers: &[CipherSuite]
) -> &mut Self
[src]

Set a blacklist of disabled ciphers. Blacklisted ciphers will be disabled.

pub fn identity(
    &mut self,
    identity: &SecIdentity,
    chain: &[SecCertificate]
) -> &mut Self
[src]

Use the specified identity as a SSL/TLS client certificate.

pub fn protocol_min(&mut self, min: SslProtocol) -> &mut Self[src]

Configure the minimum protocol that this client will support.

pub fn protocol_max(&mut self, max: SslProtocol) -> &mut Self[src]

Configure the minimum protocol that this client will support.

pub fn handshake<S>(
    &self,
    domain: &str,
    stream: S
) -> Result<SslStream<S>, ClientHandshakeError<S>> where
    S: Read + Write
[src]

Initiates a new SSL/TLS session over a stream connected to the specified domain.

If both SNI and hostname verification are disabled, the value of domain will be ignored.

Trait Implementations

impl Debug for ClientBuilder[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl Default for ClientBuilder[src]

fn default() -> ClientBuilder[src]

Returns the “default value” for a type. Read more

Auto Trait Implementations

impl RefUnwindSafe for ClientBuilder

impl Send for ClientBuilder

impl Sync for ClientBuilder

impl Unpin for ClientBuilder

impl UnwindSafe for ClientBuilder

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.