bitcoin/src
Wladimir J. van der Laan a84b056d5f
Merge #12749: [wallet] feebumper: discard change outputs below discard rate
f526046 adapt bumpfee change discard test to be more strict and add note on p2sh discrep (Gregory Sanders)
5805d6f feebumper: discard change outputs below discard rate (Gregory Sanders)

Pull request description:

  The "discard rate" is the concept we use to ensure the wallet isnt creating not so useful just-above-relay dust.

  Outside of bumpfee previous to this PR, and manually creating such an output, the wallet will never make change outputs of that size, preferring to send them to fees instead.

  "Worst case" for the user is that users pay a slightly higher feerate than they were expecting, which is already a possibility with relay dust.

Tree-SHA512: dd69351810dc1709437602e7db1be46e4e905ccd8e16d03952de8b4c1fdbf9cb7e6c99968930896baf6b5c7cb005a03ec0506a2669d22e21e32982e60329606b
2018-04-10 19:35:51 +02:00
..
bench scripted-diff: Rename wallet database classes 2018-04-07 11:48:27 -05:00
compat Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
config
consensus Fix missing or inconsistent include guards 2018-03-22 16:23:04 +01:00
crypto Consensus: Fix bug when compiler do not support __builtin_clz* 2018-03-01 17:20:27 +08:00
interfaces wallet: Remove redundant lambda function arg in handleTransactionChanged 2018-04-10 15:23:37 +02:00
leveldb Bump leveldb subtree 2018-02-16 08:59:28 -05:00
obj
obj-test
policy Merge #12859: Bugfix: Include <memory> for std::unique_ptr 2018-04-05 09:31:53 +02:00
primitives Merge #10498: Use static_cast instead of C-style casts for non-fundamental types 2018-02-07 16:15:28 -05:00
qt Docs: fixed link, replaced QT with Qt 2018-04-09 22:55:36 +02:00
rpc Merge #12007: [Doc] Clarify the meaning of fee delta not being a fee rate in prioritisetransaction RPC 2018-04-09 08:04:10 -04:00
script Merge #12167: Make segwit failure due to CLEANSTACK violation return a SCRIPT_ERR_CLEANSTACK error code 2018-04-04 17:30:24 -07:00
secp256k1 Bump secp256k1 subtree 2017-09-29 16:02:39 +02:00
support Remove duplicate includes 2018-04-09 09:18:49 +02:00
test Merge #12926: Run unit tests in parallel 2018-04-10 14:27:18 +02:00
univalue univalue: Bump subtree 2018-02-10 09:55:54 -05:00
wallet Merge #12749: [wallet] feebumper: discard change outputs below discard rate 2018-04-10 19:35:51 +02:00
zmq Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
.clang-format Merge #10193: scripted-diff: Remove #include <boost/foreach.hpp> 2017-07-04 18:05:18 +02:00
addrdb.cpp Add native support for serializing char arrays without FLATDATA 2018-03-21 14:14:04 -07: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 Fix typos 2018-03-21 10:54:17 +01:00
amount.h Consensus: Policy: MOVEONLY: Move CFeeRate out of the consensus module 2017-05-03 18:00:13 +02:00
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 Move ChainNameFromCommandLine into ArgsManager and rename to GetChainName 2018-04-06 04:46:02 +10:00
bitcoin-tx-res.rc
bitcoin-tx.cpp Move ChainNameFromCommandLine into ArgsManager and rename to GetChainName 2018-04-06 04:46:02 +10:00
bitcoind-res.rc
bitcoind.cpp Merge #12878: [refactor] Config handling refactoring in preparation for network-specific sections 2018-04-08 16:24:30 +02: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 Remove duplicate includes 2018-04-09 09:18:49 +02:00
chainparams.h Disable wallet fallbackfee by default on mainnet 2018-02-25 09:33:46 +08:00
chainparamsbase.cpp Remove duplicate includes 2018-04-09 09:18:49 +02:00
chainparamsbase.h Move ChainNameFromCommandLine into ArgsManager and rename to GetChainName 2018-04-06 04:46:02 +10: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 Add new prevector benchmarks. 2018-02-27 11:42:06 -08: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 Merge #10498: Use static_cast instead of C-style casts for non-fundamental types 2018-02-07 16:15:28 -05:00
core_write.cpp Fix typos 2018-03-21 08:34:44 +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 Add DynamicMemoryUsage() to LevelDB 2018-03-06 00:25:39 -05:00
fs.cpp scripted-diff: Replace #include "" with #include <> (ryanofsky) 2017-11-16 08:23:01 +13:00
fs.h [Trivial] Add BITCOIN_FS_H endif footer in fs.h 2017-05-19 02:01:28 -07:00
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 Merge #12859: Bugfix: Include <memory> for std::unique_ptr 2018-04-05 09:31:53 +02:00
httpserver.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
indirectmap.h prepend license statement to indirectmap 2016-07-27 16:27:07 -07:00
init.cpp added logging line back that was accidentally removed with #10762 2018-04-09 12:21:25 -07:00
init.h wallet: Refactor to WalletInitInterface* const g_wallet_init_interface 2018-04-05 21:09:22 +01: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
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
keystore.cpp Merge #12460: Assert CPubKey::ValidLength to the pubkey's header-relevant size 2018-04-04 17:50:32 -04:00
keystore.h Merge #12762: Make CKeyStore an interface 2018-03-27 20:42:49 +02:00
limitedmap.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
Makefile.am Merge #12886: Introduce Span type and use it instead of FLATDATA 2018-04-08 18:13:49 +02:00
Makefile.bench.include Add new prevector benchmarks. 2018-02-27 11:42:06 -08: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 Remove direct bitcoin calls from qt/splashscreen.cpp 2018-04-04 16:52:40 -04:00
Makefile.test.include Merge #12926: Run unit tests in parallel 2018-04-10 14:27:18 +02: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_processing.cpp Merge #12859: Bugfix: Include <memory> for std::unique_ptr 2018-04-05 09:31:53 +02:00
net_processing.h Remove direct bitcoin calls from qt/peertablemodel.cpp 2018-04-04 16:52:40 -04:00
net.cpp Remove duplicate includes 2018-04-09 09:18:49 +02:00
net.h Polish interfaces around PeerLogicValidation 2018-03-14 10:11:01 +01:00
netaddress.cpp Merge #10498: Use static_cast instead of C-style casts for non-fundamental types 2018-02-07 16:15:28 -05:00
netaddress.h Support serializing Span<unsigned char> and use that instead of FLATDATA 2018-04-05 08:20:37 -07:00
netbase.cpp Remove redundant checks for MSG_* from configure.ac 2018-03-15 20:02:00 +01:00
netbase.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09: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 Add native support for serializing char arrays without FLATDATA 2018-03-21 14:14:04 -07: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 Remove duplicate includes 2018-04-09 09:18:49 +02:00
random.h Merge #12742: Make FastRandomContext support standard C++11 RNG interface 2018-03-22 12:21:46 -04:00
rest.cpp Merge #12717: [REST] Handle UTXO retrieval when ignoring the mempool 2018-03-27 21:32:02 +02:00
reverse_iterator.h Declare single-argument (non-converting) constructors "explicit" 2017-08-16 16:33:25 +02:00
reverselock.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
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 Support serializing Span<unsigned char> and use that instead of FLATDATA 2018-04-05 08:20:37 -07: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 Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
threadinterrupt.h net: add CThreadInterrupt and InterruptibleSleep 2017-01-03 17:53:09 -05:00
threadsafety.h
timedata.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09: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 [logging] Comment all continuing logs. 2018-04-07 12:29:48 -04:00
txdb.h Merge #12859: Bugfix: Include <memory> for std::unique_ptr 2018-04-05 09:31:53 +02:00
txmempool.cpp Merge #11742: rpc: Add testmempoolaccept 2018-04-02 16:02:33 +02:00
txmempool.h Merge #11742: rpc: Add testmempoolaccept 2018-04-02 16:02:33 +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 util: Remove designator initializer from ScheduleBatchPriority 2018-04-09 17:02:19 +02:00
util.h Merge #12878: [refactor] Config handling refactoring in preparation for network-specific sections 2018-04-08 16:24:30 +02: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 Format timestamps using ISO 8601 formatting (e.g. "2018-02-28T12:34:56Z") 2018-03-09 15:02:01 +01:00
utiltime.h Format timestamps using ISO 8601 formatting (e.g. "2018-02-28T12:34:56Z") 2018-03-09 15:02:01 +01:00
validation.cpp Merge #12561: Check for block corruption in ConnectBlock() 2018-04-08 11:08:43 +02:00
validation.h Merge #12859: Bugfix: Include <memory> for std::unique_ptr 2018-04-05 09:31:53 +02:00
validationinterface.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
validationinterface.h Polish interfaces around PeerLogicValidation 2018-03-14 10:11:01 +01: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 wallet: Make WalletInitInterface and DummyWalletInit private 2018-04-05 21:09:21 +01:00
warnings.cpp Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00
warnings.h Increment MIT Licence copyright header year on files modified in 2017 2018-01-03 02:26:56 +09:00