#include <yassl_imp.hpp>
Collaboration diagram for yaSSL::Connection:

Public Member Functions | |
| Connection (ProtocolVersion v, RandomPool &ran) | |
| ~Connection () | |
| void | AllocPreSecret (uint sz) |
| void | CleanPreMaster () |
| void | CleanMaster () |
| void | TurnOffTLS () |
Public Attributes | |
| opaque * | pre_master_secret_ |
| opaque | master_secret_ [SECRET_LEN] |
| opaque | client_random_ [RAN_LEN] |
| opaque | server_random_ [RAN_LEN] |
| opaque | sessionID_ [ID_LEN] |
| opaque | client_write_MAC_secret_ [SHA_LEN] |
| opaque | server_write_MAC_secret_ [SHA_LEN] |
| opaque | client_write_key_ [AES_256_KEY_SZ] |
| opaque | server_write_key_ [AES_256_KEY_SZ] |
| opaque | client_write_IV_ [AES_IV_SZ] |
| opaque | server_write_IV_ [AES_IV_SZ] |
| uint32 | sequence_number_ |
| uint32 | peer_sequence_number_ |
| uint32 | pre_secret_len_ |
| bool | send_server_key_ |
| bool | master_clean_ |
| bool | TLS_ |
| bool | sessionID_Set_ |
| ProtocolVersion | version_ |
| RandomPool & | random_ |
Private Member Functions | |
| Connection (const Connection &) | |
| Connection & | operator= (const Connection &) |
Definition at line 611 of file yassl_imp.hpp.
| yaSSL::Connection::Connection | ( | ProtocolVersion | v, | |
| RandomPool & | ran | |||
| ) |
Definition at line 1990 of file yassl_imp.cpp.
References memset, and sessionID_.
01991 : pre_master_secret_(0), sequence_number_(0), peer_sequence_number_(0), 01992 pre_secret_len_(0), send_server_key_(false), master_clean_(false), 01993 TLS_(v.major_ >= 3 && v.minor_ >= 1), version_(v), random_(ran) 01994 { 01995 memset(sessionID_, 0, sizeof(sessionID_)); 01996 }
| yaSSL::Connection::~Connection | ( | ) |
Definition at line 1999 of file yassl_imp.cpp.
References CleanMaster(), CleanPreMaster(), pre_master_secret_, and yaSSL::ysArrayDelete().
02000 { 02001 CleanMaster(); CleanPreMaster(); ysArrayDelete(pre_master_secret_); 02002 }
Here is the call graph for this function:

| yaSSL::Connection::Connection | ( | const Connection & | ) | [private] |
| void yaSSL::Connection::AllocPreSecret | ( | uint | sz | ) |
Definition at line 2005 of file yassl_imp.cpp.
References NEW_YS, pre_master_secret_, and pre_secret_len_.
Referenced by yaSSL::SSL::set_preMaster().
02006 { 02007 pre_master_secret_ = NEW_YS opaque[pre_secret_len_ = sz]; 02008 }
Here is the caller graph for this function:

| void yaSSL::Connection::CleanMaster | ( | ) |
Definition at line 2019 of file yassl_imp.cpp.
References yaSSL::clean(), master_clean_, master_secret_, p, random_, and yaSSL::SECRET_LEN.
Referenced by yaSSL::sendFinished(), and ~Connection().
02020 { 02021 if (!master_clean_) { 02022 volatile opaque* p = master_secret_; 02023 clean(p, SECRET_LEN, random_); 02024 master_clean_ = true; 02025 } 02026 }
Here is the call graph for this function:

Here is the caller graph for this function:

| void yaSSL::Connection::CleanPreMaster | ( | ) |
Definition at line 2030 of file yassl_imp.cpp.
References yaSSL::clean(), p, pre_master_secret_, pre_secret_len_, random_, and yaSSL::ysArrayDelete().
Referenced by yaSSL::SSL::makeMasterSecret(), and ~Connection().
02031 { 02032 if (pre_master_secret_) { 02033 volatile opaque* p = pre_master_secret_; 02034 clean(p, pre_secret_len_, random_); 02035 02036 ysArrayDelete(pre_master_secret_); 02037 pre_master_secret_ = 0; 02038 } 02039 }
Here is the call graph for this function:

Here is the caller graph for this function:

| Connection& yaSSL::Connection::operator= | ( | const Connection & | ) | [private] |
| void yaSSL::Connection::TurnOffTLS | ( | ) |
Definition at line 2011 of file yassl_imp.cpp.
References yaSSL::ProtocolVersion::minor_, TLS_, and version_.
Referenced by yaSSL::ClientHello::Process().
Here is the caller graph for this function:

Definition at line 614 of file yassl_imp.hpp.
Referenced by yaSSL::DH_Server::build(), yaSSL::SSL::deriveKeys(), yaSSL::SSL::deriveTLSKeys(), yaSSL::SSL::makeMasterSecret(), yaSSL::SSL::makeTLSMasterSecret(), yaSSL::DH_Server::read(), and yaSSL::SSL::set_random().
Definition at line 621 of file yassl_imp.hpp.
Referenced by yaSSL::SSL::setKeys(), and yaSSL::SSL::storeKeys().
Definition at line 619 of file yassl_imp.hpp.
Referenced by yaSSL::SSL::setKeys(), and yaSSL::SSL::storeKeys().
Definition at line 617 of file yassl_imp.hpp.
Referenced by yaSSL::SSL::get_macSecret(), and yaSSL::SSL::storeKeys().
Definition at line 613 of file yassl_imp.hpp.
Referenced by yaSSL::buildFinishedTLS(), yaSSL::buildMD5(), yaSSL::buildMD5_CertVerify(), yaSSL::buildSHA(), yaSSL::buildSHA_CertVerify(), CleanMaster(), yaSSL::SSL::deriveKeys(), yaSSL::SSL::deriveTLSKeys(), yaSSL::SSL::makeMasterSecret(), yaSSL::SSL::makeTLSMasterSecret(), yaSSL::SSL::set_masterSecret(), and yaSSL::SSL_SESSION::SSL_SESSION().
Definition at line 612 of file yassl_imp.hpp.
Referenced by AllocPreSecret(), CleanPreMaster(), yaSSL::SSL::makeMasterSecret(), yaSSL::SSL::makeTLSMasterSecret(), yaSSL::SSL::set_preMaster(), and ~Connection().
Definition at line 625 of file yassl_imp.hpp.
Referenced by AllocPreSecret(), CleanPreMaster(), yaSSL::SSL::makeMasterSecret(), and yaSSL::SSL::makeTLSMasterSecret().
Definition at line 626 of file yassl_imp.hpp.
Referenced by yaSSL::SSL::set_pending(), and yaSSL::SSL_accept().
Definition at line 615 of file yassl_imp.hpp.
Referenced by yaSSL::DH_Server::build(), yaSSL::buildServerHello(), yaSSL::SSL::deriveKeys(), yaSSL::SSL::deriveTLSKeys(), yaSSL::SSL::makeMasterSecret(), yaSSL::SSL::makeTLSMasterSecret(), yaSSL::DH_Server::read(), and yaSSL::SSL::set_random().
Definition at line 622 of file yassl_imp.hpp.
Referenced by yaSSL::SSL::setKeys(), and yaSSL::SSL::storeKeys().
Definition at line 620 of file yassl_imp.hpp.
Referenced by yaSSL::SSL::setKeys(), and yaSSL::SSL::storeKeys().
Definition at line 618 of file yassl_imp.hpp.
Referenced by yaSSL::SSL::get_macSecret(), and yaSSL::SSL::storeKeys().
Definition at line 616 of file yassl_imp.hpp.
Referenced by Connection(), yaSSL::SSL::set_sessionID(), yaSSL::SSL_get_session(), and yaSSL::SSL_SESSION::SSL_SESSION().
Definition at line 629 of file yassl_imp.hpp.
Referenced by yaSSL::Sessions::add(), yaSSL::ServerHello::Process(), and yaSSL::SSL::set_sessionID().
Definition at line 630 of file yassl_imp.hpp.
Referenced by yaSSL::EncryptedPreMasterSecret::build(), yaSSL::buildHeader(), yaSSL::buildHeaders(), yaSSL::ClientHello::Process(), yaSSL::sendClientHello(), yaSSL::sendServerHello(), yaSSL::TLS_hmac(), and TurnOffTLS().
1.4.7

