aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/rpcdump.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Take non-importing keys into account for spendability warning in descriptor ↵Pieter Wuille2019-04-161-0/+3
| | | | | | | import Github-Pull: #15749 Rebased-From: b5d39877242504160a7f2c24c60c07a845d7a064
* Import all origin info in importmulti; even for non-importing pubkeysPieter Wuille2019-04-161-5/+4
| | | | | Github-Pull: #15749 Rebased-From: 6e597001a4fc1ba837f3f23cfd7f2d65c3d58104
* Keep full pubkeys in FlatSigningProvider::originsPieter Wuille2019-04-161-2/+2
| | | | | Github-Pull: #15749 Rebased-From: 9a93c91c882265c908ea18496cd1bc271be914d4
* wallet: Move CWallet::ReacceptWalletTransactions locks to callersJoão Barbosa2019-04-011-3/+15
| | | | | Github-Pull: #15652 Rebased-From: 0440481c6bf5683eff669c789bdf6a306d99adc5
* Use stop/[start,stop] notation in importmulti desc rangePieter Wuille2019-02-281-13/+5
|
* [Doc] importmulti: add missing description of keypool optionDavid A. Harding2019-02-161-0/+1
|
* Make descriptor checksums mandatory in deriveaddresses and importmultiPieter Wuille2019-02-151-1/+1
|
* Import public keys in orderAndrew Chow2019-02-141-29/+37
| | | | | Do public key imports in the order that they are specified in the import or in the descriptor range.
* Add option to importmulti add an imported pubkey to the keypoolAndrew Chow2019-02-141-0/+11
| | | | | | Adds a new option to importmulti where the pubkeys specified in the import object can be added to the keypool. This only works if the wallet has private keys disabled.
* Import KeyOriginData when importing descriptorsAndrew Chow2019-02-141-1/+7
|
* Store key origin info in key metadataAndrew Chow2019-02-141-1/+2
| | | | | | | Store the master key fingerprint and derivation path in the key metadata. hdKeypath is kept to indicate the seed and for backwards compatibility, but all key derivation path output uses the key origin info instead of hdKeypath.
* RPCHelpMan: Check default values are given at compile-timeMarcoFalke2019-02-111-35/+35
|
* Merge #15365: wallet: Add lock annotation for mapAddressBookMarcoFalke2019-02-081-1/+1
|\ | | | | | | | | | | | | | | | | | | faa46475d7 wallet: Add lock annotation for mapAddressBook (MarcoFalke) Pull request description: This adds lock annotations for `mapAddressBook` and also moves one lock from inside `GetDestValues` to the caller to be in line with the other methods (`eraseDestData`, `addDestData`, ...) Tree-SHA512: cef9397523e2f5717d4a9a6b2da1fe07042484a51b3c067ae64425768637f334350a2c3db4ab7e00af99b2a587f6b656b68ee1195f6a3db6d47298d0b2b6174a
| * wallet: Add lock annotation for mapAddressBookMarcoFalke2019-02-071-1/+1
| |
* | [wallet] Allow descriptor imports with importmultiMeshCollider2019-02-051-7/+111
| |
* | [wallet] Refactor ProcessImport() to call ProcessImportLegacy()John Newbery2019-02-051-28/+30
| | | | | | | | | | | | This is almost entirely a move-only commit. Reviewer hint: use --color-moved=zebra for review.
* | [wallet] Add ProcessImportLegacy()John Newbery2019-02-051-116/+124
| | | | | | | | | | | | | | | | This commit adds a ProcessImportLegacy() function which currently does nothing. It also unindents a block of code for a future move-only change. Reviewer hint: review with -w to ignore whitespace changes.
* | [wallet] Refactor ProcessImport()John Newbery2019-02-051-19/+31
|/ | | | | | This commit is move-only and doesn't make any functional changes. It simply moves code around within ProcessImport() in preparation for refactors in the next commits.
* Merge #15308: build: Restore compatibility with older boostMarcoFalke2019-02-011-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 119d360aab travis: Document whether functional tests are run in the job name (Ben Woosley) 64f28545e3 Revert "travis: Compile trusty with depends for now" (Ben Woosley) 267eac00f9 Prefer boost::optional#get_value_or over #value_or (Ben Woosley) 1971f5ba04 Piecewise construct to avoid invalid construction (Ben Woosley) Pull request description: In light of #14979, I realized that only qt 5.5+ was being tested under CI, while compatibility lists 5.2+. In #15276, Marco added Trusty to CI, building with depends. This changes that build to system libraries, in order to ensure ongoing compatibility with our claimed minimum required versions. Fixes #14983, previously open as #14998 Tree-SHA512: 6cff5e28c756ecb8bf797c8f6eb77c1944ba61a8dd6d7d4984e63eef384f6429dc79c505da3241c05b9c4db31c72b2a9846c7365aba9280f2e0620e5f3998d07
| * Prefer boost::optional#get_value_or over #value_orBen Woosley2019-01-311-1/+1
| | | | | | | | | | | | | | The latter is not defined in the earliest supported version of boost, 1.47. https://www.boost.org/doc/libs/1_47_0/libs/optional/doc/html/boost_optional/detailed_semantics.html https://travis-ci.org/bitcoin/bitcoin/jobs/486674823
* | Merge #15235: Do not import private keys to wallets with private keys disabledWladimir J. van der Laan2019-02-011-34/+68
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | e6c58d3b014ab8ef5cca4be68764af4b79685fcb Do not import private keys to wallets with private keys disabled (Andrew Chow) b5c5021b644731d14a6ef04961320a99466f035a Refactor importwallet to extract data from the file and then import (Andrew Chow) 1f77f6754ce724493b0cb084ae0b35107d58605f tests: unify RPC argument to cli argument conversion and handle dicts and lists (Andrew Chow) Pull request description: Fixes a bug where private keys could be imported to wallets with private keys disabled. Now every RPC which can import private keys checks for whether the wallet has private keys are disabled and errors if it is. Also added an belt-and-suspenders check to `AddKeyPubkeyWithDB` to have it assert that the wallet has private keys enabled. Tree-SHA512: 5cd04febce9aa2bd9bfd02f312c6ff8705e37278cae59efd3895f6d6e2f1b477aefd297e2dd0860791bdd3d4f3cad8eb1a404f8f3d4e2035b91314ad2c1028ae
| * Do not import private keys to wallets with private keys disabledAndrew Chow2019-01-311-0/+13
| |
| * Refactor importwallet to extract data from the file and then importAndrew Chow2019-01-311-34/+55
| | | | | | | | | | Instead of importing keys and scripts as each line in the file is read, first extract the data then import them.
* | Merge #14711: Remove uses of chainActive and mapBlockIndex in wallet codeMeshCollider2019-01-301-8/+10
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 44de1561a Remove remaining chainActive references from CWallet (Russell Yanofsky) db21f0264 Convert CWallet::ScanForWalletTransactions and SyncTransaction to the new Chain apis (Russell Yanofsky) 2ffb07929 Add findFork and findBlock to the Chain interface (Russell Yanofsky) d93c4c1d6 Add time methods to the Chain interface (Russell Yanofsky) 700c42b85 Add height, depth, and hash methods to the Chain interface (Russell Yanofsky) Pull request description: This change removes uses of `chainActive` and `mapBlockIndex` globals in wallet code. It is a refactoring change which does not affect external behavior. This is the next step in the larger #10973 refactoring change, which removes all other accesses to node global variables from wallet code. Doing this is useful to provide a better defined interface between the wallet and node, and necessary to allow wallet and node code to run in separate processes in #10102. Tree-SHA512: 4dcec8a31c458f54e2ea6ecf01e430469b0994c5b41a21a2d150efa67cd209f4c93ae210a101e064b3a87c52c6edfc70b070e979992be0e3a00fd425de6230a8
| * | Add time methods to the Chain interfaceRussell Yanofsky2019-01-151-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | And use them to remove uses of chainActive and mapBlockIndex in wallet code This commit does not change behavior. Co-authored-by: Ben Woosley <[email protected]>
| * | Add height, depth, and hash methods to the Chain interfaceRussell Yanofsky2019-01-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | And use them to remove uses of chainActive and mapBlockIndex in wallet code This commit does not change behavior. Co-authored-by: Ben Woosley <[email protected]>
* | | Merge #14987: RPCHelpMan: Pass through Result and ExamplesMarcoFalke2019-01-291-62/+76
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | faa1522e5e RPCHelpMan: Pass through Result and Examples (MarcoFalke) Pull request description: Passing the rpc result and rpc examples through `RPCHelpMan` makes it clear in what order they appear in the stringified version. Future improvements could then autoformat or autogenerate them. Tree-SHA512: b32a5c178cc80f50a7e9b93a38e2b26d5994188ecafe9e61bbc599941b44b9b0e4e4be6413d4464fac6e8e73661a191a77d34917f2e6293de19fb59519dd4487
| * | | RPCHelpMan: Pass through Result and ExamplesMarcoFalke2019-01-251-62/+76
| | |/ | |/|
* / | Trivial: fixup a few doxygen commentsBen Woosley2019-01-241-3/+3
|/ / | | | | | | | | | | | | | | These were not declared properly, so their results are not properly processed. E.g.: https://dev.visucore.com/bitcoin/doxygen/rpcdump_8cpp.html#a994c8748aaa60fbb78009ff8a0638dea https://dev.visucore.com/bitcoin/doxygen/coins_8cpp.html#aa03af24ef3570144b045f4fca7a0d603 https://dev.visucore.com/bitcoin/doxygen/wallet_2wallet_8cpp.html#a5c2a7725ff8796f03471f844ecded3d9
* / [docs] Expand help text for importmulti changesJohn Newbery2019-01-151-2/+4
|/
* Overhaul importmulti logicPieter Wuille2018-12-121-167/+212
| | | | | | | | | | | This introduces various changes to the importmulti logic: * Instead of processing input and importing things at the same time, first process all input data and verify it, so no changes are made in case of an error. * Verify that no superfluous information is provided (no keys or scripts that don't contribute to solvability in particular). * Add way more sanity checks, by means of descending into all involved scripts.
* rpc: Document default values for optional argumentsMarcoFalke2018-12-071-5/+5
|
* rpc: Pass argument descriptions to RPCHelpManMarcoFalke2018-11-271-84/+52
|
* Use RPCHelpMan for all RPCsMarcoFalke2018-11-141-26/+90
|
* Merge #14720: rpc: Correctly name argumentsMarcoFalke2018-11-131-3/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fa0815c300 rpc: Correctly name arguments (Jon Layton) Pull request description: Consistently use the same name to describe arguments in the documentation and add a test that uses the name. By splitting it up, the changes are easier to potentially backport and also make review easier when we switch to `RPCHelpMan`. The tests should pass with or without the changes in `src`. Partly stolen from #14459 (More RPC help description fixes by ch4ot1c) Tree-SHA512: 1072992b1e93ac41006613523e54a0a8004f529fcb101eb9d74d91474abb0945a5a7539f249905151b904b87448f9efc0cacbd9e052fbe2ea9111e62f3e7249c
| * rpc: Correctly name argumentsJon Layton2018-11-131-3/+3
| |
* | Merge #14679: importmulti: Don't add internal addresses to address bookWladimir J. van der Laan2018-11-131-3/+4
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | 7afddfa8cefd01249ad59cf2370e7cec90b34f6f importmulti: Don't add internal addresses to address book (Gregory Sanders) Pull request description: Currently anything imported with `internal` will not be treated as change since checking the address book is a primary test of this. Added basic tests of all combinations of arguments and change identification. Resolves https://github.com/bitcoin/bitcoin/issues/14662 Tree-SHA512: a1f08dc624a3fadee93cc5392d50c4796b0c5eedf38e295382f71570f2066d9e978ed6e3962084b902989863fe1273a8642d8fdb094a266d69de10622a4176b0
| * importmulti: Don't add internal addresses to address bookGregory Sanders2018-11-071-3/+4
| |
* | Merge #14530: Use RPCHelpMan to generate RPC doc stringsMarcoFalke2018-11-131-3/+4
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fa483e13b3 rpc: Add RPCHelpMan for machine-generated help (MarcoFalke) fa0d36f712 rpc: Include rpc/util.h where needed for RPCHelpMan (MarcoFalke) Pull request description: This introduces a manager for the RPC help generation and demonstrates its use of it in some RPCs. It is the first non-exhaustive step toward #14378 and I will create pull requests for the next steps after this one is merged. Tree-SHA512: 86f68322443ff01cd964aaf0ebe186be63fbebe4c47676cf7a622cc2b5305fd176bd57badfd1bbf788a036812253eb0dead74ecc3b30664c3e0d9392b2248054
| * | rpc: Include rpc/util.h where needed for RPCHelpManMarcoFalke2018-11-091-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | Just a preparatory commit to add the header to the includes and run clang-format to sort the include lists. Splitting this up into a separate commit makes future scripted-diffs easier.
* | | Merge #13381: RPC: creates possibility to preserve labels on importprivkeyJonas Schnelli2018-11-131-3/+8
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | a6b5ec18f rpc: creates possibility to preserve labels on importprivkey (marcoagner) Pull request description: Closes #13087. As discussed in the issue, this is a feature request instead of a bug report since the behaviour was as intended (i.e. label with default: `''`). With this, the old behaviour is kept while the possibility to achieve the preservation of labels, as expected in the open issue, is added. Tree-SHA512: b33be50e1e7f62f7ddfae953177ba0926e2d848961f9fac7501c2b513322c0cb95787745d07d137488267bad1104ecfdbe800c6747f94162eb07c976835c1386
| * | rpc: creates possibility to preserve labels on importprivkeymarcoagner2018-10-051-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | - changes importprivkey behavior to overwrite existent label if one is passed and keep existing ones if no label is passed - tests behavior of importprivkey on existing address labels and different same key destination
* | | Pass chain locked variables where neededRussell Yanofsky2018-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This commit does not change behavior. All it does is pass new function parameters. It is easiest to review this change with: git log -p -n1 -U0 --word-diff-regex=.
* | | Remove uses of cs_main in wallet codeRussell Yanofsky2018-11-061-10/+20
| |/ |/| | | | | | | | | | | | | This commit does not change behavior. It is easiest to review this change with: git log -p -n1 -U0
* | scripted-diff: Move util files to separate directory.Jim Posen2018-11-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -BEGIN VERIFY SCRIPT- mkdir -p src/util git mv src/util.h src/util/system.h git mv src/util.cpp src/util/system.cpp git mv src/utilmemory.h src/util/memory.h git mv src/utilmoneystr.h src/util/moneystr.h git mv src/utilmoneystr.cpp src/util/moneystr.cpp git mv src/utilstrencodings.h src/util/strencodings.h git mv src/utilstrencodings.cpp src/util/strencodings.cpp git mv src/utiltime.h src/util/time.h git mv src/utiltime.cpp src/util/time.cpp sed -i 's/<util\.h>/<util\/system\.h>/g' $(git ls-files 'src/*.h' 'src/*.cpp') sed -i 's/<utilmemory\.h>/<util\/memory\.h>/g' $(git ls-files 'src/*.h' 'src/*.cpp') sed -i 's/<utilmoneystr\.h>/<util\/moneystr\.h>/g' $(git ls-files 'src/*.h' 'src/*.cpp') sed -i 's/<utilstrencodings\.h>/<util\/strencodings\.h>/g' $(git ls-files 'src/*.h' 'src/*.cpp') sed -i 's/<utiltime\.h>/<util\/time\.h>/g' $(git ls-files 'src/*.h' 'src/*.cpp') sed -i 's/BITCOIN_UTIL_H/BITCOIN_UTIL_SYSTEM_H/g' src/util/system.h sed -i 's/BITCOIN_UTILMEMORY_H/BITCOIN_UTIL_MEMORY_H/g' src/util/memory.h sed -i 's/BITCOIN_UTILMONEYSTR_H/BITCOIN_UTIL_MONEYSTR_H/g' src/util/moneystr.h sed -i 's/BITCOIN_UTILSTRENCODINGS_H/BITCOIN_UTIL_STRENCODINGS_H/g' src/util/strencodings.h sed -i 's/BITCOIN_UTILTIME_H/BITCOIN_UTIL_TIME_H/g' src/util/time.h sed -i 's/ util\.\(h\|cpp\)/ util\/system\.\1/g' src/Makefile.am sed -i 's/utilmemory\.\(h\|cpp\)/util\/memory\.\1/g' src/Makefile.am sed -i 's/utilmoneystr\.\(h\|cpp\)/util\/moneystr\.\1/g' src/Makefile.am sed -i 's/utilstrencodings\.\(h\|cpp\)/util\/strencodings\.\1/g' src/Makefile.am sed -i 's/utiltime\.\(h\|cpp\)/util\/time\.\1/g' src/Makefile.am sed -i 's/-> util ->/-> util\/system ->/' test/lint/lint-circular-dependencies.sh sed -i 's/src\/util\.cpp/src\/util\/system\.cpp/g' test/lint/lint-format-strings.py test/lint/lint-locale-dependence.sh sed -i 's/src\/utilmoneystr\.cpp/src\/util\/moneystr\.cpp/g' test/lint/lint-locale-dependence.sh sed -i 's/src\/utilstrencodings\.\(h\|cpp\)/src\/util\/strencodings\.\1/g' test/lint/lint-locale-dependence.sh sed -i 's/src\\utilstrencodings\.cpp/src\\util\\strencodings\.cpp/' build_msvc/libbitcoinconsensus/libbitcoinconsensus.vcxproj -END VERIFY SCRIPT-
* | Merge #14454: Add SegWit support to importmultiWladimir J. van der Laan2018-10-311-151/+118
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c11875c5908a17314bb38caa911507dc6401ec49 Add segwit address tests for importmulti (MeshCollider) 201451b1ca3c6db3b13f9491a81db5b120b864bb Make getaddressinfo return solvability (MeshCollider) 1753d217ead7e2de35b3df6cd6573a1c9a068f84 Add release notes for importmulti segwit change (MeshCollider) 353c064596fc2e2c149987ac3b3c11b4c90c4d5f Fix typo in test_framework/blocktools (MeshCollider) f6ed748cf045d7f0d9a49e15cc0c0001610b9231 Add SegWit support to importmulti with some ProcessImport cleanup (MeshCollider) Pull request description: Add support for segwit to importmulti, supports P2WSH, P2WPKH, P2SH-P2WPKH, P2SH-P2WSH. Adds a new `witnessscript` parameter which must be used for the witness scripts in the relevant situations. Also includes some tests for the various import types. ~Also makes the change in #14019 redundant, but cherry-picks the test from that PR to test the behavior (@achow101).~ Fixes #12253, also addresses the second point in #12703, and fixes #14407 Tree-SHA512: 775a755c524d1c387a99acddd772f677d2073876b72403dcfb92c59f9b405ae13ceedcf4dbd2ee1d7a8db91c494f67ca137161032ee3a2071282eeb411be090a
| * | Add SegWit support to importmulti with some ProcessImport cleanupMeshCollider2018-10-251-151/+118
| |/
* / Move boost/std fstream to fsbridgeChun Kuan Lee2018-09-261-5/+4
|/
* Merge #13424: Consistently validate txid / blockhash length and encoding in ↵MarcoFalke2018-09-241-2/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rpc calls 5eb20f81d9 Consistently use ParseHashV to validate hash inputs in rpc (Ben Woosley) Pull request description: ParseHashV validates the length and encoding of the string and throws an informative RPC error on failure, which is as good or better than these alternative calls. Note I switched ParseHashV to check string length first, because IsHex tests that the length is even, and an error like: "must be of length 64 (not 63, for X)" is much more informative than "must be hexadecimal string (not X)" in that case. Split from #13420 Tree-SHA512: f0786b41c0d7793ff76e4b2bb35547873070bbf7561d510029e8edb93f59176277efcd4d183b3185532ea69fc0bbbf3dbe9e19362e8017007ae9d51266cd78ae
| * Consistently use ParseHashV to validate hash inputs in rpcBen Woosley2018-08-071-2/+1
| | | | | | | | | | | | | | | | | | | | | | ParseHashV validates the length and encoding of the string and throws an informative RPC error on failure, which is as good or better than these alternative calls. Note I switched ParseHashV to check string length first, because IsHex tests that the length is even, and an error like: "must be of length 64 (not 63, for X)" is much more informative than "must be hexadecimal string (not X)"