Skip to content

Commit 06059b0

Browse files
committed
net: rename DEFAULT_BANSCORE_THRESHOLD to DISCOURAGEMENT_THRESHOLD
and move it from validation to net processing.
1 parent 1d4024b commit 06059b0

File tree

5 files changed

+11
-10
lines changed

5 files changed

+11
-10
lines changed

src/net_processing.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1016,7 +1016,7 @@ unsigned int LimitOrphanTxSize(unsigned int nMaxOrphans)
10161016
}
10171017

10181018
/**
1019-
* Increment peer's misbehavior score. If the new value >= DEFAULT_BANSCORE_THRESHOLD, mark the node
1019+
* Increment peer's misbehavior score. If the new value >= DISCOURAGEMENT_THRESHOLD, mark the node
10201020
* to be discouraged, meaning the peer might be disconnected and added to the discouragement filter.
10211021
*/
10221022
void Misbehaving(NodeId pnode, int howmuch, const std::string& message) EXCLUSIVE_LOCKS_REQUIRED(cs_main)
@@ -1030,7 +1030,7 @@ void Misbehaving(NodeId pnode, int howmuch, const std::string& message) EXCLUSIV
10301030

10311031
state->nMisbehavior += howmuch;
10321032
std::string message_prefixed = message.empty() ? "" : (": " + message);
1033-
if (state->nMisbehavior >= DEFAULT_BANSCORE_THRESHOLD && state->nMisbehavior - howmuch < DEFAULT_BANSCORE_THRESHOLD)
1033+
if (state->nMisbehavior >= DISCOURAGEMENT_THRESHOLD && state->nMisbehavior - howmuch < DISCOURAGEMENT_THRESHOLD)
10341034
{
10351035
LogPrint(BCLog::NET, "%s: %s peer=%d (%d -> %d) DISCOURAGE THRESHOLD EXCEEDED%s\n", __func__, state->name, pnode, state->nMisbehavior-howmuch, state->nMisbehavior, message_prefixed);
10361036
state->m_should_discourage = true;

src/net_processing.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ static const unsigned int DEFAULT_MAX_ORPHAN_TRANSACTIONS = 100;
2323
static const unsigned int DEFAULT_BLOCK_RECONSTRUCTION_EXTRA_TXN = 100;
2424
static const bool DEFAULT_PEERBLOOMFILTERS = false;
2525
static const bool DEFAULT_PEERBLOCKFILTERS = false;
26+
/** Threshold for marking a node to be discouraged, e.g. disconnected and added to the discouragement filter. */
27+
static const int DISCOURAGEMENT_THRESHOLD{100};
2628

2729
class PeerLogicValidation final : public CValidationInterface, public NetEventsInterface {
2830
private:

src/test/denialofservice_tests.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -232,14 +232,14 @@ BOOST_AUTO_TEST_CASE(DoS_banning)
232232
dummyNode1.fSuccessfullyConnected = true;
233233
{
234234
LOCK(cs_main);
235-
Misbehaving(dummyNode1.GetId(), DEFAULT_BANSCORE_THRESHOLD); // Should get banned
235+
Misbehaving(dummyNode1.GetId(), DISCOURAGEMENT_THRESHOLD); // Should be discouraged
236236
}
237237
{
238238
LOCK2(cs_main, dummyNode1.cs_sendProcessing);
239239
BOOST_CHECK(peerLogic->SendMessages(&dummyNode1));
240240
}
241241
BOOST_CHECK(banman->IsDiscouraged(addr1));
242-
BOOST_CHECK(!banman->IsDiscouraged(ip(0xa0b0c001|0x0000ff00))); // Different IP, not banned
242+
BOOST_CHECK(!banman->IsDiscouraged(ip(0xa0b0c001|0x0000ff00))); // Different IP, not discouraged
243243

244244
CAddress addr2(ip(0xa0b0c002), NODE_NONE);
245245
CNode dummyNode2(id++, NODE_NETWORK, 0, INVALID_SOCKET, addr2, 1, 1, CAddress(), "", true);
@@ -255,7 +255,7 @@ BOOST_AUTO_TEST_CASE(DoS_banning)
255255
LOCK2(cs_main, dummyNode2.cs_sendProcessing);
256256
BOOST_CHECK(peerLogic->SendMessages(&dummyNode2));
257257
}
258-
BOOST_CHECK(!banman->IsDiscouraged(addr2)); // 2 not banned yet...
258+
BOOST_CHECK(!banman->IsDiscouraged(addr2)); // 2 not discouraged yet...
259259
BOOST_CHECK(banman->IsDiscouraged(addr1)); // ... but 1 still should be
260260
{
261261
LOCK(cs_main);
@@ -287,7 +287,7 @@ BOOST_AUTO_TEST_CASE(DoS_banscore)
287287
dummyNode1.fSuccessfullyConnected = true;
288288
{
289289
LOCK(cs_main);
290-
Misbehaving(dummyNode1.GetId(), DEFAULT_BANSCORE_THRESHOLD - 11);
290+
Misbehaving(dummyNode1.GetId(), DISCOURAGEMENT_THRESHOLD - 11);
291291
}
292292
{
293293
LOCK2(cs_main, dummyNode1.cs_sendProcessing);
@@ -336,7 +336,7 @@ BOOST_AUTO_TEST_CASE(DoS_bantime)
336336

337337
{
338338
LOCK(cs_main);
339-
Misbehaving(dummyNode.GetId(), DEFAULT_BANSCORE_THRESHOLD);
339+
Misbehaving(dummyNode.GetId(), DISCOURAGEMENT_THRESHOLD);
340340
}
341341
{
342342
LOCK2(cs_main, dummyNode.cs_sendProcessing);

src/validation.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,6 @@ static const int64_t DEFAULT_MAX_TIP_AGE = 24 * 60 * 60;
7474
static const bool DEFAULT_CHECKPOINTS_ENABLED = true;
7575
static const bool DEFAULT_TXINDEX = false;
7676
static const char* const DEFAULT_BLOCKFILTERINDEX = "0";
77-
static const int DEFAULT_BANSCORE_THRESHOLD = 100;
7877
/** Default for -persistmempool */
7978
static const bool DEFAULT_PERSIST_MEMPOOL = true;
8079
/** Default for using fee filter */

test/functional/p2p_leak.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
wait_until,
2727
)
2828

29-
DEFAULT_BANSCORE_THRESHOLD = 100
29+
DISCOURAGEMENT_THRESHOLD = 100
3030

3131

3232
class CLazyNode(P2PInterface):
@@ -70,7 +70,7 @@ class CNodeNoVersionBan(CLazyNode):
7070
# NOTE: implementation-specific check here. Remove if bitcoind ban behavior changes
7171
def on_open(self):
7272
super().on_open()
73-
for _ in range(DEFAULT_BANSCORE_THRESHOLD):
73+
for _ in range(DISCOURAGEMENT_THRESHOLD):
7474
self.send_message(msg_verack())
7575

7676
# Node that never sends a version. This one just sits idle and hopes to receive

0 commit comments

Comments
 (0)