Commit Graph

10572 Commits

Author SHA1 Message Date
Alexander Block
611879aa6d Use spork addresses instead of raw keys and allow changing them on startup (#1969)
* Support passing CKeyID to CMessageSigner/CHashSigner

* Use Dash addresses instead of raw public keys for sporks

The spork addresses are identical to the previously used public keys.

Also use CKeyID/CKey directly inside CSporkManager instead of parsing the
addresses/keys over and over. The default spork key (from chainparams) is
initialized with InitDefaultSporkAddress(). SetPrivKey parses the private
key now and stores it in sporkPrivKey instead of parsing it in
CSporkMessage::Sign().

* Allow setting of spork address via command line

* Remove unused strMasternodePaymentsPubKey chainparam

Traces from the past...

* Review fixes

1. Remove the need for InitDefaultSporkAddress
2. Remove bogus checks for hex private keys
3. Alphabetical order for new include
4. Add . to help string

* Add regtest spork key

As this key is not meant to be private, the private key is also added in
the form of a comment (for later use in regtests)

* Review fixes
2018-03-02 16:15:04 +03:00
UdjinM6
bf0854e58e
Swap expired and sentinel_expired states in order (#1961)
State switching should correlate with spork14 and CMasternode::IsValidForPayment() a bit better now
2018-03-02 16:13:31 +03:00
Alexander Block
9876207ce2 Multiple devnet fixes (#1960)
* Add missing help string for -devnet

* Remove testnet seeds from devnet

* Activate BIP34/65/66 at height 2 instead of 1

Height 1 is the genesis block and not the devnet genesis block. The genesis
block is still at version 1, resulting in re-indexing to fail.
2018-03-02 16:12:31 +03:00
UdjinM6
bab543f3e6
Various RPC fixes (#1958)
* RPC: fix listunspent include_unsafe param usage

* RPC: Add two fields to indicate if some mempool entry is an InstantSend tx and if it was locked or not

* RPC: Add privatesend_balance to getwalletinfo rpc

* RPC: "BTC" -> CURRENCY_UNIT

* RPC: more EnsureWalletIsAvailable in Dash-specific code

* RPC: EnsureWalletIsUnlocked in `gobject prepare`

Also fixes missing cs_wallet lock

* RPC: disable `privatesend` rpc on masternodes completely

* RPC: refactor `spork` rpc

* RPC: Show correct port in HelpExampleRpc

* RPC: few trivial fixes

* fix
2018-03-01 16:18:46 +03:00
Nathan Marley
b0868093b0 simplify gobject JSON format, remove unused fields (#1902)
* simplify gobject JSON format, remove unused fields

This allows gobject format to change from (for example):

```
[
    [
        "proposal",
        {"object": "data-here"}
    ]
]
```

... to simply:

```
{"object": "data-here"}
```

The outer array isn't needed, and the first value in the 2-item tuple is
likewise discarded by DashCore. This change should allow either data
format to exist (we can deprecate/remove the older format later) and
remove the array of different type elements (string, object).

* validator test for legacy and new proposal formats
2018-02-28 02:20:16 +03:00
UdjinM6
1dda9fe6f2
CProposalValidator refactoring and follow up fixes (#1956)
* Refactor CProposalValidator

- fix names
- MAX_NAME_SIZE instead of magic value
- move most functions to private, test actual usage (constructor and Validate), not every single function
- do not store hex string (there is no reason to do so anymore)
- remove (now) unused functions

* Make sure payment_address has no whitespaces

* Fix governance_validators_tests

* Don't allow whitespaces, drop StripWhitespaces and add corresponding tests

* Show validator internal errors on check failure
2018-02-27 16:39:48 +03:00
Alexander Block
e37b6c7dab Fix BIP147 deployment threshold parameter (#1955)
It should be 50 and not 59
2018-02-27 16:39:34 +03:00
UdjinM6
106276a3e2
Adjust/fix log output (#1954)
* fix typo in debug message

* log: specify MN

* log: fix class::func

* log: format log2_work

* log: other minor adjustments
2018-02-26 14:10:20 +03:00
UdjinM6
2c04504f1c
Refactor IS votes processing (#1951)
Also make sure orphans are actually processed
2018-02-25 08:33:40 +03:00
UdjinM6
89380b4c92
Drop watchdogs, replace them with sentinel pings (#1949)
* Drop watchdogs, replace them with sentinel pings

* Address review comments

* revert `()`
2018-02-25 08:33:27 +03:00
UdjinM6
ef9a9f2d67
Fix unlocking error on "Start Mixing" (#1941)
* Fix unlocking error on "Start Mixing"

Instead warn that wallet is fully unlocked etc.

* Revert "Fix unlocking error on "Start Mixing""

This reverts commit 4951e58f66.

* Drop mixingOnlyCheckBox and determine the correct unlock path automatically via provided mode
2018-02-22 12:00:50 +03:00
UdjinM6
0153c4c5e8
Merge pull request #1948 from UdjinM6/removeusingnamespacestd
Remove `using namespace std`
2018-02-22 10:41:52 +03:00
thephez
151152b98b rpc - Update getaddednodeinfo help to remove dummy argument (#1947) 2018-02-22 10:41:08 +03:00
UdjinM6
a4b313fd3d Fix std in DBG macro 2018-02-21 23:24:28 +03:00
UdjinM6
6a6e4cdc1b Remove remaining using namespace std 2018-02-21 22:32:13 +03:00
Wladimir J. van der Laan
08b5c69eff Merge #9643: [refactor] Remove using namespace <xxx> from wallet/ & util*
a57845c Refactor: Remove using namespace <xxx> from util* (Karl-Johan Alm)
8a52281 Refactor: Remove using namespace <xxx> from wallet/ (Karl-Johan Alm)

Tree-SHA512: cd06b569fee0ce25db753ade5ee694b582733a8883bfd62a27613020266d2a902af079ef23b58a5412f7af4afd7681e689af3c7780e5ea00c77b16d144d72db5
2018-02-21 22:32:13 +03:00
Wladimir J. van der Laan
ccca7af09e Merge #9476: [refactor] Remove using namespace <xxx> from rpc/ & script/ sources
8cbfc4e Refactor: Remove using namespace <xxx> from script/ (Karl-Johan Alm)
f3c264e Refactor: Remove using namespace <xxx> from rpc/ (Karl-Johan Alm)

Tree-SHA512: 407e80eeda0b8e1df22c5fcba33572e117542fde83c67357f6c2d98fa60bcc7b21bb88ad9a1ee59062fbec17fadaa4836b69e8e6d18188b4027b794357634467
2018-02-21 22:32:13 +03:00
UdjinM6
e71cb3861d
Store CGovernanceVote hash in memory instead of recalculating it via GetHash() every time (#1946)
* Store CGovernanceVote hash in memory instead of recalculating it via GetHash() every time

* Rename GetVoteDataStream to SerializeVoteToStream
2018-02-21 19:35:37 +03:00
Alexander Block
0abd1894ee Call CheckMnbAndUpdateMasternodeList when starting MN (#1945)
* Call CheckMnbAndUpdateMasternodeList when when starting MN

Otherwise the invoking node won't have nCollateralMinConfBlockHash
updated correctly, resulting in the MN showing up in the wrong position
when masternode ranks are calculated.

* Remove UpdateMasternodeList and remaining uses of it
2018-02-21 19:32:51 +03:00
UdjinM6
e23f61822d
Make TrafficGraphDataTests more general (#1943) 2018-02-21 19:32:35 +03:00
UdjinM6
43671a39df
Deprecate nMnCount in mnget (#1942) 2018-02-21 19:32:21 +03:00
UdjinM6
5b1c4d8a11
Few (mostly trivial) cleanups and fixes (#1940)
* Drop nBudgetProposalEstablishingTime

* Refactor: replace `== COutPoint()` with `.IsNull()`

* Refactor: add `operator bool()` to CMasternodePing

* Refactor: actually use `operator bool()` for CPendingDsaRequest

* Refactor: fixing code style in TrafficGraphData

* Fix some comments and whitespaces

* Drop CGovernanceVote::GetTypeHash()

* Drop legacy X11 code

No longer used... if it ever was used at all.

* Move `<boost/foreach.hpp>` out of coins.h

* Simplify CMasternodeBlockPayees::GetRequiredPaymentsString()

Also less of boost::lexical_cast

* Drop CTxDSIn::nSentTimes

* Fix few warnings

* fix warning (timer)

* fix nit
2018-02-21 19:32:08 +03:00
UdjinM6
99273f63aa
Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (#1937)
* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (gobject)

* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (gobjvote)

* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (mnw)

* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (txlvote)

* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (dsq)

* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (dstx)

* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (spork)

* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (mnb)

* Actually care about old signature format in mnp, otherwise we can start banning peers rather quickly

* Use SPORK_6_NEW_SIGS to switch from signing string messages to hashes (mnv)

* Unify sign/verify code a bit by using GetSignatureHash() (even when it matches GetHash())

* fix docs

* address review comments

* fix log output (copy/paste error)

* Replace custom GetSignatureHash/GetHash with serialization (where applicable)

* Convert from/to old format in SerializationOp only for p2p

* fix
2018-02-16 17:54:53 +03:00
UdjinM6
451f7f0710
Fix issues with mnp, mnw and dsq signatures via new spork (SPORK_6_NEW_SIGS) (#1936)
* Use new spork SPORK_6_NEW_SIGS to fix masternode payment vote signature format

* Use SPORK_6_NEW_SIGS to also fix masternode ping signature format

* Use SPORK_6_NEW_SIGS to also fix privatesend queue signature format

* adjust spork6 description in docs

* mnp hashing/signing changed - hash everything and use SignHash/VerifyHash directly instead of constructing a string to sign (both activate via SPORK_6_NEW_SIGS)

* fix

* cleanup
2018-02-15 17:44:22 +03:00
UdjinM6
0480626410
Force masternodes to have listen=1 and maxconnections to be at least DEFAULT_MAX_PEER_CONNECTIONS (#1935) 2018-02-15 17:43:32 +03:00
UdjinM6
aadec37354
Change format of gobject, store/transmit vchData instead of hex-encoded string of a string (#1934)
* Change format of gobject, store/transmit vchData instead of hex-encoded string

* fix (limited string for old format)
2018-02-15 17:43:17 +03:00
UdjinM6
c656133502
Switch masternode id in Dash data structures from CTxIn to COutPoint (#1933)
* Switch masternode id in Dash data structures from CTxIn to COutPoint (including p2p level)

* outpoint -> masternodeOutpoint in DSEG
2018-02-15 10:29:44 +03:00
UdjinM6
0bd8c8e43a
Refactor: vecTxIn -> vecOutPoints for CompactTallyItem (#1932) 2018-02-15 10:29:31 +03:00
gladcow
2ea6f7d82e Use override keyword for overriden class member functions (#1644)
* Use `override` keyword for all overriden functions

* more override
2018-02-15 10:29:15 +03:00
UdjinM6
580c4884c1
Fix trigger execution and expiration (#1920)
* Move trigger expiration logic into CSuperblock and handle executed/non-executed triggers differently

* Actually execute triggers
2018-02-12 21:35:10 +03:00
UdjinM6
ed712eb819
Fix nDelayGetHeadersTime (int64_t max == never delay) (#1916)
* Fix nDelayGetHeadersTime (int64_t max == never delay)

* Rewrite conditions in a more natural way i.e. (now - last_best > threshold)
2018-02-12 21:34:53 +03:00
UdjinM6
f35b5979a7
Refactor CGovernanceManager::Sync (split in two) (#1930) 2018-02-12 15:49:28 +03:00
UdjinM6
b5046d59c5
Dseg fixes (#1929)
* Do not filter non-upgraded mns in DSEG

Reverts #1373, we need non-upgraded MNs to verify their old govvotes

* Split mn list/single vin logic for DSEG

This should prevent looping till the end of the list if we were asked for a single mn and a) we have it but some following `if` has failed or b) we don't have it. It also should be a bit easier to follow the logic this way.
2018-02-12 15:49:15 +03:00
UdjinM6
d5ef77ba99
Refactor: use constant refs and Ret suffix (#1928)
* Refactor function params from `std::string` to `const std::string&`

* Refactor more function params to use const references
2018-02-12 15:49:00 +03:00
UdjinM6
3f0c8723e9
Slightly refactor AutoBackupWallet (#1927)
- make incoming strWalletFile a const reference, do not modify it directly inside the function
- follow `false false ... false true` principle
2018-02-12 15:48:48 +03:00
UdjinM6
2e04864b26
Replace boost::lexical_cast<int> with atoi (#1926)
Also cleanup existing atoi-s in Dash code
2018-02-12 15:48:35 +03:00
UdjinM6
0f4d963baf
Add DSHA256 and X11 benchmarks, refactor names of other algo benchmarks to group them together (#1925)
DSHA256 and X11 also have additional tests for data from 32 to 2048 bytes (for comparison, in steps)
2018-02-12 15:48:20 +03:00
UdjinM6
4528c735f4
Replace some instantsend/privatesend magic numbers with constants (#1924) 2018-02-12 15:48:09 +03:00
UdjinM6
d7f55d5083
Switch nTimeLastSuccessfulStep from GetTimeMillis() to GetTime() (#1923)
This makes PS mockable. And we don't need that much of a precision here anyway.
2018-02-12 15:47:53 +03:00
UdjinM6
204b1fe997
Drop unnecessary AcceptToMemoryPool in PS (and corresponding cs-main locks), just relay what we have (#1922) 2018-02-12 15:47:35 +03:00
UdjinM6
271c249e15
Skip next mn payments winners when selecting a MN to mix on (#1921) 2018-02-12 15:47:20 +03:00
UdjinM6
0670695fea
Move prev/next sb height logic from rpc to CSuperblock::GetNearestSuperblocksHeights (#1919) 2018-02-12 15:46:55 +03:00
UdjinM6
312088b560
Fix connectivity check in CActiveMasternode::ManageStateInitial (#1918) 2018-02-12 15:46:38 +03:00
UdjinM6
741fcbc902
Remove excessive custom validation in CProposalValidator::ValidatePaymentAddress (#1917) 2018-02-12 15:46:27 +03:00
Nathan Marley
354aac8d1c rename nEpochStart variable and adjust comments (#1915)
* rename nEpochStart variable and adjust comments

* rename GetBlockStart() -> GetBlockHeight()

* change var name to nBlockHeight
2018-02-12 15:46:01 +03:00
Nathan Marley
8ea1bd0f55 remove unused method GetObjectSubtype (#1914)
I believe this was stubbed to eventually read the string in the 1st
field of the inner array in the gobject JSON. Currently only Sentinel
uses this and I would like to move to just a single JSON object, so
don't think this is necessary any longer.
2018-02-12 15:45:38 +03:00
UdjinM6
6825b347f2
Merge pull request #1911 from codablock/pr_backports_from_cmptblk
Backports from compact block related Bitcoin PRs
2018-02-09 13:08:03 +03:00
Wladimir J. van der Laan
4ac4e96e8f Merge #9765: Harden against mistakes handling invalid blocks
ba803ef Harden against mistakes handling invalid blocks (Suhas Daftuar)
2018-02-08 11:18:48 +01:00
Alexander Block
662ec024ab Make peer id logging consistent ("peer=%d" instead of "peer %d") 2018-02-08 11:18:48 +01:00
Matt Corallo
592d8f0734 Use a temp pindex to avoid a const_cast in ProcessNewBlockHeaders 2018-02-08 11:06:22 +01:00
Matt Corallo
15a8fcf993 Add a CValidationInterface::NewPoWValidBlock callback 2018-02-08 11:06:22 +01:00
Matt Corallo
d28172f57e Call AcceptBlock with the block's shared_ptr instead of CBlock& 2018-02-08 11:06:22 +01:00
Matt Corallo
807ae74c21 Make CBlockIndex*es in net_processing const 2018-02-08 11:06:22 +01:00
Alexander Block
1d1c31052a Fix cmd args handling for -bip9params 2018-02-08 10:40:51 +01:00
Wladimir J. van der Laan
026f2e2a8c Merge #8446: [Trivial] BIP9 parameters on regtest cleanup
0fc00be Do not shadow previous local variable (Pavel Janík)
115265b Trivial: bip -> BIP in help text and comment (Pavel Janík)
2018-02-08 10:40:51 +01:00
Suhas Daftuar
2c810d2c3f Allow changing BIP9 parameters on regtest 2018-02-08 10:40:51 +01:00
Matt Corallo
45151bd131 Move context-required checks from CheckBlockHeader to Contextual... 2018-02-08 10:40:51 +01:00
Alexander Block
120893c63d Update timeLastMempoolReq when responding to MEMPOOL request (#1904)
This should have been part of the Bitcoin #8080 backporting but was missed
due to manual conflict resolution.
2018-02-08 08:47:27 +03:00
thephez
ca89c7b870 [Trivial] Update PrivateSend denominations in comments / typo fixes (#1910) 2018-02-08 08:46:44 +03:00
Alexander Block
8f2c1998de Rename vBlockHashesFromINV to vDelayedGetHeaders (#1909)
Use a name that better says what it is for.
2018-02-08 08:45:20 +03:00
UdjinM6
79e6d272ed
Merge pull request #1908 from codablock/pr_backport_bitcoin_0.14-12
Collection of PRs and single commits missed in previous backports
2018-02-08 08:45:02 +03:00
Alexander Block
6e022c57b1 Remove src/drafted folder (#1907)
This contained old PoC code and is unused
2018-02-08 08:44:34 +03:00
Alexander Block
4719ec477c Remove some locking in net.h/net.cpp (#1905)
* Remove unnecessary LOCK in ConnectNode

FindNode already does the necessary lock

* Remove unnecessary semicolon

* Remove critical section and assert for ref counts in CNode

nRefCount is an atomic now and thus doesn't need locking anymore.
2018-02-08 08:44:07 +03:00
Alexander Block
bb20b4e7b5 Few cleanups after backporting (#1903)
* Remove remains of workaround that was needed while backporting

* Add missing closing round bracket to help string

* Remove now unnecessary .encode() calls in wallet.py

Now that we only support python3, we can fix this TODO.
2018-02-08 08:43:50 +03:00
Nathan Marley
3c44dde2e7 Return JSON object for masternode count (by default but still support old modes for now) (#1900)
Get information about number of masternodes (DEPRECATED options: 'total', 'ps', 'enabled', 'qualify', 'all')
2018-02-08 08:43:19 +03:00
Wladimir J. van der Laan
1086851938 Merge pull request #7166
6aadc75 Disconnect on mempool requests from peers when over the upload limit. (Gregory Maxwell)
2018-02-07 13:11:09 +01:00
Wladimir J. van der Laan
cef919f182 Merge #9486: Make peer=%d log prints consistent
e6111b2 Make peer id logging consistent ("peer=%d" instead of "peer %d") (Matt Corallo)
2018-02-07 13:11:09 +01:00
Russell Yanofsky
55ef4d0a9b [wallet] Add include_unsafe argument to listunspent RPC 2018-02-07 13:11:09 +01:00
Suhas Daftuar
e1e03f42c4 [wallet] Add IsAllFromMe: true if all inputs are from wallet 2018-02-07 13:11:08 +01:00
Wladimir J. van der Laan
611b31ecea Merge #9650: Better handle invalid parameters to signrawtransaction
6dbfe08 [qa] test signrawtransaction merge with missing inputs (Matt Corallo)
ec4f7e4 [qa] Add second input to signrawtransaction test case (Matt Corallo)
691710a [qa] Test that decoderawtransaction throws with extra data appended (Matt Corallo)
922bea9 Better handle invalid parameters to signrawtransaction (Matt Corallo)
7ea0ad5 Fail in DecodeHexTx if there is extra data at the end (Matt Corallo)
2018-02-07 13:11:08 +01:00
UdjinM6
9f2467af8a
Hide autocompleter on Enter/Return key (#1898) 2018-02-06 20:24:37 +03:00
UdjinM6
a7fa07a30e
Drop BOOST_FOREACH and use references in loops (const ref where applicable, Dash code only) (#1899)
* Drop BOOST_FOREACH in Dash-specific code (only), no changes in behavior

* Use references in loops (use const references where applicable) in Dash-specific code (only)

And adjust related code to make it compilable.

* Loop through nodes via connman.ForEachNode in dsq Relay instead of creating a copy
2018-02-06 14:09:33 +03:00
UdjinM6
4bc4a7dac7
Fix debug rpc (#1897) 2018-02-06 14:08:58 +03:00
UdjinM6
e0b6988a45
Various fixes and refactoring for Cache*Map classes (#1896)
* CacheMap::Insert should not update existing item, should return `false`

* Use `emplace` operator instead of `[]` to add new items in Cache*Map implementation

* Use prefix cm/cmm for CacheMap/CacheMultiMap maps respectively to distinguish them from each other and from std::map-s

* Avoid excessive processing of already known valid votes

Also prettify debug log output a bit

* Drop nCurrentSize from Cache*Map classes

Use `size()` and `empty()` of std classes instead, they have constant complexity since c++11

* Do not create an explicit iterator if it's never used later (in Cache*Map)

* Do not prune last item in CacheMultiMapInsert when trying to insert a duplicate one
2018-02-06 14:08:43 +03:00
Alexander Block
61af31531a Merge #8976: libconsensus: Add input validation of flags (#1891)
5ca8ef2 libconsensus: Add input validation of flags (Wladimir J. van der Laan)
2018-02-05 18:42:05 +03:00
UdjinM6
063bc55424
Fix masternode list (#1893) 2018-02-05 18:39:52 +03:00
Alexander Block
a6ba82ac9a Use masternode list to generate hardcoded seeds (#1892)
* Change makeseeds.py to use masternode list as input instead of DNS seed dump

* Allow 4 nodes per ASN

Lift the limitation a bit so we get more entries

* Update nodes_main.txt and nodes_test.txt

Generated with makeseeds.py based on current masternode lists

* Fix comment about the source of the seed nodes and use masternodelist rpc

* Use fixed OpenDNS servers for ASN filtering
2018-02-05 18:39:26 +03:00
Alexander Block
99b2789a73 Fix DeserializeAndCheckBlockTest benchmark and store hashDevnetGenesisBlock in consensus (#1888)
* Use Dash block for DeserializeAndCheckBlockTest

Replaced Bitcoin block with the largest Dash block I could find on mainnet.

* Store hashDevnetGenesisBlock in Consensus::Params

Remove the need for chainparams to be available when the devnetGenesis hash
is needed. Fixes a crash in CheckBlockHeader() when called from benchmarking
code, which does not initialize the Params() function.
2018-02-01 20:05:35 +03:00
UdjinM6
8a387ee09c
Drop SPORK_13_OLD_SUPERBLOCK_FLAG and check superblock start hash (#1872) 2018-02-01 15:42:21 +03:00
Alexander Block
d56ac5a747 Fix import-rescan.py and add workaround for pruning mode
Added a workaround to the masternode+pruning mode check to allow pruning
in regtest. The actual bug behind the masternode+pruning check is not
touched this way. Please read the linked GitHub issues for details.
2018-02-01 11:13:01 +01:00
Wladimir J. van der Laan
1ba1256217 Merge #9761: Use 2 hour grace period for key timestamps in importmulti rescans
e662af3 Use 2 hour grace period for key timestamps in importmulti rescans (Russell Yanofsky)
38d3e9e [qa] Extend import-rescan.py to test imports on pruned nodes. (Russell Yanofsky)
c28583d [qa] Extend import-rescan.py to test specific key timestamps (Russell Yanofsky)
8be0866 [qa] Simplify import-rescan.py (Russell Yanofsky)
2018-02-01 11:13:01 +01:00
Wladimir J. van der Laan
75421c37b6 Merge #9764: wallet: Prevent "overrides a member function but is not marked 'override'" warnings
6c5427d wallet: Prevent "overrides a member function but is not marked 'override'" warnings (Wladimir J. van der Laan)
2018-02-01 11:13:01 +01:00
Wladimir J. van der Laan
43f697866e Merge #9108: Use importmulti timestamp when importing watch only keys (on top of #9682)
a80f98b Use importmulti timestamp when importing watch only keys (Russell Yanofsky)
a58370e Dedup nTimeFirstKey update logic (Russell Yanofsky)
2018-02-01 11:13:01 +01:00
Wladimir J. van der Laan
6f86725d00 Merge #9682: Require timestamps for importmulti keys
266a811 Use MTP for importmulti "now" timestamps (Russell Yanofsky)
3cf9917 Add test to check new importmulti "now" value (Russell Yanofsky)
442887f Require timestamps for importmulti keys (Russell Yanofsky)
2018-02-01 11:13:01 +01:00
UdjinM6
1b1a440f4f
Do not send dash-specific requests to masternodes before we are fully connected (#1882)
* Do not send dash-specific requests to masternodes before we are fully connected

Open all masternode connections via CConnman::ThreadOpenMasternodeConnections only. Queue requests and process them after some timeout.

* drop excessive `mnodeman.`

* switch from queues to maps of pending requests

* adjust few strings, add TODO for POOL_STATE_CONNECTING

* fix

* there can be only one pending dsa request per ps client
2018-02-01 04:10:52 +03:00
Nathan Marley
5a5f618726 Shorten MN outpoint output from getvotes (#1871) 2018-01-31 13:56:30 +03:00
Wladimir J. van der Laan
12102e4e98 Merge #8848: Add NULLDUMMY verify flag in bitcoinconsensus.h
2fa0063 Add NULLDUMMY verify flag in bitcoinconsensus.h (Johnson Lau)
2018-01-30 20:28:51 +01:00
Alexander Block
c017353a99 Add softfork deployment for BIP147 2018-01-30 20:18:51 +01:00
Alexander Block
c8e5c40ec3 Replace more example Dash addresses with invalid addresses 2018-01-29 11:16:05 +01:00
Alexander Block
7e4e4ea270 Give 1000 bytes instead of 4000 bytes before the block is full 2018-01-26 17:31:20 +01:00
Alexander Block
873bd6c80f Fix new dash-tx tests
Also use S flag instead of W flag for the outpubkey test. Not really needed
to fix the test, but we don't have the W flag in Dash so lets not confuse
people.
2018-01-26 17:29:53 +01:00
Alexander Block
4959ff2014 Fix formatting of help in sendfrom 2018-01-26 12:59:29 +01:00
Alexander Block
a4430b624f Fix rpc tests 2018-01-26 12:59:29 +01:00
Alexander Block
5901531bc2 Use constant 7200 instead of TIMESTAMP_WINDOW for now
Until Bitcoin #9908 gets backported
2018-01-26 12:59:29 +01:00
Alexander Block
4d3856b5a7 Include test_dash.h instead of test_bitcoin.h 2018-01-26 12:59:29 +01:00
Alexander Block
d500d77c4a Use nBlockSize/nBlockMaxSize instead of nBlockWeight/nBlockMaxWeight 2018-01-26 12:59:29 +01:00
MarcoFalke
12770beb6b Merge #10310: [doc] Add hint about getmempoolentry to getrawmempool help.
3a0a5bc [doc] Add hint about getmempoolentry to getrawmempool help. (Karl-Johan Alm)

Tree-SHA512: 8327d7d7ad93296525fbf95b7a824e3525bde84653999f125afd845823eb39e3a03cd39725962ed949aa2b9ad207ecad6d287294fa321ff1a4d7fbd5a4b8560b
2018-01-26 12:59:29 +01:00
Pieter Wuille
631d9f92ea Merge #10309: Trivial: remove extra character from comment
3503716 Trivial: remove extra character from comment (CryptAxe)

Tree-SHA512: 66ee474945b4f9fd098cee0d031c1860c0777d4b05c609c0eaba32234209356b630766de30235b49d22cc5ea7cf2bb93410dea4466396369a0cdc0b631512a33
2018-01-26 12:59:29 +01:00
MarcoFalke
ed898f1793 Merge #10258: Fixed typo in documentation for merkleblock.h
dd07068 Fixed typo in documentation for merkleblock.h (Mikerah)

Tree-SHA512: 92655c8022eb33852c116da517b12bd17b3b668713cd85fe185a15245ea9810605626b1d0955fa117f7b56863e0a52b3a86dab42409332452b5eb72a7d34f30d
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
f7174fb655 Merge #10308: [wallet] Securely erase potentially sensitive keys/values
6c914ac [wallet] Securely erase potentially sensitive keys/values (Thomas Snider)

Tree-SHA512: 071d88c4093108d4e4eced35a6ffcebe3f499798194f5b1be661ffa5b78b5f55311667f6d2a72758d85290f61f958381ee95d380b9045ca18e9e1875f0e686c8
2018-01-26 12:59:29 +01:00