Commit Graph

40862 Commits

Author SHA1 Message Date
Andrew Poelstra
32e3d21ead codex32: provide user-readable error types
Github-Pull: #27351
Rebased-From: 1fa04b11b2452a2f15906d97cf1370d43f0dc23e
2024-05-17 17:54:01 +00:00
Andrew Poelstra
9f8f0e6d45 codex32: introduce Lagrange interpolation and derived shares
Github-Pull: #27351
Rebased-From: 7eced20085abbfa9412b726ae0f2f4e9013f1148
2024-05-17 17:54:01 +00:00
Andrew Poelstra
82a16425ef codex32: implement encoding and decoding
Github-Pull: #27351
Rebased-From: fd6975d631f12ff7947db9abfdda4147ddc6cc24
2024-05-17 17:54:01 +00:00
Andrew Poelstra
55a5d2e898 bech32: expose the character conversion functionality
In the next commit we will implement a new checksum, codex32, which uses
the same encoding and HRP rules as bech32 and bech32m, but has a
substantially different checksum verification procedure. To minimize
duplicated code, we expose the character conversion in a new
bech32::internals module.

Github-Pull: #27351
Rebased-From: 7a57cda8e4461b1ac075251c945eaeb18f1edfd4
2024-05-17 17:54:01 +00:00
Luke Dashjr
dfb230e19f Merge branch 'importfromcoldcard' into codex32-27+knots 2024-05-17 17:53:50 +00:00
Luke Dashjr
8b2adbe62b Merge branch 'rpc_importaddr_for_descwallet-27+k' into codex32-27+knots 2024-05-17 17:53:28 +00:00
Matthew Zipkin
bb8a78bece test: cover "ismine" and "isactive" field in rpc getaddressinfo
Github-Pull: #27216
Rebased-From: 67650211e36003ca3adddef34118ea45023c283f
2024-05-17 17:45:29 +00:00
Matthew Zipkin
3ca4af2a6a test: cover ScriptPubKeyMan::IsKeyActive() and Wallet::IsDestinationActive()
Github-Pull: #27216
Rebased-From: ba65d93a4c4ae1e06fbd5e06ab0b344e77b2c3b0
2024-05-17 17:45:20 +00:00
Matthew Zipkin
ec8d084b5f wallet: implement IsDestinationActive() and add to rpc getaddressinfo
This connects SPKM.IsKeyActive() up to the wallet level.

Github-Pull: #27216
Rebased-From: d33f3bdb84f1823aebe3fd88c4b2ec4df1c1fe3d
2024-05-17 17:45:20 +00:00
Matthew Zipkin
0b5e99a074 wallet: implement IsKeyActive() in scriptpubkeyman
This new method returns true if the given CScript key is derived
from the SPKM. For Legacy that means checking the hd_seed_id in the
key's metadata.

Also patches PKDescriptor to return associated public keys in
MakeScripts()

Github-Pull: #27216
Rebased-From: f39957f5deec87d141e995a3bc90cc54e2d0ccbf
2024-05-17 17:45:20 +00:00
Luke Dashjr
f72496a06a Keep ProcessDescriptorImport exported for bitcoin-wallet importfromcoldcard 2024-05-17 17:28:09 +00:00
Luke Dashjr
816d59c61a Diff-minimise 2024-05-17 17:28:05 +00:00
Luke Dashjr
6e80cf2bbd Merge remote-tracking branch 'furszy/2022_rpc_importaddress_descriptors_compatible' into rpc_importaddr_for_descwallet-27+k 2024-05-17 17:28:00 +00:00
Luke Dashjr
0c38bbd194 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-05-17 17:27:54 +00:00
Luke Dashjr
7e3988fe54 RPC/net: disconnectnode: Support disconnecting by IP (without a port) 2024-05-17 16:51:37 +00:00
Luke Dashjr
12a8863b80 QA: p2p_disconnect_ban: Explicitly select nodes for test, and reconnect after disconnecting 2024-05-17 16:51:37 +00:00
brunoerg
dc36f2b555 test: add coverage for subnet in disconnectnode RPC
Github-Pull: #26576
Rebased-From: ad39ede8ed
2024-05-17 16:51:37 +00:00
brunoerg
6d2bc57f0e rpc, p2p: allow disconnectnode with subnet
Github-Pull: #26576
Rebased-From: b2e3edc61c
2024-05-17 16:51:37 +00:00
Luke Dashjr
907996129b Merge branch 'fix_keep_notmy_cookie' into HEAD 2024-05-16 21:43:25 +00:00
Luke Dashjr
44138dcbbb Merge branch 'rpcauthfile-26+knots' into HEAD 2024-05-16 21:43:16 +00:00
Luke Dashjr
15680a2e73 GUI: Omit DbDump option for backup of BDB wallets 2024-05-16 17:42:10 +00:00
Luke Dashjr
6b1898af6d GUI: Support backup to DumpWallet format 2024-05-16 17:42:10 +00:00
Luke Dashjr
ce88a6dea4 interfaces/Wallet: Add DumpWallet format to backupWallet interface 2024-05-16 17:42:10 +00:00
Luke Dashjr
90bbbbfd48 Bugfix: QA/wallet_fundrawtransaction: Ensure segwit_inputs_only gets tested correctly
Co-authored-by: Aurèle Oulès <aurele@oules.com>
2024-05-16 15:02:43 +00:00
Luke Dashjr
2dc8bd803d Wallet: Keep segwit_inputs_only in simple variable for duration of AvailableCoins 2024-05-16 15:01:22 +00:00
Aurèle Oulès
3186ca786b Witness-only option for fundrawtransaction
Github-Pull: #25183
Rebased-From: 1c5cfd84b3dc14ab886acd47c7891c11eb2457ec
2024-05-16 15:01:22 +00:00
Cory Fields
3c26058da2
crypto: disable asan for sha256_sse4 with clang and -O0
Clang is unable to compile the Transform function for that combination of
options.

Github-Pull: #30097
Rebased-From: 141df0a288
2024-05-16 08:41:52 +08:00
Luke Dashjr
2393def608 GUI: Change default QR Code font to embedded 2024-05-16 00:34:52 +00:00
Luke Dashjr
52ecf5b65e GUI: Enable customisation of QR Code font 2024-05-16 00:34:35 +00:00
Luke Dashjr
1e265fb9ed Merge branch 'qt_qrcode_sizefixes' into qt_fontsel_qrcodes-27+knots 2024-05-16 00:30:43 +00:00
Luke Dashjr
58c3bfd5b2 Merge branch 'gui_peers_rowcolouropt' into qt_fontsel_qrcodes-27+knots 2024-05-16 00:30:30 +00:00
Luke Dashjr
615033cfb8 Diff-minimise 2024-05-15 23:58:44 +00:00
Luke Dashjr
78ca914751 RPC/Wallet: Convert descriptorprocesspsbt to use options parameter 2024-05-15 23:58:43 +00:00
Luke Dashjr
9ea0d3d69d Merge branch 'rpcarg_type_per_name' into rpc_descriptorprocesspsbt_opts-27.1+k 2024-05-15 23:58:41 +00:00
Luke Dashjr
d1815ce04d Diff-minimise 2024-05-15 23:48:13 +00:00
Hennadii Stepanov
9166bb76d5 qt: Add "Alternating Row Color" settings for the Peers Tab
Github-Pull: gui#307
Rebased-From: b124c2fe600b343a2bc66ff8eb0aaf43aa99f4db
2024-05-15 23:48:12 +00:00
Aaron Dewes
43c9a1772e Add reindex=auto flag to automatically reindex corrupt data
This PR allows the reindex flag to be set to auto, which automatically starts a reindex if the chain state or block index are corrupt.
This can be especially useful for  Raspberry Pi based full nodes, which often experience power outages or similar issues which can corrupt data.
It allows full node operators to make Bitcoin Core reindex automatically, without having to worry about removing the reindex flag again. (Which isn't much effort, but can be annoying to forget)

Github-Pull: #22072
Rebased-From: 602f4da9178dff11853431f9a7115194f6a016ac
2024-05-15 23:43:03 +00:00
Luke Dashjr
01dd32a709 interfaces/Wallet: Add the ability to choose a backup format
Also outputs a bilingual_str error (unused for now)
2024-05-15 23:34:17 +00:00
Luke Dashjr
111058215c Wallet: Pass dump_filename to DumpWallet as an argument 2024-05-15 23:34:16 +00:00
Luke Dashjr
0e6f6c7039 Bugfix: QA: When testing setfeerate, check approximate fee range with a span able to tolerate normal signature length variation 2024-05-15 23:06:59 +00:00
Jon Atack
ca39313f6d test: add more functional tests for setfeerate
Was: test: update functional tests from settxfee to setfeerate

Github-Pull: #20391
Rebased-From: d87f0f3a923dca2ce8d99aa700b0beda8e42d3ec (partial)
2024-05-15 23:06:59 +00:00
Jon Atack
70a334ddaf test: add setfeerate functional coverage in wallet_bumpfee.py
Github-Pull: #20391
Rebased-From: c907f158a6bf3cad782d4441e02abcbda210265b
2024-05-15 23:06:59 +00:00
Jon Atack
e3bad6d0d2 test: add setfeerate functional coverage in wallet_create_tx.py
Github-Pull: #20391
Rebased-From: 529bfc16ffb35c5356e27f61d59395fae6707bcd
2024-05-15 23:06:59 +00:00
Jon Atack
eda384078d wallet: introduce setfeerate, an improved settxfee in sat/vB
Github-Pull: #20391
Rebased-From: 8e863e3d3ce457c9ca26a12e8fd6beac2f50aa7d (diff-minimised)
2024-05-15 23:06:59 +00:00
Jon Atack
01e51a3976 test: add ValueFromFeeRate/CFeeRate unit tests
(partial: CFeeRate in 0.21 doesn't take FeeEstimateMode)
2024-05-15 23:06:59 +00:00
Luke Dashjr
8baf00e0c4 core_io: Add ValueFromFeeRate helper 2024-05-15 23:06:59 +00:00
Jon Atack
09c51e7f7d policy: add CFeeRate::SatsToString helper without units 2024-05-15 23:06:59 +00:00
Luke Dashjr
318c798852 Disable lowmem flushing in test that needs determinism 2024-05-15 23:01:19 +00:00
Luke Dashjr
1a01c95586 Make lowmem threshold configurable 2024-05-15 23:01:18 +00:00
Luke Dashjr
71eae9faab util: Log reasoning when returning true from SystemNeedsMemoryReleased 2024-05-15 23:00:40 +00:00