aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
AgeCommit message (Collapse)Author
2012-05-09Clean up warningsPieter Wuille
* Use -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameters * Remove xCXXFLAGS usage in makefile.unix * Fix several recent and older sign-compare warnings
2012-05-08Merge branch 'tmp-ipv6' into merge-ipv6Jeff Garzik
2012-05-08Merge pull request #1180 from jgarzik/sign-compareJeff Garzik
Fix final sign comparison warnings
2012-05-08Merge pull request #841 from sipa/getalltransactionsGregory Maxwell
gettransaction RPC for non-wallet transactions
2012-05-08Merge pull request #883 from sipa/loadblockGregory Maxwell
Add -loadblock to load from an external blk000?.dat file
2012-05-06Prevent stuck download: correct solutionPieter Wuille
Pull request #948 introduced a fix for nodes stuck on a long side branch of the main chain. The fix was non-functional however, as the additional getdata request was created in a first step of processing, but dropped in a second step as it was considered redundant. This commits fixes it by sending the request directly.
2012-05-05Bugfix: %-12I64d is not valid and causes the parameter to be skipped, use ↵Luke Dashjr
%12"PRI64d" instead
2012-05-04Support for multiple local addressesPieter Wuille
2012-05-04Add -seednode connections, and use this for -dnsseed + -proxydnsPieter Wuille
2012-05-01OpenBlockFile(): cast to eliminate signed/unsigned comparison warningJeff Garzik
nFile's null value is -1. Cast that to unsigned int, to avoid warning. Additionally, avoid nFile==0 because the first valid value is 1.
2012-04-30Check earlier for blocks with duplicate transactions. Fixes #1167v0.6.1rc2Gavin Andresen
2012-04-23Add casts for unavoidable signed/unsigned comparisonsJeff Garzik
At these code sites, it is preferable to cast rather than change a variable's type.
2012-04-23Test ScriptSigArgsExpected() for error, before accumulating return valueJeff Garzik
2012-04-23SigOp and orphan-tx constants and counts are always unsigned.Jeff Garzik
Fixes several sign-comparison warnings.
2012-04-22-loadblock to load from an external blk000?.dat filePieter Wuille
2012-04-18gettransaction RPC for non-wallet transactionsPieter Wuille
Works for wallet transactions, memory-pool transaction and block chain transactions. Available for all: * txid * version * locktime * size * coinbase/inputs/outputs * confirmations Available only for wallet transactions: * amount * fee * details * blockindex Available for wallet transactions and block chain transactions: * blockhash * time
2012-04-17Merge remote-tracking branch 'jgarzik/mempool'Pieter Wuille
2012-04-17Merge pull request #1117 from sipa/deadlockfixPieter Wuille
Fix potential deadlock
2012-04-17Further reduce header dependenciesPieter Wuille
This commit removes the dependency of serialize.h on PROTOCOL_VERSION, and makes this parameter required instead of implicit. This is much saner, as it makes the places where changing a version number can have an influence obvious.
2012-04-17Remove headers.hPieter Wuille
2012-04-17Merge pull request #1106 from jgarzik/sign-compareGavin Andresen
Fix many sign-comparison warnings found in bitcoin codebase
2012-04-17Fix potential deadlockPieter Wuille
Conflict: * cs_main in ProcessMessages() (before calling ProcessMessages) * cs_vSend in CNode::BeginMessage versus: * cs_vSend in ThreadMessageHandler2 (before calling SendMessages) * cs_main in SendMessages Even though cs_vSend is a try_lock, if it succeeds simultaneously with the locking of cs_main in ProcessMessages(), it could cause a deadlock.
2012-04-17main.cpp: replace tabs with spacesJeff Garzik
Sometimes they sneak in through the 'vi' door
2012-04-17AlreadyHave(): only hold lock during mapTransactions accessJeff Garzik
2012-04-17Merge pull request #1094 from jgarzik/already-have-lockingJeff Garzik
Locking fix for AlreadyHave()
2012-04-17Merge pull request #1081 from jgarzik/pongJeff Garzik
BIP 0031: pong message
2012-04-15Fix loop index var types, fixing many minor sign comparison warningsJeff Garzik
foo.size() typically returns an unsigned integral type; make loop variables match those types' signedness.
2012-04-15CTxMemPool: add helper methods, to reduce global mempool.mapTx accessesJeff Garzik
2012-04-15CTxMemPool: encapsulate AcceptToMemoryPoolJeff Garzik
2012-04-15CTxMemPool: encapsulate AddToMemoryPoolUnchecked(), RemoveFromMemoryPool(),Jeff Garzik
and nPooledTx
2012-04-15New class CTxMemPool, encapsulating TX memory pool data membersJeff Garzik
2012-04-15fix warnings: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]Wladimir J. van der Laan
2012-04-13Locking fix for AlreadyHave()Jeff Garzik
Access to mapTransactions[] must be guarded by cs_mapTransactions lock. Also, reformat long lines to make the switch statement more readable.
2012-04-13Database micro-optimization for "tx" network messageJeff Garzik
Open database once per "tx" message, rather than multiple times, in the case of orphan transaction presence. As a side effect, a now-unused CTransaction::AcceptToMemoryPool() variant is removed.
2012-04-12Replace several network protocol version numbers with named constantsJeff Garzik
stored in version.h. Also, a minor CAddress code reformat while we're in there, fixing some incorrect indentation.
2012-04-12Remove obsolete Win32 AffinityBugWorkaround()Jeff Garzik
Reference miner exists for testnet-in-a-box type situations, and as a reference. We don't care enough about highly optimized internal mining to keep workarounds like this.
2012-04-12BIP 0031: pong messageJeff Garzik
Add a pong message that is sent in reply to a ping. It echoes back a nonce field that is now added to the ping message. Send a nonce of zero in ping messages. Original author: Mike Hearn @ Google Modified Mike's change to introduce a mild form of protocol documentation in version.h.
2012-04-11Use filesystem::path instead of manual string tinkeringPieter Wuille
Where possible, use boost::filesystem::path instead of std::string or char* for filenames. This avoids a lot of manual string tinkering, in favor of path::operator/. GetDataDir is also reworked significantly, it now only keeps two cached directory names (the network-specific data dir, and the root data dir), which are decided through a parameter instead of pre-initialized global variables. Finally, remove the "upgrade from 0.1.5" case where a debug.log in the current directory has to be removed.
2012-04-10Merge pull request #1054 from sipa/buildinfoPieter Wuille
Build identification strings
2012-04-10Build identification stringsPieter Wuille
All client version information is moved to version.cpp, which optionally (-DHAVE_BUILD_INFO) includes build.h. build.h is automatically generated on supporting platforms via contrib/genbuild.sh, using git describe. The git export-subst attribute is used to put the commit id statically in version.cpp inside generated archives, and this value is used if no build.h is present. The gitian descriptors are modified to use git archive instead of a copy, to create the src/ directory in the output. This way, src/src/version.cpp will contain the static commit id. To prevent gitian builds from getting the "-dirty" marker in their git-describe generated identifiers, no touching of files or running sed on the makefile is performed anymore. This does not seem to influence determinism.
2012-04-09Use scoped locks instead of CRITICAL_BLOCKPieter Wuille
2012-04-04qtui.h/noui.h interface cleanupWladimir J. van der Laan
- rename wxMessageBox, remove redundant arguments to noui/qtui calls - also, add flag to force blocking, modal dialog box for disk space warning etc - clarify function naming - no more special MessageBox needed from AppInit2, as window object is created before calling AppInit2
2012-04-04support RPC stop and encryptwallet with UIWladimir J. van der Laan
2012-04-04remove unused CalledSetStatusBar and UIThreadCall notificationsWladimir J. van der Laan
2012-04-02Merge pull request #951 from TheBlueMatt/headerslimitGavin Andresen
Limit getheaders to a hard 2000.
2012-03-22Merge branch 'addrman' of https://github.com/sipa/bitcoinGavin Andresen
2012-03-21Remove -bip16 and -paytoscripthashtime command-line argumentsGavin Andresen
2012-03-21Merge pull request #948 from sipa/unstuckGavin Andresen
Prevent stuck block download in large reorganisations
2012-03-21More debug output for failed reorganizationsPieter Wuille
2012-03-21Prevent stuck block download in large reorganisationsPieter Wuille
In cases of very large reorganisations (hundreds of blocks), a situation may appear where an 'inv' is sent as response to a 'getblocks', but the last block mentioned in the inv is already known to the receiver node. However, the supplying node uses a request for this last block as a trigger to send the rest of the inv blocks. If it never comes, the block chain download is stuck. This commit makes the receiver node always request the last inv'ed block, even if it is already known, to prevent this problem.