aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-03-07Return correct error codes in blockchain.cpp.John Newbery
RPCs in blockchain.cpp were returning misleading or incorrect error codes (for example getblock() returning RPC_INTERNAL_ERROR when the block had been pruned). This commit fixes those error codes: - RPC_INTERNAL_ERROR should not be returned for application-level errors, only for genuine internal errors such as corrupted data. - RPC_METHOD_NOT_FOUND should not be returned in response to a JSON request for an existing method. Those error codes have been replaced with RPC_MISC_ERROR or RPC_INVALID_PARAMETER as appropriate.
2017-03-07Return correct error codes in bumpfee().John Newbery
The bumpfee() RPC was returning misleading or incorrect error codes (for example RPC_INVALID_ADDRESS_OR_KEY when the transaction was not BIP125 replacable). This commit fixes those error codes: - RPC_INVALID_ADDRESS_OR_KEY if an invalid address was provided: - Invalid change address given - RPC_INVALID_PARAMETER if a single (non-address/key) parameter is incorrect - confTarget and totalFee options should not both be set. - Invalid confTarget - Insufficient totalFee (cannot be less than required fee) - RPC_WALLET_ERROR for any other error - Transaction has descendants in the wallet - Transaction has descendants in the mempool - Transaction has been mined, or is conflicted with a mined transaction - Transaction is not BIP 125 replaceable - Transaction has already been bumped - Transaction contains inputs that don't belong to the wallet - Transaction has multiple change outputs - Transaction does not have a change output - Fee is higher than maxTxFee - New fee rate is less than the minimum fee rate - Change output is too small. This commit also updates the test cases to explicitly test the error code.
2017-03-07Merge #9548: Remove min reasonable feeWladimir J. van der Laan
ad82cb0 Remove unnecessary min fee argument in CTxMemPool constructor (Alex Morcos) 2a7b56c CBlockPolicyEstimator now uses hard coded minimum bucket feerate (Alex Morcos) ac9d3d2 Change fee estimation bucket limit variable names (Alex Morcos) Tree-SHA512: 6e3bc7df3497ed60c7620845d222063e33a0238020f5c3316e61e0eff758078588ea8dd51196ceb59aa561ba106f8cdae62cebe521adb3247108bb49f15252d6
2017-03-07Merge #9602: Remove coin age priority and free transactions - implementationWladimir J. van der Laan
b421e6d Update example bitcoin.conf (Alex Morcos) 7d4e950 Allow setting minrelaytxfee to 0 (Alex Morcos) 359e8a0 [cleanup] Remove coin age priority completely. (Alex Morcos) f9b9371 [rpc] Remove priorityDelta from prioritisetransaction (Alex Morcos) 49be7e1 [rpc] Remove priority information from mempool RPC calls (Alex Morcos) 0315888 [test] Remove priority from tests (Alex Morcos) f838005 No longer allow "free" transactions (Alex Morcos) ad727f4 [rpc] sendrawtransaction no longer bypasses minRelayTxFee (Alex Morcos) fe282ac [cleanup] Remove estimatePriority and estimateSmartPriority (Alex Morcos) 400b151 [debug] Change -printpriority option (Alex Morcos) 272b25a [mining] Remove -blockprioritysize. (Alex Morcos) 12839cd [rpc] Remove estimatepriority and estimatesmartpriority. (Alex Morcos) ddf58c7 wallet: Remove sendfree (MarcoFalke) Tree-SHA512: a9a4499405923ce794ef18f9e334dbbd59dfc73a3dc2df6f85cc9c62af6f353ec2eed9c2d5e58e904f918d0d7ab738f403dd4939d9bc2276136864fe63710782
2017-03-07Merge #9369: Factor out CWallet::nTimeSmart computation into a method.Wladimir J. van der Laan
630fc54 Clean up braces in CWallet::ComputeTimeSmart (Russell Yanofsky) 6c996c2 Add documentation describing CWallet::nTimeSmart. (Russell Yanofsky) 1f98abe Factor out CWallet::nTimeSmart computation into a method. (Russell Yanofsky) c6b82d1 Add tests for CWalletTx::nTimeSmart (Russell Yanofsky) Tree-SHA512: 457a30251e572cf20dac0198af1a94128d269b1e0ce6605a213d56fc14d85c84a0a494e3dcbb18c201c4f39e6f7b000bd9cb6f283930d8452e4bb93ba406f8d4
2017-03-07Merge #9912: Optimize GetWitnessHash() for non-segwit transactionsWladimir J. van der Laan
02c57b5 Optimize GetWitnessHash() for non-segwit transactions (Suhas Daftuar) Tree-SHA512: 405d07c11930f3432ae25b11232466a30ba2339be98e0fb5149934d792e014f504fedbe62b9c8e5febbbdad459bd1573ea896e527b9aa591926bbc774b895e6a
2017-03-07Merge #9605: Use CScheduler for wallet flushing, remove ThreadFlushWalletDBWladimir J. van der Laan
0235be1 Rename FlushWalletDB -> CompactWalletDB, add function description (Matt Corallo) 735d9b5 Use CScheduler for wallet flushing, remove ThreadFlushWalletDB (Matt Corallo) 73296f5 CScheduler boost->std::function, use millisecs for times, not secs (Matt Corallo) Tree-SHA512: c04f97beab65706c444c126be229d02887df9b0972d8fb15ca1f779ef0e628cf7ecef2bf533c650d9b44645b63e01de22f17266a05907e778938d64cc6e19de6
2017-03-07devtools: Fix a syntax error typoWladimir J. van der Laan
Fix a typo introduced in #9880 causing the script to not even parse.
2017-03-07Merge #9932: Fix verify-commits on travis and always check top commit's treeWladimir J. van der Laan
b3ec305 Fix bashisms in verify-commits and always check top commit's tree (Matt Corallo) f20e664 Check gpg version before setting --weak-digest (Matt Corallo) Tree-SHA512: f87247008ae6a265e3fd371f00aec0e84f1feb713bf5859eab139a88a4e205e1f26de7b510bcc2c3ab538d5443978a48ec920d25b52b9601e625d198fa2d725f
2017-03-07Merge #9555: [test] Avoid reading a potentially uninitialized variable in ↵MarcoFalke
tx_invalid-test (transaction_tests.cpp) 8455e36 [test] Avoid reading a potentially uninitialized variable in tx_invalid-test (practicalswift) Tree-SHA512: 1064cdd5c9e4612a05397a5880535d93dbb18dec4897b4bbda9e6ad78d30f4c72303e4d23159398f1b33545ff5819e739e374d7cde757e402b26c355268a2319
2017-03-06Rename FlushWalletDB -> CompactWalletDB, add function descriptionMatt Corallo
2017-03-06Use CScheduler for wallet flushing, remove ThreadFlushWalletDBMatt Corallo
2017-03-06CScheduler boost->std::function, use millisecs for times, not secsMatt Corallo
2017-03-06Fix bashisms in verify-commits and always check top commit's treeMatt Corallo
2017-03-06Check gpg version before setting --weak-digestMatt Corallo
2017-03-06Merge #9906: Disallow copy constructor CReserveKeysWladimir J. van der Laan
188f89c Disallow copy of CReserveKeys (Gregory Sanders) Tree-SHA512: e55ce10bf7f2dc91de9797e60ab7767fb51f25255995d62ddf358c52b7aaa23c26fbfb522e1610ff950b86804ddbc38dc0d7708bfab2c4d33ad99a275d8c77db
2017-03-06Merge #9929: tests: Delete unused function _rpchost_to_argsWladimir J. van der Laan
99fecf8 tests: Delete unused function _rpchost_to_args (Wladimir J. van der Laan) Tree-SHA512: 40911d048d3fd7b3ce83e9b3caf2a409d55b47cbe08ea4450a16ca72264300bb12d5ef7dbcf335885975119b5977f949e6879546840064138fb506e24494d849
2017-03-06Merge #9843: Fix segwit getblocktemplate testWladimir J. van der Laan
b23dcd2 Fix segwit getblocktemplate test. (John Newbery) Tree-SHA512: db87a99432397bd9aa3b66580a92a69467aa4c8a9e3a191629429f80137a59f6ecb13d129d880ebe404d903e13b153aca3ca99e3b1a94e171a4b8a50fb690f3f
2017-03-06Merge #9880: Verify Tree-SHA512s in merge commits, enforce sigs are not SHA1Wladimir J. van der Laan
bbd7579 Fix regsig checking for subkey sigs in verify-commits (Matt Corallo) d025bc7 Allow any subkey in verify-commits (Matt Corallo) eddc77a Add comment re: why SHA1 is disabled (Peter Todd) d9c450f Verify Tree-SHA512s in merge commits, enforce sigs are not SHA1 (Matt Corallo) be908a6 Fail merge if there are any symlinks (Matt Corallo) Tree-SHA512: bb66c59cc1c6b1c86d7d8be7adb0769c6598c0e28ad927409941f30af87d390521e82fc13700ee22e92db1bd571db3e19a152ec7b2c0349c6e06f5de62c0b65f
2017-03-06tests: Delete unused function _rpchost_to_argsWladimir J. van der Laan
This function has been unused ever since the RPC tests no longer use `bitcoin-cli`.
2017-03-06Disallow copy of CReserveKeysGregory Sanders
2017-03-06Merge #8574: [Wallet] refactor CWallet/CWalletDB/CDBWladimir J. van der Laan
7184e25 [Wallet] refactor CWallet/CWalletDB/CDB (Jonas Schnelli) Tree-SHA512: a1993dcfc3505459613e8be3f6560ef32466fd7c649bff358f12af118e633aadd648a090f4af60743a827c9cb624e4ec63eb0202326da4779fc18249bb77da1e
2017-03-06[Wallet] refactor CWallet/CWalletDB/CDBJonas Schnelli
Try to hide CDB/bitdb behinde CWalletDB. Prepare for full wallet database abstraction.
2017-03-06Merge #9333: Document CWalletTx::mapValue entries and remove erase of ↵Wladimir J. van der Laan
nonexistent "version" entry. 87ed396 [trivial] Add comment documenting bumpfee mapValues (Russell Yanofsky) a1fe944 Remove reference to nonexistent "version" wallet transaction mapvalue field (Russell Yanofsky) 654e044 [trivial] Add comment documenting CWalletTx::mapValue (Russell Yanofsky) Tree-SHA512: 1fd1860e345c59b13634db2007fff4ba30aaf1f177fdd765f47bf9257fac117cdcd5d491424416da304c08e85effbb27f3424f072f7c9587ef39cb98531b932a
2017-03-06Merge #9547: bench: Assert that division by zero is unreachableWladimir J. van der Laan
db07f91 Assert that what might look like a possible division by zero is actually unreachable (practicalswift) Tree-SHA512: f1652eb37196a5b72f356503a1fbb44fb98aa8a94954ad1765f86d81ebf41a2337d4eb58c4f19937fda3752f5d2d642756e44afdbd438015b87ac20801246bff
2017-03-06Merge #9739: Fix BIP68 activation testWladimir J. van der Laan
f5aba8a Move tx version 2 standardness check to after bip68 activation (John Newbery) 99c0e81 Fix BIP68 activation test (John Newbery) Tree-SHA512: 3633d5359705b33a22cd3d8ea28f41abd93ccc6fe9943c8004f6149add991771df9ea12b4e14192e39e14b414bb5ecc7218e516cfeec97e4c5df29778ac57060
2017-03-06Merge #9832: [qa] assert_start_raises_init_errorWladimir J. van der Laan
025dec0 [qa] assert_start_raises_init_error (NicolasDorier) Tree-SHA512: 0fe3ecbd47625b181aed92f15445ac26993e1a8b9843bbc1088c4adcea774e503b870912a18e13dca3f255c22a9964c1c0ca92c758907538143f316c5272ea4a
2017-03-06Merge #9908: Define 7200 second timestamp window constantWladimir J. van der Laan
e57a1fd Define 7200 second timestamp window constant (Russell Yanofsky) Tree-SHA512: 449d20e4fd23905cd96be36f717c55a0a2360aba1002aaf55a3699cce4a41f6e94acc2fbe511a93c5cbe8f8e68386995a76cad67620ebb66ba9283e6080ab567
2017-03-06Merge #9576: [wallet] Remove redundant initializationWladimir J. van der Laan
343ba8f [wallet] Remove redundant initialization (practicalswift) Tree-SHA512: 54b94d7703b1735cb1ae0bd7eba61ca9d2f18e20b70e46c94aa3b0653495dce4fdea00cf953ec08215b96b5792eabb8b38c3f9b3cd36e52b82fcb2f1fd8a3540
2017-03-06[qa] assert_start_raises_init_errorNicolasDorier
2017-03-05Fix regsig checking for subkey sigs in verify-commitsMatt Corallo
2017-03-05Merge #9905: [contrib] gh-merge: Move second sha512 check to the endWladimir J. van der Laan
fa7da3f [contrib] gh-merge: Move second sha512 check to before signing (MarcoFalke) Tree-SHA512: b3d96f928a013f6fdc416035b8ef5cd7c750ab0922156e1fd712cd27ec75847497109f43a96559b945ba11ad43b5644ed9c1de695590ff608658628fb57b1571
2017-03-04Allow any subkey in verify-commitsMatt Corallo
2017-03-04Add comment re: why SHA1 is disabledPeter Todd
2017-03-04Verify Tree-SHA512s in merge commits, enforce sigs are not SHA1Matt Corallo
2017-03-03Update example bitcoin.confAlex Morcos
2017-03-03Allow setting minrelaytxfee to 0Alex Morcos
Setting minrelaytxfee to 0 will allow all transactions regardless of fee to enter your mempool until it reaches its size limit. However now that mempool limiting is governed by a separate incrementalrelay fee, it is an unnecessary restriction to prevent a minrelaytxfee of 0.
2017-03-03[cleanup] Remove coin age priority completely.Alex Morcos
Remove GetPriority and ComputePriority. Remove internal machinery for tracking priority in CTxMemPoolEntry.
2017-03-03[rpc] Remove priorityDelta from prioritisetransactionAlex Morcos
This a breaking API change to the prioritisetransaction RPC call which previously required exactly three arguments and now requires exactly two (hash and feeDelta). The function prioritiseTransaction is also updated.
2017-03-03[rpc] Remove priority information from mempool RPC callsAlex Morcos
"startingpriority" and "currentpriority" are no longer returned in the JSON information about a mempool entry. This affects getmempoolancestors, getmempooldescendants, getmempooolentry, and getrawmempool.
2017-03-03[test] Remove priority from testsAlex Morcos
Remove all coin age priority functionality from unit tests and RPC tests.
2017-03-03No longer allow "free" transactionsAlex Morcos
Remove -limitfreerelay and always enforce minRelayTxFee in the mempool (except from disconnected blocks) Remove -relaypriority, the option was only used for the ability to allow free transactions to be relayed regardless of their priority. Both notions no longer apply.
2017-03-03Define 7200 second timestamp window constantRussell Yanofsky
2017-03-03Optimize GetWitnessHash() for non-segwit transactionsSuhas Daftuar
2017-03-03Clean up braces in CWallet::ComputeTimeSmartRussell Yanofsky
2017-03-03Merge #9910: Docs: correct and elaborate -rpcbind docWladimir J. van der Laan
e5b449c Docs: correct and elaborate -rpcbind doc (Ian Kelling) Tree-SHA512: e1cdaa32f7248f304d463e3f37d7d5da23ee0e506bd453420b87f4cc9c704cc30214e41c9266294890d65f2ee270f9355f38b542e8c01452637bdbba8273c755
2017-03-03Add documentation describing CWallet::nTimeSmart.Russell Yanofsky
Most of the text comes from the 2012 Luke Dashjr <luke-jr+git@utopios.org> c3f95ef commit message.
2017-03-03Factor out CWallet::nTimeSmart computation into a method.Russell Yanofsky
No change in behavior, this change just pulls some code out of CWallet::AddToWallet that was making it very long into a separate method.
2017-03-03Add tests for CWalletTx::nTimeSmartRussell Yanofsky
2017-03-03Merge #9774: Enable host lookups for -proxy and -onion parametersWladimir J. van der Laan
f36bdf0 Enable host lookups for -proxy and -onion parameters (Johnathan Corgan) Tree-SHA512: 40f5ef3954721333e58d34653874d9f6ac5426c817762d132838f3b6f968ca5ca05aa56d02fd742cb5a8dc040f1a28dad6d54f667342eceba62fb2af18b58fc0