summaryrefslogtreecommitdiffstats
path: root/vendor/security-framework/examples/client.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/security-framework/examples/client.rs')
-rw-r--r--vendor/security-framework/examples/client.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/vendor/security-framework/examples/client.rs b/vendor/security-framework/examples/client.rs
new file mode 100644
index 000000000..a352bf94f
--- /dev/null
+++ b/vendor/security-framework/examples/client.rs
@@ -0,0 +1,24 @@
+use security_framework::secure_transport::ClientBuilder;
+use std::io::{Read, Write};
+use std::net::TcpStream;
+
+fn main() {
+ let stream = TcpStream::connect("google.com:443").unwrap();
+ let mut stream = ClientBuilder::new()
+ .handshake("google.com", stream)
+ .unwrap();
+ println!(
+ "negotiated chipher: {:?}",
+ stream.context().negotiated_cipher().unwrap()
+ );
+ println!(
+ "negotiated version: {:?}",
+ stream.context().negotiated_protocol_version().unwrap()
+ );
+
+ stream.write_all(b"GET / HTTP/1.0\r\n\r\n").unwrap();
+ stream.flush().unwrap();
+ let mut buf = vec![];
+ stream.read_to_end(&mut buf).unwrap();
+ println!("{}", String::from_utf8_lossy(&buf));
+}