Browse Source

Merge #9659: Net: Turn some methods and params/variables const

0729102 Net: pass interruptMsgProc as const where possible (Jorge Timón)
fc7f2ff Net: Make CNetMsgMaker more const (Jorge Timón)
d45955f Net: CConnman: Make some methods const (Jorge Timón)
0.14
Wladimir J. van der Laan 8 years ago
parent
commit
09e0c28f85
No known key found for this signature in database
GPG Key ID: 74810B012346C9A6
  1. 6
      src/net.cpp
  2. 6
      src/net.h
  3. 18
      src/net_processing.cpp
  4. 4
      src/net_processing.h
  5. 4
      src/netmessagemaker.h

6
src/net.cpp

@ -781,7 +781,7 @@ const uint256& CNetMessage::GetMessageHash() const
// requires LOCK(cs_vSend) // requires LOCK(cs_vSend)
size_t CConnman::SocketSendData(CNode *pnode) size_t CConnman::SocketSendData(CNode *pnode) const
{ {
auto it = pnode->vSendMsg.begin(); auto it = pnode->vSendMsg.begin();
size_t nSentSize = 0; size_t nSentSize = 0;
@ -2719,12 +2719,12 @@ int64_t PoissonNextSend(int64_t nNow, int average_interval_seconds) {
return nNow + (int64_t)(log1p(GetRand(1ULL << 48) * -0.0000000000000035527136788 /* -1/2^48 */) * average_interval_seconds * -1000000.0 + 0.5); return nNow + (int64_t)(log1p(GetRand(1ULL << 48) * -0.0000000000000035527136788 /* -1/2^48 */) * average_interval_seconds * -1000000.0 + 0.5);
} }
CSipHasher CConnman::GetDeterministicRandomizer(uint64_t id) CSipHasher CConnman::GetDeterministicRandomizer(uint64_t id) const
{ {
return CSipHasher(nSeed0, nSeed1).Write(id); return CSipHasher(nSeed0, nSeed1).Write(id);
} }
uint64_t CConnman::CalculateKeyedNetGroup(const CAddress& ad) uint64_t CConnman::CalculateKeyedNetGroup(const CAddress& ad) const
{ {
std::vector<unsigned char> vchNetGroup(ad.GetGroup()); std::vector<unsigned char> vchNetGroup(ad.GetGroup());

6
src/net.h

@ -281,7 +281,7 @@ public:
int GetBestHeight() const; int GetBestHeight() const;
/** Get a unique deterministic randomizer. */ /** Get a unique deterministic randomizer. */
CSipHasher GetDeterministicRandomizer(uint64_t id); CSipHasher GetDeterministicRandomizer(uint64_t id) const;
unsigned int GetReceiveFloodSize() const; unsigned int GetReceiveFloodSize() const;
@ -302,7 +302,7 @@ private:
void ThreadSocketHandler(); void ThreadSocketHandler();
void ThreadDNSAddressSeed(); void ThreadDNSAddressSeed();
uint64_t CalculateKeyedNetGroup(const CAddress& ad); uint64_t CalculateKeyedNetGroup(const CAddress& ad) const;
CNode* FindNode(const CNetAddr& ip); CNode* FindNode(const CNetAddr& ip);
CNode* FindNode(const CSubNet& subNet); CNode* FindNode(const CSubNet& subNet);
@ -317,7 +317,7 @@ private:
NodeId GetNewNodeId(); NodeId GetNewNodeId();
size_t SocketSendData(CNode *pnode); size_t SocketSendData(CNode *pnode) const;
//!check is the banlist has unwritten changes //!check is the banlist has unwritten changes
bool BannedSetIsDirty(); bool BannedSetIsDirty();
//!set the "dirty" flag for the banlist //!set the "dirty" flag for the banlist

18
src/net_processing.cpp

@ -778,7 +778,7 @@ static uint256 most_recent_block_hash;
void PeerLogicValidation::NewPoWValidBlock(const CBlockIndex *pindex, const std::shared_ptr<const CBlock>& pblock) { void PeerLogicValidation::NewPoWValidBlock(const CBlockIndex *pindex, const std::shared_ptr<const CBlock>& pblock) {
std::shared_ptr<const CBlockHeaderAndShortTxIDs> pcmpctblock = std::make_shared<const CBlockHeaderAndShortTxIDs> (*pblock, true); std::shared_ptr<const CBlockHeaderAndShortTxIDs> pcmpctblock = std::make_shared<const CBlockHeaderAndShortTxIDs> (*pblock, true);
CNetMsgMaker msgMaker(PROTOCOL_VERSION); const CNetMsgMaker msgMaker(PROTOCOL_VERSION);
LOCK(cs_main); LOCK(cs_main);
@ -956,11 +956,11 @@ static void RelayAddress(const CAddress& addr, bool fReachable, CConnman& connma
connman.ForEachNodeThen(std::move(sortfunc), std::move(pushfunc)); connman.ForEachNodeThen(std::move(sortfunc), std::move(pushfunc));
} }
void static ProcessGetData(CNode* pfrom, const Consensus::Params& consensusParams, CConnman& connman, std::atomic<bool>& interruptMsgProc) void static ProcessGetData(CNode* pfrom, const Consensus::Params& consensusParams, CConnman& connman, const std::atomic<bool>& interruptMsgProc)
{ {
std::deque<CInv>::iterator it = pfrom->vRecvGetData.begin(); std::deque<CInv>::iterator it = pfrom->vRecvGetData.begin();
std::vector<CInv> vNotFound; std::vector<CInv> vNotFound;
CNetMsgMaker msgMaker(pfrom->GetSendVersion()); const CNetMsgMaker msgMaker(pfrom->GetSendVersion());
LOCK(cs_main); LOCK(cs_main);
while (it != pfrom->vRecvGetData.end()) { while (it != pfrom->vRecvGetData.end()) {
@ -1153,12 +1153,12 @@ inline void static SendBlockTransactions(const CBlock& block, const BlockTransac
resp.txn[i] = block.vtx[req.indexes[i]]; resp.txn[i] = block.vtx[req.indexes[i]];
} }
LOCK(cs_main); LOCK(cs_main);
CNetMsgMaker msgMaker(pfrom->GetSendVersion()); const CNetMsgMaker msgMaker(pfrom->GetSendVersion());
int nSendFlags = State(pfrom->GetId())->fWantsCmpctWitness ? 0 : SERIALIZE_TRANSACTION_NO_WITNESS; int nSendFlags = State(pfrom->GetId())->fWantsCmpctWitness ? 0 : SERIALIZE_TRANSACTION_NO_WITNESS;
connman.PushMessage(pfrom, msgMaker.Make(nSendFlags, NetMsgType::BLOCKTXN, resp)); connman.PushMessage(pfrom, msgMaker.Make(nSendFlags, NetMsgType::BLOCKTXN, resp));
} }
bool static ProcessMessage(CNode* pfrom, std::string strCommand, CDataStream& vRecv, int64_t nTimeReceived, const CChainParams& chainparams, CConnman& connman, std::atomic<bool>& interruptMsgProc) bool static ProcessMessage(CNode* pfrom, const std::string& strCommand, CDataStream& vRecv, int64_t nTimeReceived, const CChainParams& chainparams, CConnman& connman, const std::atomic<bool>& interruptMsgProc)
{ {
LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id); LogPrint("net", "received: %s (%u bytes) peer=%d\n", SanitizeString(strCommand), vRecv.size(), pfrom->id);
if (IsArgSet("-dropmessagestest") && GetRand(GetArg("-dropmessagestest", 0)) == 0) if (IsArgSet("-dropmessagestest") && GetRand(GetArg("-dropmessagestest", 0)) == 0)
@ -1354,7 +1354,7 @@ bool static ProcessMessage(CNode* pfrom, std::string strCommand, CDataStream& vR
} }
// At this point, the outgoing message serialization version can't change. // At this point, the outgoing message serialization version can't change.
CNetMsgMaker msgMaker(pfrom->GetSendVersion()); const CNetMsgMaker msgMaker(pfrom->GetSendVersion());
if (strCommand == NetMsgType::VERACK) if (strCommand == NetMsgType::VERACK)
{ {
@ -2588,7 +2588,7 @@ bool static ProcessMessage(CNode* pfrom, std::string strCommand, CDataStream& vR
return true; return true;
} }
bool ProcessMessages(CNode* pfrom, CConnman& connman, std::atomic<bool>& interruptMsgProc) bool ProcessMessages(CNode* pfrom, CConnman& connman, const std::atomic<bool>& interruptMsgProc)
{ {
const CChainParams& chainparams = Params(); const CChainParams& chainparams = Params();
// //
@ -2721,7 +2721,7 @@ public:
} }
}; };
bool SendMessages(CNode* pto, CConnman& connman, std::atomic<bool>& interruptMsgProc) bool SendMessages(CNode* pto, CConnman& connman, const std::atomic<bool>& interruptMsgProc)
{ {
const Consensus::Params& consensusParams = Params().GetConsensus(); const Consensus::Params& consensusParams = Params().GetConsensus();
{ {
@ -2730,7 +2730,7 @@ bool SendMessages(CNode* pto, CConnman& connman, std::atomic<bool>& interruptMsg
return true; return true;
// If we get here, the outgoing message serialization version is set and can't change. // If we get here, the outgoing message serialization version is set and can't change.
CNetMsgMaker msgMaker(pto->GetSendVersion()); const CNetMsgMaker msgMaker(pto->GetSendVersion());
// //
// Message: ping // Message: ping

4
src/net_processing.h

@ -49,7 +49,7 @@ bool GetNodeStateStats(NodeId nodeid, CNodeStateStats &stats);
void Misbehaving(NodeId nodeid, int howmuch); void Misbehaving(NodeId nodeid, int howmuch);
/** Process protocol messages received from a given node */ /** Process protocol messages received from a given node */
bool ProcessMessages(CNode* pfrom, CConnman& connman, std::atomic<bool>& interrupt); bool ProcessMessages(CNode* pfrom, CConnman& connman, const std::atomic<bool>& interrupt);
/** /**
* Send queued protocol messages to be sent to a give node. * Send queued protocol messages to be sent to a give node.
* *
@ -58,6 +58,6 @@ bool ProcessMessages(CNode* pfrom, CConnman& connman, std::atomic<bool>& interru
* @param[in] interrupt Interrupt condition for processing threads * @param[in] interrupt Interrupt condition for processing threads
* @return True if there is more work to be done * @return True if there is more work to be done
*/ */
bool SendMessages(CNode* pto, CConnman& connman, std::atomic<bool>& interrupt); bool SendMessages(CNode* pto, CConnman& connman, const std::atomic<bool>& interrupt);
#endif // BITCOIN_NET_PROCESSING_H #endif // BITCOIN_NET_PROCESSING_H

4
src/netmessagemaker.h

@ -15,7 +15,7 @@ public:
CNetMsgMaker(int nVersionIn) : nVersion(nVersionIn){} CNetMsgMaker(int nVersionIn) : nVersion(nVersionIn){}
template <typename... Args> template <typename... Args>
CSerializedNetMsg Make(int nFlags, std::string sCommand, Args&&... args) CSerializedNetMsg Make(int nFlags, std::string sCommand, Args&&... args) const
{ {
CSerializedNetMsg msg; CSerializedNetMsg msg;
msg.command = std::move(sCommand); msg.command = std::move(sCommand);
@ -24,7 +24,7 @@ public:
} }
template <typename... Args> template <typename... Args>
CSerializedNetMsg Make(std::string sCommand, Args&&... args) CSerializedNetMsg Make(std::string sCommand, Args&&... args) const
{ {
return Make(0, std::move(sCommand), std::forward<Args>(args)...); return Make(0, std::move(sCommand), std::forward<Args>(args)...);
} }

Loading…
Cancel
Save