aboutsummaryrefslogtreecommitdiff
path: root/src/net.h
diff options
context:
space:
mode:
authorTroy Giorshev <troygiorshev@gmail.com>2020-06-08 22:26:22 -0400
committerTroy Giorshev <troygiorshev@gmail.com>2020-09-22 22:01:14 -0400
commit52d4ae46ab822d0f54e246a6f2364415cda149bd (patch)
treeb2e35f9a1dfca12580318933057243856d0eca31 /src/net.h
parent5bceef6b12fa16d20287693be377dace3dfec3e5 (diff)
downloadbitcoin-52d4ae46ab822d0f54e246a6f2364415cda149bd.tar.xz
Give V1TransportDeserializer CChainParams& member
This adds a CChainParams& member to V1TransportDeserializer member, and use it in place of many Params() calls. In addition to reducing the number of calls to a global, this removes a parameter from GetMessage (and will later allow us to remove one from CMessageHeader::IsValid())
Diffstat (limited to 'src/net.h')
-rw-r--r--src/net.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/net.h b/src/net.h
index cec201c5d2..29941b9622 100644
--- a/src/net.h
+++ b/src/net.h
@@ -10,6 +10,7 @@
#include <addrman.h>
#include <amount.h>
#include <bloom.h>
+#include <chainparams.h>
#include <compat.h>
#include <crypto/siphash.h>
#include <hash.h>
@@ -732,13 +733,14 @@ public:
// read and deserialize data
virtual int Read(const char *data, unsigned int bytes) = 0;
// decomposes a message from the context
- virtual Optional<CNetMessage> GetMessage(const CMessageHeader::MessageStartChars& message_start, std::chrono::microseconds time, uint32_t& out_err) = 0;
+ virtual Optional<CNetMessage> GetMessage(std::chrono::microseconds time, uint32_t& out_err) = 0;
virtual ~TransportDeserializer() {}
};
class V1TransportDeserializer final : public TransportDeserializer
{
private:
+ const CChainParams& m_chain_params;
const NodeId m_node_id; // Only for logging
mutable CHash256 hasher;
mutable uint256 data_hash;
@@ -765,8 +767,9 @@ private:
}
public:
- V1TransportDeserializer(const NodeId node_id, int nTypeIn, int nVersionIn)
- : m_node_id(node_id),
+ V1TransportDeserializer(const CChainParams& chain_params, const NodeId node_id, int nTypeIn, int nVersionIn)
+ : m_chain_params(chain_params),
+ m_node_id(node_id),
hdrbuf(nTypeIn, nVersionIn),
vRecv(nTypeIn, nVersionIn)
{
@@ -789,7 +792,7 @@ public:
if (ret < 0) Reset();
return ret;
}
- Optional<CNetMessage> GetMessage(const CMessageHeader::MessageStartChars& message_start, std::chrono::microseconds time, uint32_t& out_err_raw_size) override;
+ Optional<CNetMessage> GetMessage(std::chrono::microseconds time, uint32_t& out_err_raw_size) override;
};
/** The TransportSerializer prepares messages for the network transport