diff options
author | Matt Corallo <git@bluematt.me> | 2012-08-13 05:26:30 +0200 |
---|---|---|
committer | Matt Corallo <git@bluematt.me> | 2013-01-16 12:48:02 -0500 |
commit | 269d9c6492dc275650d2137d53f4afdca88e3216 (patch) | |
tree | 32ded97569c406479d8393eda9163f3ba488b7b9 /src/net.h | |
parent | 422d1225374e2d879dbd116151e0113aa7162500 (diff) |
Replace RelayMessage with RelayTransaction.
Diffstat (limited to 'src/net.h')
-rw-r--r-- | src/net.h | 49 |
1 files changed, 3 insertions, 46 deletions
@@ -562,51 +562,8 @@ public: - - - - - - - -inline void RelayInventory(const CInv& inv) -{ - // Put on lists to offer to the other nodes - { - LOCK(cs_vNodes); - BOOST_FOREACH(CNode* pnode, vNodes) - pnode->PushInventory(inv); - } -} - -template<typename T> -void RelayMessage(const CInv& inv, const T& a) -{ - CDataStream ss(SER_NETWORK, PROTOCOL_VERSION); - ss.reserve(10000); - ss << a; - RelayMessage(inv, ss); -} - -template<> -inline void RelayMessage<>(const CInv& inv, const CDataStream& ss) -{ - { - LOCK(cs_mapRelay); - // Expire old relay messages - while (!vRelayExpiration.empty() && vRelayExpiration.front().first < GetTime()) - { - mapRelay.erase(vRelayExpiration.front().second); - vRelayExpiration.pop_front(); - } - - // Save original serialized message so newer versions are preserved - mapRelay.insert(std::make_pair(inv, ss)); - vRelayExpiration.push_back(std::make_pair(GetTime() + 15 * 60, inv)); - } - - RelayInventory(inv); -} - +class CTransaction; +void RelayTransaction(const CTransaction& tx, const uint256& hash); +void RelayTransaction(const CTransaction& tx, const uint256& hash, const CDataStream& ss); #endif |