Browse Source

generate new tags based on last received index

pull/1499/head
orignal 5 years ago
parent
commit
fe9ac10f02
  1. 4
      libi2pd/ECIESX25519AEADRatchetSession.cpp
  2. 1
      libi2pd/ECIESX25519AEADRatchetSession.h

4
libi2pd/ECIESX25519AEADRatchetSession.cpp

@ -402,8 +402,7 @@ namespace garlic @@ -402,8 +402,7 @@ namespace garlic
return false;
}
HandlePayload (payload.data (), len - 16);
if (m_NumReceiveTags > 0)m_NumReceiveTags--;
if (m_NumReceiveTags <= GetOwner ()->GetNumTags ()*2/3)
if (m_ReceiveTagset.GetNextIndex () - index <= GetOwner ()->GetNumTags ()*2/3)
GenerateMoreReceiveTags (GetOwner ()->GetNumTags ());
return true;
}
@ -570,7 +569,6 @@ namespace garlic @@ -570,7 +569,6 @@ namespace garlic
uint64_t tag = m_ReceiveTagset.GetNextSessionTag ();
GetOwner ()->AddECIESx25519SessionTag (index, tag, shared_from_this ());
}
m_NumReceiveTags += numTags;
}
bool ECIESX25519AEADRatchetSession::CheckExpired (uint64_t ts)

1
libi2pd/ECIESX25519AEADRatchetSession.h

@ -119,7 +119,6 @@ namespace garlic @@ -119,7 +119,6 @@ namespace garlic
SessionState m_State = eSessionStateNew;
uint64_t m_LastActivityTimestamp = 0; // incoming
RatchetTagSet m_SendTagset, m_ReceiveTagset;
int m_NumReceiveTags = 0;
std::unique_ptr<i2p::data::IdentHash> m_Destination;// TODO: might not need it
};
}

Loading…
Cancel
Save