| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
Exposes information about the feefilter the peer sets to us, so
that we can make better informed decisions when a transaction
does not get relayed.
|
| | |
|
| |
|
| |
Changed RPC port from 8332 (BTC) to 22555 (Dogecoin)
|
| |
|
|
|
|
|
|
|
| |
This roughly reverts the work done here that disabled auxpow generation in regtest: https://github.com/dogecoin/dogecoin/pull/1431/files\#diff-ccc24453c13307f815879738d3bf00eec351417537fbf10dde1468180cacd2f1R127-R137
This is a pretty severe functionality change since auxpow is critical to Dogecoin and wallet integrators need to be able to parse the extra data in auxpow blocks.
For future wallet integrators: Dogecoin follows similar schemes as Namecoin for the merged mining support and the spec is here: https://en.bitcoin.it/wiki/Merged_mining_specification
pr review: GetHash -> GetPoWHash
|
| | |
|
| | |
|
| |\
| |
| | |
Build on recent Linux
|
| | | |
|
| |/
|
|
|
|
|
|
|
| |
- Re-introduce Params.BIP65Height
- Fixate block 1854705 for testnet
- Fixate block 3464751 for mainnet
- Fixate block 1351 for regtest
- Stop using IsSuperMajority() in validation for BIP65
- Simplify RPC SoftForkMajorityDesc
|
| |
|
|
|
|
|
|
|
|
| |
automatic_pruning
Fix pruneheight help text.
Move fPruneMode block to match output ordering with help text.
Add functional tests for new fields in getblockchaininfo.
Rebase-from: bitcoin#b7dfc6c4
|
| | |
|
| |
|
|
| |
Change getauxblock to respond with a "target" field instead of "_target".
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
* Make most of the RPC tests pass
* Add AUXPoW rpc tests
- Tests the auxpow rpc interface `getauxblock`
- Tests consensus constraints for auxpow:
- Minimum block height
- Valid scrypt proof of work
- Foreign chain ID
|
| |
|
|
|
| |
Adds a wrapper around getauxblock to return boolean responses
for getauxblock rather than bip22 responses.
|
| | |
|
| |
|
| |
changing CAmount (is a int64_t) to arith_uint256 for nTotalAmount in CCoinsStats to prevent overflow
|
| |
|
|
|
|
|
|
|
| |
* Modify chain consensus parameters to be height aware
* Correct implementation of simplified rewards in parameters
* Correct max money
* Use base block version in IsSuperMajority() instead of full version
* Correct mining of blocks in AuxPoW tests
* Add in missing pre-AuxPoW consensus checks
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Introduce first estimates at BIP lock-in blocks
* Introduce Dogecoin BIP parameters
* Re-introduce supermajority rules for BIP65
* Add BIP65 supermajority rules
* Tighten v3 block constraints
* Don't enforce coinbase in v2 blocks
* Correct testnet majority params
* Change to using base version when checking supermajority
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Changes are as below:
Wrap CBlockHeader::nVersion into a new class (CBlockVersion). This allows to take care of interpreting the field into a base version, auxpow flag and the chain ID.
Update getauxblock.py for new 'generate' RPC call.
Add 'auxpow' to block JSON.
Accept auxpow as PoW verification.
Add unit tests for auxpow verification.
Add check for memory-layout of CBlockVersion.
Weaken auxpow chain ID checks for the testnet.
Allow Params() to overrule when to check the auxpow chain ID and for legacy blocks. Use this to disable the checks on testnet.
Introduce CPureBlockHeader.
Split the block header part that is used by auxpow and the "real" block header (that uses auxpow) to resolve the cyclic dependency between the two.
Differentiate between uint256 and arith_uint256.
This change was done upstream, modify the auxpow code.
Add missing lock in auxpow_tests.
Fix REST header check for auxpow headers.
Those can be longer, thus take that into account. Also perform the check actually on an auxpow header.
Correctly set the coinbase for getauxblock results.
Call IncrementExtraNonce in getauxblock so that the coinbase is actually initialised with the stuff it should be. (BIP30 block height and COINBASE_FLAGS.)
Implement getauxblock plus regression test.
Turn auxpow test into FIXTURE test.
This allows using of the Params() calls.
Move CMerkleTx code to auxpow.cpp.
Otherwise we get linker errors when building without wallet.
Fix rebase with BIP66.
Update the code to handle BIP66's nVersion=3.
Enforce that auxpow parent blocks have no auxpow block version.
This is for compatibility with namecoind. See also https://github.com/namecoin/namecoin/pull/199.
Move auxpow-related parameters to Consensus::Params.
|
| |
|
|
|
| |
Github-Pull: #10310
Rebased-From: 3a0a5bc2341ea6a453306f6fe1c065b937294cfb
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The setban() RPC was returning misleading or incorrect error
codes (for example RPC_CLIENT_NODE_ALREADY_ADDED when an invalid IP
address was entered). This commit fixes those error codes:
- RPC_CLIENT_INVALID_IP_OR_SUBNET should be returned if the client
enters an invalid IP address or subnet.
This commit also updates the test cases to explicitly test the error code.
This commit also adds a testcase for trying to setban on an invalid subnet.
Github-Pull: #9853
Rebased-From: a012087667edb35a36f25ae06b42b1644d80e649
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
RPCs in blockchain.cpp were returning misleading or incorrect error
codes (for example getblock() returning RPC_INTERNAL_ERROR when the
block had been pruned). This commit fixes those error codes:
- RPC_INTERNAL_ERROR should not be returned for application-level
errors, only for genuine internal errors such as corrupted data.
- RPC_METHOD_NOT_FOUND should not be returned in response to a
JSON request for an existing method.
Those error codes have been replaced with RPC_MISC_ERROR or
RPC_INVALID_PARAMETER as appropriate.
Github-Pull: #9853
Rebased-From: c1190963b388590dc0a346bf625c7e84f69cee8d
|
| |
|
|
|
| |
Github-Pull: #10204
Rebased-From: 883154cbcb306dcc6205fe349c7056ced1f6c5fc
|
| |
|
|
|
|
|
|
|
|
|
|
| |
There is no point in even hashing a submitted block which doesn't have
a coinbase transaction.
This also results in more useful error reporting on corrupted input.
Thanks to rawodb for the bug report.
Github-Pull: #10146
Rebased-From: 4f15ea102d15eb237b63464725508dc509e98819
|
| |
|
|
|
|
|
| |
Accidentally removed in 40b556d3742a1f65d67e2d4c760d0b13fe8be5b7
Github-Pull: #10139
Rebased-From: 4b87973c32bcaa5fa7509793e4f0c4f4f981f21b
|
| |
|
|
|
| |
Github-Pull: #10084
Rebased-From: fa558532192ca0bb519f811ee14df6037413b89f
|
| |
|
|
|
| |
Github-Pull: #10037
Rebased-From: 05a9f22358be27c08f7e164d05eeeaf0386073cb
|
| |
|
|
|
|
|
|
|
| |
Segwit's version bit will be signalled for all invocations of CreateNewBlock,
and not specifying segwit only will cause CreateNewBlock to skip transactions
with witness from being selected.
Github-Pull: #9955
Rebased-From: abe7b3d3abe10e3554b770f40824174b3b217490
|
| |
|
|
|
|
|
| |
don't accidentally send coins there (like I did).
Github-Pull: #9865
Rebased-From: 83ac719d34f98cc1d3efa6ece2b95145bcde8775
|
| |
|
|
|
| |
Github-Pull: #9711
Rebased-From: 9949ebfa6a548260858df429f4d0e716e0a26065
|
| |
|
|
|
| |
Github-Pull: #9619
Rebased-From: 9fc7f0bce94f1cea0239b1543227f22a3f3b9274
|
| |
|
|
|
|
|
| |
They're unused and produce nasty deprecation warnings
Github-Pull: #9786
Rebased-From: 3301587dc5c7937141282f3799592d1e398495fb
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
When importing a watch-only address over importmulti with a specific timestamp,
the wallet's nTimeFirstKey is currently set to 1. After this change, the
provided timestamp will be used and stored as metadata associated with
watch-only key. This can improve wallet performance because it can avoid the
need to scan the entire blockchain for watch only addresses when timestamps are
provided.
Also adds timestamp to validateaddress return value (needed for tests).
Fixes #9034.
|
| |
|
|
|
| |
Easiest way to test this was to expose the timestamp via the validateaddress
RPC (which was already looking up and returning key metadata).
|
| |
|
|
|
|
| |
This silently skips trying to merge signatures from inputs which
do not exist from transactions provided to signrawtransaction,
instead of hitting an assert.
|
| |\
| |
| |
| | |
8fc6989 Remove redundant semicolons (practicalswift)
|
| | | |
|
| |\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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)
|
| | | | |
|
| | | | |
|
| |\ \ \
| |/ /
|/| |
| | | |
99464bc net: Consistently use GetTimeMicros() for inactivity checks (Suhas Daftuar)
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The use of mocktime in test logic means that comparisons between
GetTime() and GetTimeMicros()/1000000 are unreliable since the former
can use mocktime values while the latter always gets the system clock;
this changes the networking code's inactivity checks to consistently
use the system clock for inactivity comparisons.
Also remove some hacks from setmocktime() that are no longer needed,
now that we're using the system clock for nLastSend and nLastRecv.
|
| |\ \ \
| |/ /
|/| |
| | |
| | |
| | | |
cc0243a [RPC] bumpfee (mrbandrews)
52dde66 [wallet] Add include_unsafe argument to listunspent RPC (Russell Yanofsky)
766e8a4 [wallet] Add IsAllFromMe: true if all inputs are from wallet (Suhas Daftuar)
|