Commit Graph

6144 Commits

Author SHA1 Message Date
Luke Dashjr
17a53e6342 QA: feature_fee_estimation: Add tests for dustrelayfeedynamic 2024-03-19 15:41:54 +00:00
Luke Dashjr
4c94b590a5 Merge branch 'permitbarepubkey-26+knots' into dustrelayfeedynamic-26+knots 2024-03-16 19:10:51 +00:00
furszy
8a16b8f6a4 wallet: default wallet migration, modify inconvenient backup filename
On default legacy wallets, the backup filename starts with an "-" due
to the wallet name being empty. This is inconvenient for systems who
treat what follows the initial "-" character as flags.

Github-Pull: #29586
Rebased-From: a951dba3a9
2024-03-14 22:42:53 +00:00
Ava Chow
4c3b187547 tests: Test for concurrent writes with db tx
There are occasions where a multi-statement tx is begun in one batch,
and a second batch is created which does a normal write (without a
multi-statement tx). These should not conflict with each other and all
of the data should end up being written to disk.

Github-Pull: #29112
Rebased-From: 548ecd1155
2024-03-14 21:58:14 +00:00
Andrew Toth
38c883d635 test: add test for SyncCoinsTipAfterChainSync
Github-Pull: #15218
Rebased-From: 363f3258b0001faa531cccdaea20d27adbc0d4a6
2024-03-14 18:52:39 +00:00
Doron Somech
22ae5a8bb9 ZMQ: add publishers of wallet tx
Topic will indicate if transaction came from mempool or block so developers can handle the transaction accordingly without a RPC round trip to bitcoind.

(includes ZMQ: Making CWallet::TransactionAddedToWallet static)
2024-03-14 18:38:11 +00:00
Luke Dashjr
3e8c26eb05 Merge branch 'zmq_optimise_duplread-26+k' into zmq_wtx-26+knots 2024-03-14 18:38:02 +00:00
Luke Dashjr
419a749ed7 QA/p2p_mutated_blocks: Adapt disconnection test for relaxed behaviour 2024-03-14 18:33:07 +00:00
Luke Dashjr
dfb7a3a5df QA: Use addconnection rather than addnode onetry 2024-03-14 18:33:05 +00:00
Luke Dashjr
5b89367ff7 Bugfix: QA: p2p_unrequested_blocks: Expect to be disconnected for sending a block with unknown prev
After a1a07cfe99, this is a disconnection trigger for a node's outgoing connections.
2024-03-14 18:33:05 +00:00
Luke Dashjr
e861c7e78e QA: p2p_dos_header_tree: Use node-to-test / outgoing connection to check disconnect due to checkpoint violation
Also disable minimumchainwork test to avoid being disconnected for that

For relax_invblk_punishment
2024-03-14 18:33:05 +00:00
Luke Dashjr
7630a8d474 QA: p2p_invalid_tx: Use node-to-test / outgoing connection to check invalid transaction disconnection
For relax_invblk_punishment
2024-03-14 18:33:05 +00:00
Luke Dashjr
0d2cfe828c QA/feature_block: Adapt disconnection tests for relaxed behaviour 2024-03-14 18:33:05 +00:00
Luke Dashjr
42f639aec3 test/functional/p2p_sendheaders: Don't test for undesirable behaviour 2024-03-14 18:33:05 +00:00
Luke Dashjr
76196f7d41 QA: p2p_unrequested_blocks: Use node-to-test / outgoing connection to check invalid header disconnection 2024-03-14 18:33:05 +00:00
Luke Dashjr
b4e037ee01 QA/Mininode: Support node-to-test connections 2024-03-14 18:33:05 +00:00
Luke Dashjr
426c721d68 util/system: Add GetFixedPointArg helper 2024-03-14 17:34:33 +00:00
Luke Dashjr
8c571bff37 Merge branch 'match_more_datacarrier-26+knots' into datacarriercost-26+knots 2024-03-14 17:34:07 +00:00
Luke Dashjr
5493810033 Merge branch 'bytespersigopstrict-26+knots' into datacarriercost-26+knots 2024-03-14 17:34:03 +00:00
ishaanam
a20609e70a test: test sendall and send do anti-fee-sniping
Github-Pull: #28944
Rebased-From: fa1fa35158
2024-03-13 15:45:00 +00:00
ishaanam
13e36c822b wallet, rpc: add anti-fee-sniping to send and sendall
Github-Pull: #28944
Rebased-From: 8e5778a9fb
2024-03-13 15:44:58 +00:00
Luke Dashjr
76750f1c5d Expire bitcoind & bitcoin-qt 1-2 years after its last change
COPYRIGHT_YEAR + 2 years is used as the basis for expiration, to achieve a constantly-moving-forward expiration date.

The expiration can be disabled or extended with a debug-visibility "softwareexpiry" configuration option.
2024-03-13 14:31:00 +00:00
Luke Dashjr
ef09b07568 QA: wallet_implicitsegwit: Add tests for -walletimplicitsegwit=0 2024-03-13 14:30:21 +00:00
Luke Dashjr
b7fc4ba788 Wallet: Support disabling implicit Segwit operation 2024-03-13 14:30:21 +00:00
Matthew Zipkin
621c9903fa test: cover "ismine" and "isactive" field in rpc getaddressinfo
Github-Pull: #27216
Rebased-From: 67650211e36003ca3adddef34118ea45023c283f
2024-03-13 14:28:08 +00:00
Luke Dashjr
f8d7591d27 Add -datacarrierfullcount option to control applying -datacarriersize to all datacarrying 2024-03-10 19:15:00 +00:00
Luke Dashjr
9ea7197b87 Apply -datacarriersize to all datacarrying
Github-Pull: #28408
Rebased-From: ea1c41b514a5c5fb5e29e5a805933043b7538332
2024-03-10 19:14:01 +00:00
Luke Dashjr
5c0086e681 QA: mining_coin_age_priority: Test both GBT and RPC in one pass 2024-03-10 19:12:39 +00:00
Luke Dashjr
96bdc3e12c Test: Add test for coin-age priority mining 2024-03-10 19:12:39 +00:00
Luke Dashjr
3faf8304c8 Tests: Update for coin-age priority 2024-03-10 19:12:39 +00:00
Luke Dashjr
93015303eb RPC/Mining: Include priority delta in getprioritisedtransactions result 2024-03-10 19:12:39 +00:00
Luke Dashjr
c6d76eb31c QA: rpc_getrpcwhitelist: Use requires_wallet rather than manual creation of unnamed wallet 2024-03-10 19:11:12 +00:00
Luke Dashjr
30b14d15a8 RPC: getrpcwhitelist: Return a list of wallets as a JSON Object 2024-03-10 19:11:12 +00:00
Luke Dashjr
638c8f83e5 Merge branch 'multiwallet_rpc-26+knots' into getrpcwhitelist_wallets-26+knots 2024-03-10 19:11:04 +00:00
Luke Dashjr
651c171539 RPC: getrpcwhitelist: Return all methods (or none) if no explicit whitelist defined 2024-03-10 19:10:28 +00:00
Luke Dashjr
05077feddb Merge branch 'rpc_dumptxoutset_hr' into multiwallet_rpc-26+knots 2024-03-10 19:08:36 +00:00
Luke Dashjr
2497930962 QA: Functional test for sweepprivkeys 2024-03-10 19:07:51 +00:00
w0xlt
f77f522f25 test: add test for dump human-readable dumptxoutset
Co-authored-by: Luke Dashjr <luke-jr+git@utopios.org>
Co-authored-by: brunoerg <brunoely.gc@gmail.com>
2024-03-10 19:06:23 +00:00
Luke Dashjr
b83763a4d9 QA: Allow test_runner to pass without full RPC coverage 2024-03-10 18:59:23 +00:00
Luke Dashjr
03fea09e1f lint-python: Allow for some style differences 2024-03-10 18:59:23 +00:00
Luke Dashjr
2894c2c5a5 lint/python-dead-code: Just warn, but allow 2024-03-10 18:45:15 +00:00
Luke Dashjr
acb3c923e9 lint/circular-dependencies: Only check for real circular dependencies 2024-03-10 18:45:12 +00:00
Luke Dashjr
e8fc5d1e37 lint/includes: Ignore duplicate includes in .cpp files 2024-03-10 18:45:09 +00:00
UdjinM6
40c56a4d13 test: make sure keypool sizes do not change on getrawchangeaddress/getnewaddress failures
Github-Pull: #29510
Rebased-From: e073f1dfda
2024-03-05 10:50:03 +00:00
Greg Sanders
b5419ce6b6 p2p: Don't consider blocks mutated if they don't connect to known prev block
Github-Pull: #29524
Rebased-From: a1fbde0ef7
2024-03-05 10:47:50 +00:00
dergoegge
0c5c5962cb [test] Add regression test for #27608
Github-Pull: #29412
Rebased-From: 5bf4f5ba32
2024-03-05 10:24:27 +00:00
Sergi Delgado Segura
49815aba19 rpc/net: Adds misbehaving_score to getpeerinfo
Github-Pull: #29530
Rebased-From: 976d61c974ed045c2e2497dcebc4d1fcc4d60a29
2024-03-04 20:53:20 +00:00
Luke Dashjr
d14ce783d2 Revert "Disable bloom filtering by default."
This reverts commit 5efcb77283.
2024-03-04 18:00:22 +00:00
Luke Dashjr
34bf07df61 Bugfix: QA: rpc_getgeneralinfo: Adapt test for startuptime ignoring mocktime 2024-03-04 17:53:34 +00:00
Luke Dashjr
98aedae443 QA: Actually check getgeneralinfo results are correct 2024-03-04 17:53:34 +00:00
Pieter Wuille
ff52aa4a22 net: enable v2transport by default
Github-Pull: #29347
Rebased-From: 0bef1042ce
2024-03-04 17:50:54 +00:00
Luke Dashjr
5efeaaa5ca Merge remote-tracking branch 'furszy/2023_rpc_getblockfileinfo' into rpc_getblockfileinfo-26+knots 2024-03-04 17:50:04 +00:00
Andrew Poelstra
8721d6f228 codex32: add functional test for seed import
Github-Pull: #27351
Rebased-From: 91771366a3df22b9e8b4b7152d368d739bfeda94
2024-03-04 17:48:21 +00:00
Luke Dashjr
023807a8cc Diff-minimise 2024-03-04 17:45:54 +00:00
Luke Dashjr
5c487b614e Merge remote-tracking branch 'furszy/2022_rpc_importaddress_descriptors_compatible' into rpc_importaddr_for_descwallet-26+k 2024-03-04 17:45:49 +00:00
Luke Dashjr
d29d7580b1 QA: wallet_reindex: Use importdescriptors directly rather than abusing test_framework's importaddress wrapper
`importdescriptors` is expected to initialise wallet birth time to "now", but `importaddress` initialises it to 1 instead.
2024-03-04 17:45:43 +00:00
Lawrence Nahum
1f433a86b7 add support to save fee estimates without shutting down the node 2024-03-04 17:39:26 +00:00
Roman Zeyde
2ee1991c7d RPC: Add getblocklocations call
This RPC allows the client to retrieve the file system locations
of the confirmed blocks and their undo data, to allow building
efficient indexes outside of Bitcoin Core.

An example usage is described here:
https://github.com/romanz/electrs/issues/308

By using the new RPC, it is possible to build an address-based
index taking ~24GB and a txindex taking ~6GB (as of Dec. 2020).
2024-03-04 17:39:06 +00:00
Luke Dashjr
003720ebd5 Allow acceptstalefeeestimates on all networks 2024-03-04 17:26:48 +00:00
Martin Zumsande
255004a460 test: enable v2 transport for p2p_timeouts.py
by skipping the part where we send a non-version message
before the version - this message would be interpreted as
part of the v2 handshake.

Github-Pull: #28805
Rebased-From: 35fb9930ad
2024-03-04 17:20:58 +00:00
Sebastian Falbesoner
5f0f3f942c test: enable v2 transport for rpc_net.py
- "transport_protocol_type" of inbound peer before version handshake
  is "detecting" on p2p v2 nodes (as opposed to "v1" for p2p v1)
- size of a ping/pong message is 29 bytes (as opposed to 32 for p2p v1)
- for the sendmsgtopeer RPC sub-test, enforce p2p v1 connection to
  have a peer id of zero

Github-Pull: #28805
Rebased-From: 2c1669c37a
2024-03-04 17:20:58 +00:00
Luke Dashjr
1dc0afea1b test: enable v2 transport for p2p_node_network_limited.py
Github-Pull: #28805
Rebased-From: cc961c2695
2024-03-04 17:20:58 +00:00
Martin Zumsande
9d6c08ec30 test: enable --v2transport in combination with --usecli
By renaming the "command" send_cli arg. The old name was unsuitable
because the "addnode" RPC has its own "command" arg, leading to
ambiguity when included in kwargs.
Can be tested with
"python3 wallet_multiwallet.py --usecli --v2transport"
which fails on master because of this (python throws a TypeError).

Github-Pull: #28805
Rebased-From: 3598a1b5c9
2024-03-04 17:20:58 +00:00
Luke Dashjr
1d0a7a8198 test: persist -v2transport over restarts and respect -v2transport=0
Before, a global -v2transport provided to the test would be dropped
when restarting the node within a test and specifying any extra_args.

Fix this by adding "v2transport=1" to args (not extra_args) based
on the global parameter, and deciding for each (re)start of the node
based on this default and test-specific extra_args
(which take precedence over args) whether v2 should be used.

Github-Pull: #28805
Rebased-From: 68a9001751
2024-03-04 17:20:58 +00:00
Luke Dashjr
08647db809 Skip changing permissions entirely if -rpccookieperms=0 specified 2024-02-29 01:31:30 +00:00
Luke Dashjr
24ea5d9724 rpccookieperms: Allow setting setxid/sticky bits
Simply for backward compatibility
2024-02-29 01:31:30 +00:00
willcl-ark
c3bf4ef27d test: add rpccookieperms test
Tests various perms on non-Windows OSes

Github-Pull: #28167
Rebased-From: ce9df2aba3e98ba7f2a576d587ba8e59bf341083
2024-02-29 01:31:30 +00:00
Luke Dashjr
546e462f0a Merge branch 'rpcauthfile-26+knots' into rpccookieperms-26+knots 2024-02-29 01:31:16 +00:00
willcl-ark
cc3dd62493 init: don't delete PID file if it was not generated
Previously, starting a second bitcoind using the same datadir would
correctly fail to init and shutdown. However during shutdown the PID
file belonging to the first instance would be erroneously removed by
the second process shutting down.

Fix this to only delete the PID file if we created it.

Github-Pull: #28946
Rebased-From: 8f6ab31863
2024-02-29 01:10:10 +00:00
Luke Dashjr
abf71d1a53 Merge branch 'sendraw_force-26+knots' into unique_spk_mempool-26+knots 2024-02-28 17:48:12 +00:00
Luke Dashjr
2455b0f53c Merge branch 'whitelist_outgoing-mini-26+knots' into unique_spk_mempool-26+knots 2024-02-28 17:48:09 +00:00
Luke Dashjr
1a8cd10e82 net_permissions: Include "addr" permission on implicit whitelist entries 2024-02-28 17:47:52 +00:00
Luke Dashjr
44256fc2e9 net: Remove forcedinbound limit antifeature 2024-02-28 17:47:30 +00:00
Matthew Zipkin
9349155145 net: add forced_inbound to getpeerinfo
Github-Pull: #27600
Rebased-From: 8c2026848da910fdebff0a9f73e29f1f6ae81e43
2024-02-28 17:47:30 +00:00
Matthew Zipkin
07b24236a8 net: only allow 8 simultaneous forced inbound connections
Github-Pull: #27600
Rebased-From: 75868022a904c1f77871abf962bf9b88a9c5faf6
2024-02-28 17:47:30 +00:00
Matthew Zipkin
cee2e8c415 test: cover ForceInbound permission success even when connections are full
Github-Pull: #27600
Rebased-From: 6b6bcaf0b9ae0a7adaf96bf791aaafc6b5e9f000
2024-02-28 17:47:30 +00:00
brunoerg
f33cd8869d QA: p2p_invalid_messages: Check misbehaving with noban,out whitelisting
Github-Pull: #27114
Rebased-From: 1bae3b2ee6cb96c12fd7810c9362cfb7bdc165ad (partial)
2024-02-28 17:41:11 +00:00
brunoerg
8d290f4c57 test: add coverage for whitelisting manual connections
Github-Pull: #27114
Rebased-From: e6b8f19de9
2024-02-28 17:40:00 +00:00
Roman Zeyde
1e956439eb
rpc: keep .cookie if it was not generated
Otherwise, starting bitcoind twice may cause the `.cookie`
file generated by the first instance to be deleted by the
second instance shutdown (after failing to obtain a lock).

Github-Pull: bitcoin/bitcoin#28784
Rebased-From: 7cb9367157
2024-02-28 11:19:27 +01:00
Luke Dashjr
364ef48bbf QA: Functional test for checkpoint enforcement
Prior to receiving the correct chain's headers, an alternate chain should be stopped prior to the first checkpoint-violating block.
2024-02-26 16:36:08 +00:00
Luke Dashjr
d206f2b726 QA: wallet_taproot: Ensure transaction created by sendall has enough fee to get into the mempool
Fixes intermittent issue exposed by "Wallet: Increase default confirmation target to 144"
2024-02-23 23:09:44 +00:00
Luke Dashjr
98ca8bc71e QA: wallet_taproot: Workaround fee estimation limitation for sendall cleanup as well
(This is necessary to work properly after increasing the default wallet confirmation target)
2024-02-23 23:08:58 +00:00
Luke Dashjr
0e3c426ac1 rpc: implement getgeneralinfo 2024-02-23 22:45:12 +00:00
Luke Dashjr
6f579314d2 Wallet: Remove deprecation warning for newly created legacy wallets
This effectively reverts commit 61152183ab.
2024-02-23 18:25:02 +00:00
Luke Dashjr
fc3652e536 Revert "wallet: Give deprecation warning when loading a legacy wallet"
This reverts commit 8fbb6e99bf.
2024-02-23 18:23:57 +00:00
Luke Dashjr
78ff49027f QA: rpc_getblockfrompeer: Test that fetch-without-header actually works 2024-02-23 17:39:46 +00:00
Luke Dashjr
397e882e34 RPC/blockchain: Allow using getblockfrompeer without already having the block header
Github-Pull: #20295
Rebased-From: d0b537458d90b92f2632f8578cfdaadc9a8f4ed0
2024-02-23 17:39:45 +00:00
Luke Dashjr
aebfd947d2 RPC/blockchain: Restore ability for pruned nodes to getblockfrompeer future blocks 2024-02-23 17:27:09 +00:00
Luke Dashjr
9eefcb9b3f Merge branch 'fix_getblockfrompeer_rereq_err' into rpc_getblockfrompeer_future 2024-02-23 17:27:01 +00:00
Luke Dashjr
2665d63e22 QA: feature_rbf: Test full-RBF service bit 2024-02-23 16:49:59 +00:00
Luke Dashjr
587f6b7c27 RPC/Mempool: Add "rbf_policy" to getmempoolinfo result 2024-02-23 16:49:59 +00:00
Luke Dashjr
c757b00501 QA: feature_rbf: Test full RBF mode 2024-02-23 16:11:26 +00:00
Luke Dashjr
9da96bcd19 Restore -mempoolreplacement option to allow disabling opt-in RBF
This partially reverts commit 8053e5cdad.
2024-02-23 16:10:54 +00:00
Luke Dashjr
6678de6021 Merge branch 'sendraw_force-26+knots' into rbf_opts-26+knots 2024-02-23 15:41:23 +00:00
Luke Dashjr
eca77ec033 Merge branch 'fee_histogram+pr15836_api' into rbf_opts-26+knots 2024-02-23 15:41:16 +00:00
Luke Dashjr
8c0100012e Merge branch 'sendraw_force-26+knots' into mining_priority 2024-02-23 15:29:48 +00:00
Luke Dashjr
9bfaa5eedd Merge branch 'fee_histogram+pr15836_api' into mining_priority 2024-02-23 00:53:38 +00:00
Luke Dashjr
e16e6fec0d Merge branch 'uaappend' into mining_priority 2024-02-23 00:52:39 +00:00
Luke Dashjr
44577d68b2 Merge branch 'restore_blockmaxsize' into mining_priority 2024-02-23 00:52:33 +00:00
Luke Dashjr
35842db70d Allow disabling "non-standard" checks on mainnet 2024-02-23 00:47:23 +00:00
Luke Dashjr
26f729b5be QA: rpc_rawtransaction: Test ignore_rejects 2024-02-22 20:09:24 +00:00
Luke Dashjr
86f162157f Make bad-witness-nonstandard rejection more specific, and support overriding some 2024-02-22 20:08:19 +00:00
Luke Dashjr
3badcde965 AreInputsStandard: Return specific reject reasons 2024-02-22 20:08:19 +00:00
Jonas Schnelli
c470b72ba3 [RPC] Add interface to access mempool stats 2024-02-22 19:13:44 +00:00
Luke Dashjr
06aafaaa85 RPC/Wallet: Add "use_txids" to output of getaddressinfo
Github-Pull: #22693
Rebased-From: a00bc6f395
2024-02-21 15:58:47 +00:00
MarcoFalke
2d35cc3995 rpc: Fixed signed integer overflow for large feerates
Github-Pull: #29434
Rebased-From: fa2a4fdef7
2024-02-21 03:51:14 +00:00
Ava Chow
66d1d242a1 tests: Test that descriptors flag is set for migrated blank wallets
Github-Pull: #29367
Rebased-From: 3904123da9
2024-02-21 00:49:06 +00:00
Andrew Chow
c0560fccf3 tests: Test migration of blank wallets
Github-Pull: #28976
Rebased-From: c11c404281
2024-02-21 00:47:29 +00:00
Pieter Wuille
7caf2a8895 Make v2transport default for addnode RPC when enabled
Github-Pull: #29239
Rebased-From: 3ba815b42d
2024-01-27 16:05:56 +00:00
Torkel Rogstad
cfd1c957a5 rpc: validate conf_target is set alongside estimate_mode
Github-Pull: #29175
Rebased-From: be8ae64b82
2024-01-26 16:10:45 +00:00
Torkel Rogstad
b8e4d0a26a rpc: validate fee estimation mode case insensitive
Github-Pull: #29175
Rebased-From: 8d40addbd2
2024-01-26 16:10:44 +00:00
MarcoFalke
0aa26d600e test: Use blocks_path where possible
Github-Pull: #29262
Rebased-From: 5555d8db33
2024-01-24 03:44:58 +00:00
glozow
ac1b9a51db
[test] import descriptor wallet with reorged parent + IsFromMe child in mempool
Test that wallet rescans process transactions topologically, even if a
parent's entry into the mempool is later than that of its child.
This behavior is important because IsFromMe requires the ability to look
up a transaction's inputs.

Co-authored-by: furszy <matiasfurszyfer@protonmail.com>

Github-Pull: #29179
Rebased-From: df30247705
2024-01-19 16:13:22 +00:00
Gloria Zhao
ecb8ebc660
[test] rescan legacy wallet with reorged parent + IsFromMe child in mempool
Test that wallet rescans process transactions topologically, even if a
parent's entry into the mempool is later than that of its child.
This behavior is important because IsFromMe requires the ability to look
up a transaction's inputs.

Github-Pull: #29179
Rebased-From: c3d02be536
2024-01-19 16:13:14 +00:00
João Barbosa
3a4eecec88 wallet: Support %w in -walletnotify script, on Windows 2024-01-07 01:43:04 +00:00
Luke Dashjr
6086f6443b wallettool: Warn about dump commands not fully dumping/restoring BDB wallets
Fails to dump/restore wallet ID
2024-01-07 01:02:25 +00:00
Luke Dashjr
2ea48ee1aa wallettool: Print warnings to stderr instead of stdout 2024-01-07 00:59:56 +00:00
Luke Dashjr
cdc008f2d8 RPC: getrpcwhitelist: Return methods as a JSON Object for future expansion to sub-call permissions 2024-01-07 00:36:48 +00:00
Harris
b6988de098 RPC: Add getrpcwhitelist method 2024-01-07 00:36:47 +00:00
Jon Atack
3f4d06d61c test: add coverage for -getinfo total_balance
Github-Pull: #19092
Rebased-From: 414804e877f630a630c3d6226cb6714c0a6320e8
2024-01-07 00:28:49 +00:00
Luke Dashjr
6b571ac166 Merge branch 'cli_getinfo_mwbalances' into cli_getinfo_mw_total_balance 2024-01-07 00:25:29 +00:00
Luke Dashjr
2504a07906 Bugfix: RPC/Wallet: dumpwallet should include hdkeypath metadata outside of comment 2024-01-05 16:42:21 +00:00
Luke Dashjr
145a1ac244 QA: Exercise REST interface in feature_fee_estimation 2024-01-05 16:31:48 +00:00
Luke Dashjr
87c1d93eae rest: add endpoint for estimatesmartfee
* write REST interface for getting estimated fee
* update docs about REST interface for fee estimation
* add test
2024-01-05 16:31:47 +00:00
Luke Dashjr
e4acb761d4 dumpmasterprivkey command
RPC command to export the master private key from a wallet.
2024-01-05 00:46:01 +00:00
Luke Dashjr
026b25f99a Bugfix: QA/wallet_fundrawtransaction: Ensure segwit_inputs_only gets tested correctly
Co-authored-by: Aurèle Oulès <aurele@oules.com>
2024-01-04 22:25:57 +00:00
Aurèle Oulès
788a57d808 Witness-only option for fundrawtransaction
Github-Pull: #25183
Rebased-From: 1c5cfd84b3dc14ab886acd47c7891c11eb2457ec
2024-01-04 22:25:57 +00:00
Luke Dashjr
876a033cc2 RPC: createmultisig/addmultisigaddress: Support named args for options 2024-01-04 21:16:16 +00:00
Luke Dashjr
ad7f5858b5 QA: rpc_sort_multisig: Rename variables to avoid keyword conflict with sorted 2024-01-04 21:16:16 +00:00
Thomas Kerin
8488d9fc6a Add more tests to sort_multisig.py / wallet_labels.py
sort_multisig test: check uncompressed keys are disallowed
sort_multisig: add test demonstrating sorting
wallet_labels: test addmultisigaddress fails if sort=true and (wallet) address is uncompressed
2024-01-04 20:47:24 +00:00
Luke Dashjr
380d5f1e68 RPC: Use options object rather than adding a "sort" boolean for multisig methods 2024-01-04 20:46:11 +00:00
Thomas Kerin
e588e6d7bc RPC: addmultisigaddress / createmultisig: parameterize _createmultisig_redeemScript to allow sorting of public keys (BIP67) 2024-01-04 20:46:11 +00:00
furszy
b06b14e68d
rpc: getwalletinfo, return wallet 'birthtime'
And add coverage for it

Github-Pull: #28920
Rebased-From: 1ce45baed7
2024-01-04 16:21:37 +00:00
furszy
12834012c2
test: coverage for wallet birth time interaction with -reindex
Verifying the wallet updates the birth time accordingly when it
detects a transaction with a time older than the oldest descriptor
timestamp.
This could happen when the user blindly imports a descriptor with
'timestamp=now'.

Github-Pull: #28920
Rebased-From: 83c66444d0
2024-01-04 16:21:37 +00:00
Martin Zumsande
b15e2e2cec
test: add regression test for the getrawtransaction segfault
This fails on master without the previous commit.

Github-Pull: #29003
Rebased-From: 9075a44646
2024-01-04 16:21:36 +00:00
Luke Dashjr
f746c3a4b8 RPC/Wallet: Convert descriptorprocesspsbt to use options parameter 2023-12-30 22:05:18 +00:00
Andrew Chow
e5160731d2 RPC/Wallet: Convert walletprocesspsbt to use options parameter
Github-Pull: #24963
Rebased-From: f43f992b7318086859f710b920b4427e6c657fe8
2023-12-30 22:03:40 +00:00
Kashif Smith
f618887c1b test: fix node index bug when comparing peerinfo
Github-Pull: #28849
Rebased-From: 22e38080ea
2023-12-27 23:10:33 +00:00
Dan Benjamin
ea5e929be5 Added a field to the output of gettransaction/listtransactions to indicate whether the given transaction is in the mempool.
Github-Pull: #21260
Rebased-From: 46bf0b7b5d8c44bd7032c473f9878cfb59018161
2023-12-27 03:45:52 +00:00
Luke Dashjr
64dbce8455 QA: wallet_basic: Split wtx expected_fields over multiple lines to minimise merge conflicts 2023-12-27 03:45:09 +00:00
Luke Dashjr
a5d6b7c948 Ignore -rpcauthfile params if -norpcauth is used 2023-12-26 22:36:25 +00:00
Luke Dashjr
c092aa83d8 QA: rpc_users: Add tests for rpcauthfile 2023-12-26 22:10:28 +00:00
Luke Dashjr
acd7eeefea Merge branch 'fix_rpcauth_blank' into rpcauthfile-26+knots 2023-12-26 22:10:20 +00:00
Luke Dashjr
6b79de4f9a QA: rpc_users: Test behaviour of -norpcauth 2023-12-26 21:55:08 +00:00
Luke Dashjr
415734ebaf QA: rpc_users: Test blank rpcauth in combination with non-blank 2023-12-23 18:48:02 +00:00
Luke Dashjr
f956108274 Bugfix: QA: When testing setfeerate, check approximate fee range with a span able to tolerate normal signature length variation 2023-12-23 17:25:29 +00:00
Jon Atack
309b6be8a1 test: add more functional tests for setfeerate
Was: test: update functional tests from settxfee to setfeerate

Github-Pull: #20391
Rebased-From: d87f0f3a923dca2ce8d99aa700b0beda8e42d3ec (partial)
2023-12-23 17:25:29 +00:00
Jon Atack
5030cae7c9 test: add setfeerate functional coverage in wallet_bumpfee.py
Github-Pull: #20391
Rebased-From: c907f158a6bf3cad782d4441e02abcbda210265b
2023-12-23 17:25:28 +00:00
Jon Atack
b8b150a865 test: add setfeerate functional coverage in wallet_create_tx.py
Github-Pull: #20391
Rebased-From: 529bfc16ffb35c5356e27f61d59395fae6707bcd
2023-12-23 17:25:28 +00:00
Luke Dashjr
31874a0aee Bugfix: RPC: blockchain: Actually include "temporary" flag in listprunelocks result 2023-12-21 21:49:47 +00:00