lbrycrd/src
MarcoFalke 252fd15add
Merge #13926: [Tools] bitcoin-wallet - a tool for creating and managing wallets offline
3c3e31c3a4 [tests] Add wallet-tool test (João Barbosa)
49d2374acf [tools] Add wallet inspection and modification tool (Jonas Schnelli)

Pull request description:

  Adds an offline tool `bitcoin-wallet-tool` for wallet creation and maintenance.

  Currently this tool can create a new wallet file, display information on an existing wallet, and run the salvage and zapwallettxes maintenance tasks on an existing wallet. It can later be extended to support other common wallet maintenance tasks.

  Doing wallet maintenance tasks in an offline tool makes much more sense (and is potentially safer) than having to spin up a full node.

Tree-SHA512: 75a28b8a58858d9d76c7532db40eacdefc5714ea5aab536fb1dc9756e2f7d750d69d68d59c50a68e633ce38fb5b8c3e3d4880db30fe01561e07ce58d42bceb2b
2019-01-31 11:07:51 -05:00
..
bench Merge #14955: Switch all RNG code to the built-in PRNG 2019-01-21 19:46:45 +01:00
compat Merge #13665: [build] Add risc-v support to gitian 2018-08-16 20:33:50 +02:00
config
consensus Update copyright headers to 2018 2018-12-29 10:15:01 +01:00
crypto Abstract out seeding/extracting entropy into RNGState::MixExtract 2019-01-16 16:31:37 -08:00
index Merge #14085: index: Fix for indexers skipping genesis block. 2019-01-09 14:48:11 +01:00
interfaces Merge #15225: GUI: Change the receive button to respond to keypool state changing 2019-01-31 15:11:32 +01:00
leveldb Pull leveldb subtree 2019-01-26 12:45:48 -05:00
obj
obj-test
policy Add locking annotations to feeStats, shortStats and longStats 2018-12-03 00:14:33 +01:00
primitives Made expicit constructor CTransaction(const CMutableTransaction &tx). 2018-12-17 21:02:42 -08:00
qt Merge #15225: GUI: Change the receive button to respond to keypool state changing 2019-01-31 15:11:32 +01:00
rpc Merge #15272: doc: correct logging return type and RPC example 2019-01-31 13:38:13 +01:00
script Minimal changes to comply with explicit CMutableTransaction -> CTranaction conversion. 2018-12-17 21:02:42 -08:00
secp256k1
support Fix out-of-bounds write in case of failing mmap(...) in PosixLockedPageAllocator::AllocateLocked 2019-01-06 17:45:53 +01:00
test test: Build fuzz targets into seperate executables 2019-01-29 19:03:06 -05:00
univalue Update univalue subtree 2018-09-07 08:21:14 -04:00
util Merge #14955: Switch all RNG code to the built-in PRNG 2019-01-21 19:46:45 +01:00
wallet Merge #13926: [Tools] bitcoin-wallet - a tool for creating and managing wallets offline 2019-01-31 11:07:51 -05:00
zmq RPCHelpMan: Pass through Result and Examples 2019-01-25 14:16:07 -05:00
.clang-format Fix inconsistent namespace formatting guidelines 2018-04-13 15:37:20 -04:00
addrdb.cpp banman: pass the banfile path in 2019-01-16 13:54:18 -05:00
addrdb.h banman: Add, use CBanEntry ctor that takes ban reason 2019-01-16 13:54:18 -05:00
addrman.cpp Make addrman use its local RNG exclusively 2018-12-12 14:22:12 -08:00
addrman.h Use C++11 default member initializers 2019-01-05 16:16:37 +01:00
amount.h Update copyright headers to 2018 2018-12-29 10:15:01 +01:00
arith_uint256.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
arith_uint256.h Use std::numeric_limits<UNSIGNED>::max()) instead of (UNSIGNED)-1 2018-12-04 19:55:04 +02:00
attributes.h Add NODISCARD to all {Decode,Parse}[...](...) functions returning bool. Sort includes. 2018-11-05 17:03:11 +01:00
banman.cpp Allow connections from misbehavior banned peers. 2019-01-22 21:10:48 +00:00
banman.h Allow connections from misbehavior banned peers. 2019-01-22 21:10:48 +00:00
base58.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
base58.h Add NODISCARD to all {Decode,Parse}[...](...) functions returning bool. Sort includes. 2018-11-05 17:03:11 +01:00
bech32.cpp Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-08-27 18:19:33 +02:00
bech32.h
bitcoin-cli-res.rc
bitcoin-cli.cpp Merge #14480: refactor: Drop boost::this_thread::interruption_point and boost::thread_interrupted in main thread 2018-12-07 15:40:50 +01:00
bitcoin-tx-res.rc
bitcoin-tx.cpp Minimal changes to comply with explicit CMutableTransaction -> CTranaction conversion. 2018-12-17 21:02:42 -08:00
bitcoin-wallet-res.rc [tools] Add wallet inspection and modification tool 2019-01-30 16:26:52 -05:00
bitcoin-wallet.cpp [tools] Add wallet inspection and modification tool 2019-01-30 16:26:52 -05:00
bitcoind-res.rc
bitcoind.cpp Merge #14521: qt, docs: Fix bitcoin-qt -version output formatting 2018-11-23 10:17:46 +01:00
blockencodings.cpp Extract CSipHasher to it's own file in crypto/ directory. 2018-11-05 09:25:15 -08:00
blockencodings.h disallow oversized CBlockHeaderAndShortTxIDs 2018-11-13 12:41:41 -08:00
blockfilter.cpp blockfilter: Remove default clause in switch statement. 2018-12-21 23:53:29 -06:00
blockfilter.h blockfilter: Additional constructors for BlockFilter. 2018-11-06 09:12:54 -08:00
bloom.cpp Merge #13429: Return the script type from Solver 2018-08-25 17:41:00 +02:00
bloom.h Removes unsed CBloomFilter constructor. 2018-08-13 01:24:55 +02:00
chain.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
chain.h Don't label transactions "Open" while catching up 2019-01-03 00:10:24 +02:00
chainparams.cpp Merge #14970: [net] add dnsseed.emzy.de to DNS seeds 2019-01-21 19:16:45 +01:00
chainparams.h implements different disk sizes for different networks on intro 2018-10-07 13:11:36 +01:00
chainparamsbase.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
chainparamsbase.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
chainparamsseeds.h net: Update hardcoded seeds 2018-08-13 13:57:15 +02:00
checkpoints.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
checkpoints.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
checkqueue.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
clientversion.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
clientversion.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
coins.cpp Extract CSipHasher to it's own file in crypto/ directory. 2018-11-05 09:25:15 -08:00
coins.h Trivial: fixup a few doxygen comments 2019-01-24 19:47:07 -08:00
compat.h Implement poll() on systems which support it properly. 2018-12-03 14:25:51 -05:00
compressor.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
compressor.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
core_io.h Add NODISCARD to all {Decode,Parse}[...](...) functions returning bool. Sort includes. 2018-11-05 17:03:11 +01:00
core_memusage.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
core_read.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
core_write.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
cuckoocache.h Make objects in range declarations immutable by default. Avoid unnecessary copying of objects in range declarations. 2018-08-27 18:19:33 +02:00
dbwrapper.cpp Fix typos reported by codespell 2018-09-04 13:11:26 +02:00
dbwrapper.h scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
dummywallet.cpp Remove direct node->wallet calls in init.cpp 2018-11-06 11:44:40 -04:00
fs.cpp utils: Fix broken Windows filelock 2018-10-19 02:29:25 +08:00
fs.h Update copyright headers to 2018 2018-12-29 10:15:01 +01:00
hash.cpp Extract CSipHasher to it's own file in crypto/ directory. 2018-11-05 09:25:15 -08:00
hash.h Merge #13258: uint256: Remove unnecessary crypto/common.h dependency 2018-11-30 18:48:58 +01:00
httprpc.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
httprpc.h Cleanup StartRest() 2018-08-11 09:34:47 +03:00
httpserver.cpp Use C++11 default member initializers 2019-01-05 16:16:37 +01:00
httpserver.h convert C-style (void) parameter lists to C++ style () 2018-09-13 10:36:41 -07:00
indirectmap.h
init.cpp Merge #15163: Correct units for "-dbcache" and "-prune" 2019-01-30 20:22:57 +01:00
init.h Pass chain and client variables where needed 2018-11-06 11:44:40 -04:00
key.cpp Pass export privkey DER compression flag correctly 2018-09-13 09:58:26 +02:00
key.h convert C-style (void) parameter lists to C++ style () 2018-09-13 10:36:41 -07:00
key_io.cpp Update copyright headers to 2018 2018-12-29 10:15:01 +01:00
key_io.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
keystore.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
keystore.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
limitedmap.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
logging.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
logging.h logging: Replace LogPrint macros with regular functions 2018-09-12 11:28:01 -04:00
Makefile.am Merge #13926: [Tools] bitcoin-wallet - a tool for creating and managing wallets offline 2019-01-31 11:07:51 -05:00
Makefile.bench.include Add Benchmark to test input de-duplication worst case 2018-11-25 10:53:20 +09:00
Makefile.leveldb.include
Makefile.qt.include gui: Add WalletController 2019-01-18 00:34:47 +00:00
Makefile.qttest.include Add BitcoinApplication & RPCConsole tests 2019-01-04 06:31:07 -05:00
Makefile.test.include test: Build fuzz targets into seperate executables 2019-01-29 19:03:06 -05:00
memusage.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
merkleblock.cpp Replace use of BEGIN and END macros on uint256 2019-01-10 01:58:33 +01:00
merkleblock.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
miner.cpp [mining] segwit option must be set in GBT 2018-12-10 16:42:14 -05:00
miner.h [mining] segwit option must be set in GBT 2018-12-10 16:42:14 -05:00
net.cpp Allow connections from misbehavior banned peers. 2019-01-22 21:10:48 +00:00
net.h Merge #14929: net: Allow connections from misbehavior banned peers 2019-01-29 13:41:04 -10:00
net_processing.cpp net: move BanMan to its own files 2019-01-16 13:54:18 -05:00
net_processing.h banman: create and split out banman 2019-01-16 13:54:18 -05:00
netaddress.cpp Merge #14728: fix uninitialized read when stringifying an addrLocal 2018-11-23 09:53:20 +01:00
netaddress.h Merge #14728: fix uninitialized read when stringifying an addrLocal 2018-11-23 09:53:20 +01:00
netbase.cpp Implement poll() on systems which support it properly. 2018-12-03 14:25:51 -05:00
netbase.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
netmessagemaker.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
noui.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
noui.h Update copyright headers to 2018 2018-12-29 10:15:01 +01:00
optional.h Remove 'boost::optional'-related gcc warnings 2019-01-30 22:44:28 +02:00
outputtype.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
outputtype.h Add NODISCARD to all {Decode,Parse}[...](...) functions returning bool. Sort includes. 2018-11-05 17:03:11 +01:00
pow.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
pow.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
prevector.h Implement prevector::fill once 2018-11-14 12:19:28 -05:00
protocol.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
protocol.h Use C++11 default member initializers 2019-01-05 16:16:37 +01:00
pubkey.cpp Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
pubkey.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
random.cpp Document RNG design in random.h 2019-01-16 16:35:54 -08:00
random.h Document RNG design in random.h 2019-01-16 16:35:54 -08:00
rest.cpp Merge #15159: [RPC] Remove lookup to UTXO set from GetTransaction 2019-01-30 11:18:44 -05:00
reverse_iterator.h scripted-diff: Remove trailing whitespaces 2018-07-24 20:46:23 +01:00
reverselock.h
scheduler.cpp Switch all RNG code to the built-in PRNG. 2019-01-16 16:34:56 -08:00
scheduler.h scripted-diff: Replace boost::bind with std::bind 2018-10-20 02:29:59 +08:00
serialize.h Drop minor GetSerializeSize template 2018-09-11 00:58:13 -04:00
shutdown.cpp Break circular dependency: init -> * -> init by extracting shutdown.h 2018-06-25 00:08:49 -04:00
shutdown.h Break circular dependency: init -> * -> init by extracting shutdown.h 2018-06-25 00:08:49 -04:00
span.h Add more methods to Span class 2018-07-27 11:52:18 -07:00
streams.h Trivial: Doxygenize existing CBufferedFile and VectorReader comments 2019-01-25 12:32:37 -08:00
sync.cpp Prevent mutex lock fail even if --enable-debug 2019-01-25 13:21:59 +09:00
sync.h sync: Add RecursiveMutex type alias 2018-12-14 16:26:13 -05:00
threadinterrupt.cpp Merge #11640: Make LOCK, LOCK2, TRY_LOCK work with CWaitableCriticalSection 2018-08-31 16:00:38 +02:00
threadinterrupt.h Update copyright headers to 2018 2018-12-29 10:15:01 +01:00
threadsafety.h Pass chain locked variables where needed 2018-11-06 11:44:40 -04:00
timedata.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
timedata.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
tinyformat.h
torcontrol.cpp Drop IsLimited in favor of IsReachable 2019-01-13 22:50:36 -08:00
torcontrol.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
txdb.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
txdb.h Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00
txmempool.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
txmempool.h validation: Add cs_main locking annotations 2018-12-22 15:23:03 +01:00
ui_interface.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
ui_interface.h Make macro compatible with MSVC 2018-08-14 09:19:47 +00:00
uint256.cpp util: Make ToLower and ToUpper take a char 2019-01-10 02:51:14 +01:00
uint256.h uint256: Remove unnecessary crypto/common.h use 2018-09-18 14:27:05 +09:00
undo.h Extract CSipHasher to it's own file in crypto/ directory. 2018-11-05 09:25:15 -08:00
validation.cpp Merge #15159: [RPC] Remove lookup to UTXO set from GetTransaction 2019-01-30 11:18:44 -05:00
validation.h Merge #15163: Correct units for "-dbcache" and "-prune" 2019-01-30 20:22:57 +01:00
validationinterface.cpp Merge #13743: refactor: Replace boost::bind with std::bind 2018-12-29 14:14:26 +01:00
validationinterface.h Add compile time checking for all cs_main runtime locking assertions 2018-08-26 00:25:28 +02:00
version.h Update copyright headers to 2018 2018-07-27 07:15:02 -04:00
versionbits.cpp MOVEONLY: Move versionbits info out of versionbits.o 2018-09-23 22:55:11 +02:00
versionbits.h MOVEONLY: Move versionbits info out of versionbits.o 2018-09-23 22:55:11 +02:00
versionbitsinfo.cpp MOVEONLY: Move versionbits info out of versionbits.o 2018-09-23 22:55:11 +02:00
versionbitsinfo.h MOVEONLY: Move versionbits info out of versionbits.o 2018-09-23 22:55:11 +02:00
walletinitinterface.h Remove direct node->wallet calls in init.cpp 2018-11-06 11:44:40 -04:00
warnings.cpp scripted-diff: Move util files to separate directory. 2018-11-04 22:46:07 -08:00
warnings.h Merge #13780: 0.17: Pre-branch maintenance 2018-08-08 13:55:27 +02:00