doc/release-process.md requires PROTOCOL_VERSION to increase by 1 for any release carrying a consensus change. This one does:6d282db21stops BLOCK_VALID_CONTEXT overwriting the block validity level,267e6f7addrops the dead CBOPRET price validation from the coinbase check, and pow.cpp is 157 lines lighter. The value has not moved since85c8d7f7din March. MIN_PEER_PROTO_VERSION stays at 2000000. It currently equals PROTOCOL_VERSION, so raising it in step would disconnect every peer still announcing 2000000 -- which is every user, because no DragonX release has ever been installable: the wallet's updater pins an ed25519 key and sets kDaemonRequireSignature = true, and no release has ever shipped a .sig. Bumping only the advertised version lets 1.3.0 nodes be identified on the wire without partitioning the network on release day. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FU87LdsJZiZkfq1eXubpeo
55 lines
3.1 KiB
C
55 lines
3.1 KiB
C
// Copyright (c) 2012-2014 The Bitcoin Core developers
|
|
// Copyright (c) 2016-2026 The Hush developers
|
|
// Distributed under the GPLv3 software license, see the accompanying
|
|
// file COPYING or https://www.gnu.org/licenses/gpl-3.0.en.html
|
|
/******************************************************************************
|
|
* Copyright © 2014-2019 The SuperNET Developers. *
|
|
* *
|
|
* See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at *
|
|
* the top-level directory of this distribution for the individual copyright *
|
|
* holder information and the developer policies on copyright and licensing. *
|
|
* *
|
|
* Unless otherwise agreed in a custom licensing agreement, no part of the *
|
|
* SuperNET software, including this file may be copied, modified, propagated *
|
|
* or distributed except according to the terms contained in the LICENSE file *
|
|
* *
|
|
* Removal or modification of this copyright notice is prohibited. *
|
|
* *
|
|
******************************************************************************/
|
|
|
|
#ifndef HUSH_VERSION_H
|
|
#define HUSH_VERSION_H
|
|
|
|
// network protocol versioning
|
|
// DragonX 1.0.0 - bumped to separate from old HUSH/DragonX nodes with RandomX bug
|
|
// DragonX 1.3.0 - bumped for the consensus changes in this release (BLOCK_VALID_CONTEXT
|
|
// no longer overwrites the validity level, the dead CBOPRET coinbase
|
|
// price check is gone, and pow.cpp lost 157 lines). MIN_PEER_PROTO_VERSION
|
|
// is deliberately NOT raised: it currently equals this value, and raising
|
|
// it would disconnect every node still on v1.0.3 -- which is all users,
|
|
// since no release has ever been installable (unsigned archives).
|
|
static const int PROTOCOL_VERSION = 2000001;
|
|
//! initial proto version, to be increased after version/verack negotiation
|
|
static const int INIT_PROTO_VERSION = 209;
|
|
//! In this version, 'getheaders' was introduced.
|
|
static const int GETHEADERS_VERSION = 31800;
|
|
|
|
//! disconnect from peers older than this proto version (HUSH mainnet)
|
|
static const int MIN_HUSH_PEER_PROTO_VERSION = 1987426;
|
|
|
|
//! disconnect from peers older than this proto version (DragonX/HACs)
|
|
//! Set to 2000000 to reject nodes without RandomX validation fix
|
|
static const int MIN_PEER_PROTO_VERSION = 2000000;
|
|
|
|
//! nTime field added to CAddress, starting with this version;
|
|
//! if possible, avoid requesting addresses nodes older than this
|
|
static const int CADDR_TIME_VERSION = 31402;
|
|
//! BIP 0031, pong message, is enabled for all versions AFTER this one
|
|
static const int BIP0031_VERSION = 60000;
|
|
//! "mempool" command, enhanced "getdata" behavior starts with this version
|
|
static const int MEMPOOL_GD_VERSION = 60002;
|
|
//! "filter*" commands are disabled without NODE_BLOOM after and including this version
|
|
static const int NO_BLOOM_VERSION = 170004;
|
|
|
|
#endif // HUSH_VERSION_H
|