aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #1231 from patricklodder/1.10-majority-v2-constraintsRoss Nicoll2015-08-101-3/+6
|\ | | | | Re-enable SuperMajority triggered activation for v2 block constraints
| * Re-enable SuperMajority triggered activation for v2 block constraintsPatrick Lodder2015-08-101-3/+6
| | | | | | | | | | | | | | | | Start validating v2 blocks when there is a v3 supermajority, because v2 clients (1.5->1.8) had supermajority checks disabled. This is needed for future-proofing, so that a currently accepted, but invalid v2 block will also be accepted on newer nodes.
* | Enable block constraints properlyPatrick Lodder2015-08-101-20/+17
| | | | | | | | | | BIP16 and BIP30 have both been enabled on Dogecoin since inception and should not be conditional.
* | Replace print icon with Typeicons equivalentRoss Nicoll2015-08-071-0/+0
| |
* | Add paper wallet generator to QT walletAndymeows2015-08-0720-3/+805
|/
* Merge pull request #1227 from kaykurokawa/1.10-devPatrick Lodder2015-08-074-2/+13
|\ | | | | changing CAmount (is a int64_t) to arith_uint256 for nTotalAmount
| * changing CAmount (is a int64_t) to arith_uint256 for nTotalAmount in ↵ukurokawa2015-08-044-2/+13
| | | | | | | | CCoinsStats to prevent overflow
* | Merge pull request #1220 from rnicoll/1.10-paymentprotocolMax K.2015-08-062-13/+15
|\ \ | | | | | | Revised payment request handling to use genesis block hash
| * | Revised payment request handling to use genesis block hash instead of ↵Ross Nicoll2015-08-062-13/+15
| | | | | | | | | | | | | | | | | | | | | network name Revised payment request handling to use genesis block hash instead of network name, enabling support for more networks that just Bitcoin main and test net.
* | | Update time-based constantsRoss Nicoll2015-08-042-15/+15
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | This updated various time-based constants to more closely reflect values appropriate to Dogecoin: * Number of blocks to look back for BIP 66 enforcement is doubled on main net (to about a day and a half's worth, vs 5 days on Bitcoin), and raised to 1,000 on testnet (bringing it up to the same quantity as Bitcoin testnet). * BIP 66 enforcement cut-offs are scaled up appropriate. * Minimum number of blocks and blockchain size are increased for pruning. In comparison to Bitcoin this uses 24 hours as a minimum, rather than 48, although given blocks are rarely full this likely reflects a lot longer in reality.
* | Set regtest coinbase maturity for easier maths in RPC testslangerhans2015-08-011-0/+1
|/
* Merge pull request #1217 from rnicoll/1.10-checkpoints-seedsMax K.2015-08-011-13/+7
|\ | | | | Update checkpoints
| * Update checkpointsRoss Nicoll2015-07-301-13/+7
| |
* | Merge pull request #1213 from langerhans/1.10-dev-maturityRoss Nicoll2015-07-317-14/+17
|\ \ | | | | | | Minor fixes to concensus relevant parameters
| * | Move COINBASE_MATURITY to the consensus parameterslangerhans2015-07-317-13/+14
| | |
| * | Make RegTest use simplified rewards for easier test vector setup and use ↵langerhans2015-07-311-1/+3
| |/ | | | | | | short block times
* | Merge pull request #1204 from rnicoll/1.10-feesMax K.2015-07-3111-19/+78
|\ \ | |/ |/| Add Dogecoin current fee calculation logic
| * Add Dogecoin current fee calculation logicRoss Nicoll2015-07-3111-19/+78
| | | | | | | | | | | | | | | | Introduces 1 COIN/kb fees, rounded up to the next 1 COIN. Disable free transactions Dust outputs incur a 1 COIN additional fee Add unit tests for fee calculation Update existing unit tests with higher transaction values so that transactions are still standard
* | Add chain height when fetching consensus parameters in initializationRoss Nicoll2015-07-301-1/+1
| | | | | | | | | | Add chain height when fetching consensus parameters in initialization, this code was missed in the first patch as it was disabled at the time.
* | Merge pull request #1207 from rnicoll/1.10-bitcoinMax K.2015-07-305-11/+16
|\ \ | | | | | | Bring client up to date with Bitcoin Core 0.11.0
| * | Advance pindexLastCommonBlock for blocks in chainActiveSuhas Daftuar2015-07-291-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | This prevents an edge case where a block downloaded and pruned in-between successive calls to FindNextBlocksToDownload could cause the block to be unnecessarily re-requested. Github-Pull: #6233 Rebased-From: 3e9143386a90e508c8d41719294db11264f5f0a0
| * | fix crash on shutdown when e.g. changing -txindex and abort actionPhilip Kaufmann2015-07-292-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - fixes #3136 - the problem is related to Boost path and a static initialized internal pointer - using a std::string in CDBEnv::EnvShutdown() prevents the problem - this removes the boost::filesystem::path path field from CDBEnv Github-Pull: #6282 Rebased-From: 0ce30eaa36295447c6e7f8d16a05798c746fe28a
| * | Add an alternate location of endian.h headerAndriy Voskoboinyk2015-07-291-0/+2
| | | | | | | | | | | | | | | Github-Pull: #6246 Rebased-From: 0640a5eb60b06de61f873fd88ae0252f5a11c339
| * | Revert "Disable partition check for now, it triggers too often (issue #6251)"Wladimir J. van der Laan2015-07-291-2/+2
| | | | | | | | | | | | | | | | | | Re-enable partition check, it should be safe again after #6256. This reverts commit 3eada74d6f4720e650c67461c04c3aafdeaff21e.
* | | Merge pull request #1206 from rnicoll/1.10-txdbMax K.2015-07-304-10/+32
|\ \ \ | | | | | | | | Add Scrypt hash and AuxPoW header to index database
| * | | Add Scrypt hash and AuxPoW header to index databaseRoss Nicoll2015-07-264-10/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add Scrypt hash and AuxPoW header to index database so that index can be validated (a check that both Litecoin and Namecoin disable for simplicity). The index format is incompatible with 1.8, as a result, however, and guidelines on performing the upgrade will need to be prepared. Given scope of the change, it may be advisable for services to prepare bootstrap files and destroy existing index databases entirely before reindexing. To discuss.
* | | | Merge pull request #1208 from rnicoll/1.10-simplified-rewardsMax K.2015-07-294-2/+10
|\ \ \ \ | |_|/ / |/| | | Remove hard coded switch on whether simplified rewards are used.
| * | | Remove hard coded switch on whether simplified rewards are used.Ross Nicoll2015-07-274-2/+10
| |/ /
* | / Minor AuxPoW fixesRoss Nicoll2015-07-283-2/+9
| |/ |/| | | | | | | | | Replaced references to Namecoin with Dogecoin Set chain ID when constructing a new block to be mined Added assignment overload so that assigning one BlockVersion to another does a full copy.
* | Use block height 0 when checking for genesis blockRoss Nicoll2015-07-261-2/+2
|/ | | | | | There is no previous block when validating the genesis block as part of contextual checks, so block height cannot be used. Consensus parameters are now taken from height 0 for the genesis check, and from block height only if the it's not the genesis block.
* Update Python test address and key values to match Dogecoin format.Ross Nicoll2015-07-191-4/+4
|
* Disable payment protocol very large value test, as it's impossible to exceed ↵Ross Nicoll2015-07-191-2/+3
| | | | maximum Dogecoin in a payment request.
* Litecoin: Fix zeitgeist2 attack thanks to Lolcust and ArtForz. This fixes an ↵coblee2015-07-191-1/+7
| | | | issue where a 51% attack can change difficulty at will. Go back the full period unless it's the first retarget after genesis.
* Minor Dogecoin consensus fixesRoss Nicoll2015-07-196-25/+19
| | | | | | | Updated maximum coins to match Dogecoin. Updated protocol version to disable connections to pre-AuxPoW clients. Disable version 2 block requirement Update coinbase maturity to match Dogecoin
* Modify chain consensus parameters to be height awareRoss Nicoll2015-07-1914-90/+256
|
* Adapt AuxPoW to DogecoinRoss Nicoll2015-07-1015-159/+160
| | | | | | | | Changed AuxPoW parent block hashing to use Scrypt rather than SHA256 hash. Update chain parameters to match Dogecoin Move CheckProofOfWork into dogecoin.cpp and rename it to CheckAuxPowProofOfWork. Add operator overrides to CBlockVersion so that naive usage operates on the underlying version without chain ID or flags. Modify RPC mining to more closely match existing submitblock() structure
* Merge AuxPoW support from NamecoreDaniel Kraft2015-07-0527-222/+1473
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Includes the following commits: commit 2ea1b5cd8cf2bdd08e43ae39fb76352eebe14895 commit f2a8220c34275f022f02d81e9e84d4cec33bd51c commit 84b8b56113e6057b0253475b83e797dc1fed2eed commit 8471d5db221f145f5a40022ed1897c1b996b628e commit 2f125ad0a67e1b8f71b18a14a3b41d7e577391d1 commit e01dbc3608703b4cb4e9882738125f2b7816cdb8 commit f0421312631cd44669f9f84d339a0c470b4423b9 commit 1fd522db5dfddfd0e1b0c794b82fae2cc7bdb099 commit 71f63ad99f70ff6461c795fd728aea16aa1008f8 commit a7c44d98a8ded4df0e8455c4c5629b1a5b303bbf commit e1d7b4fc15addf3dfeb3853fa66230a8bdacd75f commit d016f2fa02572fd340129176b942b3f19bd5260b commit f4716e5a168a697afce854a37350fdae0988bdd8 commit 03a575e3b13bf06cbb0a007d6672b05d2085c26e commit d7ea37444bd9e9ac461a3dda0b16afefd160b062 commit db22affa01e050ff847a12e20c83b88952d80b59 commit 9b7e14986655f914b2d0903ca1d79367c92c6c7e commit e21034f9c124893d5b9631e9ca231b0b9ede3d52 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.
* [tests] fix partition alerts for DogecoinPatrick Lodder2015-07-051-9/+9
| | | | | | | Partitioning is tested over 4h and 100 blocks are insufficient to test this for Dogecoin. We need 640 blocks in 4h for the "abnormally high" alert test, I've found a set of 800 blocks to test over providing sufficient margin.
* Further unit test correctionsRoss Nicoll2015-07-057-49/+53
| | | | | | | | | | | | | Replace RPC and deterministic signatures in unit tests with Dogecoin values. While conventionally I'd use an alternative implementation for these, as RFC 6979 compliant signature generation isn't terribly common, and there's no reason to suspect we've modified this code, I'm going to assert that it's good enough to test that the code doesn't provide different values. Correct BIP32 key headers for Dogecoin, also by repacking the data. Disabled Bitcoin PoW tests, but left code in place to simplify later merges. These are replaced by the Dogecoin PoW tests.
* [tests] use dogecoin fixtures pt1Patrick Lodder2015-07-037-680/+689
| | | | | | | | | uses our test fixtures for: - alerts - base58 - keys - main - miner
* Added Digishield support and unit testsRoss Nicoll2015-06-284-4/+157
|
* Add Dogecoin block subsidy calculations.Ross Nicoll2015-06-287-2/+159
|
* Added Scrypt mining support based on Dogecoin 1.9 work.Ross Nicoll2015-06-281-11/+17
|
* Litecoin: Scrypt n=1024 Pow hash based upon Colin Percival's Tarnsnap (2009)Warren Togami2015-06-2810-2/+565
| | | | | | Modified by Artforz, coblee, pooler, wtogami, Nikolay Belikov, Adrian Gallagher miner.cpp changes stripped during merge to Dogecoin
* port dogecoin base chainparamsPatrick Lodder2015-06-272-77/+85
|
* Fix scheduler build with some boost versions.Cory Fields2015-06-161-1/+3
| | | | | | | | Some boost versions have a conflicting overload of wait_until that returns void. Explicitly use a template here to avoid hitting that overload. Github-Pull: #6285 Rebased-From: 72bf90d770ce5b2653fd482928646cd6a9f5f6d7
* translation update pre-rc2Wladimir J. van der Laan2015-06-1570-1659/+2419
|
* Use best header chain timestamps to detect partitioningGavin Andresen2015-06-154-14/+16
| | | | | | | | | | | The partition checking code was using chainActive timestamps to detect partitioning; with headers-first syncing, it should use (and with this pull request, does use) pIndexBestHeader timestamps. Fixes issue #6251 Github-Pull: #6256 Rebased-From: 65b94545036ae6e38e79e9c7166a3ba1ddb83f66
* Add option `-alerts` to opt out of alert systemWladimir J. van der Laan2015-06-153-1/+8
| | | | | | | | | | | | | Make it possible to opt-out of the centralized alert system by providing an option `-noalerts` or `-alerts=0`. The default remains unchanged. This is a gentler form of #6260, in which I went a bit overboard by removing the alert system completely. I intend to add this to the GUI options in another pull after this. Github-Pull: #6274 Rebased-From: 02a6702a82a5b00e0e0351041dd3267308b7f319
* Fix getbalance *Tom Harding2015-06-151-3/+3
| | | | | | | | | | | | | Chance "getbalance *" not to use IsTrusted. The method and result now match the "getbalance <specific-account>" behavior. In particular, "getbalance * 0" now works. Also fixed a comment -- GetGalance has required 1 confirmation for many years, and the default "getbalance *" behavior matches that. Github-Pull: #6276 Rebased-From: 7d6a85ab5b1dc96e0f3f6f835f27bb81ba2af919