Botan 1.10.17

tls_state.h
Go to the documentation of this file.
1 /*
2 * TLS Handshake State
3 * (C) 2004-2006 Jack Lloyd
4 *
5 * Released under the terms of the Botan license
6 */
7
8 #ifndef BOTAN_TLS_HANDSHAKE_H__
9 #define BOTAN_TLS_HANDSHAKE_H__
10
11 #include <botan/internal/tls_messages.h>
12 #include <botan/secqueue.h>
13
14 namespace Botan {
15
16 /**
17 * SSL/TLS Handshake State
18 */
19 class Handshake_State
20 {
21 public:
22 Client_Hello* client_hello;
23 Server_Hello* server_hello;
24 Certificate* server_certs;
25 Server_Key_Exchange* server_kex;
26 Certificate_Req* cert_req;
27 Server_Hello_Done* server_hello_done;
28
29 Certificate* client_certs;
30 Client_Key_Exchange* client_kex;
31 Certificate_Verify* client_verify;
32 Finished* client_finished;
33 Finished* server_finished;
34
35 Public_Key* kex_pub;
36 Private_Key* kex_priv;
37
38 CipherSuite suite;
39 SessionKeys keys;
40 HandshakeHash hash;
41
42 SecureQueue queue;
43
44 Version_Code version;
45 bool got_client_ccs, got_server_ccs, do_client_auth;
46
47 Handshake_State();
48 ~Handshake_State();
49 };
50
51 }
52
53 #endif
Botan::Handshake_State::client_hello
Client_Hello * client_hello
Definition: tls_state.h:22
Botan::Handshake_State::~Handshake_State
~Handshake_State()
Definition: tls_state.cpp:40
Botan::Client_Key_Exchange
Definition: tls_messages.h:86
Botan::SecureQueue
Definition: secqueue.h:19
Botan::Handshake_State::do_client_auth
bool do_client_auth
Definition: tls_state.h:45
Botan::Private_Key
Definition: pk_keys.h:86
Botan::Handshake_State::client_kex
Client_Key_Exchange * client_kex
Definition: tls_state.h:30
Botan::Handshake_State::server_kex
Server_Key_Exchange * server_kex
Definition: tls_state.h:25
Botan::Handshake_State::got_server_ccs
bool got_server_ccs
Definition: tls_state.h:45
Botan::Handshake_State::version
Version_Code version
Definition: tls_state.h:44
Botan::Client_Hello
Definition: tls_messages.h:41
Botan::Handshake_State::got_client_ccs
bool got_client_ccs
Definition: tls_state.h:45
Botan::Handshake_State::kex_priv
Private_Key * kex_priv
Definition: tls_state.h:36
Botan::Certificate
Definition: tls_messages.h:118
Botan::Handshake_State::hash
HandshakeHash hash
Definition: tls_state.h:40
Botan::Handshake_State::client_verify
Certificate_Verify * client_verify
Definition: tls_state.h:31
Botan::Handshake_State::Handshake_State
Handshake_State()
Definition: tls_state.cpp:15
Botan::Handshake_State::server_hello_done
Server_Hello_Done * server_hello_done
Definition: tls_state.h:27
Botan::SessionKeys
Definition: tls_session_key.h:20
Botan::Handshake_State::server_hello
Server_Hello * server_hello
Definition: tls_state.h:23
Botan::Version_Code
Version_Code
Definition: tls_magic.h:22
Botan::Handshake_State::suite
CipherSuite suite
Definition: tls_state.h:38
Botan::Handshake_State::client_certs
Certificate * client_certs
Definition: tls_state.h:29
Botan
Definition: algo_base.h:14
Botan::Handshake_State::cert_req
Certificate_Req * cert_req
Definition: tls_state.h:26
Botan::Finished
Definition: tls_messages.h:185
Botan::Public_Key
Definition: pk_keys.h:21
Botan::Server_Hello
Definition: tls_messages.h:226
Botan::Handshake_State::kex_pub
Public_Key * kex_pub
Definition: tls_state.h:35
Botan::CipherSuite
Definition: tls_suites.h:20
Botan::Handshake_State::keys
SessionKeys keys
Definition: tls_state.h:39
Botan::HandshakeHash
Definition: tls_handshake_hash.h:20
Botan::Certificate_Req
Definition: tls_messages.h:136
Botan::Handshake_State::server_finished
Finished * server_finished
Definition: tls_state.h:33
Botan::Server_Key_Exchange
Definition: tls_messages.h:256
Botan::Handshake_State
Definition: tls_state.h:19
Botan::Server_Hello_Done
Definition: tls_messages.h:283
Botan::Handshake_State::queue
SecureQueue queue
Definition: tls_state.h:42
Botan::Certificate_Verify
Definition: tls_messages.h:163
Botan::Handshake_State::client_finished
Finished * client_finished
Definition: tls_state.h:32
Botan::Handshake_State::server_certs
Certificate * server_certs
Definition: tls_state.h:24