Botan 1.10.17
Botan::Handshake_State Class Reference

#include <tls_state.h>

Public Member Functions

 Handshake_State ()
 ~Handshake_State ()

Public Attributes

Certificate_Reqcert_req
Certificateclient_certs
Finishedclient_finished
Client_Helloclient_hello
Client_Key_Exchangeclient_kex
Certificate_Verifyclient_verify
bool do_client_auth
bool got_client_ccs
bool got_server_ccs
HandshakeHash hash
Private_Keykex_priv
Public_Keykex_pub
SessionKeys keys
SecureQueue queue
Certificateserver_certs
Finishedserver_finished
Server_Helloserver_hello
Server_Hello_Doneserver_hello_done
Server_Key_Exchangeserver_kex
CipherSuite suite
Version_Code version

Detailed Description

SSL/TLS Handshake State

Definition at line 19 of file tls_state.h.

Constructor & Destructor Documentation

◆ Handshake_State()

Botan::Handshake_State::Handshake_State ( )

Initialize the SSL/TLS Handshake State

Definition at line 15 of file tls_state.cpp.

16 {
17 client_hello = 0;
18 server_hello = 0;
19 server_certs = 0;
20 server_kex = 0;
21 cert_req = 0;
23
24 client_certs = 0;
25 client_kex = 0;
26 client_verify = 0;
29
30 kex_pub = 0;
31 kex_priv = 0;
32
35 }
Client_Key_Exchange * client_kex
Definition tls_state.h:30
Server_Key_Exchange * server_kex
Definition tls_state.h:25
Certificate * client_certs
Definition tls_state.h:29
Version_Code version
Definition tls_state.h:44
Certificate * server_certs
Definition tls_state.h:24
Client_Hello * client_hello
Definition tls_state.h:22
Private_Key * kex_priv
Definition tls_state.h:36
Finished * server_finished
Definition tls_state.h:33
Server_Hello * server_hello
Definition tls_state.h:23
Server_Hello_Done * server_hello_done
Definition tls_state.h:27
Certificate_Req * cert_req
Definition tls_state.h:26
Public_Key * kex_pub
Definition tls_state.h:35
Certificate_Verify * client_verify
Definition tls_state.h:31
Finished * client_finished
Definition tls_state.h:32
@ SSL_V3
Definition tls_magic.h:24

References cert_req, client_certs, client_finished, client_hello, client_kex, client_verify, do_client_auth, got_client_ccs, got_server_ccs, kex_priv, kex_pub, server_certs, server_finished, server_hello, server_hello_done, server_kex, Botan::SSL_V3, and version.

◆ ~Handshake_State()

Botan::Handshake_State::~Handshake_State ( )

Destroy the SSL/TLS Handshake State

Definition at line 40 of file tls_state.cpp.

41 {
42 delete client_hello;
43 delete server_hello;
44 delete server_certs;
45 delete server_kex;
46 delete cert_req;
47 delete server_hello_done;
48
49 delete client_certs;
50 delete client_kex;
51 delete client_verify;
52 delete client_finished;
53 delete server_finished;
54
55 delete kex_pub;
56 delete kex_priv;
57 }

References cert_req, client_certs, client_finished, client_hello, client_kex, client_verify, kex_priv, kex_pub, server_certs, server_finished, server_hello, server_hello_done, and server_kex.

Member Data Documentation

◆ cert_req

Certificate_Req* Botan::Handshake_State::cert_req

Definition at line 26 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ client_certs

Certificate* Botan::Handshake_State::client_certs

Definition at line 29 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ client_finished

Finished* Botan::Handshake_State::client_finished

Definition at line 32 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ client_hello

Client_Hello* Botan::Handshake_State::client_hello

Definition at line 22 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ client_kex

Client_Key_Exchange* Botan::Handshake_State::client_kex

Definition at line 30 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ client_verify

Certificate_Verify* Botan::Handshake_State::client_verify

Definition at line 31 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ do_client_auth

bool Botan::Handshake_State::do_client_auth

Definition at line 45 of file tls_state.h.

Referenced by Handshake_State().

◆ got_client_ccs

bool Botan::Handshake_State::got_client_ccs

Definition at line 45 of file tls_state.h.

Referenced by Handshake_State().

◆ got_server_ccs

bool Botan::Handshake_State::got_server_ccs

Definition at line 45 of file tls_state.h.

Referenced by Handshake_State().

◆ hash

HandshakeHash Botan::Handshake_State::hash

Definition at line 40 of file tls_state.h.

◆ kex_priv

Private_Key* Botan::Handshake_State::kex_priv

Definition at line 36 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ kex_pub

Public_Key* Botan::Handshake_State::kex_pub

Definition at line 35 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ keys

SessionKeys Botan::Handshake_State::keys

Definition at line 39 of file tls_state.h.

◆ queue

SecureQueue Botan::Handshake_State::queue

Definition at line 42 of file tls_state.h.

◆ server_certs

Certificate* Botan::Handshake_State::server_certs

Definition at line 24 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ server_finished

Finished* Botan::Handshake_State::server_finished

Definition at line 33 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ server_hello

Server_Hello* Botan::Handshake_State::server_hello

Definition at line 23 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ server_hello_done

Server_Hello_Done* Botan::Handshake_State::server_hello_done

Definition at line 27 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ server_kex

Server_Key_Exchange* Botan::Handshake_State::server_kex

Definition at line 25 of file tls_state.h.

Referenced by Handshake_State(), and ~Handshake_State().

◆ suite

CipherSuite Botan::Handshake_State::suite

Definition at line 38 of file tls_state.h.

◆ version

Version_Code Botan::Handshake_State::version

Definition at line 44 of file tls_state.h.

Referenced by Handshake_State().


The documentation for this class was generated from the following files: