Commit Graph

447 Commits

Author SHA1 Message Date
UdjinM6
4b128b1b94
Fix listaddressbalances (#1987) 2018-03-14 19:14:37 +03:00
UdjinM6
7d5223b5e4
Network-specific thresholds for required confirmations (IS) (#1962) 2018-03-10 15:35:09 +03:00
UdjinM6
ca3655f494
Fix some (potential dead)locks (#1977)
* Avoid locking cs_main in CMasternode/Ping/Broadcast

Deligate this to CMasternodeMan and use AssertLockHeld instead

* Ensure consistent locking order (cs_main, cs_wallet, mempool.cs, cs_instantsend) in CInstantSend while avoiding potential deadlocks at the same time

* Add missing locks in wallet

* Add missing locks in governance

* Fix cs_vPendingMasternodes vs cs_main potential deadlock

SendVerifyRequest no longer opens connection directly, so no cs_main is needed here
2018-03-09 17:15:48 +03:00
UdjinM6
9451782a04
RPC: Add listaddressbalances (#1972) 2018-03-08 15:18:06 +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
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
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
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
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
4528c735f4
Replace some instantsend/privatesend magic numbers with constants (#1924) 2018-02-12 15:48:09 +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
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
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
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
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
Alexander Block
c8e5c40ec3 Replace more example Dash addresses with invalid addresses 2018-01-29 11:16:05 +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
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
Wladimir J. van der Laan
e2225f37c2 Merge #10265: [wallet] [moveonly] Check non-null pindex before potentially referencing
c36ea69 [wallet] Make sure pindex is non-null before possibly referencing in LogPrintf call. (Karl-Johan Alm)

Tree-SHA512: a14c9f3e1228bca91977bea821c56a377d80889b41d250050c9be67aa93e460319a7cf1d4b63ee40f23b5a34159590f0e3fe15dc88698dc694c0c8098bd2db4d
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
c45c767f8e Merge #10294: [Wallet] unset change position when there is no change
7c58863 [Wallet] unset change position when there is no change on exact match (Gregory Sanders)

Tree-SHA512: ce8b9337e4132e32d80f954258d50938052c833a48e39431649d6adb16e3d18626a0ae5d300827e7fa397927fba72a1f066cb31af9b0a3ef7f1feb6024461626
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
a601206d3c Merge #10410: Fix importwallet edge case rescan bug
2a8e35a Fix importwallet edge case rescan bug (Russell Yanofsky)

Tree-SHA512: 59522c962290f9ef64436349d11183dd1fd829e515d1f5ec802b63dd813d04303e28d4f3ba38df77a6c151ee4c14f3ca5d3d82204c57456ac94054de62ae4bc7
2018-01-26 12:59:29 +01:00
MarcoFalke
b67fdbee96 Merge #10207: Clarify importprivkey help text ... example of blank label without rescan
c9e31c3 Clarify importprivkey help text with example of blank label without rescan Occasionally I waste a lot of time not remembering that the second parameter to importprivkey must be blank if you intend to stop rescan with "false" as the third parameter. (Warren Togami)

Tree-SHA512: 23781e1d6fd59a9d06d6e12ad10e8ed6641947b3e4a1f66c8fdb5d44cbd8f291e8f2a5e686aa9f9ba5e4bab8ca688caa17244e837f651546055ddf7cc8e7df8f
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
a16d3b0057 Merge #9829: Fix importmulti returning rescan errors for wrong keys
306bd72 Fix importmulti returning rescan errors for wrong keys (Russell Yanofsky)

Tree-SHA512: ae9998236cbd3ff749d6b5c716bd76c9cec386b0708583e4912e4e05bf4584545258e1d0543aa5445024d2b5decf859a64f40c6503029773366a0f9a9ddf9b88
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
39f08b6e66 Merge #9865: Change bitcoin address in RPC help message
83ac719 Change bitcoin address in RPC helpaddress to an invalid address, so people don't accidentally send coins there (like I did). (Marijn Stollenga)

Tree-SHA512: ca1163466a149d567b97efbfcfa8fdfe2d474245b4dd5a1a92555b4e87f8e99df5fee4cd79ef1ce6a98db2337846af78f37c2e6b31d02008b11fa0e151ce6590
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
7c3b8ec4bc Merge #9840: Update sendfrom RPC help to correct coin selection misconception
f81f0d0 Update sendfrom RPC help to correct coin selection misconception (Russell Yanofsky)
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
397c27ff9d Merge #9875: tests: Fix dangling pwalletMain pointer in wallet tests
75a1093 tests: Fix dangling pwalletMain pointer in wallet tests (Wladimir J. van der Laan)

Tree-SHA512: 7fb6e8385fe7d542f9ecb113a08d675ca9e84907a1939b3a6ad41318fda55bc999b9bc8ffc3f56cd8610ca49d0db982d3c793df7bbcb7eb9638f4483030db6a8
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
ac981ec3cc Merge #9773: Return errors from importmulti if complete rescans are not successful
e2e2f4c Return errors from importmulti if complete rescans are not successful (Russell Yanofsky)
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
199b07a892 Merge #9760: [wallet] Remove importmulti always-true check
ec1267f [wallet] Remove importmulti always-true check (Russell Yanofsky)
2018-01-26 12:59:29 +01:00
UdjinM6
054abdbfa4
Merge pull request #1867 from codablock/pr_backport_bitcoin_0.14-10
Backport missing PRs from Bitcoin 0.14 - Part 10
2018-01-26 14:55:56 +03:00
UdjinM6
88646bd0d0
Rename fMasterNode to fMasternodeMode to clarify its meaning and to avoid confusion with CNode::fMasternode (#1874) 2018-01-26 04:11:01 +03:00
Wladimir J. van der Laan
bb2c1624c9 Merge #9771: Add missing cs_wallet lock that triggers new lock held assertion
07afcd6 Add missing cs_wallet lock that triggers new lock held assertion (Russell Yanofsky)
2018-01-23 09:24:29 +01:00
Wladimir J. van der Laan
da8808fba0 Merge #9756: Return error when importmulti called with invalid address.
9acf25c Return error when importmulti called with invalid address. (Russell Yanofsky)
2018-01-23 09:24:29 +01:00
Wladimir J. van der Laan
eb4c5bac6d Merge #9227: Make nWalletDBUpdated atomic to avoid a potential race.
d63ff62 Make nWalletDBUpdated atomic to avoid a potential race. (Patrick Strateman)
2018-01-23 09:24:27 +01:00
Wladimir J. van der Laan
72a0d05d6b Merge #9378: [trivial] Add documentation for CWalletTx::fFromMe member.
39c77b0 Add documentation for CWalletTx::fFromMe member. (Russell Yanofsky)
2018-01-23 09:24:27 +01:00
Wladimir J. van der Laan
dcc251e2b7 Merge #9663: [RPC] clarify listunspent amount description
3eba88d clarify listunspent amount description (Gregory Sanders)
2018-01-23 09:24:27 +01:00
Alexander Block
8ad57c31fd Remove "using namespace std" from wallet.cpp 2018-01-23 09:24:25 +01:00
Wladimir J. van der Laan
daa8582b18 Merge #9615: Wallet incremental fee
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)
2018-01-23 09:24:03 +01:00
Alexander Block
b97eecc058 Fix review nits 2018-01-22 08:05:44 +01:00