|
Protected Types inherited from dev::p2p::RLPXHandshake |
enum | State {
Error = -1,
New,
AckAuth,
AckAuthEIP8,
WriteHello,
ReadHello,
StartSession
} |
| Sequential states of handshake. More...
|
|
Protected Member Functions inherited from dev::p2p::RLPXHandshake |
void | writeAuth () |
| Write Auth message to socket and transitions to AckAuth. More...
|
|
void | readAuth () |
| Reads Auth message from socket and transitions to AckAuth. More...
|
|
void | readAuthEIP8 () |
| Continues reading Auth message in EIP-8 format and transitions to AckAuthEIP8. More...
|
|
void | setAuthValues (Signature const &sig, Public const &remotePubk, h256 const &remoteNonce, uint64_t remoteVersion) |
| Derives ephemeral secret from signature and sets members after Auth has been decrypted. More...
|
|
void | writeAck () |
| Write Ack message to socket and transitions to WriteHello. More...
|
|
void | writeAckEIP8 () |
| Write Ack message in EIP-8 format to socket and transitions to WriteHello. More...
|
|
void | readAck () |
| Reads Auth message from socket and transitions to WriteHello. More...
|
|
void | readAckEIP8 () |
| Continues reading Ack message in EIP-8 format and transitions to WriteHello. More...
|
|
void | error () |
| Closes connection and ends transitions. More...
|
|
Protected Attributes inherited from dev::p2p::RLPXHandshake |
boost::posix_time::milliseconds const | c_timeout = boost::posix_time::milliseconds(1800) |
| Timeout for remote to respond to transition events. Enforced by m_idleTimer and refreshed by transition(). More...
|
|
State | m_nextState = New |
| Current or expected state of transition. More...
|
|
bool | m_cancel = false |
| Will be set to true if connection was canceled. More...
|
|
Host * | m_host |
| Host which provides m_alias, protocolVersion(), m_clientVersion, caps(), and TCP listenPort(). More...
|
|
NodeID | m_remote |
| Node id of remote host for socket. More...
|
|
bool | m_originated = false |
| True if connection is outbound. More...
|
|
bytes | m_auth |
| Buffers for encoded and decoded handshake phases. More...
|
|
bytes | m_authCipher |
| Ciphertext of egress or ingress Auth message. More...
|
|
bytes | m_ack |
| Plaintext of egress or ingress Ack message. More...
|
|
bytes | m_ackCipher |
| Ciphertext of egress or ingress Ack message. More...
|
|
bytes | m_handshakeOutBuffer |
| Frame buffer for egress Hello packet. More...
|
|
bytes | m_handshakeInBuffer |
| Frame buffer for ingress Hello packet. More...
|
|
crypto::ECDHE | m_ecdhe |
| Ephemeral ECDH secret and agreement. More...
|
|
h256 | m_nonce |
| Nonce generated by this host for handshake. More...
|
|
Public | m_remoteEphemeral |
| Remote ephemeral public key. More...
|
|
h256 | m_remoteNonce |
| Nonce generated by remote host for handshake. More...
|
|
uint64_t | m_remoteVersion |
|
std::unique_ptr< RLPXFrameCoder > | m_io |
| Used to read and write RLPx encrypted frames for last step of handshake authentication. More...
|
|
std::shared_ptr< RLPXSocket > | m_socket |
| Socket. More...
|
|
boost::asio::deadline_timer | m_idleTimer |
| Timer which enforces c_timeout. More...
|
|
Definition at line 122 of file eip-8.cpp.