diff options
| author | Steven Fackler <[email protected]> | 2017-01-05 12:56:14 -0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-01-05 12:56:14 -0800 |
| commit | 58c468803160f6f0d78c80c846dbf4622bb43df9 (patch) | |
| tree | 20205314f7c3ce878a76b41e794e818caaa5e5c2 /openssl/src/ssl/tests | |
| parent | Release v0.9.5 (diff) | |
| parent | Fix time type (diff) | |
| download | rust-openssl-58c468803160f6f0d78c80c846dbf4622bb43df9.tar.xz rust-openssl-58c468803160f6f0d78c80c846dbf4622bb43df9.zip | |
Merge pull request #549 from sfackler/ssl-session
Ssl session
Diffstat (limited to 'openssl/src/ssl/tests')
| -rw-r--r-- | openssl/src/ssl/tests/mod.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/openssl/src/ssl/tests/mod.rs b/openssl/src/ssl/tests/mod.rs index e685d658..14bb2f71 100644 --- a/openssl/src/ssl/tests/mod.rs +++ b/openssl/src/ssl/tests/mod.rs @@ -1372,6 +1372,30 @@ fn tmp_ecdh_callback_ssl() { assert!(CALLED_BACK.load(Ordering::SeqCst)); } +#[test] +fn idle_session() { + let ctx = SslContext::builder(SslMethod::tls()).unwrap().build(); + let ssl = Ssl::new(&ctx).unwrap(); + assert!(ssl.session().is_none()); +} + +#[test] +fn active_session() { + let connector = SslConnectorBuilder::new(SslMethod::tls()).unwrap().build(); + + let s = TcpStream::connect("google.com:443").unwrap(); + let socket = connector.connect("google.com", s).unwrap(); + let session = socket.ssl().session().unwrap(); + let len = session.master_key_len(); + let mut buf = vec![0; len - 1]; + let copied = session.master_key(&mut buf); + assert_eq!(copied, buf.len()); + let mut buf = vec![0; len + 1]; + let copied = session.master_key(&mut buf); + assert_eq!(copied, len); + +} + fn _check_kinds() { fn is_send<T: Send>() {} fn is_sync<T: Sync>() {} |