diff options
| author | Steven Fackler <[email protected]> | 2017-01-04 21:15:09 -0800 |
|---|---|---|
| committer | Steven Fackler <[email protected]> | 2017-01-04 21:15:09 -0800 |
| commit | 0b1bfee46d6c986d6cb073c922045ae98b598900 (patch) | |
| tree | b4ccd0d608fcf6f3830b75d101c3619081dc6d0f /openssl/src | |
| parent | Provide access to the session ID (diff) | |
| download | rust-openssl-0b1bfee46d6c986d6cb073c922045ae98b598900.tar.xz rust-openssl-0b1bfee46d6c986d6cb073c922045ae98b598900.zip | |
session is nullable
Diffstat (limited to 'openssl/src')
| -rw-r--r-- | openssl/src/ssl/mod.rs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/openssl/src/ssl/mod.rs b/openssl/src/ssl/mod.rs index 3949210d..ce9d65ef 100644 --- a/openssl/src/ssl/mod.rs +++ b/openssl/src/ssl/mod.rs @@ -1349,8 +1349,15 @@ impl SslRef { } /// Returns the SSL session. - pub fn session(&self) -> &SslSessionRef { - unsafe { SslSessionRef::from_ptr(ffi::SSL_get_session(self.as_ptr())) } + pub fn session(&self) -> Option<&SslSessionRef> { + unsafe { + let p = ffi::SSL_get_session(self.as_ptr()); + if p.is_null() { + None + } else { + Some(SslSessionRef::from_ptr(p)) + } + } } } |