aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
AgeCommit message (Collapse)Author
2013-08-24Fix out-of-bounds checkPieter Wuille
2013-08-20Update the bloom state on the real object, not the temporary one.Gregory Maxwell
This resulted in just passing all transactions to filtered wallets which worked surprisingly well, except where it didn't.
2013-08-20Performance optimization for bloom filters.Gregory Maxwell
This reduces a peer's ability to attack network resources by using a full bloom filter, but without reducing the usability of bloom filters. It sets a default match everything filter for peers and it generalizes a prior optimization to cover more cases.
2013-08-15Mempool consistency checkPieter Wuille
2013-08-15Fix non-standard disconnected transactions causing mempool orphansPieter Wuille
2013-08-12Merge pull request #2658 from TheBlueMatt/forkalertGavin Andresen
Detect any sufficiently long fork and alert the user just like any other alert
2013-08-10do not call BuildMerkleTree() unnecessarily twiceCozz Lovan
2013-08-06Merge pull request #2871 from gavinandresen/simplify_maporphanGavin Andresen
Simplify storage of orphan transactions, fix CVE-2013-4627
2013-08-05Merge pull request #2851 from TheBlueMatt/masterGavin Andresen
Prepare for mempool testing in pull-tester and fix multi-block transaction resurrection
2013-08-02Simplify storage of orphan transactionsGavin Andresen
Orphan transactions were stored as a CDataStream pointer; this changes the mapOrphanTransactions data structures to store orphans as a CTransaction. This also fixes CVE-2013-4627 by always re-serializing transactions before relaying them.
2013-08-02Revert "Truncate oversize 'tx' messages before relaying/storing."Gavin Andresen
This reverts commit c40a5aaaf484855a4350fd702e8e72fd21a68155.
2013-07-31Move internal miner/block creation to separate miner.cpp module.Jeff Garzik
Public functions referenced elsewhere are added to miner.h.
2013-07-31Minor miner fixes (hey hey it's fun to say)Jeff Garzik
* Fix UpdateCoins() definition in main.h * Remove pwalletMain reference from BitcoinMiner(), as it is passed a wallet argument.
2013-07-31Remove #define loop from util.hGavin Andresen
Replace the loop macro with while (true). The #define caused problems for Qt.
2013-07-23Fix multi-block reorg transaction resurrectionMatt Corallo
2013-07-23Don't use checkpoints and accept nonstd txn on -regtestMatt Corallo
2013-07-22Better warning/"alert" messages for large-work forks.Matt Corallo
2013-07-22Call the -alertnotify script when we see a long or invalid fork.Matt Corallo
2013-07-22Detect any sufficiently long fork and add a warning.Matt Corallo
Such a fork is defined as being at least 7 blocks long and having a tip which is within 72 blocks of our best block.
2013-07-10Merge pull request #2743 from jgarzik/reject-reasonJeff Garzik
Log reason for non-standard transaction rejection
2013-06-25Merge pull request #2209 from CodeShark/WalletRegistrationLocksPieter Wuille
Wallet registration locks in main.cpp + UnregisterAllWallet() function
2013-06-25Merge pull request #2792 from sipa/coreimplJeff Garzik
Move core implementations to core.cpp
2013-06-25Truncate oversize 'tx' messages before relaying/storing.Peter Todd
Fixes a memory exhaustion attack on low-memory peers.
2013-06-25Move core implementations to core.cppPieter Wuille
2013-06-24Added locks on the setpwalletRegistered functions in main.cpp and added an ↵Eric Lombrozo
UnregisterAllWallets function.
2013-06-23Pulled AcceptBlock out of CBlock.Eric Lombrozo
2013-06-23Pulled CheckBlock out of CBlock.Eric Lombrozo
2013-06-23Pulled AddToBlockIndex out of CBlock.Eric Lombrozo
2013-06-23Pulled ConnectBlock out of CBlock.Eric Lombrozo
2013-06-23Pulled DisconnectBlock out of CBlock.Eric Lombrozo
2013-06-23Moved ReadBlockFromDisk implementation to main.cppEric Lombrozo
2013-06-23Moved CBlock::ReadFromDisk out of CBlock to functions ReadBlockFromDisk in ↵Eric Lombrozo
main.h
2013-06-23Moved WriteBlockToDisk implementation from main.h to main.cppEric Lombrozo
2013-06-23Moved CBlock::WriteToDisk out of CBlock to inline function WriteBlockToDisk ↵Eric Lombrozo
in main.h
2013-06-22Merge pull request #2778 from jgarzik/rpc-verifydbJeff Garzik
RPC: add 'verifychain' to verify chain database at runtime
2013-06-23Log reason for non-standard transaction rejectionJeff Garzik
2013-06-22Merge pull request #2660 from TheBlueMatt/gmfrefactorPieter Wuille
Refactor fee rules to make them actually readable.
2013-06-19RPC: add 'verifychain', to verify chain database at runtimeJeff Garzik
2013-06-19Pass check level, check depth to VerifyDB()Jeff Garzik
2013-06-19Introduce a CChainParameters singleton class and regtest mode.Mike Hearn
The new class is accessed via the Params() method and holds most things that vary between main, test and regtest networks. The regtest mode has two purposes, one is to run the bitcoind/bitcoinj comparison tool which compares two separate implementations of the Bitcoin protocol looking for divergence. The other is that when run, you get a local node which can mine a single block instantly, which is highly convenient for testing apps during development as there's no need to wait 10 minutes for a block on the testnet.
2013-06-19Move implementation of some CBlockLocator methodsMike Hearn
Move out of main.h to improve compile times and add documentation for what the methods do.
2013-06-14Refactor fee rules to make them actually readable.Matt Corallo
This (nearly) doesn't change fee rules at all: * To make it into the fee transaction area, the dPriority comparison changed from < to <= * We now just ignore transactions > MAX_BLOCK_SIZE/4 instead of doing some calculations to require increasingly large fees as size increases.
2013-06-13Remove broken option to skip input checking for wallet txn.Matt Corallo
2013-06-05Using boost::signals2 to message main from net.cpp.Eric Lombrozo
2013-06-05Moved UpdateTime out of CBlockHeader and moved CBlockHeader into core.Eric Lombrozo
2013-06-05Removed AcceptToMemoryPool method from CTransaction. This method belongs to ↵Eric Lombrozo
the mempool instance. Removed AreInputsStandard from CTransaction, made it a regular function in main. Moved CTransaction::GetOutputFor to CCoinsViewCache. Moved GetLegacySigOpCount and GetP2SHSigOpCount out of CTransaction into regular functions in main. Moved GetValueIn and HaveInputs from CTransaction into CCoinsViewCache. Moved AllowFree, ClientCheckInputs, CheckInputs, UpdateCoins, and CheckTransaction out of CTransaction and into main. Moved IsStandard and IsFinal out of CTransaction and put them in main as IsStandardTx and IsFinalTx. Moved GetValueOut out of CTransaction into main. Moved CTxIn, CTxOut, and CTransaction into core. Added minimum fee parameter to CTxOut::IsDust() temporarily until CTransaction is moved to core.h so that CTxOut needn't know about CTransaction.
2013-06-05Moved CInPoint to core. Removed GetMinFee from CTransaction and made it a ↵Eric Lombrozo
regular function in main.
2013-06-05Moved PushGetBlocks to main.cpp to eliminate dependence of net.cpp on ↵Eric Lombrozo
CBlockLocator.
2013-06-04build: add global var for whether or not the gui is enabledCory Fields
2013-06-01remove GetBoolArg() fDefault parameter defaulting to falsePhilip Kaufmann
- explicitly set the default of all GetBoolArg() calls - rework getarg_test.cpp and util_tests.cpp to cover this change - some indentation fixes - move macdockiconhandler.h include in bitcoin.cpp to the "our headers" section