Botan
3.7.1
Crypto and TLS for C&
Toggle main menu visibility
Main Page
Related Pages
Topics
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Variables
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Enumerations
a
c
d
e
f
g
h
k
l
m
n
o
p
r
s
t
u
v
w
Enumerator
c
d
f
i
m
n
r
s
t
Concepts
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
f
h
i
m
n
o
p
r
s
t
u
v
w
Enumerations
b
c
d
e
k
m
n
o
p
s
t
x
Enumerator
_
a
b
c
d
e
f
h
k
l
m
n
p
q
r
s
t
u
w
x
Related Symbols
b
c
d
e
f
k
o
p
s
t
x
Files
File List
File Members
All
_
a
b
c
d
e
f
i
k
m
n
o
p
q
s
t
u
w
x
y
z
Functions
b
c
Variables
Typedefs
b
c
e
p
t
Enumerations
Enumerator
b
c
d
e
k
n
Macros
_
a
b
c
f
m
n
q
s
t
w
src
lib
tls
sessions_sqlite3
tls_session_manager_sqlite.h
Go to the documentation of this file.
1
/*
2
* SQLite3 TLS Session Manager
3
* (C) 2012 Jack Lloyd
4
*
5
* Botan is released under the Simplified BSD License (see license.txt)
6
*/
7
8
#ifndef BOTAN_TLS_SQLITE3_SESSION_MANAGER_H_
9
#define BOTAN_TLS_SQLITE3_SESSION_MANAGER_H_
10
11
#include <botan/tls_session_manager_sql.h>
12
13
namespace
Botan
{
14
15
class
RandomNumberGenerator;
16
17
namespace
TLS {
18
19
/**
20
* An implementation of Session_Manager that saves values in a SQLite3
21
* database file, with the session data encrypted using a passphrase.
22
*
23
* @warning For clients, the hostnames associated with the saved
24
* sessions are stored in the database in plaintext. This may be a
25
* serious privacy risk in some situations.
26
*/
27
class
BOTAN_PUBLIC_API
(3, 0)
Session_Manager_SQLite
final
:
public
Session_Manager_SQL
{
28
public
:
29
/**
30
* @param passphrase used to encrypt the session data
31
* @param rng a random number generator
32
* @param db_filename filename of the SQLite database file.
33
The table names tls_sessions and tls_sessions_metadata
34
will be used
35
* @param max_sessions a hint on the maximum number of sessions
36
* to keep in memory at any one time. (If zero, don't cap)
37
*/
38
Session_Manager_SQLite
(std::string_view passphrase,
39
const
std::shared_ptr<RandomNumberGenerator>& rng,
40
std::string_view db_filename,
41
size_t
max_sessions = 1000);
42
};
27
class
BOTAN_PUBLIC_API
(3, 0)
Session_Manager_SQLite
final
:
public
Session_Manager_SQL
{
…
};
43
44
}
// namespace TLS
45
46
}
// namespace Botan
47
48
#endif
BOTAN_PUBLIC_API
#define BOTAN_PUBLIC_API(maj, min)
Definition
api.h:19
Botan::TLS::Session_Manager_SQL
Definition
tls_session_manager_sql.h:28
Botan::TLS::Session_Manager_SQLite
Definition
tls_session_manager_sqlite.h:27
final
int(* final)(unsigned char *, CTX *)
Definition
commoncrypto_hash.cpp:29
Botan
Definition
alg_id.cpp:13
Generated by
1.12.0