neobytes/src
Alexander Block 4d3518fe04 Refactor MN payee logic in preparation for DIP3 (#2215)
* Refactor block payee filling/validation

1. Move out old budget validation into it's own function (IsOldBudgetBlockValueValid)
2. Refactor IsBlockValueValid to bail out early instead of using deep
   nested if/else blocks. IMHO, I feel that this makes the code much easier
   to read and less error prone.
3. Refactor/rename CreateSuperblock and CMasternodePayments::FillBlockPayee
   to be getters without actually modifying the coinbase TX. The coinbase
   is now only modified from the global FillBlockPayments function. Makes
   later changes in DIP3 easier (allowing superblock and MN rewards in same block)

* Use __func__ for logging in block payee code

* Fix code style nit
2018-08-12 18:27:09 +03:00
..
bench Add string_cast benchmark (#2073) 2018-05-26 21:02:49 +03:00
compat Move to in-docker CI builds and add Jenkins support (#2178) 2018-07-12 16:28:59 +03:00
config
consensus Network-specific thresholds for required confirmations (IS) (#1962) 2018-03-10 15:35:09 +03:00
crypto Merge #9512: Fix various things -fsanitize complains about 2018-01-21 12:48:33 +01:00
leveldb Merge #8613: LevelDB 1.19 2018-01-17 17:31:11 +01:00
obj
obj-test
policy Revert "Merge #7542: Implement "feefilter" P2P message" (#2025) 2018-04-11 18:16:43 +03:00
primitives Move block template specific stuff from CBlock to CBlockTemplate (#2195) 2018-07-28 16:51:29 +03:00
qt Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
rpc Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
script Merge #9643: [refactor] Remove using namespace <xxx> from wallet/ & util* 2018-02-21 22:32:13 +03:00
secp256k1 Merge #9334: Update to latest libsecp256k1 2018-01-17 17:31:12 +01:00
support Merge #10308: [wallet] Securely erase potentially sensitive keys/values 2018-01-26 12:59:29 +01:00
test Only use version 1 and 2 transactions for sighash_tests (#2219) 2018-08-11 01:36:36 +03:00
univalue Merge #8863: univalue: Pull subtree 2018-01-12 09:57:56 +01:00
wallet Remove dummy confirmations in RPC API and GUI for InstantSend transactions (#2040) 2018-07-28 19:39:37 +03:00
zmq Implement Governance ZMQ notification messages (#2160) 2018-07-12 12:06:30 +03:00
.clang-format Merge #9649: [doc] Remove unused clang format dev script 2018-01-23 09:24:26 +01:00
activemasternode.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
activemasternode.h Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
addrdb.cpp Merge #9216: Doc: Fix copypasted comment 2018-01-17 17:25:36 +01:00
addrdb.h Merge #9039: Various serialization simplifcations and optimizations 2018-01-15 06:14:15 +01:00
addressindex.h
addrman.cpp A few devnet related fixes (#2168) 2018-07-08 00:19:33 +03:00
addrman.h A few devnet related fixes (#2168) 2018-07-08 00:19:33 +03:00
alert.cpp Remove remaining using namespace std 2018-02-21 22:32:13 +03:00
alert.h Drop BOOST_FOREACH and use references in loops (const ref where applicable, Dash code only) (#1899) 2018-02-06 14:09:33 +03:00
amount.cpp Merge #7796: [amount] Add support for negative fee rates 2017-12-20 14:58:27 +01:00
amount.h Merge #9039: Various serialization simplifcations and optimizations 2018-01-15 06:14:15 +01:00
arith_uint256.cpp Merge #8675: Make copyright header lines uniform 2018-01-13 13:44:39 +01:00
arith_uint256.h Merge #8675: Make copyright header lines uniform 2018-01-13 13:44:39 +01:00
base58.cpp
base58.h Merge #9510: [trivial] Fix typos in comments 2018-01-21 12:48:34 +01:00
bip39_english.h
bip39.cpp Use GetStrongRandBytes in CMnemonic::Generate 2017-12-22 06:00:51 +01:00
bip39.h
blockencodings.cpp Backport compact blocks functionality from bitcoin (#1966) 2018-04-11 14:06:01 +03:00
blockencodings.h Backport compact blocks functionality from bitcoin (#1966) 2018-04-11 14:06:01 +03:00
bloom.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
bloom.h Merge #9039: Various serialization simplifcations and optimizations 2018-01-15 06:14:15 +01:00
cachemap.h Various fixes and refactoring for Cache*Map classes (#1896) 2018-02-06 14:08:43 +03:00
cachemultimap.h Various fixes and refactoring for Cache*Map classes (#1896) 2018-02-06 14:08:43 +03:00
chain.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
chain.h Merge #9490: Replace FindLatestBefore used by importmuti with FindEarliestAtLeast. 2018-01-21 12:48:32 +01:00
chainparams.cpp Some useful commits from the DIP3 PR in regard to integration tests (#2218) 2018-08-11 01:36:17 +03:00
chainparams.h Some useful commits from the DIP3 PR in regard to integration tests (#2218) 2018-08-11 01:36:17 +03:00
chainparamsbase.cpp Multiple devnet fixes (#1960) 2018-03-02 16:12:31 +03:00
chainparamsbase.h Implement named devnets (#1791) 2017-12-20 14:45:01 +03:00
chainparamsseeds.h Use masternode list to generate hardcoded seeds (#1892) 2018-02-05 18:39:26 +03:00
checkpoints.cpp Merge #9472: Disentangle progress estimation from checkpoints and update it 2018-01-21 12:48:32 +01:00
checkpoints.h Merge #9472: Disentangle progress estimation from checkpoints and update it 2018-01-21 12:48:32 +01:00
checkqueue.h Merge #9497: CCheckQueue Unit Tests 2018-01-26 12:59:29 +01:00
clientversion.cpp [GUI] Create QR-code for Masternode private key (#1970) 2018-03-08 15:17:34 +03:00
clientversion.h Bump to 0.12.4.0 pre-release (#2167) 2018-07-12 12:01:10 +03:00
coins.cpp Few (mostly trivial) cleanups and fixes (#1940) 2018-02-21 19:32:08 +03:00
coins.h Few (mostly trivial) cleanups and fixes (#1940) 2018-02-21 19:32:08 +03:00
compat.h Merge #9224: Prevent FD_SETSIZE error building on OpenBSD 2018-01-17 17:27:24 +01:00
compressor.cpp
compressor.h Merge #9039: Various serialization simplifcations and optimizations 2018-01-15 06:14:15 +01:00
core_io.h Merge #9282: CMutableTransaction is defined as struct 2018-01-17 17:31:12 +01:00
core_memusage.h Merge #9125: Make CBlock a vector of shared_ptr of CTransactions 2018-01-15 06:14:16 +01:00
core_read.cpp Merge #9650: Better handle invalid parameters to signrawtransaction 2018-02-07 13:11:08 +01:00
core_write.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
cuckoocache.h Merge #9510: [trivial] Fix typos in comments 2018-01-21 12:48:34 +01:00
dash-cli-res.rc Fix issues introduced in 1770 (#1803) 2017-12-21 19:58:38 +03:00
dash-cli.cpp Merge #8811: rpc: Add support for JSON-RPC named arguments 2018-01-18 07:38:57 +01:00
dash-tx-res.rc Fix issues introduced in 1770 (#1803) 2017-12-21 19:58:38 +03:00
dash-tx.cpp Merge #10130: bitcoin-tx input verification (awemany, jnewbery) 2018-01-26 12:59:29 +01:00
dashd-res.rc
dashd.cpp Merge #9243: Clean up mapArgs and mapMultiArgs Usage 2018-01-18 07:31:23 +01:00
dbwrapper.cpp Merge #8629: C++11: s/boost::scoped_ptr/std::unique_ptr/ 2018-01-09 14:16:38 +01:00
dbwrapper.h
dsnotificationinterface.cpp Few fixes for lite mode (#2014) 2018-03-29 18:08:00 +03:00
dsnotificationinterface.h Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
flat-database.h
governance-classes.cpp Refactor MN payee logic in preparation for DIP3 (#2215) 2018-08-12 18:27:09 +03:00
governance-classes.h Refactor MN payee logic in preparation for DIP3 (#2215) 2018-08-12 18:27:09 +03:00
governance-exceptions.h Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
governance-object.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
governance-object.h Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
governance-validators.cpp Validate data size for proposals only (#2004) 2018-04-05 15:34:26 +03:00
governance-validators.h Validate proposals for expiration (#2003) 2018-03-21 14:09:13 +03:00
governance-vote.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
governance-vote.h Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
governance-votedb.cpp Refactor governance (#1993) 2018-03-20 14:04:59 +03:00
governance-votedb.h Store CGovernanceVote hash in memory instead of recalculating it via GetHash() every time (#1946) 2018-02-21 19:35:37 +03:00
governance.cpp Switch RequestGovernanceObjectVotes from pointers to hashes (#2189) 2018-07-25 18:09:30 +03:00
governance.h use nullptr in Dash-specific code (#2166) 2018-07-12 12:08:43 +03:00
hash.cpp Merge #9556: Remove redundant semicolons 2018-01-23 09:24:27 +01:00
hash.h Few (mostly trivial) cleanups and fixes (#1940) 2018-02-21 19:32:08 +03:00
hdchain.cpp Refactor: use constant refs and Ret suffix (#1928) 2018-02-12 15:49:00 +03:00
hdchain.h Some cleanup (mostly trivial) (#2038) 2018-04-20 13:53:23 +03:00
httprpc.cpp Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
httprpc.h
httpserver.cpp Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
httpserver.h Merge #8513: Fix a type error that would not compile on OSX. 2018-01-08 18:04:55 +01:00
indirectmap.h Merge #8414: prepend license statement to indirectmap.h 2018-01-08 18:04:55 +01:00
init.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
init.h Refactor and fix restart (#1999) 2018-03-19 16:09:47 +03:00
instantx.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
instantx.h Remove dummy confirmations in RPC API and GUI for InstantSend transactions (#2040) 2018-07-28 19:39:37 +03:00
keepass.cpp Refactor: use constant refs and Ret suffix (#1928) 2018-02-12 15:49:00 +03:00
keepass.h Refactor: use constant refs and Ret suffix (#1928) 2018-02-12 15:49:00 +03:00
key.cpp Merge #8753: Locked memory manager 2018-01-13 13:44:39 +01:00
key.h Merge #9039: Various serialization simplifcations and optimizations 2018-01-15 06:14:15 +01:00
keystore.cpp
keystore.h Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
limitedmap.h Merge #8353: Trivial: tiny c++11 refactors 2018-01-08 18:04:55 +01:00
Makefile.am Move to in-docker CI builds and add Jenkins support (#2178) 2018-07-12 16:28:59 +03:00
Makefile.bench.include Add string_cast benchmark (#2073) 2018-05-26 21:02:49 +03:00
Makefile.leveldb.include Merge #8826: Do not include env_win.cc on non-Windows systems 2018-01-12 09:56:53 +01:00
Makefile.qt.include Remove DarksendConfig (#2132) 2018-07-12 12:03:26 +03:00
Makefile.qttest.include Add Dash Copyright to Makefiles modified by Dash developers 2018-01-12 16:12:54 +01:00
Makefile.test.include Add tests for GetBlockSubsidy algorithm (#2022) 2018-04-11 14:06:27 +03:00
masternode-payments.cpp Refactor MN payee logic in preparation for DIP3 (#2215) 2018-08-12 18:27:09 +03:00
masternode-payments.h Refactor MN payee logic in preparation for DIP3 (#2215) 2018-08-12 18:27:09 +03:00
masternode-sync.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
masternode-sync.h Replace Dash-specific threads with Dash-specific scheduled tasks (#2043) 2018-07-16 15:47:37 +03:00
masternode.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
masternode.h Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
masternodeconfig.cpp use nullptr in Dash-specific code (#2166) 2018-07-12 12:08:43 +03:00
masternodeconfig.h Refactor: use constant refs and Ret suffix (#1928) 2018-02-12 15:49:00 +03:00
masternodeman.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
masternodeman.h Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
memusage.h Merge #8675: Make copyright header lines uniform 2018-01-13 13:44:39 +01:00
merkleblock.cpp Merge #10309: Trivial: remove extra character from comment 2018-01-26 12:59:29 +01:00
merkleblock.h Merge #10258: Fixed typo in documentation for merkleblock.h 2018-01-26 12:59:29 +01:00
messagesigner.cpp Use spork addresses instead of raw keys and allow changing them on startup (#1969) 2018-03-02 16:15:04 +03:00
messagesigner.h Use spork addresses instead of raw keys and allow changing them on startup (#1969) 2018-03-02 16:15:04 +03:00
miner.cpp Add previousbits field to getblocktemplate output (#2201) 2018-08-11 01:28:30 +03:00
miner.h Add previousbits field to getblocktemplate output (#2201) 2018-08-11 01:28:30 +03:00
net_processing.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
net_processing.h Backport compact blocks functionality from bitcoin (#1966) 2018-04-11 14:06:01 +03:00
net.cpp Extend Bloom Filter support to InstantSend related messages (#2184) 2018-07-20 16:32:41 +03:00
net.h Extend Bloom Filter support to InstantSend related messages (#2184) 2018-07-20 16:32:41 +03:00
netaddress.cpp Merge #8466: [Trivial] Do not shadow variables in networking code 2018-01-09 14:16:38 +01:00
netaddress.h Merge #9510: [trivial] Fix typos in comments 2018-01-21 12:48:34 +01:00
netbase.cpp Merge #9305: Refactor: Removed begin/end_ptr functions. 2018-01-17 17:31:12 +01:00
netbase.h Merge #8466: [Trivial] Do not shadow variables in networking code 2018-01-09 14:16:38 +01:00
netfulfilledman.cpp Switch CNetFulfilledRequestManager and CMasternodeMan maps/funcs to CService (#1967) 2018-03-08 15:16:52 +03:00
netfulfilledman.h Replace Dash-specific threads with Dash-specific scheduled tasks (#2043) 2018-07-16 15:47:37 +03:00
netmessagemaker.h Merge #9659: Net: Turn some methods and params/variables const 2018-01-23 09:24:27 +01:00
noui.cpp
noui.h
pow.cpp Allow mining min diff for very slow (2h+) blocks (#2175) 2018-07-08 14:05:55 +03:00
pow.h
prevector.h Merge #9856: Terminate immediately when allocation fails 2018-01-26 12:59:29 +01:00
privatesend-client.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
privatesend-client.h Replace Dash-specific threads with Dash-specific scheduled tasks (#2043) 2018-07-16 15:47:37 +03:00
privatesend-server.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
privatesend-server.h Replace Dash-specific threads with Dash-specific scheduled tasks (#2043) 2018-07-16 15:47:37 +03:00
privatesend-util.cpp Don't hold cs_storage in CKeyHolderStorage while calling functions which might lock cs_wallet (#2000) 2018-03-20 14:06:07 +03:00
privatesend-util.h Avoid reference leakage in CKeyHolderStorage::AddKey (#1840) 2018-01-09 14:11:43 +03:00
privatesend.cpp Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
privatesend.h Masternode related refactorings in preparation of DIP3 (#2212) 2018-08-11 22:55:56 +03:00
protocol.cpp Revert "Merge #7542: Implement "feefilter" P2P message" (#2025) 2018-04-11 18:16:43 +03:00
protocol.h Revert "Merge #7542: Implement "feefilter" P2P message" (#2025) 2018-04-11 18:16:43 +03:00
pubkey.cpp Merge #8655: Do not shadow variables (trivials) 2018-01-11 13:22:22 +01:00
pubkey.h Merge #9039: Various serialization simplifcations and optimizations 2018-01-15 06:14:15 +01:00
random.cpp Merge #9305: Refactor: Removed begin/end_ptr functions. 2018-01-17 17:31:12 +01:00
random.h Get rid of InsecureRand and use equivalent FastRandomContext 2018-01-12 16:37:39 +01:00
rest.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
reverselock.h Merge #8655: Do not shadow variables (trivials) 2018-01-11 13:22:22 +01:00
scheduler.cpp Merge #9186: test: Fix use-after-free in scheduler tests 2018-01-15 06:14:16 +01:00
scheduler.h
sendalert.cpp Merge #9243: Clean up mapArgs and mapMultiArgs Usage 2018-01-18 07:31:23 +01:00
serialize.h Merge #9305: Refactor: Removed begin/end_ptr functions. 2018-01-17 17:31:12 +01:00
spentindex.h Remove nType and nVersion from Dash related serialization code 2018-01-15 06:14:15 +01:00
spork.cpp Protect CSporkManager with critical section (#2213) 2018-08-11 01:34:28 +03:00
spork.h Protect CSporkManager with critical section (#2213) 2018-08-11 01:34:28 +03:00
streams.h Add size() method to CVectorWriter 2018-01-17 17:27:24 +01:00
sync.cpp Remove onlyMaybeDeadlock condition around printing of deadlock info 2018-01-23 12:27:28 +01:00
sync.h Merge #9319: Break addnode out from the outbound connection limits. 2018-01-18 07:38:22 +01:00
threadinterrupt.cpp
threadinterrupt.h
threadsafety.h
timedata.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
timedata.h
tinyformat.h Don't use short version of 'tinyformat/fmt' namespace in util.h (#1975) 2018-03-08 15:18:51 +03:00
torcontrol.cpp Merge #9510: [trivial] Fix typos in comments 2018-01-21 12:48:34 +01:00
torcontrol.h
txdb.cpp Merge #9644: [refactor] Remove using namespace <xxx> from src/ 2018-01-23 09:24:03 +01:00
txdb.h Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
txmempool.cpp Backport compact blocks functionality from bitcoin (#1966) 2018-04-11 14:06:01 +03:00
txmempool.h Backport compact blocks functionality from bitcoin (#1966) 2018-04-11 14:06:01 +03:00
ui_interface.cpp Merge #8486: [wallet] Add high transaction fee warnings 2018-01-11 13:22:22 +01:00
ui_interface.h Merge #8486: [wallet] Add high transaction fee warnings 2018-01-11 13:22:22 +01:00
uint256.cpp
uint256.h Merge #9039: Various serialization simplifcations and optimizations 2018-01-15 06:14:15 +01:00
undo.h Merge #9039: Various serialization simplifcations and optimizations 2018-01-15 06:14:15 +01:00
util.cpp Merge #9643: [refactor] Remove using namespace <xxx> from wallet/ & util* 2018-02-21 22:32:13 +03:00
util.h Don't use short version of 'tinyformat/fmt' namespace in util.h (#1975) 2018-03-08 15:18:51 +03:00
utilmoneystr.cpp Merge #9643: [refactor] Remove using namespace <xxx> from wallet/ & util* 2018-02-21 22:32:13 +03:00
utilmoneystr.h
utilstrencodings.cpp Merge #9643: [refactor] Remove using namespace <xxx> from wallet/ & util* 2018-02-21 22:32:13 +03:00
utilstrencodings.h Merge #8168: util: Add ParseUInt32 and ParseUInt64 2017-12-22 17:20:31 +01:00
utiltime.cpp Merge #9643: [refactor] Remove using namespace <xxx> from wallet/ & util* 2018-02-21 22:32:13 +03:00
utiltime.h
validation.cpp Check devnet genesis block (#2057) 2018-05-13 23:56:51 +03:00
validation.h Revert "Merge #7542: Implement "feefilter" P2P message" (#2025) 2018-04-11 18:16:43 +03:00
validationinterface.cpp Implement Governance ZMQ notification messages (#2160) 2018-07-12 12:06:30 +03:00
validationinterface.h Implement Governance ZMQ notification messages (#2160) 2018-07-12 12:06:30 +03:00
version.h Bump proto to 70210 (#2109) 2018-06-12 14:33:41 +03:00
versionbits.cpp Use override keyword for overriden class member functions (#1644) 2018-02-15 10:29:15 +03:00
versionbits.h Merge #7948: RPC: augment getblockchaininfo bip9_softforks data 2018-01-13 13:44:37 +01:00
warnings.cpp Drop BOOST_FOREACH and use references in loops (const ref where applicable, Dash code only) (#1899) 2018-02-06 14:09:33 +03:00
warnings.h Merge #9236: Fix races for strMiscWarning and fLargeWork*Found, make QT runawayException use GetWarnings 2018-01-18 07:31:22 +01:00