mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-04-28 11:47:48 +02:00
include DeliveryStatus to Garlic
This commit is contained in:
parent
3aab091e9f
commit
57c97208f9
7 changed files with 93 additions and 14 deletions
16
LeaseSet.cpp
16
LeaseSet.cpp
|
@ -1,3 +1,5 @@
|
|||
#include <cryptopp/dsa.h>
|
||||
#include "CryptoConst.h"
|
||||
#include "Log.h"
|
||||
#include "LeaseSet.h"
|
||||
|
||||
|
@ -24,10 +26,22 @@ namespace data
|
|||
memcpy (m_EncryptionKey, header->encryptionKey, 256);
|
||||
LogPrint ("LeaseSet num=", (int)header->num);
|
||||
|
||||
const uint8_t * leases = buf + sizeof (H);
|
||||
for (int i = 0; i < header->num; i++)
|
||||
{
|
||||
m_Leases.push_back (*(Lease *)(buf + sizeof (H)));
|
||||
Lease lease = *(Lease *)leases;
|
||||
lease.tunnelID = be32toh (lease.tunnelID);
|
||||
m_Leases.push_back (lease);
|
||||
leases += sizeof (Lease);
|
||||
}
|
||||
|
||||
// verify
|
||||
CryptoPP::DSA::PublicKey pubKey;
|
||||
pubKey.Initialize (i2p::crypto::dsap, i2p::crypto::dsaq, i2p::crypto::dsag,
|
||||
CryptoPP::Integer (m_Identity.signingKey, 128));
|
||||
CryptoPP::DSA::Verifier verifier (pubKey);
|
||||
if (!verifier.VerifyMessage (buf, leases - buf, leases, 40))
|
||||
LogPrint ("LeaseSet verification failed");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue