mirror of
https://github.com/ElementsProject/elements.git
synced 2026-08-14 12:43:40 +02:00
693f20608fill checkqueue_tests vector for completion checking (Gregory Sanders)3cc720592Assert that queued checks are non-null (Gregory Sanders)d21e0563cAddress some linter complaints (Steven Roose)ad3d496d7Add extra lock check for OSX build (Steven Roose)872d39fbePrevent Travis from failing when tests are disabled (Steven Roose)4ed0bb36bFix dead-code linter issues (Steven Roose)bf4f1d009MERGE-FIX: Disable p2p_invalid_messages tests to fix later (Steven Roose)ee0e510f3MERGE-FIX: Fix other functional tests (Steven Roose)5492cefccMERGE-FIX: Fix fedpeg and pak tests for 0.18.0 (Steven Roose)1a2a93a5fMERGE-FIX: General fixes for functional tests (Steven Roose)3a8398024MERGE-FIX: Fix upstream functional tests (Steven Roose)71723f794MERGE-FIX: Adapt bitcoin_functional (Steven Roose)449ac89f3MERGE-FIX: Copy bitcoin_functional from upstream (Steven Roose)9f4f2e751MERGE-FIX: Fix compilation errors (Steven Roose)7256637daMERGE-FIX: Makefile fix (Steven Roose)7afddfa8cimportmulti: Don't add internal addresses to address book (Gregory Sanders)fa483e13brpc: Add RPCHelpMan for machine-generated help (MarcoFalke)fa0d36f71rpc: Include rpc/util.h where needed for RPCHelpMan (MarcoFalke)fa5a6ce10qa: Raise ci test_runner timeout to 40 mins (MarcoFalke)fa3df025etravis: Avoid timeout on verify-commits check (MarcoFalke)fa2156820qa: Avoid race in p2p_invalid_block by waiting for the block request (MarcoFalke)6c787d340tests: Make feature_block pass on centos (MarcoFalke)27154ce76util.h: explicitly include required QString header (1Il1)4e4de10f6Throw error if CPubKey is invalid during PSBT keypath serialization (Gregory Sanders)a16f44c04qt: Remove "Pay only required fee" checkbox (Hennadii Stepanov)8711cc0c7qt: Improve BitcoinAmountField class (Hennadii Stepanov)a6b5ec18frpc: creates possibility to preserve labels on importprivkey (marcoagner)88a79cb43fix converttopsbt permitsigdata arg, add basic test (Gregory Sanders)038510944Add test for rpcpassword hash error (MeshCollider)13fe258e9Error if rpcpassword in conf contains a hash character (MeshCollider)ec1201a36Don't use systray icon on inappropriate systems (Hennadii Stepanov)fa9ed38d5test_node: get_mem_rss fixups (MarcoFalke)0a656f85aqt: All tray menu actions call showNormalIfMinimized (João Barbosa)6fc21aca6qt: Use GUIUtil::bringToFront where possible (João Barbosa)5796671e1qt: Add GUIUtil::bringToFront (João Barbosa)6b1d2972bRemove obj_c for macOS Dock icon menu (Hennadii Stepanov)2464925e7Use Qt signal for macOS Dock icon click event (Hennadii Stepanov)53bb6be3fRemove obj_c for macOS Dock icon setting (Hennadii Stepanov)76e13b586warnings: Compiler warning on memset usage for non-trivial type (Lenny Maiorani)1e0f3c449macOS: disable AppNap during sync (Alexey Ivanov)6b8d86ddbRequire a public key to be retrieved when signing a P2PKH input (Andrew Chow)e13fea975Add regression test for PSBT signing bug #14473 (Glenn Willen)565500508Refactor PSBTInput signing to enforce invariant (Glenn Willen)0f5bda2bdSimplify arguments to SignPSBTInput (Glenn Willen)53e6fffb8Add bool PSBTInputSigned (Glenn Willen)65166d4cfNew PartiallySignedTransaction constructor from CTransction (Glenn Willen)4f3f5cb4bRemove redundant txConst parameter to FillPSBT (Glenn Willen)fe5d22bc6More concise conversion of CDataStream to string (Glenn Willen)081accb87Pass chain locked variables where needed (Russell Yanofsky)79d579f4eRemove uses of cs_main in wallet code (Russell Yanofsky)ea961c3d7Remove direct node->wallet calls in init.cpp (Russell Yanofsky)8db11dd0bPass chain and client variables where needed (Russell Yanofsky)7e2e62cf7Add skeleton chain and client classes (Russell Yanofsky)fa4da3c05[doc] conf: Remove deprecated options from docs, Other cleanup (MarcoFalke)7a90b1b9dbuild: Fix windows build error if `--disable-bip70` (Chun Kuan Lee)b191c7dfbdoc: add comment explaining recentRejects-DoS behavior (James O'Beirne)c82190cdbtests: Add Python dead code linter (vulture) (practicalswift)590a57fdetests: Remove unused testing code (practicalswift)535203075Avoid using numeric_limits for sequence numbers and lock times (Russell Yanofsky)bafb92150Remove duplicated code (Hennadii Stepanov)e4dc39b3bReplace platform dependent type with proper const (Hennadii Stepanov)053b6f42dalign items in contrib init (Harry Moreno)99d33a6beappveyor: Script improvement part II (Chun Kuan Lee)4773fa820Add llvm-symbolizer directory to PATH. Needed to get symbolized stack traces from the sanitizers. (practicalswift)5c292dafcAdd UBSan suppressions needed to pass test suite (practicalswift)fced6b508Add UBSan options: print_stacktrace + halt_on_error (practicalswift)3d305e3b8Send fewer spam messages in p2p_invalid_messages (James O'Beirne)5a05aa2dbAdd metavar to match var name in help text + Change wording for better readability (Martin Erlandsson)fef5adcc3blockfilter: Use unordered_set instead of set in blockfilter. (Jim Posen)4fb789e9bExtract CSipHasher to it's own file in crypto/ directory. (Jim Posen)bbbbb3f88qa: Add test to ensure node can generate all help texts at runtime (MarcoFalke)d20a9fa13tests: add tests for invalid P2P messages (James O'Beirne)62f94d39ftests: add P2PConnection.send_raw_message (James O'Beirne)5aa31f6eftests: add utility to assert node memory usage hasn't increased (James O'Beirne)825f779dcdoc: Add historical release notes for 0.17.0.1 (Wladimir J. van der Laan)9f49db733Enable functional tests in UBSAN job. Enable -fsanitize=integer (part of UBSAN). Merge UBSAN Travis job with no depends. (practicalswift)6c5355e43example_test.py: fixup coinbase height argument, derive number clearly (Gregory Sanders)b6022149etrivial: Don't translate in help text (ken2812221)086fc8357Tests: Fix a comment (fridokus)dfef0df84tests: Dry run bench_bitcoin (-evals=1 -scaling=0: <1 second running time) as part "make check" to allow for quick identification of assertion/sanitizer failures in benchmarking code (practicalswift)00c6306a6Remove RUN_BENCH logic (practicalswift)a4edb168bZMQ: add options to configure outbound message high water mark, aka SNDHWM (mruddy)ab8c6f24dAdd SAFE_CHARS[SAFE_CHARS_URI]: Chars allowed in URIs (RFC 3986) (practicalswift)991248649rpc: Make HTTP RPC debug logging more informative (practicalswift)33ae98591doc: Update OpenBSD build guide for 6.4 (fanquake)6d247b114gitignore contents of db4 folder (Marty Jones)4ed730802scripted-diff: Rename misleading 'defaultPort' to 'http_port' (Murray Nesbitt)65f3672f3wallet: Refactor to use WalletLocation (João Barbosa)01a4c095cwallet: Add WalletLocation utility class (João Barbosa)04972fefdRemove unused `adjustedTime` parameter (Hennadii Stepanov)63c74d2d3build: Remove illegal spacing in darwin.mk (Jon Layton)2068f089cscripted-diff: Move util files to separate directory. (Jim Posen)14a06525btests: add test for 'getaddressinfo' RPC result 'ischange' field (whythat)93d1aa9abrpcwallet: add 'ischange' field to 'getaddressinfo' response (whythat)fa4bcaf82travis: Compile once on xenial (MarcoFalke)fa4362661test_runner: Remove travis specific code (MarcoFalke)3fd7e76f6[tests] Move deterministic address import to setup_nodes (John Newbery)4fb3388dbcheck that a separator is found for psbt inputs, outputs, and global map (Andrew Chow)9605bbd31Make clear function argument case in dev notes (Carl Dong)fa77aaa5adoc: Add external interface consistency guarantees (MarcoFalke)862d159d6Add test for conversion from non-witness to witness UTXO (Pieter Wuille)f8c171463Convert non-witness UTXOs to witness if witness sig created (Andrew Chow)0a0466761FreeBSD: Document Python 3 requirement for 'gmake check' (Murray Nesbitt)4bd125ffftests: Print dots by default (Chun Kuan Lee)cf2f4306fgui: explicitly disable "Dark Mode" appearance on macOS (fanquake)0e6de3aacadded details about commit messages (Martin Erlandsson)c11875c59Add segwit address tests for importmulti (MeshCollider)201451b1cMake getaddressinfo return solvability (MeshCollider)1753d217eAdd release notes for importmulti segwit change (MeshCollider)353c06459Fix typo in test_framework/blocktools (MeshCollider)f6ed748cfAdd SegWit support to importmulti with some ProcessImport cleanup (MeshCollider)d8bf1071cBugfix: RPC: Add address_type named param for createmultisig (Luke Dashjr)15db77f4dDon't rely on locale dependent functions in base_blob<BITS>::SetHex(...) (uint256), DecodeBase58(...), ParseMoney(...) and ParseHex(...) (practicalswift)36c8e6858Various textual improvements in build docs (Martin Erlandsson)fa511e8daPass tx pool reference into CheckSequenceLocks (MarcoFalke)fa78a2fc6[tests] Test that nodes respond to getdata with notfound (MarcoFalke)3387bb082travis: avoid timeout without saving caches, also enable all qt (Chun Kuan Lee)fbaccbf00build: Fix Qt link order for Windows build (Chun Kuan Lee)ed2e18398Remove fs::relative call and fix listwalletdir tests (João Barbosa)3be209d10rpc: Always throw in getblockstats if -txindex is required (João Barbosa)43719e0a3[macOS] Remove DS_Store WindowBounds bytes object (Jonas Schnelli)4dca7d0a9appveyor: Enable multiwallet test (Chun Kuan Lee)4ea77320ctests: add test case for loading copied wallet twice (Chun Kuan Lee)2d796faf6wallet: Fix duplicate fileid (Chun Kuan Lee)96c509e4dshow the progress of functional test (Isidoro Ghezzi)8907df9e0qa: Ensure wallet unload during walletpassphrase timeout (João Barbosa)321decffarpc: Fix wallet unload during walletpassphrase timeout (João Barbosa)48439b3c1Don't link SSL_LIBS with GUI unless BIP70 is enabled (James Hilliard)fbb643d2aAdd BIP70 deprecation warning (James Hilliard)38b98507cqt: cleanup: Move BIP70 functions together in paymentserver (Wladimir J. van der Laan)9dcf6c0dfbuild: Add --disable-bip70 configure option (Wladimir J. van der Laan)585b47cferpc: Prevent concurrent savemempool (João Barbosa)2b91e42ec[docs] Add release note for removing getwitnessaddress (John Newbery)ebec90ac9[wallet] Remove deprecated addwitnessaddress RPC method (John Newbery)07e3f585a[test] Remove deprecated addwitnessaddress from feature_segwit.py (John Newbery)82f2fa03a[test] Remove deprecated addwitnessaddress from wallet_bumpfee.py (John Newbery)9d7ee187a[test] Remove deprecated addwitnessaddress from p2p_compactblocks.py (John Newbery)3cf77f0b3[tests] Remove deprecated addwitnessaddress call from wallet_dump.py (John Newbery)bdefc9705[tests] Remove deprecated addwitnessaddress call from feature_nulldummy (John Newbery)67d7d67cf[test] Fix flake8 warnings in tests (John Newbery)69e7ee2ddAdd GUARDED_BY(cs_wallet) for setExternalKeyPool, mapKeyMetadata, m_script_metadata and setLockedCoins (practicalswift)37b2538c2Add GUARDED_BY(cs_wallet) for encrypted_batch, nWalletMaxVersion, m_max_keypool_index and nOrderPosNext (practicalswift)dee42927cwallet: Add Clang thread safety analysis annotations (practicalswift)1c7e25db0wallet: Add missing locks (practicalswift)008990536Add compile time checking for cs_main locks which we assert at run time (practicalswift)d4d70eda3Fix listreceivedbyaddress not taking address as a string (Eric Scrivner)ab9aca2bd[rpc] add 'getnewaddress' hint to 'generatetoaddress' help text. (John Newbery)c9f02955b[wallet] Deprecate the generate RPC method (John Newbery)aab81720d[tests] Add generate method to TestNode (John Newbery)c26920933[tests] Small fixups before deprecating generate (John Newbery)591820430Removed explicit mention of storage requirement (squashed) (Martin Erlandsson)8afb16687Update documentation to incude origin information (Pieter Wuille)ff37459abAdd tests for key origin support (Pieter Wuille)2c6281f18Add key origin support to descriptors (Pieter Wuille)eeeaa2921descriptors.md: Refer to descriptors as describing instead of matching (Russell Yanofsky)eb4941256doc/descriptors.md tweaks (Russell Yanofsky)8640631ebdocs: Document lint tests (Mason Simon)97ddc6026validation: Pass chainparams in AcceptToMemoryPoolWorker(...) (practicalswift)fadffae17Revert "Make qt wallet test compatible with qt4" (MarcoFalke)1fb3c167cAdd `doc/bitcoin-conf.md` (Hennadii Stepanov)94e21c150test: forward timeouts properly in send_blocks_and_test (James O'Beirne)b6b991531Textual improvements (Martin Erlandsson)29ed2d64fImprove CAmount tests (Hennadii Stepanov)a3197c529Disable wallet and address book Qt tests on macOS minimal platform (Russell Yanofsky)1f01fe025bitcoin-tx: Use constant for n pubkeys check (Antoine Le Calvez)369244f65utils: Fix broken Windows filelock (Chun Kuan Lee)bc60c615aAvoid 1 << 31 (UB) in calculation of SEQUENCE_LOCKTIME_DISABLE_FLAG (practicalswift)7e18673f0Fix typo (Kristaps Kaupe)ca6d86c32tests: Stop node before removing the notification file (Chun Kuan Lee)d56a06893docs: Add release notes for listwalletdir RPC (João Barbosa)0cb3cad16qa: Add tests for listwalletdir RPC (João Barbosa)cc3377360rpc: Add listwalletdir RPC (João Barbosa)d1b03b8e5interfaces: Add getWalletDir and listWalletDir to Node (João Barbosa)fc4db35bfwallet: Add ListWalletDir utility (João Barbosa)96f6dc9fcAvoid triggering undefined behaviour in base_uint<BITS>::bits() (practicalswift)2ab9140c9Add tooltips for both datadir and blocksdir (Hennadii Stepanov)304570450Add "Blocksdir" to Debug window (Hennadii Stepanov)b0510d78aSet C locale for amountWidget (Hennadii Stepanov)2d471636ewallet: Remove trailing separators from -walletdir arg (Pierre Rochard)ea3009ee9wallet: Add walletdir arg unit tests (Pierre Rochard)43c7fbb1eMake MSVC compiler read the source code using utf-8 (Chun Kuan Lee)f86a571edtests: Add test case for std::ios_base::ate (Chun Kuan Lee)a554cc901Move boost/std fstream to fsbridge (Chun Kuan Lee)86eb3b3f1utils: Add fsbridge fstream function wrapper (Chun Kuan Lee)d56202707[doc] getblocktemplate: use SegWit in example (Sjors Provoost)081cc02a9Fix QCompleter popup regression (Hennadii Stepanov)ee0b7c4e8build: Pin to specific versions of Python packages we install from PyPI in Travis (practicalswift)c32cf6a0fAdd ignored word: mut (practicalswift)4ae50daaaRevert "qa: Fix codespell error and have lint-spelling error instead of warn" (practicalswift)032488e6eMove SocketHandler logic to private method. (Patrick Strateman)2af9cff11Move InactivityCheck logic to private method. (Patrick Strateman)7479b63d9Move DisconnectNodes logic to private method. (Patrick Strateman)edb5350c3Move NotifyNumConnectionsChanged logic to private method. (Patrick Strateman)7d173c4cdqt: Revert "Force TLS1.0+ for SSL connections" (Tim Ruffing)36323e2acClean systray icon menu for -disablewallet mode (Hennadii Stepanov)2f6b466aeStop requiring imported pubkey to sign non-PKH schemes (Pieter Wuille)b8edb9810[rpc] Descriptions: Textual consistency fixes (Jon Layton)a48e44bd4Fix CLEAN_BITCOIN_TEST to remove .log files for all BITCOIN_TESTS files (James O'Beirne)3e9f6c821Add missing locks and locking annotations for CAddrMan (practicalswift)f149e31eadepends: qt: avoid system harfbuzz and bz2 (Cory Fields)854c85ae9test: allow arguments to be forwarded to flake8 in lint-python.sh (James O'Beirne)3f5ac2720Include some files currently missed by 'make distclean'. (murrayn)3b706212adoc: RPC documentation (Karel Bílek)0bd64dc6dFix macOS files description (Hennadii Stepanov)faa4043c6qa: Run more tests with wallet disabled (MarcoFalke)62c304ea4tests: Allow closed http server in assert_start_raises_init_error (Chun Kuan Lee)59a50c217appveyor: trivial build cache modifications (Chun Kuan Lee)42a995ae4[tests] Remove rpc_zmq.py (John Newbery)b09c81454Don't access out of bounds array entry array[sizeof(array)] (Ben Woosley)64937fda6[docs] path to descriptors.md fixed (Damian Mee)380c84321utils: Convert Windows args to utf-8 string (Chun Kuan Lee)4a9f064eaFix typos (Dimitris Apostolou)86eddd466doc: miss install (poiuty)d10f2cd7dtravis: set codespell version to avoid breakage (MarcoFalke)fad95e8dadoc: Split build linux dependencies (MarcoFalke)000000901doc: Split depends installation instructions per arch (MarcoFalke)ff94da788tests: Make appveyor run with --usecli (practicalswift)db0183936test: Add missing call to skip_if_no_cli() (practicalswift)1f59c6f3edoc: Remove "temporary file" notice from 0.17.0 release notes (Wladimir J. van der Laan)5aaf1a047doc: Add historical release notes for 0.17.0 (Wladimir J. van der Laan)d813266db[gitian] use versioned unsigned tarballs instead of generically named ones (Andrew Chow)fa69ac761doxygen: Fix member comments (MarcoFalke)430bf6c7adepends: fix bitcoin-qt back-compat with older freetype versions at runtime (Cory Fields)0809e68a9doc: Add historical release notes for 0.14.3 and 0.15.2 (Wladimir J. van der Laan)fae9e84cbdoc: Add GitHub pr template (MarcoFalke)c7b3e487ftests: exclude all tests with difference parameters (Chun Kuan Lee)fa84723e7amount: Move CAmount CENT to unit test header (MarcoFalke)9c5af58d5Consolidate redundant implementations of ParseHashStr (Ben Woosley)66b3fc543Skip stale tip checking if outbound connections are off or if reindexing. (Gregory Maxwell)a2a04a5abBugfix: Only run bitcoin-tx tests when bitcoin-tx is enabled (Luke Dashjr)92af71ceaconfigure: Make it possible to build only one of bitcoin-cli or bitcoin-tx (Luke Dashjr)e46023287Document fixed attribute behavior in critical test framework classes. (Justin Turner Arthur)17b42f412Check for specific tx acceptance failures based on script signature (Justin Turner Arthur)3a4449e9aStrictly enforce instance attrs in critical functional test classes. (Justin Turner Arthur)1d0ce94a5Fix for incorrect version attr set on functional test segwit block. (Justin Turner Arthur)ba923e32atest: Fix broken segwit test (practicalswift)7ac911afe[docs] Add release notes for removing `-usehd` (John Newbery)25548b295[wallet] Remove -usehd (John Newbery)20442f617[wallet] remove redundand restart node (gustavonalle)db1580566[wallet] Ensure wallet is unlocked before signing (gustavonalle)2c3eade70Make fs::path::string() always return utf-8 string (Chun Kuan Lee)fa6b30c40lcov: filter /usr/lib/ from coverage reports (MarcoFalke)ff40357daAppVeyor: Move AppVeyor YAML to dot-file-style YAML (Mitchell Cash)67654b640tests: write the notification to different files to avoid race condition (Chun Kuan Lee)6fa901fb4Don't edit Chainparams after initialization (Jorge Timón)980b38f8aMOVEONLY: Move versionbits info out of versionbits.o (Jorge Timón)661ac15a4appveyor: Run functional tests on appveyor (Chun Kuan Lee)2148c36b6tests: Make it possible to run functional tests on Windows (Chun Kuan Lee)5eb20f81dConsistently use ParseHashV to validate hash inputs in rpc (Ben Woosley)1eb9a9b52[RPC] Remove warning for removed estimatefee RPC (John Newbery)30973e984[REST] improve performance for JSON calls (Antoine Le Calvez)a23a7f60awallet: Avoid potential use of unitialized value bnb_used in CWallet::CreateTransaction(...) (practicalswift)b6718e373tests: Use MakeUnique to construct objects owned by unique_ptrs (practicalswift)3ccfa34b3convert C-style (void) parameter lists to C++ style () (Arvid Norberg)fa910e430init: Remove deprecated args from hidden args (MarcoFalke)52beb9ed8Add autogen.sh in ARM Cross-compilation (Walter)a2eb6f540[rpc] Add getnodeaddresses RPC command (chris-belcher)fd5c95cc4doc: Add historical release notes for 0.16.3 (Wladimir J. van der Laan)9b4a36eff[qa] Test for duplicate inputs within a transaction (Suhas Daftuar)b8f801964Fix crash bug with duplicate inputs within a transaction (Suhas Daftuar)0ca4c8b3cChanged functional tests which do not require wallets to run without (sanket1729)f1bd03eb0[depends, zmq, doc] upgrade zeromq to 4.2.5 and avoid deprecated zeromq api functions (mruddy)be54f42e5use integer division instead of double conversion and multiplication for computing amounts (Arvid Norberg) Pull request description: Currently this catches up until Core commitf617e05c38and has everything working except the `p2p_invalid_messages` unit test that gets some updates in later upstream commits. I'm planning to continue to catch up to519b0bc5dcnext, which is the merge-base between upstream master and upstream v0.18.0. Fixes #532. Tree-SHA512: a8da8fe1c03d3317fc42d610b2203b7b84ac403ecdff88cf54be525c7a94b0b366ae8741b2652274152f9da657631c221bf2540b79c9c121b5b1e74facd197c1
81 lines
5.4 KiB
C++
81 lines
5.4 KiB
C++
// Copyright (c) 2010 Satoshi Nakamoto
|
|
// Copyright (c) 2009-2018 The Bitcoin Core developers
|
|
// Distributed under the MIT software license, see the accompanying
|
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
#include <chainparamsbase.h>
|
|
|
|
#include <tinyformat.h>
|
|
#include <util/system.h>
|
|
#include <util/memory.h>
|
|
|
|
#include <assert.h>
|
|
|
|
const std::string CBaseChainParams::MAIN = "main";
|
|
const std::string CBaseChainParams::TESTNET = "test";
|
|
const std::string CBaseChainParams::REGTEST = "regtest";
|
|
const std::string CBaseChainParams::LIQUID1 = "liquidv1";
|
|
|
|
void SetupChainParamsBaseOptions()
|
|
{
|
|
gArgs.AddArg("-chain=<chain>", "Use the chain <chain> (default: main). Reserved values: main, test, regtest", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-regtest", "Enter regression test mode, which uses a special chain in which blocks can be solved instantly. "
|
|
"This is intended for regression testing tools and app development.", true, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-testnet", "Use the test chain", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-vbparams=deployment:start:end", "Use given start/end times for specified version bits deployment (regtest or custom only)", true, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-seednode=<ip>", "Use specified node as seed node. This option can be specified multiple times to connect to multiple nodes. (custom only)", true, OptionsCategory::CHAINPARAMS);
|
|
|
|
//
|
|
// ELEMENTS
|
|
gArgs.AddArg("-con_mandatorycoinbase", "All non-zero valued coinbase outputs must go to this scriptPubKey, if set.", false, OptionsCategory::ELEMENTS);
|
|
gArgs.AddArg("-con_blocksubsidy", "Defines the amount of block subsidy to start with, at genesis block, in satoshis.", false, OptionsCategory::ELEMENTS);
|
|
gArgs.AddArg("-con_connect_coinbase", "Connect outputs in genesis block to utxo database.", false, OptionsCategory::ELEMENTS);
|
|
gArgs.AddArg("-con_elementsmode", "Use Elements-like instead of Core-like witness encoding. This is required for CA/CT. (default: true)", false, OptionsCategory::ELEMENTS);
|
|
gArgs.AddArg("-con_blockheightinheader", "Whether the chain includes the block height directly in the header, for easier validation of block height in low-resource environments. (default: true)", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-con_genesis_style=<style>", "Use genesis style <style> (default: elements). Results in genesis block compatibility with various networks. Allowed values: elements, bitcoin", true, OptionsCategory::ELEMENTS);
|
|
gArgs.AddArg("-con_signed_blocks", "Signed blockchain. Uses input of `-signblockscript` to define what signatures are necessary to solve it.", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-signblockscript", "Signed blockchain enumberance. Only active when `-con_signed_blocks` set to true.", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-con_max_block_sig_size", "Max allowed witness data for the signed block header.", false, OptionsCategory::CHAINPARAMS);
|
|
|
|
gArgs.AddArg("-con_has_parent_chain", "Whether or not there is a parent chain.", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-parentgenesisblockhash", "The genesis blockhash of the parent chain.", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-con_parentpowlimit", "The proof-of-work limit value for the parent chain.", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-con_parent_chain_signblockscript", "Whether parent chain uses pow or signed blocks. If the parent chain uses signed blocks, the challenge (scriptPubKey) script. If not, an empty string. (default: empty script [ie parent uses pow])", false, OptionsCategory::CHAINPARAMS);
|
|
|
|
gArgs.AddArg("-fedpegscript", "The script for the federated peg.", false, OptionsCategory::CHAINPARAMS);
|
|
gArgs.AddArg("-enforce_pak", "Causes standardness checks to enforce Pegout Authorization Key(PAK) validation, and miner to include PAK commitments when configured. Can not be set when acceptnonstdtx is set to true.", false, OptionsCategory::ELEMENTS);
|
|
gArgs.AddArg("-multi_data_permitted", "Allow relay of multiple OP_RETURN outputs. (default: true)", false, OptionsCategory::ELEMENTS);
|
|
gArgs.AddArg("-pak", "Entries in the PAK list. Order of entries matter.", false, OptionsCategory::ELEMENTS);
|
|
gArgs.AddArg("-con_csv_deploy_start", "Starting height for CSV deployment. (default: -1, which means ACTIVE from genesis)", false, OptionsCategory::ELEMENTS);
|
|
// END ELEMENTS
|
|
//
|
|
}
|
|
|
|
static std::unique_ptr<CBaseChainParams> globalChainBaseParams;
|
|
|
|
const CBaseChainParams& BaseParams()
|
|
{
|
|
assert(globalChainBaseParams);
|
|
return *globalChainBaseParams;
|
|
}
|
|
|
|
std::unique_ptr<CBaseChainParams> CreateBaseChainParams(const std::string& chain)
|
|
{
|
|
if (chain == CBaseChainParams::MAIN)
|
|
return MakeUnique<CBaseChainParams>("", 8332, 18332);
|
|
else if (chain == CBaseChainParams::TESTNET)
|
|
return MakeUnique<CBaseChainParams>("testnet3", 18332, 8332);
|
|
else if (chain == CBaseChainParams::REGTEST)
|
|
return MakeUnique<CBaseChainParams>("regtest", 18443, 18332);
|
|
else if (chain == CBaseChainParams::LIQUID1)
|
|
return MakeUnique<CBaseChainParams>("liquidv1", 7041, 8332);
|
|
|
|
// ELEMENTS:
|
|
return MakeUnique<CBaseChainParams>(chain, 7040, 18332);
|
|
}
|
|
|
|
void SelectBaseParams(const std::string& chain)
|
|
{
|
|
globalChainBaseParams = CreateBaseChainParams(chain);
|
|
gArgs.SelectConfigNetwork(chain);
|
|
}
|