aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssl/src/ssl_session_cache_api.erl
diff options
context:
space:
mode:
authorIngela Anderton Andin <[email protected]>2019-02-05 15:14:03 +0100
committerIngela Anderton Andin <[email protected]>2019-02-05 15:57:03 +0100
commitc44caa428b65e85b034b01a7f6145e5fee60a863 (patch)
treeab9e99da4400bf93cc2f512f10f1ebf66452fd80 /lib/ssl/src/ssl_session_cache_api.erl
parente8ddbc58fda4ca07ff1f2f4d3c77ecae036ee513 (diff)
parentc2126443b79aa53c9fc04e7dad4e6c717ca6986b (diff)
downloadotp-c44caa428b65e85b034b01a7f6145e5fee60a863.tar.gz
otp-c44caa428b65e85b034b01a7f6145e5fee60a863.tar.bz2
otp-c44caa428b65e85b034b01a7f6145e5fee60a863.zip
Merge branch 'maint'
Conflicts: lib/ssl/doc/src/ssl.xml lib/ssl/src/ssl.erl lib/ssl/src/ssl_cipher_format.erl lib/ssl/src/tls_handshake.erl
Diffstat (limited to 'lib/ssl/src/ssl_session_cache_api.erl')
-rw-r--r--lib/ssl/src/ssl_session_cache_api.erl24
1 files changed, 15 insertions, 9 deletions
diff --git a/lib/ssl/src/ssl_session_cache_api.erl b/lib/ssl/src/ssl_session_cache_api.erl
index b68c75a09b..5f96f905b1 100644
--- a/lib/ssl/src/ssl_session_cache_api.erl
+++ b/lib/ssl/src/ssl_session_cache_api.erl
@@ -23,14 +23,20 @@
-module(ssl_session_cache_api).
-include("ssl_handshake.hrl").
-include("ssl_internal.hrl").
+-include("ssl_api.hrl").
--type key() :: {{host(), inet:port_number()}, session_id()} | {inet:port_number(), session_id()}.
+-export_type([session_cache_key/0, session/0, partial_key/0, session_cache_ref/0]).
--callback init(list()) -> db_handle().
--callback terminate(db_handle()) -> any().
--callback lookup(db_handle(), key()) -> #session{} | undefined.
--callback update(db_handle(), key(), #session{}) -> any().
--callback delete(db_handle(), key()) -> any().
--callback foldl(fun(), term(), db_handle()) -> term().
--callback select_session(db_handle(), {host(), inet:port_number()} | inet:port_number()) -> [#session{}].
--callback size(db_handle()) -> integer().
+-type session_cache_ref() :: any().
+-type session_cache_key() :: {partial_key(), ssl:session_id()}.
+-opaque session() :: #session{}.
+-opaque partial_key() :: {ssl:host(), inet:port_number()} | inet:port_number().
+
+-callback init(list()) -> session_cache_ref().
+-callback terminate(session_cache_ref()) -> any().
+-callback lookup(session_cache_ref(), session_cache_key()) -> #session{} | undefined.
+-callback update(session_cache_ref(), session_cache_key(), #session{}) -> any().
+-callback delete(session_cache_ref(), session_cache_key()) -> any().
+-callback foldl(fun(), term(), session_cache_ref()) -> term().
+-callback select_session(session_cache_ref(), {ssl:host(), inet:port_number()} | inet:port_number()) -> [#session{}].
+-callback size(session_cache_ref()) -> integer().