lbrycrd/src
Wladimir J. van der Laan e03c0db08f
Merge #12560: [wallet] Upgrade path for non-HD wallets to HD
a8da482 Bump wallet version for pre split keypool (Andrew Chow)
dfcd9f3 Use a keypool of presplit keys after upgrading to hd chain split (Andrew Chow)
5c50e93 Allow -upgradewallet to upgradewallets to HD (Andrew Chow)
2bcf2b5 Test sethdseed (Andrew Chow)
b5ba01a Add 'sethdseed' RPC to initialize or replace HD seed (Chris Moore)
dd3c07a Separate HaveKey function that checks whether a key is in a keystore (Andrew Chow)

Pull request description:

  Revival/rebase of #11085

  Adds a new command `sethdseed` which allows you to either set or generate a new HD seed to be used. A new keypool can be generated or the original one kept and new keys added to the keypool will come from the new HD seed.

  Wallets that are not HD will be upgraded to be version FEATURE_HD_SPLIT when the `sethdseed` RPC command is used.

  I have also add some tests for this.

  Additionally `-upgradewallet` can now be used to upgrade a wallet from non-HD to HD. When it is used for such an upgrade, the keypool will be regenerated.

Tree-SHA512: e56c792e150590429ac4a1061e8d6f7b20cca06366e184eb9bbade4cd6ae82699a28fe84f87031eadba97ad2c1606517a105f00fb7b45779c979243020071adb
2018-05-14 11:17:29 +02:00
..
bench Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
compat Default to defining endian-conversion DECLs in compat w/o config 2018-04-16 11:47:32 -04:00
config
consensus Use P2SH consensus rules for all blocks 2018-04-13 09:52:50 -04:00
crypto Consensus: Fix bug when compiler do not support __builtin_clz* 2018-03-01 17:20:27 +08:00
index Merge #13149: Handle unsuccessful fseek(...):s 2018-05-07 13:39:19 +02:00
interfaces Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
leveldb Bump leveldb subtree 2018-02-16 08:59:28 -05:00
obj
obj-test
policy Merge #11423: [Policy] Several transaction standardness rules 2018-05-12 17:39:46 +02:00
primitives Support serialization as another type without casting 2018-03-20 17:08:06 -07:00
qt Merge #12560: [wallet] Upgrade path for non-HD wallets to HD 2018-05-14 11:17:29 +02:00
rpc Merge #12560: [wallet] Upgrade path for non-HD wallets to HD 2018-05-14 11:17:29 +02:00
script Add constant scriptCode policy in non-segwit scripts 2018-05-05 04:26:12 +08:00
secp256k1 Bump secp256k1 subtree 2017-09-29 16:02:39 +02:00
support Make it clear which functions that are intended to be translation unit local 2018-05-03 21:47:40 +02:00
test Merge #11423: [Policy] Several transaction standardness rules 2018-05-12 17:39:46 +02:00
univalue univalue: Bump subtree 2018-02-10 09:55:54 -05:00
wallet Merge #12560: [wallet] Upgrade path for non-HD wallets to HD 2018-05-14 11:17:29 +02:00
zmq Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
.clang-format Fix inconsistent namespace formatting guidelines 2018-04-13 15:37:20 -04:00
addrdb.cpp Add logging and error handling for file syncing 2018-04-23 14:25:28 +02:00
addrdb.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
addrman.cpp net: Correct addrman logging 2018-03-06 21:52:53 +01:00
addrman.h Merge #12731: Support serialization as another type without casting 2018-04-10 20:54:33 +02:00
amount.h
arith_uint256.cpp [arith_uint256] Do not destroy *this content if passed-in operator may reference it 2018-03-01 11:49:35 +09:00
arith_uint256.h [arith_uint256] Avoid unnecessary this-copy using prefix operator 2018-02-28 19:59:19 +09:00
base58.cpp use base58 map instead of strchr() 2018-03-21 11:57:57 +08:00
base58.h Split key_io (address/key encodings) off from base58 2018-02-19 18:55:21 -08:00
bech32.cpp scripted-diff: Replace #include "" with #include <> (ryanofsky) 2017-11-16 08:23:01 +13:00
bech32.h Fix missing or inconsistent include guards 2018-03-22 16:23:04 +01:00
bitcoin-cli-res.rc
bitcoin-cli.cpp Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
bitcoin-tx-res.rc
bitcoin-tx.cpp Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
bitcoind-res.rc
bitcoind.cpp Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
blockencodings.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
blockencodings.h Fix missing or inconsistent include guards 2018-03-22 16:23:04 +01:00
bloom.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
bloom.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
chain.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
chain.h Add static_assert to prevent VARINT(<signed value>) 2018-03-15 18:57:55 -05:00
chainparams.cpp Trivial: s/SetBestChain/ChainStateFlushed in comments after #13106 2018-05-02 10:02:48 -04:00
chainparams.h [doc] Add comments for chainparams.h, validation.cpp 2018-04-17 17:15:20 -04:00
chainparamsbase.cpp Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
chainparamsbase.h Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
chainparamsseeds.h Fix a-vs-an typos 2018-02-11 10:48:15 +01:00
checkpoints.cpp Add LookupBlockIndex function 2018-03-06 19:52:19 +00:00
checkpoints.h Add LookupBlockIndex function 2018-03-06 19:52:19 +00:00
checkqueue.h [Refactor] Remove unused fQuit var from checkqueue.h 2018-01-07 20:44:21 +00:00
clientversion.cpp Merge #11966: clientversion: Use full commit hash for commit-based version descriptions 2018-02-13 10:58:41 +01:00
clientversion.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
coins.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
coins.h Support deserializing into temporaries 2018-03-13 17:04:31 -07:00
compat.h net: Minor accumulated cleanups 2018-04-16 13:24:14 -07:00
compressor.cpp Move compressor utility functions out of class 2018-03-21 14:17:18 -07:00
compressor.h Support serializing Span<unsigned char> and use that instead of FLATDATA 2018-04-05 08:20:37 -07:00
core_io.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
core_memusage.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
core_read.cpp Make it clear which functions that are intended to be translation unit local 2018-05-03 21:47:40 +02:00
core_write.cpp Merge #12885: Reduce implementation code inside CScript 2018-04-23 21:09:17 +02:00
cuckoocache.h Use explicit casting in cuckoocache's compute_hashes(...) to clarify integer conversion 2018-03-27 00:37:20 +02:00
dbwrapper.cpp [logging] Comment all continuing logs. 2018-04-07 12:29:48 -04:00
dbwrapper.h [db] Create separate database for txindex. 2018-04-25 11:25:05 -07:00
fs.cpp scripted-diff: Replace #include "" with #include <> (ryanofsky) 2017-11-16 08:23:01 +13:00
fs.h
hash.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
hash.h Support deserializing into temporaries 2018-03-13 17:04:31 -07:00
httprpc.cpp Merge #12859: Bugfix: Include <memory> for std::unique_ptr 2018-04-05 09:31:53 +02:00
httprpc.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
httpserver.cpp util: Encapsulate logCategories within BCLog::Logger. 2018-04-27 16:10:02 -07:00
httpserver.h util: Encapsulate logCategories within BCLog::Logger. 2018-04-27 16:10:02 -07:00
indirectmap.h
init.cpp Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
init.h Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
key.cpp Merge #9598: Improve readability by removing redundant casts to same type (on all platforms) 2018-03-07 17:47:46 +01:00
key.h Make CKey::Load references const 2018-01-23 13:16:56 -05:00
key_io.cpp Simplify Base32 and Base64 conversions 2018-03-07 07:04:07 -08:00
key_io.h Fix missing or inconsistent include guards 2018-03-22 16:23:04 +01:00
keystore.cpp Separate HaveKey function that checks whether a key is in a keystore 2018-05-05 00:43:04 -04:00
keystore.h Separate HaveKey function that checks whether a key is in a keystore 2018-05-05 00:43:04 -04:00
limitedmap.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
logging.cpp Merge #13149: Handle unsuccessful fseek(...):s 2018-05-07 13:39:19 +02:00
logging.h logging: remove unused return value from LogPrintStr 2018-05-02 11:25:20 +02:00
Makefile.am Remove Safe mode 2018-04-26 15:33:11 +02:00
Makefile.bench.include benchmark: Removed bench/perf.cpp 2018-04-18 19:53:10 -07:00
Makefile.leveldb.include build: verify that the assembler can handle crc32 functions 2017-07-13 12:49:05 -04:00
Makefile.qt.include Remove direct bitcoin calls from qt/splashscreen.cpp 2018-04-04 16:52:40 -04:00
Makefile.qttest.include [tests] [qt] Add tests for address book manipulation via EditAddressDialog 2018-04-25 13:13:24 -04:00
Makefile.test.include [test] Simple unit test for TxIndex. 2018-04-25 11:25:18 -07:00
memusage.h Bugfix: Include <memory> for std::unique_ptr 2018-04-02 18:31:52 +00:00
merkleblock.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
merkleblock.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
miner.cpp Remove duplicate includes 2018-04-09 09:18:49 +02:00
miner.h Remove unused variable in SortForBlock 2018-03-14 23:10:39 -07:00
net.cpp Make it clear which functions that are intended to be translation unit local 2018-05-03 21:47:40 +02:00
net.h Merge #12569: net: Increase signal-to-noise ratio in debug.log by adjusting log level when logging failed non-manual connect():s 2018-04-13 19:25:18 +02:00
net_processing.cpp Merge #13162: [net] Don't incorrectly log that REJECT messages are unknown. 2018-05-07 12:49:11 +02:00
net_processing.h Remove direct bitcoin calls from qt/peertablemodel.cpp 2018-04-04 16:52:40 -04:00
netaddress.cpp net: Minor accumulated cleanups 2018-04-16 13:24:14 -07:00
netaddress.h net: Minor accumulated cleanups 2018-04-16 13:24:14 -07:00
netbase.cpp Make it clear which functions that are intended to be translation unit local 2018-05-03 21:47:40 +02:00
netbase.h Increase signal-to-noise ratio in debug.log by adjusting log level when logging failed non-manual connect():s 2018-03-11 10:49:04 +01:00
netmessagemaker.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
noui.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
noui.h
pow.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
pow.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
prevector.h Use memset() to optimize prevector::resize() 2018-02-27 13:27:51 -08:00
protocol.cpp Add setter for g_initial_block_download_completed 2018-02-17 21:28:50 +11:00
protocol.h Merge #12731: Support serialization as another type without casting 2018-04-10 20:54:33 +02:00
pubkey.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
pubkey.h Assert CPubKey::ValidLength to the pubkey's header-relevent size 2018-02-16 12:30:26 -08:00
random.cpp Make it clear which functions that are intended to be translation unit local 2018-05-03 21:47:40 +02:00
random.h Merge #12742: Make FastRandomContext support standard C++11 RNG interface 2018-03-22 12:21:46 -04:00
rest.cpp Remove enum specifier (to avoid re-declare scoped enum as unscoped) 2018-05-06 22:50:39 +01:00
reverse_iterator.h Declare single-argument (non-converting) constructors "explicit" 2017-08-16 16:33:25 +02:00
reverselock.h
scheduler.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
scheduler.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
serialize.h Merge #12916: Introduce BigEndian wrapper and use it for netaddress ports 2018-04-11 14:23:58 +02:00
span.h Add Slice: a (pointer, size) array view that acts like a container 2018-04-05 08:20:37 -07:00
streams.h Support deserializing into temporaries 2018-03-13 17:04:31 -07:00
sync.cpp [logging] Comment all continuing logs. 2018-04-07 12:29:48 -04:00
sync.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
threadinterrupt.cpp [index] Allow TxIndex sync thread to be interrupted. 2018-04-25 11:25:09 -07:00
threadinterrupt.h [index] Allow TxIndex sync thread to be interrupted. 2018-04-25 11:25:09 -07:00
threadsafety.h
timedata.cpp Add missing newlines to LogPrint debug logging 2018-05-02 15:14:04 +02:00
timedata.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
tinyformat.h Fix typos 2018-03-21 08:34:44 +02:00
torcontrol.cpp boost: drop boost threads from torcontrol 2018-02-08 14:35:29 -05:00
torcontrol.h boost: drop boost threads from torcontrol 2018-02-08 14:35:29 -05:00
txdb.cpp [db] Migration for txindex data to new, separate database. 2018-04-25 11:25:06 -07:00
txdb.h [init] Initialize and start TxIndex in init code. 2018-04-25 11:25:12 -07:00
txmempool.cpp Merge #11742: rpc: Add testmempoolaccept 2018-04-02 16:02:33 +02:00
txmempool.h Add compile time checking for all ::mempool.cs runtime locking assertions 2018-05-05 08:11:05 +02:00
ui_interface.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
ui_interface.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
uint256.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
uint256.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
undo.h Merge #12716: Fix typos and cleanup in various files 2018-03-21 11:17:43 -04:00
util.cpp Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
util.h Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
utilmoneystr.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
utilmoneystr.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
utilstrencodings.cpp Simplify Base32 and Base64 conversions 2018-03-07 07:04:07 -08:00
utilstrencodings.h Generalize ConvertBits 2018-03-06 20:28:08 -08:00
utiltime.cpp Fix for utiltime to compile with msvc. 2018-04-20 08:41:15 +10:00
utiltime.h Avoid std::locale/imbue in DateTimeStrFormat 2018-04-13 01:36:53 -07:00
validation.cpp Merge #13199: Bugfix: ensure consistency of m_failed_blocks after reconsiderblock 2018-05-12 11:32:09 -07:00
validation.h [validation] Replace tx index code in validation code with TxIndex. 2018-04-25 11:25:13 -07:00
validationinterface.cpp scripted-diff: Rename SetBestChain callback ChainStateFlushed 2018-04-27 14:44:22 -04:00
validationinterface.h Simplify semantics of ChainStateFlushed callback 2018-04-27 14:44:56 -04:00
version.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
versionbits.cpp scripted-diff: Convert 11 enums into scoped enums (C++11) 2018-03-09 15:03:40 +01:00
versionbits.h Merge #12757: Clarify include guard naming convention 2018-04-01 18:30:21 -04:00
walletinitinterface.h Make gArgs aware of the arguments 2018-05-09 12:21:05 -04:00
warnings.cpp Remove "rpc" category from GetWarnings 2018-04-27 09:27:52 +02:00
warnings.h Remove "rpc" category from GetWarnings 2018-04-27 09:27:52 +02:00