Skip to content

c2pool v0.2.11.1

Latest

Choose a tag to compare

@github-actions github-actions released this 10 Nov 02:56
· 3 commits to master since this release
v0.2.11.1
37edc4e

c2pool v0.2.11.1

This release brings the Dash Core 24 hard fork to the embedded (daemon-less) DASH node and fixes an LTC money bug. Upgrade DASH nodes before the v24 lock-in; upgrade every c2pool-ltc node now.

DASH: Dash Core 24 hard fork

Dash Core 24.0.0 is a hard fork. Its earliest activation is at block 2,580,480. A pool that runs dashd has to upgrade dashd; a daemon-less c2pool-dash node only needs this release.

  • Embedded templates now carry every transaction type the Dash Core 24.0.0 miner includes, with Dash Core's checks: MNHF signals (type 7), ProDisTx, ProUpShareTx and ProUpSharedRegTx (types 10–12), and version-3 provider transactions, including shared masternode registrations. The masternode list is folded under the v24 rules, so merkleRootMNList matches Dash Core.
  • Dash Core's miner ordering and its v24 mempool conflict rules are ported.
  • The v24 activation height comes from deployment tracking on every network. Each block's CbTx version decides how it is folded, and CbTx versions Dash Core rejects are refused.
  • Before the fork, on mainnet: a synced Dash Core 24.0.0 node accepted every embedded template submitted to its block-proposal check (122 of 122 across three runs), with matching CbTx fields.
  • Windows: the masternode payout split no longer needs a 128-bit integer type (MSVC builds). Every DASH binary links exactly one BLS mode; macOS and Windows packages carry the real BLS12-381 verifier.

LTC: no more burned coinbases

When the share tracker was busy, c2pool-ltc could build work whose coinbase paid the whole block reward to an all-zero key, or reuse a payout split computed for a different template. Blocks found on that work burned the reward or were rejected.

  • Work is now held until a valid payout split for the exact template exists. An empty share chain pays the donation script, never the zero key.
  • Redistributed and node-fee payouts keep the recipient's own script type. P2SH and segwit addresses were previously paid to scripts nobody can spend.
  • Under injected tracker contention on regtest, 515 blocks were found with no burned, rejected or underpaid block (the previous code burned 48% of the value in the same test).

Known issue

  • c2pool-ltc --solo and --custodial refuse to start in this release: the blocks they built were invalid. Use pool mode. A fix is planned for the next release.

Python p2pool

The Python p2pool implementations are no longer maintained. All updates, including Dash Core v24 support and security fixes, are published only in c2pool.

Verify the download

SHA256SUMS is signed with key 99556F8DE6AD66057A1A10EC50AB1379285EFE76:

gpg --verify SHA256SUMS.asc SHA256SUMS
sha256sum -c --ignore-missing SHA256SUMS