Skip to content

Commit 146d244

Browse files
Merge dashpay#6140: feat: harden all sporks on mainnet to current values
e1030a0 docs: add release notes for 6140 (pasta) 9ed292a feat: harden all sporks on mainnet to current values (pasta) Pull request description: ## Issue being fixed or feature implemented Harden all sporks on the mainnet; they are no longer necessary. Although retaining them might be beneficial in addressing bugs or issues, the greater priority is to protect mainnet by minimizing risks associated with potential centralization or even its perception. Sporks will continue to be valuable for testing on developer networks; however, on mainnet, the risks of maintaining them now outweigh the benefits of retaining them. ## What was done? Adjust CSporkManager::GetSporkValue to always return 0 for sporks in general and 1 for SPORK_21_QUORUM_ALL_CONNECTED specifically. ## How Has This Been Tested? Ran main net node with this patch. Sporks show as expected ## Breaking Changes This is not a breaking change. ## Checklist: - [x] I have performed a self-review of my own code - [x] I have commented my code, particularly in hard-to-understand areas - [ ] I have added or updated relevant unit/integration/functional/e2e tests - [ ] I have made corresponding changes to the documentation - [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_ ACKs for top commit: knst: utACK e1030a0 UdjinM6: utACK e1030a0 (CI failure is unrelated) Tree-SHA512: f20d0f614b7e9d6eb5606c545d0747a9d415f2905512dd6100a2f9fb00bb6de02c8d5aa74cb41aa39163fde0ab05fe472913acc227b1b4afce7e984f8897940d
1 parent 024d272 commit 146d244

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

doc/release-notes-6140.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
Mainnet Spork Hardening
2+
-----------------------
3+
4+
This version hardens all Sporks on mainnet. Sporks remain in effect on all devnets and testnet; however, on mainnet,
5+
the value of all sporks are hard coded to 0, or 1 for SPORK_21_QUORUM_ALL_CONNECTED. These hardened values match the
6+
active values historically used on mainnet, so there is no change in the network's functionality.

src/spork.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,16 @@ bool CSporkManager::IsSporkActive(SporkId nSporkID) const
262262

263263
SporkValue CSporkManager::GetSporkValue(SporkId nSporkID) const
264264
{
265+
// Harden all sporks on Mainnet
266+
if (!Params().IsTestChain()) {
267+
switch (nSporkID) {
268+
case SPORK_21_QUORUM_ALL_CONNECTED:
269+
return 1;
270+
default:
271+
return 0;
272+
}
273+
}
274+
265275
LOCK(cs);
266276

267277
if (auto opt_sporkValue = SporkValueIfActive(nSporkID)) {

0 commit comments

Comments
 (0)