aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2016-04-25Merge #7927: Minor changes to dbwrapper to simplify support for other databasesWladimir J. van der Laan
869cf12 dbwrapper: Move `HandleError` to `dbwrapper_private` (Wladimir J. van der Laan) b69836d dbwrapper: Pass parent CDBWrapper into CDBBatch and CDBIterator (Wladimir J. van der Laan) 878bf48 dbwrapper: Remove CDBWrapper::GetObfuscateKeyHex (Wladimir J. van der Laan) 74f7b12 dbwrapper: Remove throw keywords in function signatures (Wladimir J. van der Laan)
2016-04-23dbwrapper: Move `HandleError` to `dbwrapper_private`Wladimir J. van der Laan
HandleError is implementation-specific.
2016-04-23dbwrapper: Pass parent CDBWrapper into CDBBatch and CDBIteratorWladimir J. van der Laan
Pass parent wrapper directly instead of obfuscation key. This makes it possible for other databases which re-use this code to use other properties from the database. Add a namespace dbwrapper_private for private functions to be used only in dbwrapper.h/cpp and dbwrapper_tests.
2016-04-23dbwrapper: Remove CDBWrapper::GetObfuscateKeyHexWladimir J. van der Laan
It is an unnecessary method as it is used only two times and only internally, and the whole implementation is HexStr(obfuscate_key).
2016-04-23dbwrapper: Remove throw keywords in function signaturesWladimir J. van der Laan
Using throw() specifications in function signatures is not only not required in C++, it is considered deprecated for [various reasons](https://stackoverflow.com/questions/1055387/throw-keyword-in-functions-signature). It is not implemented by any of the common C++ compilers. The usage is also inconsistent with the rest of the source code.
2016-04-22qt: Fix out-of-tree GUI buildsWladimir J. van der Laan
Without this patch: - When I compile the GUI from the bitcoin directory itself, it works as expected. - When I build the GUI in an out-of-tree build, I cannot get it to select tabs. When I click, say the "Receive" tab nothing happens, the button selects but it doesn't switch the page. The rest - even the debug window - seems to work. See full discussion here: https://github.com/bitcoin/bitcoin/pull/7911#issuecomment-212413442 This turned out to be caused by a mismatch in the arguments to moc, preventing it from finding `bitcoin-config.h`. Fix this by passing `$(DEFAULT_INCLUDES)` to it, which gets set to the appropriate path by autoconf itself.
2016-04-22Merge #7911: leveldb: integrate leveldb into our buildsystemWladimir J. van der Laan
a4625ac leveldb: integrate leveldb into our buildsystem (Cory Fields)
2016-04-22Merge #7922: CBase58Data::SetString: cleanse the full vectorWladimir J. van der Laan
5770449 CBase58Data::SetString: cleanse the full vector (Kaz Wesley)
2016-04-22Merge #7919: Fix headers announcements edge caseWladimir J. van der Laan
3a99fb2 Fix headers announcements edge case (Suhas Daftuar)
2016-04-22Merge #7816: [Wallet] slighly refactor GetOldestKeyPoolTime()Wladimir J. van der Laan
9f7336b [Wallet] slightly refactor GetOldestKeyPoolTime() (Jonas Schnelli)
2016-04-21CBase58Data::SetString: cleanse the full vectorKaz Wesley
SetString seems to be passing the length of the wrong variable to memory_cleanse, resulting in the last byte of the temporary buffer not being securely erased.
2016-04-21Merge #7916: Explicitly pass CChainParams& to DisconnectTip()Wladimir J. van der Laan
176869f Explicitly pass CChainParams to ConnectBlock (face) d0a6353 Pass CChainParams to DisconnectTip() (face) 764d237 Globals: Explicitly pass const CChainParams& to UpdateTip() (Jorge Timón)
2016-04-21Merge #7913: Fix for incorrect locking in GetPubKey() (keystore.cpp)Pieter Wuille
220f950 Fix for incorrect locking in GetPubKey() (keystore.cpp) (Yuri Zhykin)
2016-04-21Merge #7868: net: Split DNS resolving functionality out of net structuresPieter Wuille
d39f5b4 net: disable resolving from storage structures (Cory Fields) 3675699 net: resolve outside of storage structures (Cory Fields) a98cd1f net: manually resolve dns seed sources (Cory Fields) e9fc71e net: require lookup functions to specify all arguments (Cory Fields)
2016-04-20Fix headers announcements edge caseSuhas Daftuar
Previously we would assert that if every block in vBlockHashesToAnnounce is in chainActive, then the blocks to be announced must connect. However, there are edge cases where this assumption could be violated (eg using invalidateblock / reconsiderblock), so just check for this case and revert to inv-announcement instead.
2016-04-20net: disable resolving from storage structuresCory Fields
CNetAddr/CService/CSubnet can no longer resolve DNS.
2016-04-20net: resolve outside of storage structuresCory Fields
Rather than allowing CNetAddr/CService/CSubNet to launch DNS queries, require that addresses are already resolved. This greatly simplifies async resolve logic, and makes it harder to accidentally leak DNS queries.
2016-04-20net: manually resolve dns seed sourcesCory Fields
Note: Some seeds aren't actually returning an IP for their name entries, so they're being added to addrman with a source of [::]. This commit shouldn't change that behavior, for better or worse.
2016-04-20Explicitly pass CChainParams to ConnectBlockface
2016-04-20Fix for incorrect locking in GetPubKey() (keystore.cpp)Yuri Zhykin
2016-04-19leveldb: integrate leveldb into our buildsystemCory Fields
leveldb's buildsystem causes us a few problems: - breaks out-of-tree builds - forces flags used for some tools - limits cross builds Rather than continuing to add wrappers around it, simply integrate it into our build.
2016-04-19Pass CChainParams to DisconnectTip()face
2016-04-19Globals: Explicitly pass const CChainParams& to UpdateTip()Jorge Timón
2016-04-19Merge #7787: [Moveonly] Create ui_interface.cppWladimir J. van der Laan
fa10ce6 Move ui_interface.cpp to libbitcoin_server_a_SOURCES (MarcoFalke) fabbf80 [ui] Move InitError, InitWarning, AmountErrMsg (MarcoFalke)
2016-04-19Move ui_interface.cpp to libbitcoin_server_a_SOURCESMarcoFalke
It is only needed by bitcoind and bitcoin-qt
2016-04-19Merge #7762: [ZMQ] append a message sequence number to every ZMQ notificationWladimir J. van der Laan
0b25a9f [ZMQ] append a message sequence number to every ZMQ notification (Jonas Schnelli) de821d5 [ZMQ] refactor message string (Jonas Schnelli)
2016-04-19[ZMQ] append a message sequence number to every ZMQ notificationJonas Schnelli
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-17net: require lookup functions to specify all argumentsCory Fields
To make it clear where DNS resolves are happening
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