mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-11 14:38:29 +01:00
[net processing] Move MaybePunishNodeForBlock into PeerManager
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
#include <sync.h>
|
||||
#include <validationinterface.h>
|
||||
|
||||
class BlockValidationState;
|
||||
class CBlockHeader;
|
||||
class CChainParams;
|
||||
class CTxMemPool;
|
||||
@@ -84,6 +85,19 @@ public:
|
||||
const std::chrono::microseconds time_received, const std::atomic<bool>& interruptMsgProc);
|
||||
|
||||
private:
|
||||
/**
|
||||
* Potentially mark a node discouraged based on the contents of a BlockValidationState object
|
||||
*
|
||||
* @param[in] via_compact_block this bool is passed in because net_processing should
|
||||
* punish peers differently depending on whether the data was provided in a compact
|
||||
* block message or not. If the compact block had a valid header, but contained invalid
|
||||
* txs, the peer should not be punished. See BIP 152.
|
||||
*
|
||||
* @return Returns true if the peer was punished (probably disconnected)
|
||||
*/
|
||||
bool MaybePunishNodeForBlock(NodeId nodeid, const BlockValidationState& state,
|
||||
bool via_compact_block, const std::string& message = "");
|
||||
|
||||
/** Maybe disconnect a peer and discourage future connections from its address.
|
||||
*
|
||||
* @param[in] pnode The node to check.
|
||||
|
||||
Reference in New Issue
Block a user