* Disable salvagewallet in GUI
salvagewallet is known to cause problems and
it's way to powerful to let it be accessible in GUI
https://github.com/bitcoin/bitcoin/issues/7463
I have few reports from different users as well,
would be a disaster for them, glad we have autobackup...
* typo
* Overhaul of coin selection for mixing
DoAutomaticDenominating logic should be:
- check pre-conditions,
- check denominations and collaterals,
- try using existing queue,
- try creating new queue.
Currently coins are selected too early and conditions are not quite right.
This is partially due to the fact that we no longer merge old inputs
and thus we are no longer able to calculate thresholds correctly using
SelectCoinsDark. To do this in a proper way we should use balances i.e.
GetAnonymizableBalance etc. Another issue is that we should take fee into
account when we calculate such balancies and when we select coins we should
ask for a correct denom, not just the smallest one as a minimum value.
And finally there are two bugs.
SelectCoinsGrouppedByAddresses: shouldn't push items smaller than
the smallest denom into resulting vector.
SelectCoinsDark: should allow small inputs in where "small" is defined
by nValueMin, not by some arbitrary amount.
* apply fee assumption for non-denoms only
* fix
* remove const
If daemon crashes, it can't save latest block sometimes, so querying daemon
for presumably best/last hash would result in a list of all txes recognized by
this wallet as its own since genesis block which could be confusing,
to say at least. Same applies for typos etc. This should fix it.
Not sure why but such weird behaviour was the case since listsinceblock rpc was
initially introduced in Bitcoin 0.5 (Oct 5, 2011)
3a6e468d9a
* Implement RequestOrphanObjects
* Ensure governance objects are only requested from peers once per call
* Add gobject log messages
* Implemented CleanOrphanObjects
* Move governance maintenance functions from NewBlock to a time-based function
* Remove unused delcaration for mapAskedForGovernanceObject
* Only accept wd's that are more recent or have a higher hash than the current best
* Fix whitespace typo
* Relay current watchdog when lower priority ones are received
* Fix nHashWatchdogCurrent reset conditions
* expire previous current wd when a new one is found in UpdateCurrentWatchdog
* fail to process votes for expired or deleted object
* Add "enough data" stop conditions for gov sync
* fix:
- make sure condition is checked only once per tick
- let condition be fully used on resync (reset nTimeNoObjectsLeft)
* fix verification network behaviour:
- use up to 10 connections only
- save state (do not ask same nodes after restart)
- initiate on time based intervals (every 5 minutes), based not on new blocks (should keep connections alive longer)
* revert mWeAskedForVerification serialization
* send verify requests using MAX_POSE_CONNECTIONS as a step
* fix watchdogs:
- do not accept if CreationTime is out of bounds (using CreationTime, not local time now)
- do not sync expired
- fix disk serialization
* drop watchdogs early, avoid adding//removing
* clean mapWatchdogObjects when object is deleted via votes
* Few networking fixes:
- skip "masternode"/inbound connections for sync related processes
- do not sync gov data to other nodes until fully synced ourselves
- do not accept incoming connections until fully synced
* inbound connections could be harmful only if our node is a masternode
* same for CGovernanceManager::Sync
* Update for OpenSSL 1.1 API.
* Update qt/paymentrequestplus.cpp for OpenSSL 1.1 API.
* Fix missing # in if for qt/paymentrequestplus.cpp fix for OpenSSL 1.1 API change.
* Fix indentation in src/qt/paymentrequestplus.cpp.
* Fix crash on initial mixing step:
- skip nodes marked to be disconnected
- add/release ref to make sure pnode is not deleted in the middle of the process
* - fix copy/paste mistake (nTries)
- let ConnectNode manage ref for non-mn pnodeFound
* Add last ping time to masternode_info_t
* Use thread safe functions to access mnodeman in masternodelist.cpp
* Fix masternodelist widget locking
* Protect access to widget data from StartAlias button