Botan  1.10.9
Public Member Functions | Public Attributes | List of all members
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

Botan::Handshake_State::Handshake_State ( )

Initialize the SSL/TLS Handshake State

Definition at line 15 of file tls_state.cpp.

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.

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;
27  client_finished = 0;
28  server_finished = 0;
29 
30  kex_pub = 0;
31  kex_priv = 0;
32 
34  version = SSL_V3;
35  }
Client_Hello * client_hello
Definition: tls_state.h:22
Client_Key_Exchange * client_kex
Definition: tls_state.h:30
Server_Key_Exchange * server_kex
Definition: tls_state.h:25
Version_Code version
Definition: tls_state.h:44
Private_Key * kex_priv
Definition: tls_state.h:36
Certificate_Verify * client_verify
Definition: tls_state.h:31
Server_Hello_Done * server_hello_done
Definition: tls_state.h:27
Server_Hello * server_hello
Definition: tls_state.h:23
Certificate * client_certs
Definition: tls_state.h:29
Certificate_Req * cert_req
Definition: tls_state.h:26
Public_Key * kex_pub
Definition: tls_state.h:35
Finished * server_finished
Definition: tls_state.h:33
Finished * client_finished
Definition: tls_state.h:32
Certificate * server_certs
Definition: tls_state.h:24
Botan::Handshake_State::~Handshake_State ( )

Destroy the SSL/TLS Handshake State

Definition at line 40 of file tls_state.cpp.

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.

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  }
Client_Hello * client_hello
Definition: tls_state.h:22
Client_Key_Exchange * client_kex
Definition: tls_state.h:30
Server_Key_Exchange * server_kex
Definition: tls_state.h:25
Private_Key * kex_priv
Definition: tls_state.h:36
Certificate_Verify * client_verify
Definition: tls_state.h:31
Server_Hello_Done * server_hello_done
Definition: tls_state.h:27
Server_Hello * server_hello
Definition: tls_state.h:23
Certificate * client_certs
Definition: tls_state.h:29
Certificate_Req * cert_req
Definition: tls_state.h:26
Public_Key * kex_pub
Definition: tls_state.h:35
Finished * server_finished
Definition: tls_state.h:33
Finished * client_finished
Definition: tls_state.h:32
Certificate * server_certs
Definition: tls_state.h:24

Member Data Documentation

Certificate_Req* Botan::Handshake_State::cert_req

Definition at line 26 of file tls_state.h.

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

Certificate* Botan::Handshake_State::client_certs

Definition at line 29 of file tls_state.h.

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

Finished* Botan::Handshake_State::client_finished

Definition at line 32 of file tls_state.h.

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

Client_Hello* Botan::Handshake_State::client_hello

Definition at line 22 of file tls_state.h.

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

Client_Key_Exchange* Botan::Handshake_State::client_kex

Definition at line 30 of file tls_state.h.

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

Certificate_Verify* Botan::Handshake_State::client_verify

Definition at line 31 of file tls_state.h.

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

bool Botan::Handshake_State::do_client_auth

Definition at line 45 of file tls_state.h.

Referenced by Handshake_State().

bool Botan::Handshake_State::got_client_ccs

Definition at line 45 of file tls_state.h.

Referenced by Handshake_State().

bool Botan::Handshake_State::got_server_ccs

Definition at line 45 of file tls_state.h.

Referenced by Handshake_State().

HandshakeHash Botan::Handshake_State::hash

Definition at line 40 of file tls_state.h.

Private_Key* Botan::Handshake_State::kex_priv

Definition at line 36 of file tls_state.h.

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

Public_Key* Botan::Handshake_State::kex_pub

Definition at line 35 of file tls_state.h.

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

SessionKeys Botan::Handshake_State::keys

Definition at line 39 of file tls_state.h.

SecureQueue Botan::Handshake_State::queue

Definition at line 42 of file tls_state.h.

Certificate* Botan::Handshake_State::server_certs

Definition at line 24 of file tls_state.h.

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

Finished* Botan::Handshake_State::server_finished

Definition at line 33 of file tls_state.h.

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

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* Botan::Handshake_State::server_hello_done

Definition at line 27 of file tls_state.h.

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

Server_Key_Exchange* Botan::Handshake_State::server_kex

Definition at line 25 of file tls_state.h.

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

CipherSuite Botan::Handshake_State::suite

Definition at line 38 of file tls_state.h.

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: