pub struct ClientSessionMemoryCache { /* private fields */ }Expand description
An implementer of ClientSessionStore that stores everything
in memory.
It enforces a limit on the number of entries to bound memory usage.
Implementations§
Source§impl ClientSessionMemoryCache
impl ClientSessionMemoryCache
Sourcepub fn new(size: usize) -> Self
pub fn new(size: usize) -> Self
Make a new ClientSessionMemoryCache.
size determines the maximum number of servers to remember:
size divided by MAX_TLS13_TICKETS_PER_SERVER (8), rounded
up. Each server keeps up to 8 TLS 1.3 tickets. When the maximum
is reached, the server that was added first is evicted.
For example, new(100) remembers up to 13 servers. Any size
from 1 to 8 remembers one server, and a size of 0 remembers
none.
Trait Implementations§
Source§impl ClientSessionStore for ClientSessionMemoryCache
impl ClientSessionStore for ClientSessionMemoryCache
Source§fn set_kx_hint(&self, server_name: ServerName<'static>, group: NamedGroup)
fn set_kx_hint(&self, server_name: ServerName<'static>, group: NamedGroup)
Remember what
NamedGroup the given server chose.Source§fn kx_hint(&self, server_name: &ServerName<'_>) -> Option<NamedGroup>
fn kx_hint(&self, server_name: &ServerName<'_>) -> Option<NamedGroup>
This should return the value most recently passed to
set_kx_hint
for the given server_name. Read moreSource§fn set_tls12_session(
&self,
_server_name: ServerName<'static>,
_value: Tls12ClientSessionValue,
)
fn set_tls12_session( &self, _server_name: ServerName<'static>, _value: Tls12ClientSessionValue, )
Remember a TLS1.2 session. Read more
Source§fn tls12_session(
&self,
_server_name: &ServerName<'_>,
) -> Option<Tls12ClientSessionValue>
fn tls12_session( &self, _server_name: &ServerName<'_>, ) -> Option<Tls12ClientSessionValue>
Get the most recently saved TLS1.2 session for
server_name provided to set_tls12_session.Source§fn remove_tls12_session(&self, _server_name: &ServerName<'static>)
fn remove_tls12_session(&self, _server_name: &ServerName<'static>)
Remove and forget any saved TLS1.2 session for
server_name.Source§fn insert_tls13_ticket(
&self,
server_name: ServerName<'static>,
value: Tls13ClientSessionValue,
)
fn insert_tls13_ticket( &self, server_name: ServerName<'static>, value: Tls13ClientSessionValue, )
Remember a TLS1.3 ticket that might be retrieved later from
take_tls13_ticket, allowing
resumption of this session. Read moreSource§fn take_tls13_ticket(
&self,
server_name: &ServerName<'static>,
) -> Option<Tls13ClientSessionValue>
fn take_tls13_ticket( &self, server_name: &ServerName<'static>, ) -> Option<Tls13ClientSessionValue>
Return a TLS1.3 ticket previously provided to
add_tls13_ticket. Read moreAuto Trait Implementations§
impl !Freeze for ClientSessionMemoryCache
impl RefUnwindSafe for ClientSessionMemoryCache
impl Send for ClientSessionMemoryCache
impl Sync for ClientSessionMemoryCache
impl Unpin for ClientSessionMemoryCache
impl UnsafeUnpin for ClientSessionMemoryCache
impl UnwindSafe for ClientSessionMemoryCache
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more