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]
fn builder() -> Result<TlsConnectorBuilder>
Returns a new builder for a TlsConnector
.
fn connect<S>(&self,
domain: &str,
stream: S)
-> Result<TlsStream<S>, HandshakeError<S>> where S: Read + Write
domain: &str,
stream: S)
-> Result<TlsStream<S>, HandshakeError<S>> where S: Read + Write
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.