Struct boring::ssl::SslSession
source · [−]#[repr(transparent)]pub struct SslSession(_);
Expand description
An encoded SSL session.
These can be cached to share sessions across connections.
Implementations
sourceimpl SslSession
impl SslSession
sourcepub fn from_der(der: &[u8]) -> Result<SslSession, ErrorStack>
pub fn from_der(der: &[u8]) -> Result<SslSession, ErrorStack>
Deserializes a DER-encoded session structure.
This corresponds to d2i_SSL_SESSION
.
Methods from Deref<Target = SslSessionRef>
sourcepub fn id(&self) -> &[u8]ⓘNotable traits for &[u8]impl Read for &[u8]impl Write for &mut [u8]
pub fn id(&self) -> &[u8]ⓘNotable traits for &[u8]impl Read for &[u8]impl Write for &mut [u8]
Returns the SSL session ID.
This corresponds to SSL_SESSION_get_id
.
sourcepub fn master_key_len(&self) -> usize
pub fn master_key_len(&self) -> usize
Returns the length of the master key.
This corresponds to SSL_SESSION_get_master_key
.
sourcepub fn master_key(&self, buf: &mut [u8]) -> usize
pub fn master_key(&self, buf: &mut [u8]) -> usize
Copies the master key into the provided buffer.
Returns the number of bytes written, or the size of the master key if the buffer is empty.
This corresponds to SSL_SESSION_get_master_key
.
sourcepub fn time(&self) -> u64
pub fn time(&self) -> u64
Returns the time at which the session was established, in seconds since the Unix epoch.
This corresponds to SSL_SESSION_get_time
.
sourcepub fn timeout(&self) -> u32
pub fn timeout(&self) -> u32
Returns the sessions timeout, in seconds.
A session older than this time should not be used for session resumption.
This corresponds to SSL_SESSION_get_timeout
.
sourcepub fn protocol_version(&self) -> SslVersion
pub fn protocol_version(&self) -> SslVersion
Returns the session’s TLS protocol version.
This corresponds to SSL_SESSION_get_protocol_version
.
sourcepub fn to_der(&self) -> Result<Vec<u8>, ErrorStack>
pub fn to_der(&self) -> Result<Vec<u8>, ErrorStack>
Serializes the session into a DER-encoded structure.
This corresponds to i2d_SSL_SESSION
.
Trait Implementations
sourceimpl AsMut<SslSessionRef> for SslSession
impl AsMut<SslSessionRef> for SslSession
sourcefn as_mut(&mut self) -> &mut SslSessionRef
fn as_mut(&mut self) -> &mut SslSessionRef
sourceimpl AsRef<SslSessionRef> for SslSession
impl AsRef<SslSessionRef> for SslSession
sourcefn as_ref(&self) -> &SslSessionRef
fn as_ref(&self) -> &SslSessionRef
sourceimpl Borrow<SslSessionRef> for SslSession
impl Borrow<SslSessionRef> for SslSession
sourcefn borrow(&self) -> &SslSessionRef
fn borrow(&self) -> &SslSessionRef
sourceimpl BorrowMut<SslSessionRef> for SslSession
impl BorrowMut<SslSessionRef> for SslSession
sourcefn borrow_mut(&mut self) -> &mut SslSessionRef
fn borrow_mut(&mut self) -> &mut SslSessionRef
sourceimpl Clone for SslSession
impl Clone for SslSession
sourcefn clone(&self) -> SslSession
fn clone(&self) -> SslSession
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more