Age | Commit message (Collapse) | Author |
|
shutdown.h
1fabd59e7 Break circular dependency: init -> * -> init by extracting shutdown.h (Ben Woosley)
e62fdfeea Drop unused init.h includes (Ben Woosley)
Pull request description:
Most includers just wanted to react to pending shutdown.
This isolates access to `fRequestShutdown` and limits access to the shutdown api functions, including the new `CancelShutdown` for setting it to `false`.
Tree-SHA512: df42f75dfbba163576710e9a67cf1228531fd99d70a2f187bfba0bcc476d6749cf88180a97e66a81bb5b6c3c7f0917de7402d26039ba7b644cb7509b02f7e267
|
|
747ee89b4 Docs: Modify policy to not translate command-line help (Chun Kuan Lee)
Pull request description:
After #13341, command-line helps would no longer be translated.
Tree-SHA512: 73e7a7545b316cc6ec07f2527cc0e63c922d8e382abd779638583d55a4ee0f3b26ecc9d63f51da8bab2eda9829ec5d1b3162a1115c78a1add2621ba2ccdb839e
|
|
07c493f2d scripted-diff: Replace NET_TOR with NET_ONION (wodry)
Pull request description:
This is a follow-up to #13532, where @promag already asked if this renaming would make sense.
If network shall be named _Onion_ instead of _Tor_ (like in the option `onlynet`), renaming the network enum NET_TOR to NET_ONION maybe would make sense and be stringent.
Change was produced with the following script:
```
#!/bin/bash
for file in $(grep --exclude-dir='.git' --files-with-matches --binary-files=without-match --recursive NET_TOR bitcoin/)
do
sed --in-place --expression='s/NET_TOR/NET_ONION/g' $file
done
```
_Tor_ is used at many other places in the code, though.
Tree-SHA512: 4ffdeca8115031465eb64e1c76694fb77b5900c4ea465d3c13d9b6b75a1eb04c45913f83cdc8bdbef28936aeec4655f1d4905b3b98407da3263632a2128a8d23
|
|
bb582a59c Add P2WSH destination helper and use it instead of manual hashing (Pieter Wuille)
eaba1c111 Add additional unit tests for invalid IsMine combinations (Pieter Wuille)
e6b9730c4 Do not expose invalidity from IsMine (Pieter Wuille)
Pull request description:
This improves the handling of INVALID in IsMine:
* Extra INVALID conditions were added to `IsMine` (following https://github.com/bitcoin/bitcoin/pull/13142/files#r185349057), but these were untested. Add unit tests for them.
* In https://github.com/bitcoin/bitcoin/pull/13142#issuecomment-386396975 it was suggested to merge `isInvalid` into the return status. This PR takes a different approach, and removes the `isInvalid` entirely. It was only ever used inside tests, as normal users of IsMine don't care about the reason for non-mine-ness, only whether it is or not. As the unit tests are extensive enough, it seems sufficient to have a black box text (with tests for both compressed and uncompressed keys).
Some addition code simplification is done as well.
Tree-SHA512: 3267f8846f3fa4e994f57504b155b0e1bbdf13808c4c04dab7c6886c2c0b88716169cee9c5b350513297e0ca2a00812e3401acf30ac9cde5d892f9fb59ad7fef
|
|
1336d9cb3 Delete double semicolon in wallet.cpp and misc.cpp (Matteo Sumberaz)
Pull request description:
Tree-SHA512: 86a65df8fdcf8b909ebdebbc510ed57df7c089707a6967c9714c653049eed5d193203443446659c8bbec3f64c12770466455ebedaf5d68cb2869561a477fcfd7
|
|
|
|
-BEGIN VERIFY SCRIPT-
sed --in-place'' --expression='s/NET_TOR/NET_ONION/g' $(git grep -I --files-with-matches 'NET_TOR')
-END VERIFY SCRIPT-
The --in-place'' hack is required for sed on macOS to edit files in-place without passing a backup extension.
|
|
|
|
75848bcf40 [tests] Fix p2p_sendheaders race (John Newbery)
Pull request description:
p2p_sendheaders has a race in part 1.3.
part 1.2 sends a block to the node over the 'test_node' connection, but
doesn't wait for an inv to be received on the 'inv_node' connection. If
we get to part 1.3 before that inv has been received, then the
subsequent call to check_last_inv_announcement could fail.
Tree-SHA512: ba9baffb3a9c0d379259190c737a7a4ad2e1133005a5b026af4f6b67a2978e24db39289551ad29134151879593ef5472be7e569a3557c0740fb51f5c56263d9a
|
|
f618ebc4e4 validation: count blocks correctly for check level < 3 (Karl-Johan Alm)
Pull request description:
As noted in https://github.com/bitcoin/bitcoin/pull/13428#issuecomment-396129295 there is a bug where if check level < 3, the resulting count for blocks is wrong, because `pindexState` is never updated.
Post-commit `./bitcoin-cli verifychain 1 3`:
```
2018-06-11T07:12:28Z Verifying last 3 blocks at level 1
2018-06-11T07:12:28Z [0%]...[33%]...[66%]...[99%]...[DONE].
2018-06-11T07:12:28Z No coin database inconsistencies in last 3 blocks (0 transactions)
```
Pre-commit `./bitcoin-cli verifychain 1 3`:
```
2018-06-11T07:13:34Z Verifying last 3 blocks at level 1
2018-06-11T07:13:34Z [0%]...[33%]...[66%]...[99%]...[DONE].
2018-06-11T07:13:34Z No coin database inconsistencies in last 0 blocks (0 transactions)
```
Tree-SHA512: 3d82ed26665162c9615fb0e6e91a46ed4d229a5e6797c6c420e6b0bf1be6e5e02401c6e9a93b7a5aec503a2650d8c20d1b45fe300a922379e4cef8ee26e18d96
|
|
4132ad3bf Show symbol for inbound/outbound in peer table (wodry)
Pull request description:
Fixes #13483
The address in the network peer table is prefixed with an up-arrow symbolizing an outbound connection, or an down-array symbolizing an inbound connection. See screenshot.
The user has an easy visual confirmation about the connection direction state. I really like it :)
Impact to columns sorting is grouping by inbound/outbound first, which in my opinion is an advantage, too.
![bildschirmfoto](https://user-images.githubusercontent.com/8447873/41862752-13803eb2-78a5-11e8-9126-a52385f5ec19.png)
Tree-SHA512: d355f679d34c3006743c06750be5f36a083c1a8376da8f5f35045fcd9df964153409946fdde5007734f23bd692c91355962dc42df31122cdcf88e4affce8bc0e
|
|
fa87da2f172ae2e6dc15e9ed156a3564a8ecfbdd qa: Avoid start/stop of the network thread mid-test (MarcoFalke)
Pull request description:
This simplifies test writing by removing the need to handle the network thread in tests. E.g. start thread, join thread, restart thread mid-test, adding p2p connections at the "right" time, ...
Tree-SHA512: 533642f12fef5496f1933855edcdab1a7ed901d088d34911749cd0f9e044c8a6cb1f89985ac3a7f41a512943663e4e270a61978f6f072143ae050cd102d4eab8
|
|
dependency.
962d8eed5b Remove boost dependency (boost/assign/std/vector.hpp) (practicalswift)
c6fd0df4ef Fix incorrect tests (practicalswift)
Pull request description:
* Fix test case `streams_serializedata_xor`.
* Remove Boost dependency.
Tree-SHA512: 609c4ced1b6a8b86f6a37e4220535f1b3c9f2e80949cd034ecc069a94c55c05cd514f2e132fe7f715161ee29811a0fadb6903635c507411d8dc3e7efe864edeb
|
|
2fca6568f27c9a1714b7a415cde947b79c10ed45 depends: Update Qt download url (fanquake)
Pull request description:
Qt has moved the 5.7.1 downloads from the [official_releases](https://download.qt.io/official_releases/qt/) directory to it's [archive](https://download.qt.io/archive/qt/).
```
Fetching qtbase-opensource-src-5.7.1.tar.gz from http://download.qt.io/official_releases/qt/5.7/5.7.1/submodules
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:03 --:--:-- 0
curl: (22) The requested URL returned error: 404 Not Found
```
This updates the qt download url in depends so we aren't always falling back on [bitcoincore.org/depends-sources](https://bitcoincore.org/depends-sources).
Tree-SHA512: 2aca3260fa0550322108b5bcc8c226e13b48c3500b7d95f545651e5b60d290edde16d9f6dea45f438c39a1388cb304cc16768a9728d32d3a441667968ea35425
|
|
c2e4fc84ec bench: Simplify CoinSelection (João Barbosa)
Pull request description:
Closes #13549.
As pointed by @MarcoFalke:
- `SelectCoinsMinConf` should always succeed as there are enough coins in the wallet.
- Removed creating the coins in the wallet.
Tree-SHA512: 965c363bcaf0ca7a1dec35b5cf4866abcf190c53eb7012dc4aeb4d29830f13a7465644bfb5a47f6ea3eaa86e4d4a57fe41e7b2593bf5094b76a551c4c71625bb
|
|
|
|
cuckoocache_hit_rate_ok
ea49e06c82 tests: Fix incorrect documentation for test case cuckoocache_hit_rate_ok (practicalswift)
Pull request description:
Fix incorrect documentation for test case `cuckoocache_hit_rate_ok`.
Tree-SHA512: 2c1138953f077666c0bba784d9f5e5a627403dcd8b81851ca74793f1bf7bb5dc274af7887d51edb6669de1e9354ca7e5dfba80a3ce62f16eaaee6c6fa57b79f5
|
|
fa103a5d5e [qa] wallet_basic: Specify minimum required amount for listunspent (MarcoFalke)
Pull request description:
A value less than that would fail the tests later on anyway:
```
File "./test/functional/wallet_basic.py", line 250, in run_test
self.nodes[1].sendrawtransaction(signed_raw_tx['hex'])
test_framework.authproxy.JSONRPCException: bad-txns-in-belowout, value in (1.00) < value out (49.998) (code 16) (-26)
Tree-SHA512: 7e72ad02b5623bc078610da06c34721836822a920a4e85b12a1e0f339e3205cdc11d39763197770e649fb73376f922ff91a8f244b465195e50a6798658e04f80
|
|
|
|
|
|
|
|
|
|
Fix lock-order-inversion (potential deadlock).
9fdf05d70c tests: Fix lock-order-inversion (potential deadlock) in DoS_tests. Reported by TSAN. (practicalswift)
Pull request description:
Fix lock-order-inversion (potential deadlock) in `DoS_tests`. Reported by Clang's TSAN.
Makes `src/test/test_bitcoin` pass also when compiled with TreadSanitizer (`./configure --with-sanitizers=thread` with `clang`).
Tree-SHA512: 41403bb7b6e26bdf1b830b5699e27c637d522bae1799d2a19ed4b68b21b2555438b42170d8b1189613beb32a69b76a65175d29a83f5f4e493896c3d0d94ae26d
|
|
std::min<int>(...) to allow for compilation under certain FreeBSD versions.
629a47a154 Document FreeBSD quirk. Fix FreeBSD build. (practicalswift)
Pull request description:
* Document FreeBSD quirk.
* Fix FreeBSD build: Cast to `int` to allow `std::min` to work under FreeBSD.
Context: https://github.com/bitcoin/bitcoin/pull/9598#issuecomment-398353904
Tree-SHA512: 5ca7a5fa9e1f3efae241b9be64c9b019ec713c11dcc3edaaed383477ea48ac0dc82549ffebbe9069e8c3f6eff30acd6e4542b4aa31d307f022f4f51e5851a82c
|
|
9f8c54b1b5ddedddf47fc51c1fcb533321f6f89f Log warning message when deprecated network name 'tor' is used (e.g. option onlynet=tor) (wodry)
Pull request description:
As @laanwj mentioned [here](https://github.com/bitcoin/bitcoin/pull/13418#discussion_r197645385), using option `onlynet=tor` is deprecated.
I think it would be good to give the user a depcreaction warning feedback, so users can switch to `onlynet=onion` so there is a perspective for removing the deprecated `tor` in the future to decrease confusion.
Currently, users maybe just wonder that they can use a undocumented option, or they are not aware that they use a deprecated option.
Alternatively for the log warning message, I think at least this deprecetaion should be documented in the source code in a comment for readers of the source code.
Tree-SHA512: f4889793cdd62a0a13353e13994ed50ca7d367fa9da9897ce909f86cf0b0ce6151b3c484c8e514b8ac332949c6bbc71001e06e918248a1089f73756bd4840602
|
|
used. Enable -ftrapv in Travis.
98d842cb52 travis: Build with --enable-debug (x86_64-unknown-linux-gnu) (practicalswift)
94e52d13db Add -ftrapv to DEBUG_CXXFLAGS when --enable-debug is used (practicalswift)
Pull request description:
By generating a trap for signed overflow on addition, subtraction, multiplication operations in the Travis testing we are more likely to identify problematic code prior to merging it.
Tree-SHA512: 47712da53b4ff451b8f22f16ddc3b53100a09060a3b04cda4b8fbbb74e6f666fc07a9cc7abc64cacb87a0aa3f62dc8e3c91a1a0ed12bf82bb2a5624a5d104389
|
|
2454a8558a Docs: More precise explanation of parameter "onlynet" (wodry)
Pull request description:
See issue #13378
Tree-SHA512: d51e81e4ef7fe084c3c9accf3433760fb34c02d149bb2d7006545fecdf68ecd4a5c5bfd0585fd5caff2f034eb96c7da80e85cb04c0ff3edb4c9c65ab56eb2847
|
|
df10f07db1 [wallet] Don't use accounts when checking balance in sendmany (John Newbery)
e209184101 [wallet] deprecate sendfrom RPC method. (John Newbery)
Pull request description:
A couple of fixups from the accounts API deprecation PR (#12953):
- properly deprecate `sendfrom`
- don't use accounts when calculating balance in `sendmany` (unless the `-deprecatedrpc=accounts` flag is being used)
Tree-SHA512: 1befde055067438c4c3391bbff1aaed0e6249efd708c567db3f1faad40a0f28e64f95e5bad0679ae826d24a0239e4bc8a1c392dc93e2e7502343a7f6b1d1845c
|
|
|
|
|
|
faca0a8625 doc: Clarify that mempool txiter is const_iterator (MarcoFalke)
Pull request description:
`iterator` and `const_iterator` are the same type for multi indexed transaction sets, but `const_iterator` should be preferred for documentation purposes.
Tree-SHA512: 83e8af36d15aa1e9fc59b3c2279504fd6f6ea3188dc43e36dec279ee0613ff07947d7143fd112bade7868b0dba59ecab3fd246cbde82e376ef965b646d9f8c4d
|
|
3f72d04e29caf247a3fee92f86fe0d250d578914 Fix parameter count check for importpubkey. (Kristaps Kaupe)
Pull request description:
Found this while working on #13464. Parameter count check for `importpubkey` was wrong.
Tree-SHA512: aba41b666c6493379f320be5e3e438a6cad1a96429102ff4428c092c48f29c2eead2195792c0b018296f20e1c42eb091dd5b9886c42cecbb1f0d03d5def14705
|
|
|
|
|
|
faa2cf685a [qt] coincontrol: Remove unused qt4 workaround (MarcoFalke)
Pull request description:
This reverts 55eade9d46ebfa4b32b79893595d91d529fa30bb since it is no longer required.
Tree-SHA512: ec523d505b410ab72ce9fdee86dfcfe96011472fb386744bb585169724270426ee65da2b527ae47928d604e1f21f54aa2b4b82f9a9d3fbfea1a6516478d81d11
|
|
order warning
bb3de15ad8 qt: Move BitcoinGUI initializers to class, fix initializer order warning (Wladimir J. van der Laan)
Pull request description:
- C++11-ize the code (move initializers to class, change `0` to `nullptr` where appropriate)
- Make sure `m_wallet_selector` is initialized
- And fix the following warning:
bitcoin/src/qt/bitcoingui.cpp:122:5: warning: field 'spinnerFrame' will be initialized after field 'm_wallet_selector_label' [-Wreorder]
spinnerFrame(0),
Tree-SHA512: b81c8d4ac31b712c8dfaf941ba43b235eb466eb5528535d69d68c26d8706d2a658581513a413050e5dee08b72a4e7fc08bd8936ef5beb052059d2467eaeff84b
|
|
- C++11-ize the code (move initializers to class, change 0 to `nullptr` where appropriate)
- Make sure `m_wallet_selector` is initialized
- And fix the following warning:
bitcoin/src/qt/bitcoingui.cpp:122:5:warning: field 'spinnerFrame' will be initialized after field 'm_wallet_selector_label' [-Wreorder]
spinnerFrame(0),
|
|
|
|
Most includers just wanted to react to pending shutdown.
This isolates access to `fRequestShutdown` and limits access to the shutdown
api functions, including the new `AbortShutdown` for setting it to `false`.
Note I originally called `AbortShutdown` `CancelShutdown` but that name was
already taken by winuser.h
https://travis-ci.org/bitcoin/bitcoin/jobs/386913329
This change also triggered a build error in bench. Fixing it required moving LIBBITCOIN_SERVER after LIBBITCOIN_WALLET in bench_bench_bitcoin_LDADD To make
server definitions in src/net.cpp available to wallet methods in
src/wallet/wallet.cpp. Specifically, solving:
libbitcoin_wallet.a(libbitcoin_wallet_a-wallet.o): In function `CWalletTx::RelayWalletTransaction(CConnman*)':
wallet.cpp:(.text+0x3f0e): undefined reference to `CConnman::NodeFullyConnected(CNode const*)'
collect2: error: ld returned 1 exit status
https://travis-ci.org/bitcoin/bitcoin/jobs/392133581
Need for remaining init.h includes confirmed via a thorough search with a more
specific regex:
\bInterrupt\(\)|\bShutdown\(\)|\bInitLogging\(\)|\bInitParameterInteraction\(\)|\bAppInitBasicSetup\(\)|\bAppInitParameterInteraction\(\)|\bAppInitSanityChecks\(\)|\bAppInitLockDataDirectory\(\)|\bAppInitMain\(\)|\bSetupServerArgs\(\)|\bLicenseInfo\(\)|g_wallet_init_interface|init.h
|
|
These were entirely unused, as based on successful compilation
and a grep for:
\bStartShutdown\(\)|\bShutdownRequested\(\)|\bInterrupt\(\)|\bShutdown\(\)|\bInitLogging\(\)|\bInitParameterInteraction\(\)|\bAppInitBasicSetup\(\)|\bAppInitParameterInteraction\(\)|\bAppInitSanityChecks\(\)|\bAppInitLockDataDirectory\(\)|\bAppInitMain\(\)|\bSetupServerArgs\(\)|\bLicenseInfo\(\)|g_wallet_init_interface|init.h
|
|
onlynet=tor)
|
|
|
|
|
|
|
|
cec84c2f1a359676ac4d206f10ee936d4d7db9b5 bench: Add missing pow.h header (Wladimir J. van der Laan)
Pull request description:
Fix a build error introduced in #13219.
```
.../bitcoin/src/bench/block_assemble.cpp:42:13:error: use of undeclared identifier 'CheckProofOfWork'
while (!CheckProofOfWork(block->GetHash(), block->nBits, Params().GetConsensus())) {
```
Tree-SHA512: 6ef78011fd7bd82859530b2676ba533b15db6c753cb84a1286b7e26ed6f3d2064769e42900b2479fe6c460411f742e2baed716db5eac06d3bc455e08c290a087
|
|
Fix a build error introduced in #13219.
```
.../bitcoin/src/bench/block_assemble.cpp:42:13:error: use of undeclared identifier 'CheckProofOfWork'
while (!CheckProofOfWork(block->GetHash(), block->nBits, Params().GetConsensus())) {
```
|
|
fd9b3a71824e33728f267e6f288b6224ad1047e1 test: Output should be unlocked when spent (João Barbosa)
54c3bb4cf805ccee91efb9f8cdadea87e0797989 wallet: Unlock spent outputs (João Barbosa)
Pull request description:
Fixes #12738.
Tree-SHA512: 2c1694727aea0c658d07566c7d11d7afe91218053f84d568fac97413348fa5a977243d6cdeebd1c6550816489e35cb3a31667c8354d9b350de99f979d641d605
|
|
fa0fc1bc7edc7f1dd419db6776dcf89749cc1a00 bench: Add block assemble benchmark (MarcoFalke)
Pull request description:
Tree-SHA512: 614da28020b76154f4cb17752df226466d2d7da7a81f31812e10ca5b94987c7f5abab62b2f45a3a958663bd8cbf2191f3f23e497215196ad7a775f0ea8fb6116
|
|
927e1150bc207181f7d5b0948e87d04b737a1c27 Test: Harden lint-filenames.sh (wodry)
Pull request description:
- This fixes that only files with lower case file name suffix where found before, which contradicted the Regex to find uppercase characters in file names (including suffixes I guess).
- `--full-name` switch was added to git ls-files, to define that the found file always includes it's full path in the git project.
- since we know now that the file name includes the full path, we can harden the Regex to exclude the secp256k1 and univalue sub folders.
- use backslash line break to make code easier to read and avoid too long line.
Tree-SHA512: 9b55fe4965ae2084112b9f8a81bf9c657756c2cb5004986e7b6102a76adaf62c7d7a53257d9f13c5d8a1c75870b52c744d13830e3edd454a099e810357c914e5
|
|
471a4992d4a4477d7e234a82d3639d06f4572e9a Move rpc/util.cpp from libbitcoin-util to libbitcoin-server (Chun Kuan Lee)
Pull request description:
The functions in `rpc/util.cpp` would call functions in `script/standard.cpp` which in libbitcoin-common. This could cause problem if the linker does not strip out unused function while linking `bitcoin-cli`.
Tree-SHA512: 2f8335c880eeb00a29a359d5398a93d9f2909094b8febf2ad0a1e01388d077634fb5e72a638671bae8de89e1936c234d3f47ff445f1e456de723389bdc22d089
|