mirror of
https://github.com/dashpay/dash.git
synced 2024-12-24 19:42:46 +01:00
Compare commits
4 Commits
bf114de44c
...
4579374efd
Author | SHA1 | Date | |
---|---|---|---|
|
4579374efd | ||
|
ad7a373529 | ||
|
a04d178a31 | ||
|
d75ee3a9e1 |
@ -86,10 +86,10 @@ likely require a reindex.
|
||||
- **glibc Requirement**
|
||||
- The minimum required glibc to run Dash Core is now **2.31**. This means that **RHEL 8** and **Ubuntu 18.04 (Bionic)** are no longer supported.
|
||||
|
||||
## New RPCs
|
||||
- **FreeBSD Improvements**
|
||||
- Fixed issues with building Dash Core on FreeBSD.
|
||||
|
||||
- **`quorum platformsign`**
|
||||
- A new subcommand has been introduced, offering a structured way to perform platform-related quorum signing operations.
|
||||
## New RPCs
|
||||
|
||||
- **`coinjoinsalt`**
|
||||
- Allows manipulation of a CoinJoin salt stored in a wallet.
|
||||
@ -153,7 +153,7 @@ likely require a reindex.
|
||||
## Devnet Breaking Changes
|
||||
|
||||
- **Hardfork Activation Changes**
|
||||
- `BRR` (`realloc`), `DIP0020`, `DIP0024`, `V19`, `V20`, and `MN_R` hardforks are now activated at **block 2** instead of block **300** on devnets.
|
||||
- `BRR` (`realloc`), `DIP0020`, `DIP0024`, `V19`, `V20`, and `MN_RR` hardforks are now activated at **block 2** instead of block **300** on devnets.
|
||||
- **Implications:**
|
||||
- Breaking change.
|
||||
- Inability to sync on devnets created with earlier Dash Core versions and vice versa.
|
||||
|
@ -235,7 +235,7 @@ Remote Procedure Calls (RPCs)
|
||||
support for coin selection and a custom fee rate. The `send` RPC is experimental
|
||||
and may change in subsequent releases. Using it is encouraged once it's no
|
||||
longer experimental: `sendmany` and `sendtoaddress` may be deprecated in a future release.
|
||||
- A new `quorum signplatform` RPC is added for Platform needs. This composite command limits Platform to only request signatures from the Platform quorum type. It is equivalent to `quorum sign <platform type>`.
|
||||
- A new `quorum platformsign` RPC is added for Platform needs. This composite command limits Platform to only request signatures from the Platform quorum type. It is equivalent to `quorum sign <platform type>`.
|
||||
|
||||
### RPC changes
|
||||
- `createwallet` has an updated argument list: `createwallet "wallet_name" ( disable_private_keys blank "passphrase" avoid_reuse descriptors load_on_startup )`
|
||||
|
@ -11,9 +11,9 @@
|
||||
#include <bls/bls.h>
|
||||
#include <bls/bls_ies.h>
|
||||
#include <bls/bls_worker.h>
|
||||
#include <saltedhasher.h>
|
||||
#include <sync.h>
|
||||
#include <util/underlying.h>
|
||||
#include <saltedhasher.h>
|
||||
|
||||
#include <optional>
|
||||
#include <unordered_set>
|
||||
|
@ -653,8 +653,9 @@ uint256 DeterministicOutboundConnection(const uint256& proTxHash1, const uint256
|
||||
return proTxHash2;
|
||||
}
|
||||
|
||||
std::unordered_set<uint256, StaticSaltedHasher> GetQuorumConnections(const Consensus::LLMQParams& llmqParams, CDeterministicMNManager& dmnman, const CSporkManager& sporkman,
|
||||
gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex, const uint256& forMember, bool onlyOutbound)
|
||||
std::unordered_set<uint256, StaticSaltedHasher> GetQuorumConnections(
|
||||
const Consensus::LLMQParams& llmqParams, CDeterministicMNManager& dmnman, const CSporkManager& sporkman,
|
||||
gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex, const uint256& forMember, bool onlyOutbound)
|
||||
{
|
||||
if (IsAllMembersConnectedEnabled(llmqParams.type, sporkman)) {
|
||||
auto mns = GetAllQuorumMembers(llmqParams.type, dmnman, pQuorumBaseBlockIndex);
|
||||
@ -677,8 +678,10 @@ std::unordered_set<uint256, StaticSaltedHasher> GetQuorumConnections(const Conse
|
||||
return GetQuorumRelayMembers(llmqParams, dmnman, pQuorumBaseBlockIndex, forMember, onlyOutbound);
|
||||
}
|
||||
|
||||
std::unordered_set<uint256, StaticSaltedHasher> GetQuorumRelayMembers(const Consensus::LLMQParams& llmqParams, CDeterministicMNManager& dmnman, gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex,
|
||||
const uint256& forMember, bool onlyOutbound)
|
||||
std::unordered_set<uint256, StaticSaltedHasher> GetQuorumRelayMembers(const Consensus::LLMQParams& llmqParams,
|
||||
CDeterministicMNManager& dmnman,
|
||||
gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex,
|
||||
const uint256& forMember, bool onlyOutbound)
|
||||
{
|
||||
auto mns = GetAllQuorumMembers(llmqParams.type, dmnman, pQuorumBaseBlockIndex);
|
||||
std::unordered_set<uint256, StaticSaltedHasher> result;
|
||||
|
@ -5,16 +5,16 @@
|
||||
#ifndef BITCOIN_LLMQ_UTILS_H
|
||||
#define BITCOIN_LLMQ_UTILS_H
|
||||
|
||||
#include <llmq/params.h>
|
||||
#include <sync.h>
|
||||
#include <gsl/pointers.h>
|
||||
#include <uint256.h>
|
||||
#include <llmq/params.h>
|
||||
#include <saltedhasher.h>
|
||||
#include <sync.h>
|
||||
#include <uint256.h>
|
||||
|
||||
#include <map>
|
||||
#include <set>
|
||||
#include <vector>
|
||||
#include <unordered_set>
|
||||
#include <vector>
|
||||
|
||||
class CConnman;
|
||||
class CBlockIndex;
|
||||
@ -36,8 +36,13 @@ namespace utils
|
||||
std::vector<CDeterministicMNCPtr> GetAllQuorumMembers(Consensus::LLMQType llmqType, CDeterministicMNManager& dmnman, gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex, bool reset_cache = false);
|
||||
|
||||
uint256 DeterministicOutboundConnection(const uint256& proTxHash1, const uint256& proTxHash2);
|
||||
std::unordered_set<uint256, StaticSaltedHasher> GetQuorumConnections(const Consensus::LLMQParams& llmqParams, CDeterministicMNManager& dmnman, const CSporkManager& sporkman, gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex, const uint256& forMember, bool onlyOutbound);
|
||||
std::unordered_set<uint256, StaticSaltedHasher> GetQuorumRelayMembers(const Consensus::LLMQParams& llmqParams, CDeterministicMNManager& dmnman, gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex, const uint256& forMember, bool onlyOutbound);
|
||||
std::unordered_set<uint256, StaticSaltedHasher> GetQuorumConnections(
|
||||
const Consensus::LLMQParams& llmqParams, CDeterministicMNManager& dmnman, const CSporkManager& sporkman,
|
||||
gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex, const uint256& forMember, bool onlyOutbound);
|
||||
std::unordered_set<uint256, StaticSaltedHasher> GetQuorumRelayMembers(const Consensus::LLMQParams& llmqParams,
|
||||
CDeterministicMNManager& dmnman,
|
||||
gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex,
|
||||
const uint256& forMember, bool onlyOutbound);
|
||||
std::set<size_t> CalcDeterministicWatchConnections(Consensus::LLMQType llmqType, gsl::not_null<const CBlockIndex*> pQuorumBaseBlockIndex, size_t memberCount, size_t connectionCount);
|
||||
|
||||
bool EnsureQuorumConnections(const Consensus::LLMQParams& llmqParams, CConnman& connman, CDeterministicMNManager& dmnman, const CSporkManager& sporkman,
|
||||
|
Loading…
Reference in New Issue
Block a user