Commit Graph

15049 Commits

Author SHA1 Message Date
Nathan Marley
fd70a1eb92 iterator cleanup in several places (#2164)
* iterator cleanup in Dash-specific code

* const

* *Pair/pair

* it++ -> ++it
2018-07-12 12:07:51 +03:00
strophy
df1be90ce1 Update links to obsolete documentation (#2162)
* Update links to obsolete documentation

* Change link text
2018-07-12 12:07:17 +03:00
PaulieD
0e689341d2 Implement Governance ZMQ notification messages (#2160)
* fix whitespace

* added zmq stuff for governance objects and votes
it seems that zmq is currently not in a working state, need to figure that out.

Need to:
plug in the new methods added
possibly plug in the old methods, as it doesn't look like they are.

* formatting fix. Will probably need to revert for this PR

* continue linking new zmq messages in

* added comment, might need to revert

* fixes error of it not knowing about the classes

* Actually link in, all new govobjects and govvotes should be broadcast over zmq now.

* fix compile error, forgot to change params when copying

* fix compile error

* add imports to the header files in zmqconfig.h

* fixing linking(i think) error

* Revert "added comment, might need to revert"

This reverts commit 2918ea40fe9a96834c4bd89e13cb458cde6814f2.

* Revert "formatting fix. Will probably need to revert for this PR"

This reverts commit ca10558866ab61e3dd0c70541fdcfee6f5115157.

* fix tabs etc

* EOL added

* optimization of hash.begin() @nmarley thoughts?

* remove formatting changes

* iterator i -> it and removal of notifier

* typo in df879f57

* use auto for the iterators

* introduce hash prefix

* implement changes in zmq_sub.py, update the doc, and change argument name to fix typo

* deref iterators before calling methods

* continued e8a4c505

* missed one... continued e8a4c505

* killing some tabs

* fix spacing for setting or comparing iterators

* change order of new variables to match current setup

* re-add elif's I didn't realize got removed

* Revert "fix spacing for setting or comparing iterators"

This reverts commit 8ce2068148dcd275ebba7ee6038d0db1c582b9f3.

* Revert "use auto for the iterators"

This reverts commit cb16cf0760bfaf68c56684877898611802bf2303.

* Revert "missed one... continued e8a4c505"

This reverts commit 2087cf894f7e9682508b4692b89897b4fa4e4b7a.

* Revert "continued e8a4c505"

This reverts commit a78c8ad2c9bb1602242a8f040e17ef958982348c.

* Revert "deref iterators before calling methods"

This reverts commit e8a4c505d1d34360eaf882d92cd8fbc55436cfcc.

* Revert "iterator i -> it and removal of notifier"

This reverts commit 29574248b1a0d05c18d60454d07c77979aae6fb2.

* Revert "fix whitespace"

This reverts commit 612be48d963000b4cbc5f64981a88a3225428b37.

* Revert "typo in df879f5"

* Revert "Optimization of hash.begin()"

* fixes problem with revert

* Udjin complain's a lot ;)

* help text, init.cpp

* add signals in validationinterface.cpp

* Change location of vote notification call.

* remain consistent

* remove unneeded include due to change of notification location

* implement raw notifications
2018-07-12 12:06:30 +03:00
PaulieD
448e92f4aa GetOutPointPrivateSendRounds readability (#2149)
* .gitnore visual studio bs

* Improves the readability of the `GetOutpointPrivateSendRounds` function by not having the second argument be needed, as the second arg should only not be 0 when it is recursively calling itself

* Revert ".gitnore visual studio bs"

This reverts commit 129b5242ade6a97a71810f492b5b347be219b691.

* changed back comment and fixed allignment

* refactor based on Udjin's suggestions.

* refactor based on Udjin's suggestions.

* fix alignment

* Revert "fix alignment"

This reverts commit c2cc2ae531c191258cd043b2b45a316443e4b860.

* actually fix alignment

* actually fix alignment
2018-07-12 12:05:39 +03:00
gladcow
6da2837bdd InstantSend Integration tests (#2141)
* adjust `AddLocal` method only in regtest mode

* Create Masternodes in regtest

* sentinelping call for masternodes

* set externalip option for masternodes in regtest

* fix MNB relay during masternodes creation

* fix node_count naming

* instantsend doublespend

* decrease node restarts

* prevent spending masternode collaterals

* move long test to the test list start

* remove InstantSend spork sending

* remove spork-specific code

* fix checking double spend rejection
2018-07-12 12:04:42 +03:00
UdjinM6
3c89983db6
Remove DarksendConfig (#2132) 2018-07-12 12:03:26 +03:00
PaulieD
43091a3efd PrivateSend Enhancement: Up default round count to 4 and allow user to mix up to 16 rounds (#2128)
* Allows a user to mix up to 16 rounds

All codebase appears to accept up to 16 rounds, however this form was capped at 8; restricting users to 2-8 rounds. This commit allows a user to actually use up to 16 rounds in practice. This will greatly enhance the privacy of those very worried about their privacy, as well as possibly increasing liquidity and increasing the privacy of all users.

* Up the default for PS mixing to 4 rounds.
2018-07-12 12:02:51 +03:00
Nathan Marley
8ee9333bc2 remove boost dependency from Dash-specific code (#2072)
* replace boost casts in dash-specific code

Specifically for spork.cpp : this should be temporary until all spork
sigs are based on hash and not string serialization format, after which
I expect the old signatures (else branch) should go away altogether. But
I still think it's worth it to get pieces of the boost dependency
removed, and this is an easy win, and could be merged now or in a patch
release w/o issue.

* replace boost::shared_ptr w/std::shared_ptr
2018-07-12 12:02:20 +03:00
gladcow
2c0d4c9d77 Save/load InstantSend cache (#2051)
* CTxLockCandidate serialization

* COutPointLock serialization

* CInstantSend serialization

* Read/write instantsend.dat file

* Read\write InstantSend cache only if InstantSend is enabled
2018-07-12 12:01:48 +03:00
UdjinM6
a527845e4f
Bump to 0.12.4.0 pre-release (#2167) 2018-07-12 12:01:10 +03:00
UdjinM6
855ac356ad
Release notes 0.12.3.2 (#2174)
* Archive release notes 0.12.3.1

* Release notes 0.12.3.2

* add 2175

* add 2176
2018-07-09 12:51:55 +03:00
UdjinM6
2ba0c77604
Add tests for special rules for slow blocks on devnet/testnet (#2176)
* Add tests for special rules for slow blocks on devnet/testnet

* add 20m and 3h
2018-07-09 12:42:11 +03:00
UdjinM6
b9a83d2ae6
Allow mining min diff for very slow (2h+) blocks (#2175) 2018-07-08 14:05:55 +03:00
UdjinM6
7b9919d182
Fix issues with selections on Masternode tab (#2170)
Preserve selection on "My Masternodes" sub-tab, disable selections on "All Masternodes" sub-tab.
2018-07-08 00:20:15 +03:00
UdjinM6
2474d9cb8c
Sync mn list and mnw list from 3 peers max (#2169)
Should solve issues with initial sync and reduce load/bandwidth in general.
2018-07-08 00:19:54 +03:00
Alexander Block
2c303cdb11 A few devnet related fixes (#2168)
* Remove testnet seeds from devnet

* Lift multiple ports restriction on devnet when considering new nodes

Allow to connect to multiple nodes behind the same IP

* Don't skip addresses with non-default port if it matches -port

If the user specified -port, he very likely intends to connect to nodes
with the same port.

* Don't pass false to CAddrMan constructor as it is already the default

* Make if statements easier to read
2018-07-08 00:19:33 +03:00
UdjinM6
050cabdf52
Adjust diff for slow testnet/devnet blocks a bit smoother (#2161)
* Adjust diff for slow testnet/devnet blocks a bit smoother

* bump to 000000000000000000000000000000000000000000000000003ff00000000000

* bump slow blocks to 10 minutes
2018-07-08 00:19:01 +03:00
PaulieD
c4698d5f3d Make PS Buttons not react to spacebar (#2154)
* Make the togglePrivateSend button not react to the spacebar or enter. #1766

* redo comment

* change `privateSendAuto` focus policy to remain consistent
2018-07-08 00:18:29 +03:00
UdjinM6
f833e2ed6c
Bump to 0.12.3.2 (#2173) 2018-07-08 00:17:36 +03:00
UdjinM6
1deab35186
Merge pull request #2159 from UdjinM6/mergetomaster1231
Merge develop 0.12.3.1 into master
2018-07-01 01:43:22 +03:00
UdjinM6
eebfa7986b Merge branch 'develop' into mergetomaster1231 2018-07-01 01:06:00 +03:00
UdjinM6
cf0ef9e63c
Bump to 0.12.3.1 (#2158)
* update release notes

* Bump to 0.12.3.1

* update Doxyfile
2018-06-30 23:39:49 +03:00
UdjinM6
a80ef04238
Update release notes (#2155)
* Update release notes

* add 2157
2018-06-30 22:29:25 +03:00
UdjinM6
fda74b4a8c
Use correct protocol when serializing messages in reply to getdata (#2157)
Messages should be serialized according the protocol of the peer who asked us or otherwise peers running on other protocols won't be able to deserialize the message correctly.
2018-06-30 21:18:37 +03:00
Kamil Woźniak
4dbde218b9 Fix p2pkh tests asserts (#2153)
Even the results were as expected,
IsPayToPublicKeyHash() breaks at size checking step now, as was intended.
Also removes compile time array-bounds warning.
2018-06-29 01:23:25 +03:00
UdjinM6
26c891f67f
Fix block value/payee validation in lite mode (#2148) 2018-06-29 01:23:06 +03:00
UdjinM6
7ab5b4a28e
Update/optimize images (#2147)
* update optimize-pngs.py with new paths

* `python contrib/devtools/optimize-pngs.py`

Total reduction: 22025 bytes

* update share/pixmaps/*
2018-06-29 01:22:48 +03:00
UdjinM6
5e1149a655
Update release notes (#2142)
* Update release notes

* add 2145
2018-06-24 22:05:54 +03:00
UdjinM6
9af9d57b41
Release 0.12.3 (#2145)
CLIENT_VERSION_IS_RELEASE false->true
2018-06-24 21:21:56 +03:00
InhumanPerfection
0d5426343d Fix an edge case in PrepareDenominate (#2138)
* PrepareDenominate fix

* Fix conditions
2018-06-22 18:57:46 +03:00
UdjinM6
8e6364694f
Bump SERIALIZATION_VERSION_STRINGs (#2136)
This is needed to ensure masternode and governance cache cleanup on migration.
2018-06-19 18:48:16 +03:00
UdjinM6
d46dc0f56c
Update release notes (#2135) 2018-06-19 13:57:48 +03:00
PaulieD
700b7ceb73 RPC: dumphdinfo should throw an error when wallet isn't HD (#2134)
* Throws an RPCError `RPC_WALLET_ERROR` when the command `dumphdinfo` is called and the wallet is not HD

* Refactor based on @Udjin's post
2018-06-19 08:52:32 +03:00
UdjinM6
6410705211
Fix 2 small issues in sporks module (#2133)
* Fix a crash when someone tries to update sporks without specifying `sporkkey`

Before:
Crashes with `Assertion failed: (fValid), function GetPubKey, file key.cpp, line 156.`

After:
Fails and prints rpc help for `spork`

* Silence logging in CSporkMessage::CheckSignature() a bit

CMessageSigner::VerifyMessage() failure is not really an error
if CHashSigner::VerifyHash() below passes with no issues.
No need to log this.
2018-06-19 02:40:55 +03:00
UdjinM6
6bf389afb8
Don't drop mnb-s for outdated MNs (#2131)
Instead just mark them as MASTERNODE_UPDATE_REQUIRED and proceed further.
2018-06-19 02:40:38 +03:00
UdjinM6
97b9b4fedc
Bump nMinimumChainWork, defaultAssumeValid and checkpoints (#2130) 2018-06-19 02:40:10 +03:00
UdjinM6
1c9917e227
Fix CVE-2018-12356 by hardening the regex (#2126) 2018-06-18 19:08:27 +03:00
UdjinM6
b7c326115e
Do not create mnb until sync is finished (#2122)
We don't relay mnb if sync is still in progress. Creating mnb without
relaying it only increases inconsistency and leads to user confusion.
Unifying conditions for creation and relaying fixes this.
2018-06-18 19:08:00 +03:00
UdjinM6
b98643c27d
Split sentinel expiration in CMasternode::Check() in two parts (timeout and version) (#2121)
The initial ping is sent with defaults which switch MNs to SENTINEL_PING_EXPIRED state
while they should really be in PRE_ENABLED state. The fix is to split this verification
in two parts - this way sentinel version is only checked after at least one ping is received
from the masternode itself and not from the cold wallet.
2018-06-18 19:07:34 +03:00
UdjinM6
5669fc880e
Fix typos and rpc help text (#2120)
* Fix typo in PS info dialog

Also adjust translations accordingly.

* Fix typo in PS low key warning

* Fix typo in sendrawtransaction help

* Fix sendtoaddress/sendmany help text

* Fix listreceivedby* help text

* Fix typo in listunspent help

* Fix spelling "recieves"->"receives"

Shame on me

* transactions->transaction

* receives->"incoming payments grouped"
2018-06-18 19:07:09 +03:00
UdjinM6
d076ad4cea
Update release notes and staging tree in README (#2116)
* Update release notes

* add 2118

* bump staging tree in README.md
2018-06-12 22:10:36 +03:00
UdjinM6
806d7f0496
Fix rpc tests broken by 2110 (#2118) 2018-06-12 21:37:31 +03:00
UdjinM6
836e104710
Bump proto to 70210 (#2109) 2018-06-12 14:33:41 +03:00
UdjinM6
8d8fdb4339
sendrawtransaction no longer bypasses transaction policy limits by default (#2110)
* [rpc] sendrawtransaction no longer bypasses minRelayTxFee

The prioritisetransaction API can always be used if a transaction needs to be submitted that bypasses minRelayTxFee.

* Allow to bypass transaction policy limits in sendrawtransaction

Add new rpc param to sendrawtransaction to have an ability to tweak its behaviour.
Default is `false` i.e. "do not bypass".

* fix
2018-06-12 14:33:23 +03:00
UdjinM6
8e129877a6
Partially revert 1922 (#2108)
Turned out we actually need mixing collaterals charged as fees in our mempool for them to be relayed.
2018-06-11 13:14:41 +03:00
UdjinM6
8c2d16f5f3
Limit IS quorums by updated MNs only (#2107) 2018-06-11 13:14:24 +03:00
Semen Martynov
0a71c693e7 Remove explicit wallet lock in MasternodeList::StartAll() (#2106)
Possible fix #2104
2018-06-11 13:14:00 +03:00
UdjinM6
0de79d70b5
Do not create oversized transactions (bad-txns-oversize) (#2103) 2018-06-11 13:13:20 +03:00
UdjinM6
fcac40ab4e
RPC: fix wallet lock check in privatesend start (#2102) 2018-06-11 13:13:03 +03:00
UdjinM6
23ba94b370
Bump remaining min protocols (#2097)
* bump MIN_GOVERNANCE_PEER_PROTO_VERSION

* bump MIN_MASTERNODE_PAYMENT_PROTO_VERSION_2
2018-06-06 19:06:52 +03:00