aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-04-15Break circular dependency main ↔ txdbWladimir J. van der Laan
Break the circular dependency between main and txdb by: - Moving `CBlockFileInfo` from `main.h` to `chain.h`. I think this makes sense, as the other block-file stuff is there too. - Moving `CDiskTxPos` from `main.h` to `txdb.h`. This type seems specific to txdb. - Pass a functor `insertBlockIndex` to `LoadBlockIndexGuts`. This leaves it up to the caller how to insert block indices.
2016-04-15Merge #7603: Build System: Use PACKAGE_TARNAME in NSIS scriptWladimir J. van der Laan
0528e30 Remove wxwidgets references from NSIS script. (JeremyRand) 26880c3 build: Use PACKAGE_TARNAME and new bin names in NSIS script. (JeremyRand) 0dbf6e4 build: define base filenames for use elsewhere in the buildsystem (Cory Fields)
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-15Merge #7518: Add multiple options to fundrawtransactionWladimir J. van der Laan
f2d0944 Add lockUnspents option to fundrawtransaction (João Barbosa) af4fe7f Add change options to fundrawtransaction (João Barbosa) 41e835d Add strict flag to RPCTypeCheckObj (João Barbosa)
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 #7870: [contrib] Add MarcoFalke key and move all keys to ↵Wladimir J. van der Laan
contrib/gitian-keys faf4c83 [gitian] Move keys to contrib/gitian-keys (MarcoFalke) fa93936 [gitian] Add marcofalke-key.pgp (MarcoFalke)
2016-04-15[gitian] Move keys to contrib/gitian-keysMarcoFalke
2016-04-15[gitian] Add marcofalke-key.pgpMarcoFalke
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 #7809: depends: some base fixes/changesWladimir J. van der Laan
11d9f6b depends: qt/cctools: fix checksum checksum tests (Cory Fields) bb717f4 depends: fix "unexpected operator" error during "make download" (Cory Fields) fe740f1 depends: fix fallback downloads (Cory Fields) dc4ec6d depends: create a hostid and buildid and add option for salts (Cory Fields)
2016-04-15Merge #7798: [travis] Print the commit which was evaluatedWladimir J. van der Laan
fac9ca2 [travis] echo $TRAVIS_COMMIT_RANGE (MarcoFalke) faef3b7 [travis] Print the commit which was evaluated (MarcoFalke)
2016-04-15Merge #6215: add bip32 pub key serializationWladimir J. van der Laan
90604f1 add bip32 pubkey serialization (Jonas Schnelli)
2016-04-15Merge #7878: [test] bctest.py: Revert faa41eeWladimir J. van der Laan
fa7abe0 [test] bctest.py: Revert faa41ee (MarcoFalke)
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 #7847: doc: add arch linux build exampleWladimir J. van der Laan
fe53a2a doc: add arch linux setup and build example [skip ci] (mruddy)
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 #7855: [doc] gitian: Replace precise with trustyWladimir J. van der Laan
fa6399d [doc] gitian: Replace precise with trusty (MarcoFalke)
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-14Merge #7838: [Doc] Update gitian build guide to debian 8.4.0Wladimir J. van der Laan
4a1d5c1 [Doc] Update gitian build guide to debian 8.4.0 (fanquake)
2016-04-13Avoid unnecessary database access for unknown transactionsAlex Morcos
2016-04-13rpc-tests: handle KeyError nicely in test_framework.pyRusty Russell
btcdrak wrote this for me. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
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-11Merge #7858: Add jl2012 public key for gitian buildWladimir J. van der Laan
64c22be Add jl2012 public key for gitian build (Johnson Lau)
2016-04-11Add jl2012 public key for gitian buildJohnson Lau
2016-04-11[Doc] Update gitian build guide to debian 8.4.0fanquake
2016-04-11Remove wxwidgets references from NSIS script.JeremyRand
The NSIS script tried to delete wxwidgets-based executables/locales. These files are ancient, and presumably no users have them anymore, so we can simplify the NSIS script by removing those lines.
2016-04-11build: Use PACKAGE_TARNAME and new bin names in NSIS script.JeremyRand
Replaces the hardcoded string "bitcoin" with the autoconf variable PACKAGE_TARNAME; fixes #7265. Places where I chose not to replace: 1. bitcoin.ico wasn't replaced because it doesn't seem to be relevant to the build system and its filename never affects the end user. 2. InstallDir wasn't replaced because the current text has an uppercase B, and I'm not sure of a good way to capitalize the result of PACKAGE_TARNAME. 3. A comment in the Main Installer section wasn't replaced because comments don't ever face the end user. 4. The registry value "URL:Bitcoin" wasn't replaced for the same reason as InstallDir. 5. Startup shortcut wasn't replaced for the same reason as InstallDir. All other appearances of "bitcoin" were replaced with PACKAGE_TARNAME, except for the bin names, which were instead replaced with the new bin name autoconf variables.
2016-04-11build: define base filenames for use elsewhere in the buildsystemCory Fields
Unfortunately, the target namees defined at the Makefile.am level can't be used for *.in substitution. So these new defines will have to stay synced up with those targets. Using the new variables for the deploy targets in the main Makefile.am will ensure that they stay in sync, otherwise build tests will fail.
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[doc] gitian: Replace precise with trustyMarcoFalke
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.