在线文档教程

ssl_session_cache_api

ssl_session_cache_api

模块

ssl_session_cache_api

模块摘要

TLS会话缓存API

描述

定义TLS会话缓存的API,以便可以通过定义实现此API的新回调模块来替换数据存储方案。

数据类型

以下数据类型用于以下功能ssl_session_cache_api

cache_ref() =

opaque()

key() =

{partialkey(), session_id()}

partialkey() =

opaque()

session_id() =

binary()

session()=

opaque()

输出

delete(Cache, Key) -> _

类型

删除缓存条目。只从缓存处理过程中调用。

foldl(Fun, Acc0, Cache) -> Acc

类型

调用Fun(Elem, AccIn)缓存中的连续元素,以AccIn == Acc0Fun/2必须返回一个新的累加器,并将其传递给下一个呼叫。该函数返回累加器的最终值。Acc0如果缓存为空则返回。

init(Args) -> opaque()

类型

包括{role, client | server}。目前这是唯一预定义的属性,也可以是用户定义的属性。另见应用程序环境变量session_cb_init_args

对缓存进行可能的初始化并返回对其作为其他API函数的参数的引用。由缓存处理进程init函数调用,因此对它的要求与正常的进程init函数相同。此函数在启动SSL应用程序时调用两次,一次使用角色客户端,一次使用角色服务器,因为SSL应用程序必须准备好承担这两种角色。

lookup(Cache, Key) -> Entry

类型

查找缓存条目。可以从任何进程调用。

select_session(Cache, PartialKey) -> [session()]

类型

选择可重用的会话。可以从任何进程调用。

size(Cache) -> integer()

类型

返回缓存中的会话数。如果大小超过会话的最大数量,则无论当前缓存条目的剩余生存期如何,当前缓存项都将失效。可以从任何进程调用。

terminate(Cache) -> _

类型

处理缓存处理过程结束时可能需要的清理。

update(Cache, Key, Session) -> _

类型

缓存新会话或更新已缓存的会话。仅从缓存处理进程调用。