aboutsummaryrefslogtreecommitdiff
path: root/openssl/src/ssl/tests/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'openssl/src/ssl/tests/mod.rs')
-rw-r--r--openssl/src/ssl/tests/mod.rs45
1 files changed, 40 insertions, 5 deletions
diff --git a/openssl/src/ssl/tests/mod.rs b/openssl/src/ssl/tests/mod.rs
index 5a8067c9..eeada33a 100644
--- a/openssl/src/ssl/tests/mod.rs
+++ b/openssl/src/ssl/tests/mod.rs
@@ -1082,7 +1082,7 @@ fn verify_invalid_hostname() {
#[test]
fn connector_valid_hostname() {
- let connector = ClientConnectorBuilder::tls().unwrap().build();
+ let connector = ClientConnectorBuilder::new(SslMethod::tls()).unwrap().build();
let s = TcpStream::connect("google.com:443").unwrap();
let mut socket = connector.connect("google.com", s).unwrap();
@@ -1098,28 +1098,63 @@ fn connector_valid_hostname() {
#[test]
fn connector_invalid_hostname() {
- let connector = ClientConnectorBuilder::tls().unwrap().build();
+ let connector = ClientConnectorBuilder::new(SslMethod::tls()).unwrap().build();
let s = TcpStream::connect("google.com:443").unwrap();
assert!(connector.connect("foobar.com", s).is_err());
}
#[test]
-fn connector_client_server() {
+fn connector_client_server_mozilla_intermediate() {
let listener = TcpListener::bind("127.0.0.1:0").unwrap();
let port = listener.local_addr().unwrap().port();
let t = thread::spawn(move || {
let key = PKey::private_key_from_pem(KEY).unwrap();
let cert = X509::from_pem(CERT).unwrap();
- let connector = ServerConnectorBuilder::tls(&key, &cert, None::<X509>).unwrap().build();
+ let connector = ServerConnectorBuilder::mozilla_intermediate(
+ SslMethod::tls(), &key, &cert, None::<X509>)
+ .unwrap()
+ .build();
let stream = listener.accept().unwrap().0;
let mut stream = connector.connect(stream).unwrap();
stream.write_all(b"hello").unwrap();
});
- let mut connector = ClientConnectorBuilder::tls().unwrap();
+ let mut connector = ClientConnectorBuilder::new(SslMethod::tls()).unwrap();
+ connector.context_mut().set_CA_file("test/root-ca.pem").unwrap();
+ let connector = connector.build();
+
+ let stream = TcpStream::connect(("127.0.0.1", port)).unwrap();
+ let mut stream = connector.connect("foobar.com", stream).unwrap();
+
+ let mut buf = [0; 5];
+ stream.read_exact(&mut buf).unwrap();
+ assert_eq!(b"hello", &buf);
+
+ t.join().unwrap();
+}
+
+#[test]
+fn connector_client_server_mozilla_modern() {
+ let listener = TcpListener::bind("127.0.0.1:0").unwrap();
+ let port = listener.local_addr().unwrap().port();
+
+ let t = thread::spawn(move || {
+ let key = PKey::private_key_from_pem(KEY).unwrap();
+ let cert = X509::from_pem(CERT).unwrap();
+ let connector = ServerConnectorBuilder::mozilla_modern(
+ SslMethod::tls(), &key, &cert, None::<X509>)
+ .unwrap()
+ .build();
+ let stream = listener.accept().unwrap().0;
+ let mut stream = connector.connect(stream).unwrap();
+
+ stream.write_all(b"hello").unwrap();
+ });
+
+ let mut connector = ClientConnectorBuilder::new(SslMethod::tls()).unwrap();
connector.context_mut().set_CA_file("test/root-ca.pem").unwrap();
let connector = connector.build();