diff options
| author | Frank Denis <[email protected]> | 2015-09-01 09:25:41 +0200 |
|---|---|---|
| committer | Frank Denis <[email protected]> | 2015-09-13 12:45:05 +0200 |
| commit | 6a2b4402e9f2e93008bd47470d88e12337edcfae (patch) | |
| tree | 88bf9db72ac0f1474797541074b792ae5c484a11 /openssl/src/ssl | |
| parent | Merge pull request #270 from mvdnes/crypto_segv (diff) | |
| download | rust-openssl-6a2b4402e9f2e93008bd47470d88e12337edcfae.tar.xz rust-openssl-6a2b4402e9f2e93008bd47470d88e12337edcfae.zip | |
Use try_ssl_null!() when relevant
Diffstat (limited to 'openssl/src/ssl')
| -rw-r--r-- | openssl/src/ssl/mod.rs | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/openssl/src/ssl/mod.rs b/openssl/src/ssl/mod.rs index ee2e1f9f..20c9234c 100644 --- a/openssl/src/ssl/mod.rs +++ b/openssl/src/ssl/mod.rs @@ -432,10 +432,7 @@ impl SslContext { pub fn new(method: SslMethod) -> Result<SslContext, SslError> { init(); - let ctx = unsafe { ffi::SSL_CTX_new(method.to_raw()) }; - if ctx == ptr::null_mut() { - return Err(SslError::get()); - } + let ctx = try_ssl_null!(unsafe { ffi::SSL_CTX_new(method.to_raw()) }); let ctx = SslContext { ctx: ctx }; @@ -690,10 +687,7 @@ impl Drop for Ssl { impl Ssl { pub fn new(ctx: &SslContext) -> Result<Ssl, SslError> { - let ssl = unsafe { ffi::SSL_new(ctx.ctx) }; - if ssl == ptr::null_mut() { - return Err(SslError::get()); - } + let ssl = try_ssl_null!(unsafe { ffi::SSL_new(ctx.ctx) }); let ssl = Ssl { ssl: ssl }; Ok(ssl) } @@ -1019,10 +1013,7 @@ impl DirectStream<net::TcpStream> { impl<S> DirectStream<S> { fn new_base(ssl: Ssl, stream: S, sock: c_int) -> Result<DirectStream<S>, SslError> { unsafe { - let bio = ffi::BIO_new_socket(sock, 0); - if bio == ptr::null_mut() { - return Err(SslError::get()); - } + let bio = try_ssl_null!(ffi::BIO_new_socket(sock, 0)); ffi::SSL_set_bio(ssl.ssl, bio, bio); } |