aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | | | | | | | | Merge #7856: Only send one GetAddr response per connection.Wladimir J. van der Laan2016-04-153-0/+10
|\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 66b0724 Only send one GetAddr response per connection. (Gregory Maxwell)
| * | | | | | | | | | | | | Only send one GetAddr response per connection.Gregory Maxwell2016-04-113-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This conserves resources from abusive peers that just send getaddr in a loop. Also makes correlating addr messages against INVs less effective.
* | | | | | | | | | | | | | Merge #7877: Change mapRelay to store CTransactionsWladimir J. van der Laan2016-04-153-21/+8
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 38c3102 Change mapRelay to store CTransactions (Pieter Wuille)
| * | | | | | | | | | | | | | Change mapRelay to store CTransactionsPieter Wuille2016-04-143-21/+8
| | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | Merge #6215: add bip32 pub key serializationWladimir J. van der Laan2016-04-156-12/+71
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 90604f1 add bip32 pubkey serialization (Jonas Schnelli)
| * | | | | | | | | | | | | | | add bip32 pubkey serializationJonas Schnelli2016-04-146-12/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CExtPubKey should be serializable like CPubKey
* | | | | | | | | | | | | | | | [test] bctest.py: Revert faa41eeMarcoFalke2016-04-141-2/+1
|/ / / / / / / / / / / / / / /
* | | | | | | | | | | | | | | Merge #7874: Improve AlreadyHaveWladimir J. van der Laan2016-04-141-1/+3
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | c6cb6f7 Avoid unnecessary database access for unknown transactions (Alex Morcos)
| * | | | | | | | | | | | | | | Avoid unnecessary database access for unknown transactionsAlex Morcos2016-04-131-1/+3
| | | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | | Merge #7853: [qa] py2: Unfiddle strings into bytes explicitlyWladimir J. van der Laan2016-04-141-1/+2
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | faa41ee [qa] py2: Unfiddle strings into bytes explicitly (MarcoFalke)
| * | | | | | | | | | | | | | | | [qa] py2: Unfiddle strings into bytes explicitlyMarcoFalke2016-04-101-1/+2
| | | | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | | | Merge #7812: Tiny refactor of `IsRBFOptIn`, avoid exceptionWladimir J. van der Laan2016-04-143-16/+19
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4f7c959 Refactor IsRBFOptIn, avoid exception (Jonas Schnelli)
| * | | | | | | | | | | | | | | | | Refactor IsRBFOptIn, avoid exceptionJonas Schnelli2016-04-063-16/+19
| | |_|_|_|_|_|/ / / / / / / / / / | |/| | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | | | Merge #7842: RPC: do not print minping time in getpeerinfo when no ping ↵Wladimir J. van der Laan2016-04-141-5/+7
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | received yet 62a6486 RPC: do not print ping info in getpeerinfo when no ping received yet, fix help (Pavel Janík)
| * | | | | | | | | | | | | | | | | RPC: do not print ping info in getpeerinfo when no ping received yet, fix helpPavel Janík2016-04-091-5/+7
| | |_|_|_|_|_|/ / / / / / / / / / | |/| | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | | | Merge #7846: Clean up lockorder data of destroyed mutexesWladimir J. van der Laan2016-04-142-23/+65
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5eeb913 Clean up lockorder data of destroyed mutexes (Pieter Wuille)
| * | | | | | | | | | | | | | | | Clean up lockorder data of destroyed mutexesPieter Wuille2016-04-102-23/+65
| | |_|/ / / / / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The lockorder potential deadlock detection works by remembering for each lock A that is acquired while holding another B the pair (A,B), and triggering a warning when (B,A) already exists in the table. A and B in the above text are represented by pointers to the CCriticalSection object that is acquired. This does mean however that we need to clean up the table entries that refer to any critical section which is destroyed, as it memory address can potentially be used for another unrelated lock in the future. Implement this clean up by remembering not only the pairs in forward direction, but also backward direction. This allows for fast iteration over all pairs that use a deleted CCriticalSection in either the first or the second position.
* | | | | | | | | | | | | | | | Merge #7862: Use txid as key in mapAlreadyAskedForWladimir J. van der Laan2016-04-143-5/+5
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7e91f63 Use txid as key in mapAlreadyAskedFor (Suhas Daftuar)
| * | | | | | | | | | | | | | | | Use txid as key in mapAlreadyAskedForSuhas Daftuar2016-04-113-5/+5
| | |_|_|_|/ / / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we used the CInv that would be sent to the peer announcing the transaction as the key, but using the txid instead allows us to decouple the p2p layer from the application logic (which relies on this map to avoid duplicate tx requests).
* | | | | | | | | | | | | | | | Merge #7849: tests: add varints_bitpatterns testWladimir J. van der Laan2016-04-141-0/+21
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4521f00 tests: add varints_bitpatterns test (Wladimir J. van der Laan)
| * | | | | | | | | | | | | | | | tests: add varints_bitpatterns testWladimir J. van der Laan2016-04-091-0/+21
| | |/ / / / / / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current tests for varint only check that serialization-deserialization is a roundtrip. That is a useful test, but it is also good to check for some exact bit patterns, to prevent a code change that changes the serialization format from going undetected. As the varint functions are templated, also check with different types.
* | | | | | | | | | | | | | | | Merge #7850: Removed call to `TryCreateDirectory` from `GetDefaultDataDir` ↵Wladimir J. van der Laan2016-04-141-3/+1
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in `src/util.cpp`. 41dbc48 Removed call to `TryCreateDirectory` from `GetDefaultDataDir` in `src/util.cpp`. (Alexander Regueiro)
| * | | | | | | | | | | | | | | | Removed call to `TryCreateDirectory` from `GetDefaultDataDir` in `src/util.cpp`.Alexander Regueiro2016-04-131-3/+1
| | |/ / / / / / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | See https://github.com/bitcoin/bitcoin/issues/7845#issuecomment-207684728. Also refactored `GetDefaultDataDir` function to return path for Mac in one expression.
* | | | | | | | | | | | | | | | Merge #7818: Refactor script testsWladimir J. van der Laan2016-04-146-2124/+2128
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dde46d3 Merge script_valid and script_invalid tests (Pieter Wuille) 009b503 Get rid of expect in script_tests as it's implied by scripterror (Pieter Wuille) 76da761 Make script_error a mandatory 4th field for script_tests (Pieter Wuille) 269281b Fix some misconstructed tests (Pieter Wuille) d03e466 Fix formatting of NOPs for generated script tests (Pieter Wuille) c7c6641 Fix JSON pretty printing in script_tests (Pieter Wuille)
| * | | | | | | | | | | | | | | | Merge script_valid and script_invalid testsPieter Wuille2016-04-054-1203/+1143
| | | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | | Get rid of expect in script_tests as it's implied by scripterrorPieter Wuille2016-04-051-8/+9
| | | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | | Make script_error a mandatory 4th field for script_testsPieter Wuille2016-04-053-1167/+1200
| | | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | | Fix some misconstructed testsPieter Wuille2016-04-053-12/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They claimed to be testing P2SH scripts with non-push scriptSigs, but 1) they were not enabling P2SH 2) they have push-only scriptSigs Fix this, and add a few more related cases.
| * | | | | | | | | | | | | | | | Fix formatting of NOPs for generated script testsPieter Wuille2016-04-051-2/+2
| | | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | | Fix JSON pretty printing in script_testsPieter Wuille2016-04-051-4/+16
| | |_|_|/ / / / / / / / / / / / | |/| | | | | | | | | | | | | |
* | | | | | | | | | | | | | | | Merge #7863: getblockchaininfo: make bip9_softforks an object, not an array.Wladimir J. van der Laan2016-04-141-8/+6
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d12760b rpc-tests: handle KeyError nicely in test_framework.py (Rusty Russell) 85c807c getblockchaininfo: make bip9_softforks an object, not an array. (Rusty Russell)
| * | | | | | | | | | | | | | | | getblockchaininfo: make bip9_softforks an object, not an array.Rusty Russell2016-04-131-8/+6
| | |/ / / / / / / / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can't change "softforks", but it seems far more logical to use tags in an object rather than using an "id" field in an array. For example, to get the csv status before, you need to iterate the array to find the entry with 'id' field equal to "csv": jq '.bip9_softforks | map(select(.id == "csv"))[] | .status' Now: jq '.bip9_softforks.csv.status' There is no issue with fork names being incompatible with JSON tags, since we're selecting them ourselves. Signed-off-by: Rusty Russell <[email protected]>
* | | | | | | | | | | | | | | | Merge #7796: [amount] Add support for negative fee ratesWladimir J. van der Laan2016-04-143-9/+51
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|/ / / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | facf5a4 [amount] tests: Fix off-by-one mistake (MarcoFalke) fa2da2c [amount] Add support for negative fee rates (MarcoFalke) 11114a6 [amount] test negative fee rates and full constructor (MarcoFalke)
| * | | | | | | | | | | | | | | [amount] tests: Fix off-by-one mistakeMarcoFalke2016-04-091-1/+1
| | | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | | [amount] Add support for negative fee ratesMarcoFalke2016-04-082-9/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently negative fee rates are not supported on archs of 64-bit or more
| * | | | | | | | | | | | | | | [amount] test negative fee rates and full constructorMarcoFalke2016-04-081-0/+29
| | |_|_|/ / / / / / / / / / / | |/| | | | | | | | | | | | |
* | | | | | | | | | | | | | | Merge #7828: Trivial: Globals: Explicitly pass const CChainParams& to ↵Pieter Wuille2016-04-121-3/+2
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ProcessMessage() bf477bc Trivial: Globals: Explicitly pass const CChainParams& to ProcessMessage() (Jorge Timón)
| * | | | | | | | | | | | | | Trivial: Globals: Explicitly pass const CChainParams& to ProcessMessage()Jorge Timón2016-04-061-3/+2
| | |_|_|/ / / / / / / / / / | |/| | | | | | | | | | | |
* | | | | | | | | | | | | | Merge #7786: Doc: Update isStandardTx commentWladimir J. van der Laan2016-04-091-2/+2
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | 03c77fd Doc: Update isStandardTx comment (Matthew English)
| * | | | | | | | | | | | | Doc: Update isStandardTx commentMatthew English2016-04-081-2/+2
| | | | | | | | | | | | | |
* | | | | | | | | | | | | | Merge #7835: Version 2 transactions remain non-standard until CSV activatesWladimir J. van der Laan2016-04-081-0/+8
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | da5fdbb Test relay of version 2 transactions (Suhas Daftuar) 5cb1d8a Tests: move get_bip9_status to util.py (Suhas Daftuar) e4ba9f6 Version 2 transactions remain non-standard until CSV activates (Suhas Daftuar)
| * | | | | | | | | | | | | | Version 2 transactions remain non-standard until CSV activatesSuhas Daftuar2016-04-071-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before activation, such transactions might not be mined, so don't allow into the mempool.
* | | | | | | | | | | | | | | Merge #7570: Net: Add IPv6 Link-Local Address SupportWladimir J. van der Laan2016-04-082-4/+9
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | eda3d92 Net: Add IPv6 Link-Local Address Support (mruddy)
| * | | | | | | | | | | | | | Net: Add IPv6 Link-Local Address Supportmruddy2016-04-052-4/+9
| | |/ / / / / / / / / / / / | |/| | | | | | | | | | | |
* | | | | | | | | | | | | | Reduce block timeout to 10 minutesWladimir J. van der Laan2016-04-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now that #7804 fixed the timeout handling, reduce the block timeout from 20 minutes to 10 minutes. 20 minutes is overkill.
* | | | | | | | | | | | | | Merge #7804: Track block download times per individual blockWladimir J. van der Laan2016-04-072-31/+40
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0e24bbf Self check after the last peer is removed (Pieter Wuille) 2d1d658 Track block download times per individual block (Pieter Wuille)
| * | | | | | | | | | | | | | Self check after the last peer is removedPieter Wuille2016-04-071-0/+7
| | | | | | | | | | | | | | |
| * | | | | | | | | | | | | | Track block download times per individual blockPieter Wuille2016-04-072-31/+33
| |/ / / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we're keeping a timeout for each requested block, starting from when it is requested, with a correction factor for the number of blocks in the queue. That's unnecessarily complicated and inaccurate. As peers process block requests in order, we can make the timeout for each block start counting only when all previous ones have been received, and have a correction based on the number of peers, rather than the total number of blocks.
* / / / / / / / / / / / / / init: allow shutdown during 'Activating best chain...'Wladimir J. van der Laan2016-04-061-0/+2
|/ / / / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two-line patch to make it possible to shut down bitcoind cleanly during the initial ActivateBestChain. Fixes #6459 (among other complaints). To reproduce: - shutdown bitcoind - copy chainstate - start bitcoind - let the chain sync a bit - shutdown bitcoind - copy back old chainstate - start bitcoind - bitcoind will catch up with all blocks during Init() (the `boost::this_thread::interruption_point` / `ShutdownRequested()` dance is ugly, this should be refactored all over bitcoind at some point when moving from boost::threads to c++11 threads, but it works...)
* | | | | | | | | | | | | Merge #7793: [doxygen] Fix member commentsWladimir J. van der Laan2016-04-0510-49/+49
|\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fada0c4 [doc] Fix doxygen comments for members (MarcoFalke)