Struct native_tls::TlsConnector [] [src]

pub struct TlsConnector(_);

A builder for client-side TLS connections.

Examples

use native_tls::TlsConnector;
use std::io::{Read, Write};
use std::net::TcpStream;

let connector = TlsConnector::builder().unwrap().build().unwrap();

let stream = TcpStream::connect("google.com:443").unwrap();
let mut stream = connector.connect("google.com", stream).unwrap();

stream.write_all(b"GET / HTTP/1.0\r\n\r\n").unwrap();
let mut res = vec![];
stream.read_to_end(&mut res).unwrap();
println!("{}", String::from_utf8_lossy(&res));

Methods

impl TlsConnector
[src]

[src]

Returns a new builder for a TlsConnector.

[src]

Initiates a TLS handshake.

The provided domain will be used for both SNI and certificate hostname validation.

If the socket is nonblocking and a WouldBlock error is returned during the handshake, a HandshakeError::Interrupted error will be returned which can be used to restart the handshake when the socket is ready again.

[src]

Like connect, but does not validate the server's domain name against its certificate.

Warning

You should think very carefully before you use this method. If hostname verification is not used, any valid certificate for any site will be trusted for use from any other. This introduces a significant vulnerability to man-in-the-middle attacks.

Trait Implementations

impl Clone for TlsConnector
[src]

[src]

Returns a copy of the value. Read more

1.0.0
[src]

Performs copy-assignment from source. Read more