aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/wallet.cpp
Commit message (Collapse)AuthorAgeFilesLines
* really s/Doge/Dis/g this timeTomo Ueda2021-09-021-4/+4
|
* really s/doge/dis/g this timeTomo Ueda2021-09-021-2/+2
|
* fees: remove careless override of -paytxfee in GetMinimumFeePatrick Lodder2021-08-161-8/+13
|
* Adding startup logic where -paytxfee if lower than default, implies ↵michilumin2021-08-111-0/+7
| | | | -mintxfee is also lowered.
* Initial back end framework to separate wallet and relay fees + dust.Michi Lumin2021-07-301-8/+11
|
* Add query options to listunspent rpc callPedro Branco2021-02-221-8/+42
|
* Drop use of smart feesRoss Nicoll2019-03-171-1/+3
| | | | | Drop use of smart fees when calculating transaction fees. Dogecoin fees are intentionally on a fixed schedule.
* Clean up RPC tests (#1465)Ross Nicoll2018-09-191-2/+0
| | | | | | | | | | * Enable full block tests * Fix invalidblocktest * Move watch only address funding to immediately before it's used, so node 0 doesn't spend the output before it checks it later. * Fix `fundrawtransaction` tests and sanitize fee calculation at the same time * Correct resolution of chain parameters when validating tx inputs, especially from previous coinbase transactions * Set block versions on full block tests so that the generated blocks are AuxPoW compatible
* Bring 1.14 fees in line with 1.10 (#1425)Ross Nicoll2018-09-191-6/+2
| | | | | | * Disable free transactions * Updating remaining fee calculation constants * Round up to the nearest 1k, not up 1k so the UI fee estimator is correct
* Add Dogecoin current fee calculation logic (#1413)Ross Nicoll2018-09-191-7/+18
| | | Introduces 1 COIN/kb fees, rounded up to the next 1 COIN.
* Verify when doing 'backupwallet' that destination is not the same path of ↵Lola Dam2018-09-191-5/+10
| | | | the original wallet.dat file. (#1406)
* Modify chain consensus parameters to be height aware (#1396)Ross Nicoll2018-09-191-1/+1
| | | | | | | | | * Modify chain consensus parameters to be height aware * Correct implementation of simplified rewards in parameters * Correct max money * Use base block version in IsSuperMajority() instead of full version * Correct mining of blocks in AuxPoW tests * Add in missing pre-AuxPoW consensus checks
* Merge AuxPoW support from NamecoreRoss Nicoll2018-09-191-43/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes are as below: Wrap CBlockHeader::nVersion into a new class (CBlockVersion). This allows to take care of interpreting the field into a base version, auxpow flag and the chain ID. Update getauxblock.py for new 'generate' RPC call. Add 'auxpow' to block JSON. Accept auxpow as PoW verification. Add unit tests for auxpow verification. Add check for memory-layout of CBlockVersion. Weaken auxpow chain ID checks for the testnet. Allow Params() to overrule when to check the auxpow chain ID and for legacy blocks. Use this to disable the checks on testnet. Introduce CPureBlockHeader. Split the block header part that is used by auxpow and the "real" block header (that uses auxpow) to resolve the cyclic dependency between the two. Differentiate between uint256 and arith_uint256. This change was done upstream, modify the auxpow code. Add missing lock in auxpow_tests. Fix REST header check for auxpow headers. Those can be longer, thus take that into account. Also perform the check actually on an auxpow header. Correctly set the coinbase for getauxblock results. Call IncrementExtraNonce in getauxblock so that the coinbase is actually initialised with the stuff it should be. (BIP30 block height and COINBASE_FLAGS.) Implement getauxblock plus regression test. Turn auxpow test into FIXTURE test. This allows using of the Params() calls. Move CMerkleTx code to auxpow.cpp. Otherwise we get linker errors when building without wallet. Fix rebase with BIP66. Update the code to handle BIP66's nVersion=3. Enforce that auxpow parent blocks have no auxpow block version. This is for compatibility with namecoind. See also https://github.com/namecoin/namecoin/pull/199. Move auxpow-related parameters to Consensus::Params.
* [wallet] Make sure pindex is non-null before possibly referencing in ↵Karl-Johan Alm2017-06-051-4/+4
| | | | | | | LogPrintf call. Github-Pull: #10265 Rebased-From: c36ea693ee16611e0337aec682d1ce80b90e1bd3
* [Wallet] unset change position when there is no change on exact matchGregory Sanders2017-05-311-2/+3
|
* Return errors from importmulti if complete rescans are not successfulRussell Yanofsky2017-02-221-8/+15
| | | | | Github-Pull: #9773 Rebased-From: e2e2f4c856363bbb0e3b5ba4df225f3754c3db39
* Use importmulti timestamp when importing watch only keysRussell Yanofsky2017-02-101-9/+18
| | | | | | | | | | | | | When importing a watch-only address over importmulti with a specific timestamp, the wallet's nTimeFirstKey is currently set to 1. After this change, the provided timestamp will be used and stored as metadata associated with watch-only key. This can improve wallet performance because it can avoid the need to scan the entire blockchain for watch only addresses when timestamps are provided. Also adds timestamp to validateaddress return value (needed for tests). Fixes #9034.
* Dedup nTimeFirstKey update logicRussell Yanofsky2017-02-101-5/+14
| | | | | | | Also make nTimeFirstKey member variable private. This is just a cleanup change, it doesn't change behavior in any significant way.
* Merge #9227: Make nWalletDBUpdated atomic to avoid a potential race.Wladimir J. van der Laan2017-02-061-1/+1
|\ | | | | | | d63ff62 Make nWalletDBUpdated atomic to avoid a potential race. (Patrick Strateman)
| * Make nWalletDBUpdated atomic to avoid a potential race.Patrick Strateman2016-12-211-1/+1
| |
* | wallet: Refactor dummy signature signing for reusabilitySuhas Daftuar2017-01-301-15/+3
| |
* | Merge #9615: Wallet incremental feeWladimir J. van der Laan2017-01-301-2/+7
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4b189c1 Change bumpfee result value from 'oldfee' to 'origfee'. (Alex Morcos) 0c0c63f Introduce WALLET_INCREMENTAL_RELAY_FEE (Alex Morcos) e8021ec Use CWallet::GetMinimumFee in bumpfee (Alex Morcos) ae9719a Refactor GetMinimumFee to give option of providing targetFee (Alex Morcos) fe8e8ef [rpc] Add incremental relay fee to getnetworkinfo (Alex Morcos) 6b331e6 Fix to have miner test aware of new separate block min tx fee (Alex Morcos) de6400d Fix missing use of dustRelayFee (Alex Morcos) 5b15870 Use incrementalRelayFee for BIP 125 replacement (Alex Morcos)
| * | Refactor GetMinimumFee to give option of providing targetFeeAlex Morcos2017-01-251-2/+7
| | |
* | | [trivial] Fix typos in commentspracticalswift2017-01-271-1/+1
| | |
* | | Better document usage of SyncTransactionAlex Morcos2017-01-231-2/+10
| | |
* | | Merge #9377: fundrawtransaction: Keep change-output keys by default, make it ↵Wladimir J. van der Laan2017-01-201-1/+5
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | optional c9f3062 Add fundrawtransactions new reserveChangeKey option to the release notes (Jonas Schnelli) 9eb325d [QA] Add test for fundrawtransactions new reserveChangeKey option (Jonas Schnelli) 9aa4e6a [Wallet] Add an option to keep the change address key, true by default (Jonas Schnelli)
| * | [Wallet] Add an option to keep the change address key, true by defaultJonas Schnelli2017-01-191-1/+5
| | |
* | | Merge #8456: [RPC] Simplified bumpfee command.Wladimir J. van der Laan2017-01-191-0/+90
|\ \ \ | |/ / |/| | | | | | | | | | | cc0243a [RPC] bumpfee (mrbandrews) 52dde66 [wallet] Add include_unsafe argument to listunspent RPC (Russell Yanofsky) 766e8a4 [wallet] Add IsAllFromMe: true if all inputs are from wallet (Suhas Daftuar)
| * | [RPC] bumpfeemrbandrews2017-01-191-0/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This command allows a user to increase the fee on a wallet transaction T, creating a "bumper" transaction B. T must signal that it is BIP-125 replaceable. T's change output is decremented to pay the additional fee. (B will not add inputs to T.) T cannot have any descendant transactions. Once B bumps T, neither T nor B's outputs can be spent until either T or (more likely) B is mined. Includes code by @jonasschnelli and @ryanofsky
| * | [wallet] Add IsAllFromMe: true if all inputs are from walletSuhas Daftuar2017-01-101-0/+23
| | |
* | | Merge #9499: Use recent-rejects, orphans, and recently-replaced txn for ↵Wladimir J. van der Laan2017-01-191-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | compact-block-reconstruction c594580 Add braces around AddToCompactExtraTransactions (Matt Corallo) 1ccfe9b Clarify comment about mempool/extra conflicts (Matt Corallo) fac4c78 Make PartiallyDownloadedBlock::InitData's second param const (Matt Corallo) b55b416 Add extra_count lower bound to compact reconstruction debug print (Matt Corallo) 863edb4 Consider all (<100k memusage) txn for compact-block-extra-txn cache (Matt Corallo) 7f8c8ca Consider all orphan txn for compact-block-extra-txn cache (Matt Corallo) 93380c5 Use replaced transactions in compact block reconstruction (Matt Corallo) 1531652 Keep shared_ptrs to recently-replaced txn for compact blocks (Matt Corallo) edded80 Make ATMP optionally return the CTransactionRefs it replaced (Matt Corallo) c735540 Move ORPHAN constants from validation.h to net_processing.h (Matt Corallo)
| * | | Make ATMP optionally return the CTransactionRefs it replacedMatt Corallo2017-01-091-1/+1
| |/ /
* | | Merge #9380: Separate different uses of minimum feesWladimir J. van der Laan2017-01-161-5/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | eb30d1a Introduce -dustrelayfee (Alex Morcos) 7b1add3 Introduce -incrementalrelayfee (Alex Morcos) daec955 Introduce -blockmintxfee (Alex Morcos)
| * | | Introduce -dustrelayfeeAlex Morcos2017-01-161-5/+5
| | | |
* | | | Merge #9222: Add 'subtractFeeFromAmount' option to 'fundrawtransaction'.Wladimir J. van der Laan2017-01-121-3/+8
|\ \ \ \ | | | | | | | | | | | | | | | 453bda6 Add 'subtractFeeFromOutputs' option to 'fundrawtransaction'. (Chris Moore)
| * | | | Add 'subtractFeeFromOutputs' option to 'fundrawtransaction'.Chris Moore2016-12-131-3/+8
| | | | |
* | | | | Merge #9472: Disentangle progress estimation from checkpoints and update itWladimir J. van der Laan2017-01-121-4/+4
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | df36371 Update estimated transaction count data (Pieter Wuille) e356d9a Shorten variable names and switch to tx/s (Pieter Wuille) 6dd8116 Remove SIGCHECK_VERIFICATION_FACTOR (Pieter Wuille) 3641141 Move tx estimation data out of CCheckPointData (Pieter Wuille) a4bac66 [MOVEONLY] Move progress estimation out of checkpoints (Pieter Wuille)
| * | | | Remove SIGCHECK_VERIFICATION_FACTORPieter Wuille2017-01-041-3/+3
| | | | |
| * | | | Move tx estimation data out of CCheckPointDataPieter Wuille2017-01-041-4/+4
| | | | |
| * | | | [MOVEONLY] Move progress estimation out of checkpointsPieter Wuille2017-01-041-4/+4
| | |/ / | |/| |
* | | | Don't overpay fee if we have selected new coins that result in a smaller ↵Alex Morcos2017-01-061-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | transaction. On repeated calls to SelectCoins we try to meet the fee necessary for the last transaction, the new fee required might be smaller, so increase our change by the difference if we can.
* | | | Try to reduce change output to make needed fee in CreateTransactionAlex Morcos2017-01-061-0/+12
| | | | | | | | | | | | | | | | Once we've picked coins and dummy-signed the transaction to calculate fee, if we don't have sufficient fee, then try to meet the fee by reducing change before resorting to picking new coins.
* | | | Merge #9138: Improve fee estimationPieter Wuille2017-01-051-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 44b64b9 Fix edge case with stale fee estimates (Alex Morcos) 78ae62d Add clarifying comments to fee estimation (Alex Morcos) 5fe0f47 Add extra logging to processBlock in fee estimation. (Alex Morcos) dc008c4 Add IsCurrentForFeeEstimatation (Alex Morcos) ebafdca Pass pointers to existing CTxMemPoolEntries to fee estimation (Alex Morcos) d825838 Always update fee estimates on new blocks. (Alex Morcos) 6f06b26 rename bool to validFeeEstimate (Alex Morcos) 84f7ab0 Remove member variable hadNoDependencies from CTxMemPoolEntry (Alex Morcos) 60ac00d Don't track transactions at all during IBD. (Alex Morcos) 4df4479 Remove extraneous LogPrint from fee estimation (Alex Morcos)
| * | | | Remove member variable hadNoDependencies from CTxMemPoolEntryAlex Morcos2017-01-041-1/+1
| |/ / / | | | | | | | | | | | | Fee estimation can just check its own mapMemPoolTxs to determine the same information. Note that now fee estimation for block processing must happen before those transactions are removed, but this shoudl be a speedup.
* | | | Merge #9465: [Wallet] Do not perform ECDSA signing in the fee calculation ↵Pieter Wuille2017-01-051-31/+46
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | inner loop. b3d7b1c Wallet: Do not perform ECDSA in the fee calculation inner loop. (Gregory Maxwell)
| * | | Wallet: Do not perform ECDSA in the fee calculation inner loop.Gregory Maxwell2017-01-051-31/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Performing signing in the inner loop has terrible performance when many passes through are needed to complete the selection. Signing before the algorithm is complete also gets in the way of correctly setting the fee (e.g. preventing over-payment when the fee required goes down on the final selection.) Use of the dummy might overpay on the signatures by a couple bytes in uncommon cases where the signatures' DER encoding is smaller than the dummy: Who cares?
* | | | Merge #9283: A few more CTransactionRef optimizationsWladimir J. van der Laan2017-01-041-2/+2
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 91335ba Remove unused MakeTransactionRef overloads (Pieter Wuille) 6713f0f Make FillBlock consume txn_available to avoid shared_ptr copies (Pieter Wuille) 62607d7 Convert COrphanTx to keep a CTransactionRef (Pieter Wuille) c44e4c4 Make AcceptToMemoryPool take CTransactionRef (Pieter Wuille)
| * | | | Make AcceptToMemoryPool take CTransactionRefPieter Wuille2016-12-211-2/+2
| | | | |
* | | | | Merge #9450: Increment MIT licence copyright header year on files modified ↵Wladimir J. van der Laan2017-01-041-1/+1
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | in 2016 27765b6 Increment MIT Licence copyright header year on files modified in 2016 (isle2983)
| * | | | Increment MIT Licence copyright header year on files modified in 2016isle29832016-12-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Edited via: $ contrib/devtools/copyright_header.py update .