aboutsummaryrefslogtreecommitdiff
path: root/src/main.h
AgeCommit message (Collapse)Author
2012-02-16Fix issue #848 : broken mining on testnetGavin Andresen
2012-02-07Update all copyrights to 2012Gavin Andresen
2012-02-07Increase client version to 0.6Gavin Andresen
2012-02-06-bip16 option (default: 1) to support / not support BIP 16. And bumped ↵Gavin Andresen
default BIP16 switchover date from Feb 15 to Mar 1
2012-01-27Bitcoin-Qt signmessage GUI (pull request #582)Luke Dashjr
2012-01-25Merge pull request #773 from gavinandresen/p2shSigOpCountGavin Andresen
Simplify counting of P2SH sigops to match BIP 16
2012-01-23Only store transactions with missing inputs in the orphan pool.Gavin Andresen
All previous versions of bitcoin could store some types of invalid transactions in the orphan-transaction list.
2012-01-20Simplify counting of P2SH sigops to match BIP 16 (thanks to Matt Corallo for ↵Gavin Andresen
prompting this). This also removes an un-needed sigops-per-byte check when accepting transactions to the memory pool (un-needed assuming only standard transactions are being accepted). And it only counts P2SH sigops after the switchover date.
2012-01-14Separated COINBASE_FLAGS out into main.h and made RPC getmemorypool return itForrest Voight
2012-01-13Refactored ConnectInputs, so valid-transaction-checks are done before ↵Gavin Andresen
ECDSA-verifying signatures.
2012-01-13Replace OP_EVAL (BIP 12) with Pay-to-script-hash (BIP 16).Gavin Andresen
2012-01-12collect more info on tx pooling and block finding for getmininginfoLuke Dashjr
2011-12-23New RPC commands: getblockhash and getblockGavin Andresen
2011-12-21Revert "Use standard C99 (and Qt) types for 64-bit integers"Wladimir J. van der Laan
This reverts commit 21d9f36781604e4ca9fc35dc65265593423b73e9.
2011-12-20Use standard C99 (and Qt) types for 64-bit integersLuke Dashjr
2011-12-20Merge pull request #677 from luke-jr/minfee_modesGavin Andresen
API: GetMinFee modes
2011-12-20Merge branch 'op_eval'Gavin Andresen
2011-12-19Use std::numeric_limits<> for typesafe INT_MAX/etcGavin Andresen
2011-12-19Use block times for 'hard' OP_EVAL switchover, and refactored EvalScriptGavin Andresen
so it takes a flag for how to interpret OP_EVAL. Also increased IsStandard size of scriptSigs to 500 bytes, so a 3-of-3 multisig transaction IsStandard.
2011-12-19OP_EVAL implementationGavin Andresen
OP_EVAL is a new opcode that evaluates an item on the stack as a script. It enables a new type of bitcoin address that needs an arbitrarily complex script to redeem.
2011-12-19Merge pull request #574 from sipa/dumpprivkeyGavin Andresen
Dumpprivkey
2011-12-19Implement BIP 14 : separate protocol version from client versionGavin Andresen
2011-12-17Preparations for key import/exportPieter Wuille
2011-12-14GetMinFee takes a mode parameter (GMF_{BLOCK,RELAY,SEND}) instead of fForRelayLuke Dashjr
2011-12-01Orphan block fill-up-memory attack preventionGavin Andresen
2011-12-01Moved checkpoints out of main, to prep for using them to help prevent DoS ↵Gavin Andresen
attacks
2011-10-07Fix build on windows and macGavin Andresen
Replaced all occurrences of #if* __WXMSW__ with WIN32, and all occurrences of __WXMAC_OSX__ with MAC_OSX, and made sure those are defined appropriately in the makefile and bitcoin-qt.pro.
2011-10-01Added RPC call 'getmemorypool' that provides everything needed to construct ↵Forrest Voight
a block with a custom generation transaction and submit a solution getmemorypool [data] If [data] is not specified, returns data needed to construct a block to work on: "version" : block version "previousblockhash" : hash of current highest block "transactions" : contents of non-coinbase transactions that should be included in the next block "coinbasevalue" : maximum allowable input to coinbase transaction, including the generation award and transaction fees "time" : timestamp appropriate for next block "bits" : compressed target of next block If [data] is specified, tries to solve the block and returns true if it was successful.
2011-09-26Merge pull request #517 from gavinandresen/DoSpreventionGavin Andresen
Denial-of-service prevention
2011-09-21Transaction/Block denial-of-service detection/responseGavin Andresen
2011-09-16Merge branch 'master' of https://github.com/bitcoin/bitcoinWladimir J. van der Laan
2011-09-11clarify function signature (GetNumBlocksOfPeers) and use number of 'frozen' ↵Wladimir J. van der Laan
blocks as initial value for number of peer blocks
2011-09-07Merge branch 'unique_coinbase' of ↵Gavin Andresen
git://gitorious.org/~Luke-Jr/bitcoin/luke-jr-bitcoin into unique_coinbase
2011-09-06Bugfix: Use timestamp in coinbase rather than "bits", needed to ensure ↵Luke Dashjr
coinbase txn is unique even if address is the same
2011-09-02update to work with new lock system, add protocol.* to build systemWladimir J. van der Laan
2011-08-19Start moving protocol-specific code to protocol.[ch]ppGiel van Schijndel
Move CMessageHeader from net.h to protocol.[ch]pp, with the implementation in the .cpp compilation unit (compiling once is enough). This commit does *not* and should not modify *any* code, it only moves it from net.h and splits it across protocol.cpp and protocol.hpp. Indentation changes aside the closest thing to a modification of code is the addition of the 'TODO' comment (the execution of which requires code modifications and thus doesn't belong in this commit). Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-19Make some global variables less-global (static)Giel van Schijndel
Explicitly make these global variables less-global to reduce the maximum scope of this global state. In my experience global variables tend to be a major source of bugs. As such the less accessible they are the less likely they are to be the source of a bug. Signed-off-by: Giel van Schijndel <me@mortis.eu>
2011-08-09Unify copyright notices.Matt Corallo
To a variation on: // Copyright (c) 2009-2010 Satoshi Nakamoto // Copyright (c) 2011 The Bitcoin developers
2011-07-17get rid of mapPubKeysPieter Wuille
Make CKeyStore's interface work on uint160's instead of pubkeys, so no separate global mapPubKeys is necessary anymore.
2011-07-12Merge pull request #352 from TheBlueMatt/newencJeff Garzik
Wallet Private Key Encryption (on CWallet)
2011-07-13Make an invalid addrIncoming so that old clients crash.Matt Corallo
This prevents old clients from opening, and thus corrupting or otherwise causing harm to encrypted wallets.
2011-07-09remove magic number: change threshold for nLockTime to constantWladimir J. van der Laan
2011-06-24Merge branch 'totalblocksestimate1' of https://github.com/laanwj/bitcoinGavin Andresen
2011-06-19add GetTotalBlocksEstimate() function, move magic number to constantWladimir J. van der Laan
2011-06-15CWallet classPieter Wuille
* A new class CKeyStore manages private keys, and script.cpp depends on access to CKeyStore. * A new class CWallet extends CKeyStore, and contains all former wallet-specific globals; CWallet depends on script.cpp, not the other way around. * Wallet-specific functions in CTransaction/CTxIn/CTxOut (GetDebit, GetCredit, GetChange, IsMine, IsFromMe), are moved to CWallet, taking their former 'this' argument as an explicit parameter * CWalletTx objects know which CWallet they belong to, for convenience, so they have their own direct (and caching) GetDebit/... functions. * Some code was moved from CWalletDB to CWallet, such as handling of reserve keys. * Main.cpp keeps a set of all 'registered' wallets, which should be informed about updates to the block chain, and does not have any notion about any 'main' wallet. Function in main.cpp that require a wallet (such as GenerateCoins), take an explicit CWallet* argument. * The actual CWallet instance used by the application is defined in init.cpp as "CWallet* pwalletMain". rpc.cpp and ui.cpp use this variable. * Functions in main.cpp and db.cpp that are not used by other modules are marked static. * The code for handling the 'submitorder' message is removed, as it not really compatible with the idea that a node is independent from the wallet(s) connected to it, and obsolete anyway.
2011-06-15move wallet code to separate filePieter Wuille
This introduces two new source files, keystore.cpp and wallet.cpp with corresponding headers. Code is moved from main and db, in a preparation for a follow-up commit which introduces the classes CWallet and CKeyStore.
2011-06-14Merge pull request #226 from jordanlewis/betterheadersJeff Garzik
Optimize header dependencies; improve Makefile dependency graph
2011-06-12Faster timeout when connectingPieter Wuille
Use non-blocking connects, and a select() call to wait a predefined time (5s by default, but configurable with -timeout) for either success or failure. This allows much more connections to be tried per time unit. Based on a patch by phantomcircuit.
2011-06-10Lower minimum relay TX fee to 0.0001 (from 0.0005) BTC.Jeff Garzik
2011-06-05Reduce minimum TX fee for new transactions, to 0.0005.Jeff Garzik