mirror of
https://github.com/Xahau/xahaud.git
synced 2025-12-06 17:27:52 +00:00
Track a peer's last closed ledger.
This commit is contained in:
11
src/Peer.cpp
11
src/Peer.cpp
@@ -523,6 +523,12 @@ void Peer::recvHello(newcoin::TMHello& packet)
|
|||||||
// XXX Set timer: connection is in grace period to be useful.
|
// XXX Set timer: connection is in grace period to be useful.
|
||||||
// XXX Set timer: connection idle (idle may vary depending on connection type.)
|
// XXX Set timer: connection idle (idle may vary depending on connection type.)
|
||||||
|
|
||||||
|
if ((packet.has_closedledger()) && (packet.closedledger().size() == (256 / 8)))
|
||||||
|
{
|
||||||
|
memcpy(mClosedLedgerHash.begin(), packet.closedledger().data(), (256 / 8));
|
||||||
|
mClosedLedgerTime = boost::posix_time::second_clock::universal_time();
|
||||||
|
}
|
||||||
|
|
||||||
bDetach = false;
|
bDetach = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -777,9 +783,8 @@ void Peer::sendHello()
|
|||||||
assert(closedLedger && closedLedger->isClosed());
|
assert(closedLedger && closedLedger->isClosed());
|
||||||
if (closedLedger->isClosed())
|
if (closedLedger->isClosed())
|
||||||
{
|
{
|
||||||
Serializer s(128);
|
uint256 hash = closedLedger->getHash();
|
||||||
closedLedger->addRaw(s);
|
h->set_closedledger(hash.begin(), hash.GetSerializeSize());
|
||||||
h->set_closedledger(s.getDataPtr(), s.getLength());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PackedMessage::pointer packet = boost::make_shared<PackedMessage>
|
PackedMessage::pointer packet = boost::make_shared<PackedMessage>
|
||||||
|
|||||||
@@ -36,6 +36,10 @@ private:
|
|||||||
ipPort mIpPort;
|
ipPort mIpPort;
|
||||||
uint256 mCookieHash;
|
uint256 mCookieHash;
|
||||||
|
|
||||||
|
// network state information
|
||||||
|
uint256 mClosedLedgerHash;
|
||||||
|
boost::posix_time::ptime mClosedLedgerTime;
|
||||||
|
|
||||||
boost::asio::ssl::stream<boost::asio::ip::tcp::socket> mSocketSsl;
|
boost::asio::ssl::stream<boost::asio::ip::tcp::socket> mSocketSsl;
|
||||||
|
|
||||||
boost::asio::deadline_timer mVerifyTimer;
|
boost::asio::deadline_timer mVerifyTimer;
|
||||||
|
|||||||
Reference in New Issue
Block a user