aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
AgeCommit message (Collapse)Author
2015-04-08Merge pull request #5969Wladimir J. van der Laan
f14e687 Chainparams: Decouple CAlert from CChainParams (Jorge Timón)
2015-04-04Chainparams: Decouple CAlert from CChainParamsJorge Timón
2015-04-01Add additional block index consistency checksSuhas Daftuar
This adds more tests to CheckBlockIndex: - HAVE_DATA is true iff nTx > 0 - BLOCK_VALID_TRANSACTIONS is true iff nTx > 0 - BLOCK_VALID_TRANSACTIONS is true for a block and all parents iff nChainTx > 0
2015-04-01Merge pull request #5900Wladimir J. van der Laan
3fcfbc8 Add a consistency check for the block chain data structures (Pieter Wuille)
2015-03-30Merge pull request #5940Wladimir J. van der Laan
0f5954c Regression test for ResendWalletTransactions (Gavin Andresen)
2015-03-27Add a consistency check for the block chain data structuresPieter Wuille
This adds a -checkblockindex (defaulting to true for regtest), which occasionally does a full consistency check for mapBlockIndex, setBlockIndexCandidates, chainActive, and mapBlocksUnlinked.
2015-03-26Consensus: Refactor: Decouple pow.o from chainparams.oJorge Timón
2015-03-24Regression test for ResendWalletTransactionsGavin Andresen
Adds a regression test for the wallet's ResendWalletTransactions function, which uses a new, hidden RPC command "resendwallettransactions." I refactored main's Broadcast signal so it is passed the best-block time, which let me remove a global variable shared between main.cpp and the wallet (nTimeBestReceived). I also manually tested the "rebroadcast unconfirmed every half hour or so" functionality by: 1. Running bitcoind -connect=0.0.0.0:8333 2. Creating a couple of send-to-self transactions 3. Connect to a peer using -addnode 4. Waited a while, monitoring debug.log, until I see: ```2015-03-23 18:48:10 ResendWalletTransactions: rebroadcast 2 unconfirmed transactions``` One last change: don't bother putting ResendWalletTransactions messages in debug.log unless unconfirmed transactions were actually rebroadcast.
2015-03-24Includes: Refactor: Move CValidationInterface and CMainSignals out of mainJorge Timón
2015-03-24Merge pull request #5890Wladimir J. van der Laan
cd3d67c Fix InvalidateBlock to add chainActive.Tip to setBlockIndexCandidates (Alex Morcos)
2015-03-17Merge pull request #5860Wladimir J. van der Laan
9c27379 Reduce fingerprinting through timestamps in 'addr' messages. (Pieter Wuille)
2015-03-17Reduce fingerprinting through timestamps in 'addr' messages.Pieter Wuille
Suggested by Jonas Nick.
2015-03-13Fix InvalidateBlock to add chainActive.Tip to setBlockIndexCandidatesAlex Morcos
2015-03-12fix InvalidateBlock to repopulate setBlockIndexCandidatesAlex Morcos
2015-03-11Merge pull request #5871Wladimir J. van der Laan
3aa0130 test: remove fSkipProofOfWork (Wladimir J. van der Laan) 59bd89f test: Remove UNITTEST params (Wladimir J. van der Laan)
2015-03-11Merge pull request #5864Wladimir J. van der Laan
bb6acff fix possible block db breakage during re-index (Cory Fields)
2015-03-10fix possible block db breakage during re-indexCory Fields
When re-indexing, there are a few cases where garbage data may be skipped in the block files. In these cases, the indices are correctly written to the index db, however the pointer to the next position for writing in the current block file is calculated by adding the sizes of the valid blocks found. As a result, when the re-index is finished, the index db is correct for all existing blocks, but the next block will be written to an incorrect offset, likely overwriting existing blocks. Rather than using the sum of all valid blocks to determine the next write position, use the end of the last block written to the file. Don't assume that the current block is the last one in the file, since they may be read out-of-order.
2015-03-09test: remove fSkipProofOfWorkWladimir J. van der Laan
Not used, and REGTEST already allows creating blocks at the lowerst possible difficulty.
2015-03-09Merge pull request #5852Wladimir J. van der Laan
51598b2 Reinitialize state in between individual unit tests. (Pieter Wuille)
2015-03-09Merge pull request #5442Wladimir J. van der Laan
dca799e Ignore getaddr messages on Outbound connections. (Ivan Pustogarov)
2015-03-07Merge pull request #5151Pieter Wuille
eec3713 make CMessageHeader a dumb storage class (Cory Fields)
2015-03-06src/main.cpp: endian compatibility in packet checksum checkWladimir J. van der Laan
2015-03-03Reinitialize state in between individual unit tests.Pieter Wuille
This changes the TestingSetup fixture to be per-unit-test rather than global. Most tests don't need it, so it's only invoked in a few.
2015-02-25make CMessageHeader a dumb storage classCory Fields
It shouldn't know or care about bitcoind's chain param selection
2015-02-24Better fingerprinting protection for non-main-chain getdatas.Pieter Wuille
With headers-first we can compare against the best header timestamp, rather than using checkpoints which require code updates to maintain.
2015-02-16Merge #5710: Add more information to errors in ReadBlockFromDiskPieter Wuille
f5791c6 Add more information to errors in ReadBlockFromDisk (Wladimir J. van der Laan)
2015-02-09Merge #5699: Split logic to undo txin's off DisconnectBlock.Wladimir J. van der Laan
eb1c2cd Split logic to undo txin's off DisconnectBlock. (Daniel Kraft)
2015-02-08Sanitize command strings before logging them.Gregory Maxwell
Normally bitcoin core does not display any network originated strings without sanitizing or hex encoding. This wasn't done for strcommand in many places. This could be used to play havoc with a terminal displaying the logs, especially with printtoconsole in use. Thanks to Evil-Knievel for reporting this issue.
2015-02-06Ignore getaddr messages on Outbound connections.Ivan Pustogarov
The only time when a client sends a "getaddr" message is when he esatblishes an Outbound connection (see ProcessMessage() in src/main.cpp). Another bitcoin client is expected to receive a "getaddr" message only on Inbound connection. Ignoring "gettaddr" requests on Outbound connections can resolve potential privacy issues (and as was said such request normally do not happen anyway).
2015-02-05Add more information to errors in ReadBlockFromDiskWladimir J. van der Laan
A lot of times, disk corruption problems appear here. To facilitate debugging and troubleshooting, add position information to the error messages.
2015-02-03Split logic to undo txin's off DisconnectBlock.Daniel Kraft
Instead, create a separate function that applies the undo operation of a CTxInUndo object onto a CCoinsViewCache. This method is used from DisconnectBlock.
2015-02-03Merge pull request #5732Wladimir J. van der Laan
1371e6f Change "insane" to "absurd" (referring to high fees) in text strings and identifiers. (Daira Hopwood)
2015-02-03Merge pull request #5647Wladimir J. van der Laan
3ff735c Increase block download timeout base from 10 to 20 minutes. (Gregory Maxwell)
2015-02-03Merge pull request #5713Wladimir J. van der Laan
bf6cdeb Increase coverage of DERSIG edge cases (Pieter Wuille) 819bcf9 Add RPC test for DERSIG BIP switchover logic (Pieter Wuille) 5a47811 BIP66 changeover logic (Pieter Wuille) 092e9fe Example unit tests from BIP66 (Pieter Wuille) 80ad135 Change IsDERSignature to BIP66 implementation (Pieter Wuille)
2015-02-02Avoid storing a reference passed to SignatureChecker constructorsPieter Wuille
2015-02-02Use separate SignatureChecker for CMutableTransactionPieter Wuille
2015-02-01BIP66 changeover logicPieter Wuille
2015-01-31Change "insane" to "absurd" (referring to high fees) in text strings and ↵Daira Hopwood
identifiers. Note that this will also require translation changes in Transifex for the key "A fee higher than %1 is considered an insanely high fee." which is now "A fee higher than %1 is considered an absurdly high fee." Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2015-01-31TRIVIAL: fix misleading commentVitalii Demianets
2015-01-31Remove whitespaces before double colon in errors and logsPavel Janík
2015-01-12Increase block download timeout base from 10 to 20 minutes.Gregory Maxwell
This harmonizes the block fetch timeout with the existing ping timeout and eliminates a guaranteed eventual failure from congestion collapse for a network operating right at its limit. It's unlikely that we wouldn't suffer other failures if we were really anywhere near the network's limit, and a complete avoidance of congestion collapse risk requires (I think) an exponential back-off. So this isn't a major concern, but I think it's also useful for reducing the complexity of understanding out timeouts.
2015-01-12Merge pull request #5608Wladimir J. van der Laan
9161303 Introduce 10 minute block download timeout (Pieter Wuille)
2015-01-08Merge pull request #5589Wladimir J. van der Laan
23f3435 Rename MAX_TX_SIGOPS to MAX_STANDARD_TX_SIGOPS to match similar policy constant MAX_STANDARD_TX_SIZE (Luke Dashjr)
2015-01-07Introduce 10 minute block download timeoutPieter Wuille
This will disconnect peers that do not transfer a block in 10 minutes, plus 5 minutes for every previously queued block with validated headers (accomodating downstream bandwidth down to a few kilobytes per second - below that the node would have trouble staying synchronized anyway).
2015-01-07Merge pull request #5521Wladimir J. van der Laan
0ea28ba Reject non-final txs even in testnet/regtest (Peter Todd)
2015-01-07Merge pull request #5597Wladimir J. van der Laan
e413457 Catch LevelDB errors during flush (Pieter Wuille) 02bced1 Bugfix: only track UTXO modification after lookup (Pieter Wuille)
2015-01-07Merge pull request #5535Wladimir J. van der Laan
1c52aad Require sufficent priority for relay of free transactions (Pieter Wuille)
2015-01-06Merge pull request #5513Wladimir J. van der Laan
856e862 namespace: drop most boost namespaces and a few header cleanups (Cory Fields) 9b1ab86 namespace: drop boost::assign altogether here (Cory Fields) a324199 namespace: remove boost namespace pollution (Cory Fields)
2015-01-06Merge pull request #5564Wladimir J. van der Laan
de236f5 clarify obscure uses of EvalScript() (Pavel Vasin)
2015-01-05Use arith_uint256 where necessaryWladimir J. van der Laan
Also add conversion from/to uint256 where needed.