mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-03-21 16:49:10 +01:00
create ephemeral keys after getting connected
This commit is contained in:
parent
979ea9c252
commit
65cbb06080
1 changed files with 3 additions and 2 deletions
|
@ -30,7 +30,6 @@ namespace transport
|
||||||
NTCP2Establisher::NTCP2Establisher ():
|
NTCP2Establisher::NTCP2Establisher ():
|
||||||
m_SessionRequestBuffer (nullptr), m_SessionCreatedBuffer (nullptr), m_SessionConfirmedBuffer (nullptr)
|
m_SessionRequestBuffer (nullptr), m_SessionCreatedBuffer (nullptr), m_SessionConfirmedBuffer (nullptr)
|
||||||
{
|
{
|
||||||
CreateEphemeralKey ();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
NTCP2Establisher::~NTCP2Establisher ()
|
NTCP2Establisher::~NTCP2Establisher ()
|
||||||
|
@ -357,6 +356,7 @@ namespace transport
|
||||||
TransportSession (in_RemoteRouter, NTCP2_ESTABLISH_TIMEOUT),
|
TransportSession (in_RemoteRouter, NTCP2_ESTABLISH_TIMEOUT),
|
||||||
m_Server (server), m_Socket (m_Server.GetService ()),
|
m_Server (server), m_Socket (m_Server.GetService ()),
|
||||||
m_IsEstablished (false), m_IsTerminated (false),
|
m_IsEstablished (false), m_IsTerminated (false),
|
||||||
|
m_Establisher (new NTCP2Establisher),
|
||||||
m_SendSipKey (nullptr), m_ReceiveSipKey (nullptr),
|
m_SendSipKey (nullptr), m_ReceiveSipKey (nullptr),
|
||||||
#if OPENSSL_SIPHASH
|
#if OPENSSL_SIPHASH
|
||||||
m_SendMDCtx(nullptr), m_ReceiveMDCtx (nullptr),
|
m_SendMDCtx(nullptr), m_ReceiveMDCtx (nullptr),
|
||||||
|
@ -364,7 +364,6 @@ namespace transport
|
||||||
m_NextReceivedLen (0), m_NextReceivedBuffer (nullptr), m_NextSendBuffer (nullptr),
|
m_NextReceivedLen (0), m_NextReceivedBuffer (nullptr), m_NextSendBuffer (nullptr),
|
||||||
m_ReceiveSequenceNumber (0), m_SendSequenceNumber (0), m_IsSending (false)
|
m_ReceiveSequenceNumber (0), m_SendSequenceNumber (0), m_IsSending (false)
|
||||||
{
|
{
|
||||||
m_Establisher.reset (new NTCP2Establisher);
|
|
||||||
if (in_RemoteRouter) // Alice
|
if (in_RemoteRouter) // Alice
|
||||||
{
|
{
|
||||||
m_Establisher->m_RemoteIdentHash = GetRemoteIdentity ()->GetIdentHash ();
|
m_Establisher->m_RemoteIdentHash = GetRemoteIdentity ()->GetIdentHash ();
|
||||||
|
@ -735,11 +734,13 @@ namespace transport
|
||||||
|
|
||||||
void NTCP2Session::ClientLogin ()
|
void NTCP2Session::ClientLogin ()
|
||||||
{
|
{
|
||||||
|
m_Establisher->CreateEphemeralKey ();
|
||||||
SendSessionRequest ();
|
SendSessionRequest ();
|
||||||
}
|
}
|
||||||
|
|
||||||
void NTCP2Session::ServerLogin ()
|
void NTCP2Session::ServerLogin ()
|
||||||
{
|
{
|
||||||
|
m_Establisher->CreateEphemeralKey ();
|
||||||
m_Establisher->m_SessionRequestBuffer = new uint8_t[287]; // 287 bytes max for now
|
m_Establisher->m_SessionRequestBuffer = new uint8_t[287]; // 287 bytes max for now
|
||||||
boost::asio::async_read (m_Socket, boost::asio::buffer(m_Establisher->m_SessionRequestBuffer, 64), boost::asio::transfer_all (),
|
boost::asio::async_read (m_Socket, boost::asio::buffer(m_Establisher->m_SessionRequestBuffer, 64), boost::asio::transfer_all (),
|
||||||
std::bind(&NTCP2Session::HandleSessionRequestReceived, shared_from_this (),
|
std::bind(&NTCP2Session::HandleSessionRequestReceived, shared_from_this (),
|
||||||
|
|
Loading…
Add table
Reference in a new issue