aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #6519Wladimir J. van der Laan2015-08-114-77/+80
|\ | | | | | | | | | | | | | | | | 7f1f8f5 Move mempool rejections to new debug category (Wladimir J. van der Laan) 66daed5 Add information to errors in ConnectBlock, CheckBlock (Wladimir J. van der Laan) 6cab808 Remove most logging from transaction validation (Wladimir J. van der Laan) 9003c7c Add function to convert CValidationState to a human-readable message (Wladimir J. van der Laan) dc58258 Introduce REJECT_INTERNAL codes for local AcceptToMempool errors (Wladimir J. van der Laan) fbf44e6 Add debug message to CValidationState for optional extra information (Wladimir J. van der Laan)
| * Move mempool rejections to new debug categoryWladimir J. van der Laan2015-08-112-2/+2
| | | | | | | | | | | | Move mempool rejections to debug category `mempoolrej`, to make it possible to show them without enabling the entire category `mempool` which is high volume.
| * Add information to errors in ConnectBlock, CheckBlockWladimir J. van der Laan2015-08-111-3/+6
| | | | | | | | | | | | | | | | Add detailed state information to the errors, as it is no longer being logged downstream. Also add the state information to mempool rejection debug message in ProcessMessages.
| * Remove most logging from transaction validationWladimir J. van der Laan2015-08-111-59/+35
| | | | | | | | | | | | | | | | | | | | | | | | Remove unnecessary direct logging in CheckTransaction, AcceptToMemoryPool, CheckTxInputs, CScriptCheck::operator() All status information should be returned in the CValidationState. Relevant debug information is also added to the CValidationState using the recently introduced debug message. Do keep the "BUG! PLEASE REPORT THIS! ConnectInputs failed against MANDATORY but not STANDARD flags" error as it is meant to appear as bug in the log.
| * Add function to convert CValidationState to a human-readable messageWladimir J. van der Laan2015-08-111-0/+8
| | | | | | | | | | It is necessary to be able to concisely log a validation state. Convert CValidationState to a human-readable message for logging.
| * Introduce REJECT_INTERNAL codes for local AcceptToMempool errorsWladimir J. van der Laan2015-08-112-9/+20
| | | | | | | | | | | | Add status codes specific to AcceptToMempool procession of transactions. These can never happen due to block validation, and must never be sent over the P2P network. Add assertions where appropriate.
| * Add debug message to CValidationState for optional extra informationWladimir J. van der Laan2015-08-061-4/+9
| | | | | | | | | | | | Add a field `strDebugMessage` which can be passed to DoS or Invalid, and queried using GetDebugMessage() to add extra troubleshooting information to the validation state.
* | Merge pull request #6346Wladimir J. van der Laan2015-08-107-16/+111
|\ \ | | | | | | | | | | | | 627468d Add support for data-based outputs (OP_RETURN) to bitcoin-tx. (Pavel Janík) d707853 Add OP_RETURN support in createrawtransaction RPC call, add tests. (Pavel Janík)
| * | Add support for data-based outputs (OP_RETURN) to bitcoin-tx.Pavel Janík2015-08-065-0/+66
| | |
| * | Add OP_RETURN support in createrawtransaction RPC call, add tests.Pavel Janík2015-08-062-16/+45
| | |
* | | Merge pull request #6534Wladimir J. van der Laan2015-08-102-29/+59
|\ \ \ | | | | | | | | | | | | | | | | 9493803 Revert "Revert "Assert on probable deadlocks if the second lock isnt try_lock"" (Cory Fields) 605433f locks: don't lock cs_wallet before making rpc calls (Cory Fields)
| * | | Revert "Revert "Assert on probable deadlocks if the second lock isnt try_lock""Cory Fields2015-08-071-10/+39
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit a4fe57da6207c1e5691a1e843d22db571f3f0186. The issue here should be fixed by the previous commit.
| * | | locks: don't lock cs_wallet before making rpc callsCory Fields2015-08-071-19/+20
| | | |
* | | | Add some const declarations where they are appropriate.Daniel Kraft2015-08-084-15/+15
|/ / / | | | | | | | | | | | | Declare some arguments of functions as "const" pointers where they are not meant to be modified.
* | | [Qt] show client user agent in debug windowPhilip Kaufmann2015-08-074-22/+54
| | |
* | | Merge pull request #4587Wladimir J. van der Laan2015-08-075-7/+297
|\ \ \ | | | | | | | | | | | | ed166df [Qt] allow users to set -onion via GUI (Philip Kaufmann)
| * | | [Qt] allow users to set -onion via GUIPhilip Kaufmann2015-07-245-7/+297
| | | | | | | | | | | | | | | | | | | | - also allow users to see, if the default proxy (-proxy) is used for reaching peers via IPv6 or Tor
* | | | Merge pull request #6505Wladimir J. van der Laan2015-08-0724-119/+422
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | df9c2ee [Qt] replace wifi icon with network symbol (Marco) 9142867 [QT] cleanup icons (Marco)
| * | | | [Qt] replace wifi icon with network symbolMarco2015-08-0410-70/+331
| | | | |
| * | | | [QT] cleanup iconsMarco2015-08-0414-49/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Cleanup SVG code * Unify design ("Typicons" seem to have round edges) * Fix transparency issue with clock5.png
* | | | | Merge pull request #6377Wladimir J. van der Laan2015-08-071-2/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | c433828 Handle no chain tip available in InvalidChainFound() (Ross Nicoll)
| * | | | | Handle no chain tip available in InvalidChainFound()Ross Nicoll2015-07-221-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | Handle the case where no chain tip is available, in InvalidChainFound(). This fixes a null pointer deference when running unit tests, if the genesis block or block validation code is broken.
* | | | | | Merge pull request #6527Wladimir J. van der Laan2015-08-071-2/+2
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | | | | | | | 231c560 Use unique name for AlertNotify tempfile (Casey Rodarmor)
| * | | | | Use unique name for AlertNotify tempfileCasey Rodarmor2015-08-051-2/+2
| | |_|_|/ | |/| | |
* | | | | Revert "Assert on probable deadlocks if the second lock isnt try_lock"Wladimir J. van der Laan2015-08-061-39/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Disabling this for now - too many intermittent Travis issues. This reverts commit 0fcc4e1e04082daf6e97e05bfb26e4b94e54ea53 (pull #5515).
* | | | | Merge pull request #6177Wladimir J. van der Laan2015-08-062-4/+12
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | ef8dfe4 Prevent block.nTime from decreasing (Mark Friedenbach)
| * | | | Prevent block.nTime from decreasingMark Friedenbach2015-05-272-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Under some circumstances it is possible for there to be a significant, discontinuous jump in a node's clock value. On mining nodes, this can result in block templates which are no longer valid due to time-based nLockTime constraints. UpdateTime() is modified so that it will never decrease a block's nLockTime, thereby preventing such invalidations.
* | | | | Merge pull request #5913Wladimir J. van der Laan2015-08-053-8/+13
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 5922b67 Add assertion and cast before sending reject code (Wladimir J. van der Laan) a651403 Add absurdly high fee message to validation state (for RPC propagation) (Shaul Kfir)
| * | | | | Add assertion and cast before sending reject codeWladimir J. van der Laan2015-08-051-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This gets rid of a warning. Add an assertion to make sure that the reject code is in the correct range for the network protocol (if it is outside the range it must be a bug)
| * | | | | Add absurdly high fee message to validation state (for RPC propagation)Shaul Kfir2015-06-303-7/+11
| | | | | |
* | | | | | Merge pull request #6462Wladimir J. van der Laan2015-08-055-4/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7b79cbd limit total length of user agent comments (Pavol Rusnak) 557f8ea implement uacomment config parameter which can add comments to user agent as per BIP-0014 (Pavol Rusnak)
| * | | | | | limit total length of user agent commentsPavol Rusnak2015-08-055-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Reworked-By: Wladimir J. van der Laan <[email protected]>
| * | | | | | implement uacomment config parameterPavol Rusnak2015-07-312-2/+2
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | which can add comments to user agent as per BIP-0014
* | | | | | Merge pull request #6489Wladimir J. van der Laan2015-08-051-0/+12
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | f261f19 Give a better error message if system clock is bad (Casey Rodarmor)
| * | | | | | Give a better error message if system clock is badCasey Rodarmor2015-08-031-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #2007 This checks to see if the system clock appears to be bad and gives a helpful error message. If the user's clock is set incorrectly, hopefully they'll abort, fix it, and then save themselves a fruitless resync.
* | | | | | | Merge pull request #6503Pieter Wuille2015-08-043-3/+5
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 19dd40a Consolidate individual references to the current maximum peer connection value of 125 into a single constant declaration. (Matt Quinn)
| * | | | | | | Consolidate individual references to the current maximum peer connectionMatt Quinn2015-08-033-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | value of 125 into a single constant declaration.
* | | | | | | | Merge pull request #6504Wladimir J. van der Laan2015-08-048-40/+48
|\ \ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | | | | | | | | | | 9ca7857 Rationalize currency unit to "BTC" (Ross Nicoll)
| * | | | | | | Rationalize currency unit to "BTC"Ross Nicoll2015-08-038-40/+48
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously various user-facing strings have used inconsistent currency units "BTC", "btc" and "bitcoins". This adds a single constant and uses it for each reference to the currency unit. Also adds a description of the unit for --maxtxfee, and adds the missing "amount" field description to the (deprecated) move RPC command.
* | | | | | | Merge pull request #6498Wladimir J. van der Laan2015-08-035-23/+109
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a8d0407 Move recentRejects initialization to top of InitBlockIndex (Wladimir J. van der Laan) 0847d9c Keep track of recently rejected transactions (Peter Todd) d741371 Only use randomly created nonces in CRollingBloomFilter. (Pieter Wuille) d2d7ee0 Make CRollingBloomFilter set nTweak for you (Peter Todd) a3d65fe Reuse vector hashing code for uint256 (Pieter Wuille) bbe4108 Add uint256 support to CRollingBloomFilter (Peter Todd)
| * | | | | | | Move recentRejects initialization to top of InitBlockIndexWladimir J. van der Laan2015-07-311-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids that premature return in the condition that a new chain is initialized results in NULL pointer errors due to recentReject not being constructed. Also add assertions where it is used.
| * | | | | | | Keep track of recently rejected transactionsPeter Todd2015-07-281-9/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Nodes can have divergent policies on which transactions they will accept and relay. This can cause you to repeatedly request and reject the same tx after its inved to you from various peers which have accepted it. Here we add rolling bloom filter to keep track of such rejections, clearing the filter every time the chain tip changes. Credit goes to Alex Morcos, who created the patch that this code is based on. Original code by Peter Todd. Refactored to not construct the filter at startup time by Pieter Wuille.
| * | | | | | | Only use randomly created nonces in CRollingBloomFilter.Pieter Wuille2015-07-273-13/+14
| | | | | | | |
| * | | | | | | Make CRollingBloomFilter set nTweak for youPeter Todd2015-07-275-12/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While CBloomFilter is usually used with an explicitly set nTweak, CRollingBloomFilter is only used internally. Requiring every caller to set nTweak is error-prone and redundant; better to have the class handle that for you with a high-quality randomness source. Additionally when clearing the filter it makes sense to change nTweak as well to recover from a bad setting, e.g. due to insufficient randomness at initialization, so the clear() method is replaced by a reset() method that sets a new, random, nTweak value.
| * | | | | | | Reuse vector hashing code for uint256Pieter Wuille2015-07-271-14/+4
| | | | | | | |
| * | | | | | | Add uint256 support to CRollingBloomFilterPeter Todd2015-07-272-0/+24
| | | | | | | |
* | | | | | | | Merge pull request #6284Wladimir J. van der Laan2015-08-032-39/+30
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c6455c7 doc: mention change to option parsing behavior in release notes (Wladimir J. van der Laan) c38c49d Fix argument parsing oddity with -noX (Wladimir J. van der Laan)
| * | | | | | | | Fix argument parsing oddity with -noXWladimir J. van der Laan2015-07-272-39/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `bitcoind -X -noX` ends up, unintuitively, with `X` set. (for all boolean options X) This result is due to the odd two-pass processing of arguments. This patch fixes this oddity and simplifies the code at the same time.
* | | | | | | | | Merge pull request #6356Wladimir J. van der Laan2015-08-031-11/+16
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f0cba6f Delay initial pruning until after wallet init (Adam Weiss)
| * | | | | | | | | Delay initial pruning until after wallet initAdam Weiss2015-07-291-11/+16
| | |_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't prune until any wallet rescanning has taken place to avoid potentially pruning blocks that the wallet rescan may need.