aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2016-04-19Merge #7905: test: move accounting_tests and rpc_wallet_tests to wallet/testWladimir J. van der Laan
b30fb42 test: Rename wallet.dat to wallet_test.dat (Wladimir J. van der Laan) a25a4f5 wallet_ismine.h → script/ismine.h (Wladimir J. van der Laan) f4eae2d test: Create test fixture for wallet (Wladimir J. van der Laan) de39c95 test: move accounting_tests and rpc_wallet_tests to wallet/test (Wladimir J. van der Laan)
2016-04-19Merge #7827: Speed up getchaintips.Wladimir J. van der Laan
87049e8 Speed up getchaintips. (mrbandrews)
2016-04-19Merge #7904: txdb: Fix assert crash in new UTXO set cursorWladimir J. van der Laan
a3310b4 txdb: Fix assert crash in new UTXO set cursor (Wladimir J. van der Laan)
2016-04-18Speed up getchaintips.mrbandrews
2016-04-18test: Rename wallet.dat to wallet_test.datWladimir J. van der Laan
Indicate that the file name is not hardcoded, and a little bit of safety so that it never nukes the main wallet. Suggestion by Marco Falke.
2016-04-18wallet_ismine.h → script/ismine.hWladimir J. van der Laan
Removes conditional dependency of `src/test` on wallet. Makes multisig and P2SH tests complete without wallet built-in.
2016-04-18test: Create test fixture for walletWladimir J. van der Laan
Removes all the `#ifdef ENABLE_WALLET` from `test_bitcoin` by making the wallet tests use their own fixture.
2016-04-18Merge #7900: fix spelling mistakeWladimir J. van der Laan
3107c47 fix spelling mistake (Chris Moore)
2016-04-18Merge #7897: add missing newlineWladimir J. van der Laan
dc0693f add missing newline (Chris Moore)
2016-04-18test: move accounting_tests and rpc_wallet_tests to wallet/testWladimir J. van der Laan
Move the two other wallet tests to where they belong.
2016-04-18Merge #7848: Divergence between 32- and 64-bit when hashing >4GB affects ↵Wladimir J. van der Laan
`gettxoutsetinfo` 28b400f doc: update release-notes for `gettxoutsetinfo` change (Wladimir J. van der Laan) 76212bb rpc: make sure `gettxoutsetinfo` hash has txids (Wladimir J. van der Laan) 9ad1a51 crypto: bytes counts are 64 bit (Wladimir J. van der Laan)
2016-04-18txdb: Fix assert crash in new UTXO set cursorWladimir J. van der Laan
Remove the mistaken assumption that GetKey returning false signifies an internal database issue. It will return false when the key cannot be deserialized into the (char,uint256) stanza, which indicates that the cursor has reached a different kind of key. Fixes bug #7890 introduced in #7756.
2016-04-17fix spelling mistakeChris Moore
2016-04-16add missing newlineChris Moore
Without the newline I see "bein" where the two lines are concatenated: Note that all inputs selected must be of standard form and P2SH scripts must *bein* the wallet using importaddress or addmultisigaddress (to calculate fees).
2016-04-16prevector::swap: fix (unreached) data corruptionKaz Wesley
swap was using an incorrect condition to determine when to apply an optimization (not swapping the full direct[] when swapping two indirect prevectors). Rather than correct the optimization I'm removing it for simplicity. Removing this optimization minutely improves performance in the typical (currently only) usage of member swap(), which is swapping with a freshly value-initialized object.
2016-04-16test prevector::swapKaz Wesley
- add a swap operation to prevector tests (fails due to broken prevector::swap) - fix 2 prevector test operation conditions that were impossible
2016-04-16prevector: destroy elements only via erase()Kaz Wesley
Fixes a bug in which pop_back did not call the deleted item's destructor. Using the most general erase() implementation to implement all the others prevents similar bugs because the coupling between deallocation and destructor invocation only needs to be maintained in one place. Also reduces duplication of complex memmove logic.
2016-04-15rpc: make sure `gettxoutsetinfo` hash has txidsWladimir J. van der Laan
The key (transaction id for the following outputs) should be serialized to the HashWriter. This is a problem as it means different transactions in the same position with the same outputs will potentially result in the same hash. Fixes primary concern of #7758.
2016-04-15crypto: bytes counts are 64 bitWladimir J. van der Laan
Byte counts for SHA256, SHA512, SHA1 and RIPEMD160 must be 64 bits. `size_t` has a different size per platform, causing divergent results when hashing more than 4GB of data.
2016-04-15Merge #7756: Add cursor to iterate over utxo set, use this in `gettxoutsetinfo`Wladimir J. van der Laan
509cb00 txdb: Add Cursor() method to CCoinsView to iterate over UTXO set (Wladimir J. van der Laan)
2016-04-15txdb: Add Cursor() method to CCoinsView to iterate over UTXO setWladimir J. van der Laan
Add a method Cursor() to CCoinsView that returns a cursor which can be used to iterate over the whole UTXO set. - rpc: Change gettxoutsetinfo to use new Cursor method - txdb: Remove GetStats method - Now that GetStats is implemented in terms of Cursor, remove it.
2016-04-15Add lockUnspents option to fundrawtransactionJoão Barbosa
2016-04-15Add change options to fundrawtransactionJoão Barbosa
2016-04-15Add strict flag to RPCTypeCheckObjJoão Barbosa
Strict flag forces type check on all object keys.
2016-04-15Merge #7856: Only send one GetAddr response per connection.Wladimir J. van der Laan
66b0724 Only send one GetAddr response per connection. (Gregory Maxwell)
2016-04-15Merge #7877: Change mapRelay to store CTransactionsWladimir J. van der Laan
38c3102 Change mapRelay to store CTransactions (Pieter Wuille)
2016-04-15Merge #6215: add bip32 pub key serializationWladimir J. van der Laan
90604f1 add bip32 pubkey serialization (Jonas Schnelli)
2016-04-14add bip32 pubkey serializationJonas Schnelli
CExtPubKey should be serializable like CPubKey
2016-04-14[test] bctest.py: Revert faa41eeMarcoFalke
2016-04-14Merge #7874: Improve AlreadyHaveWladimir J. van der Laan
c6cb6f7 Avoid unnecessary database access for unknown transactions (Alex Morcos)
2016-04-14Merge #7853: [qa] py2: Unfiddle strings into bytes explicitlyWladimir J. van der Laan
faa41ee [qa] py2: Unfiddle strings into bytes explicitly (MarcoFalke)
2016-04-14Merge #7812: Tiny refactor of `IsRBFOptIn`, avoid exceptionWladimir J. van der Laan
4f7c959 Refactor IsRBFOptIn, avoid exception (Jonas Schnelli)
2016-04-14Change mapRelay to store CTransactionsPieter Wuille
2016-04-14Merge #7842: RPC: do not print minping time in getpeerinfo when no ping ↵Wladimir J. van der Laan
received yet 62a6486 RPC: do not print ping info in getpeerinfo when no ping received yet, fix help (Pavel Janík)
2016-04-14Merge #7846: Clean up lockorder data of destroyed mutexesWladimir J. van der Laan
5eeb913 Clean up lockorder data of destroyed mutexes (Pieter Wuille)
2016-04-14Merge #7862: Use txid as key in mapAlreadyAskedForWladimir J. van der Laan
7e91f63 Use txid as key in mapAlreadyAskedFor (Suhas Daftuar)
2016-04-14Merge #7849: tests: add varints_bitpatterns testWladimir J. van der Laan
4521f00 tests: add varints_bitpatterns test (Wladimir J. van der Laan)
2016-04-14Merge #7850: Removed call to `TryCreateDirectory` from `GetDefaultDataDir` ↵Wladimir J. van der Laan
in `src/util.cpp`. 41dbc48 Removed call to `TryCreateDirectory` from `GetDefaultDataDir` in `src/util.cpp`. (Alexander Regueiro)
2016-04-14Merge #7818: Refactor script testsWladimir J. van der Laan
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)
2016-04-14Merge #7863: getblockchaininfo: make bip9_softforks an object, not an array.Wladimir J. van der Laan
d12760b rpc-tests: handle KeyError nicely in test_framework.py (Rusty Russell) 85c807c getblockchaininfo: make bip9_softforks an object, not an array. (Rusty Russell)
2016-04-14Merge #7796: [amount] Add support for negative fee ratesWladimir J. van der Laan
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)
2016-04-13Avoid unnecessary database access for unknown transactionsAlex Morcos
2016-04-13getblockchaininfo: make bip9_softforks an object, not an array.Rusty Russell
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 <rusty@rustcorp.com.au>
2016-04-13Removed call to `TryCreateDirectory` from `GetDefaultDataDir` in `src/util.cpp`.Alexander Regueiro
See https://github.com/bitcoin/bitcoin/issues/7845#issuecomment-207684728. Also refactored `GetDefaultDataDir` function to return path for Mac in one expression.
2016-04-12Merge #7828: Trivial: Globals: Explicitly pass const CChainParams& to ↵Pieter Wuille
ProcessMessage() bf477bc Trivial: Globals: Explicitly pass const CChainParams& to ProcessMessage() (Jorge Timón)
2016-04-11Use txid as key in mapAlreadyAskedForSuhas Daftuar
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).
2016-04-11Only send one GetAddr response per connection.Gregory Maxwell
This conserves resources from abusive peers that just send getaddr in a loop. Also makes correlating addr messages against INVs less effective.
2016-04-10[qa] py2: Unfiddle strings into bytes explicitlyMarcoFalke
2016-04-10Clean up lockorder data of destroyed mutexesPieter Wuille
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.
2016-04-09[amount] tests: Fix off-by-one mistakeMarcoFalke