aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2019-01-21Merge #15209: zmq: log outbound message high water mark when reusing socketWladimir J. van der Laan
f1dc6932e95fd29cbedfa5f013eca37ed91e12ed zmq: log outbound message high water mark when reusing socket (fanquake) Pull request description: Running master with `src/bitcoind -zmqpubhashblockhwm=12345 -zmqpubrawtx=tcp://127.0.0.1:28332 -zmqpubhashtxhwm=5000 -zmqpubrawblock=tcp://127.0.0.1:28332 -zmqpubhashtx=tcp://127.0.0.1:28332 -zmqpubhashblock=tcp://127.0.0.1:28332 -debug=zmq`: ``` 2019-01-19T14:11:01Z zmq: version 4.3.1 2019-01-19T14:11:01Z zmq: Initialize notification interface 2019-01-19T14:11:01Z zmq: Outbound message high water mark for pubhashblock at tcp://127.0.0.1:28332 is 12345 2019-01-19T14:11:01Z zmq: Notifier pubhashblock ready (address = tcp://127.0.0.1:28332) 2019-01-19T14:11:01Z zmq: Reusing socket for address tcp://127.0.0.1:28332 2019-01-19T14:11:01Z zmq: Notifier pubhashtx ready (address = tcp://127.0.0.1:28332) 2019-01-19T14:11:01Z zmq: Reusing socket for address tcp://127.0.0.1:28332 2019-01-19T14:11:01Z zmq: Notifier pubrawblock ready (address = tcp://127.0.0.1:28332) 2019-01-19T14:11:01Z zmq: Reusing socket for address tcp://127.0.0.1:28332 2019-01-19T14:11:01Z zmq: Notifier pubrawtx ready (address = tcp://127.0.0.1:28332) ``` This PR: ``` 2019-01-19T14:06:57Z zmq: version 4.3.1 2019-01-19T14:06:57Z zmq: Initialize notification interface 2019-01-19T14:06:57Z zmq: Outbound message high water mark for pubhashblock at tcp://127.0.0.1:28332 is 12345 2019-01-19T14:06:57Z zmq: Notifier pubhashblock ready (address = tcp://127.0.0.1:28332) 2019-01-19T14:06:57Z zmq: Reusing socket for address tcp://127.0.0.1:28332 2019-01-19T14:06:57Z zmq: Outbound message high water mark for pubhashtx at tcp://127.0.0.1:28332 is 5000 2019-01-19T14:06:57Z zmq: Notifier pubhashtx ready (address = tcp://127.0.0.1:28332) 2019-01-19T14:06:57Z zmq: Reusing socket for address tcp://127.0.0.1:28332 2019-01-19T14:06:57Z zmq: Outbound message high water mark for pubrawblock at tcp://127.0.0.1:28332 is 1000 2019-01-19T14:06:57Z zmq: Notifier pubrawblock ready (address = tcp://127.0.0.1:28332) 2019-01-19T14:06:57Z zmq: Reusing socket for address tcp://127.0.0.1:28332 2019-01-19T14:06:57Z zmq: Outbound message high water mark for pubrawtx at tcp://127.0.0.1:28332 is 1000 2019-01-19T14:06:57Z zmq: Notifier pubrawtx ready (address = tcp://127.0.0.1:28332) ``` Tree-SHA512: 6915184d8a0f4764f1cc76dce0099eed411a123d7a4bc8cee1664bb5a233a8119ddd2c78ad980c6e1d9f6dadaba48800ee6bc57de906d4e1b4108df745f1458e
2019-01-21Merge #15210: gui: Fix window title updateWladimir J. van der Laan
1ed425ea17639c20ad3b3e3ef4b34d669b2fd2a4 gui: Fix window title update (João Barbosa) Pull request description: Removes trailing `-` from window title when running on mainnet. Reported by @Sjors in https://github.com/bitcoin/bitcoin/pull/15149#issuecomment-455787938. Tree-SHA512: 22f13c361496720f30a4926d928851ed74456c0d70bd313b0ebaca91a9ebfde96991091ac3d1b094f33d3ce9afafd709eb1917f00d96fa3ca69751b6b14e1d2b
2019-01-20Merge #15194: Add comment describing fDisconnect behaviorWladimir J. van der Laan
5b4283cb81b5d3023b9868d121b22b1f387a50ca Add comment describing fDisconnect behavior (Carl Dong) Pull request description: Motivated by @Sjors here: https://github.com/bitcoin/bitcoin/pull/14605#discussion_r248384309 Tree-SHA512: 8fc52eb4d3b5651c19c49b47fad75e8fb939cf524ada647e88d8d5aad7726052d94e500c1ebdb2a41b67bc4669ee61ff151a5cff81a52c68c900da562ef21751
2019-01-19Remove errant past from walletcreatefundedpsbt for nLocktime replaceabilityGregory Sanders
2019-01-19gui: Fix window title updateJoão Barbosa
2019-01-19Add locking annotation for vNodes. vNodes is guarded by cs_vNodes.practicalswift
2019-01-19zmq: log outbound message high water mark when reusing socketfanquake
2019-01-19Merge #15186: rpc: remove duplicate solvable field from getaddressinfoWladimir J. van der Laan
a2a6c8f4535c0c3c5f05714d64b238fc5a839233 rpc: remove duplicate solvable field from getaddressinfo (fanquake) Pull request description: Also added optional to `iscompressed`. Tree-SHA512: 28442a9dbfb2a9992b9b57142fa13d374d39444f04ae63460cb6330d896160cfd4b9651a3e231893eac3142ce55eff597a54cbafd3b57ffa46d3711c64044acb
2019-01-19Merge #15178: qt: Improve "help-console" messageWladimir J. van der Laan
979bc0c206c581c59460ed167bdc293b2a834cb5 Improve "help-console" message (Hennadii Stepanov) Pull request description: Added a note that results can be queried in the parenthesized syntax as it does not work in the standard syntax. Deprecated (since #8704) boolean `verbose` replaced with numerical `verbosity` in `getblock` examples. Current master (acec9e45c6fb6d5e72908c1a87b2b14f1ca5e3a0): ![screenshot from 2019-01-16 13-40-10](https://user-images.githubusercontent.com/32963518/51248127-d96bfd80-1997-11e9-83d3-47cf157e2f8d.png) Master + this PR: ![screenshot from 2019-01-16 14-00-39](https://user-images.githubusercontent.com/32963518/51248137-e852b000-1997-11e9-94dc-e9c949690beb.png) Tree-SHA512: 663e359ed117306f789fdefcae298194fdd6f5477c87912740e1683323974a333dcca13f17bb2c0aa66639ab7658bd53e535ae8fe671ea5fc557a3db4b192908
2019-01-18Merge #15101: gui: Add WalletControllerJonas Schnelli
0dd9bdefa gui: Refactor to use WalletController (João Barbosa) 8fa271f08 gui: Add WalletController (João Barbosa) cefb399e2 gui: Use AutoConnection for WalletModel::unload signal (João Barbosa) Pull request description: This PR is a subset of the work done in the context of #13100. This change consists in extracting from the application class the code that manages the wallet models. The role of the `WalletController` instance is to coordinate wallet operations and the window. Tree-SHA512: 6a824054376730eb7d16c643dd2003f5f60778e8ad3af707b82bc12c48438db179ca4446316b28fb17b206f4b9aba8998419aab8c5dd1f7c32467015732b5094
2019-01-18rpc: remove duplicate solvable field from getaddressinfofanquake
2019-01-17doc: Clarify -blocksdir usageDaniel McNally
This commit attempts to clarify and correct the `-blocksdir` argument description and default value. `-blocksdir` does not refer to the full path to the actual `blocks` directory, but rather the root/parent directory which contains the `blocks` directory. Accordingly, the default value is `<datadir>` and not `<datadir>/blocks`. It also attempts to clarify that only the `.dat` files containing block data are impacted by `-blocksdir`, not the index files.
2019-01-18gui: Refactor to use WalletControllerJoão Barbosa
2019-01-18gui: Add WalletControllerJoão Barbosa
2019-01-18gui: Use AutoConnection for WalletModel::unload signalJoão Barbosa
2019-01-17Add comment describing fDisconnect behaviorCarl Dong
2019-01-17Merge #15040: qt: Add workaround for QProgressDialog bug on macOSJonas Schnelli
7c572c488 Add workaround for QProgressDialog bug on macOS (Hennadii Stepanov) Pull request description: Fix #15016. Refs: - [QTBUG-65750: QProgressDialog too small width at larger font size on Mac](https://bugreports.qt.io/browse/QTBUG-65750) - [QTBUG-70357: QProgressDialog is too narrow to fit the text of its label](https://bugreports.qt.io/browse/QTBUG-70357) With this PR: ![screenshot from 2018-12-26 22-01-30](https://user-images.githubusercontent.com/32963518/50456571-1aa35b80-095e-11e9-8442-c285555f2bee.png) Tree-SHA512: dde668dfa7d2144973c0e868aea7fdb7d90f78584836d024ffefb8df4a709d6842fa3601954759b4462856a80e81df15b861ea39506599230a16928b621d9f8f
2019-01-17Merge #14250: qt: Remove redundant stopThread() and stopExecutor() signalsWladimir J. van der Laan
24313fbf7e3d69145bc18c089601ba7aea35d61c Remove redundant stopExecutor() signal (Hennadii Stepanov) 1c0e0a5e38102a67cb66cf6eef4098bdb64bb0f5 Remove redundant stopThread() signal (Hennadii Stepanov) Pull request description: The `QThread::finished` signal do this work. Tree-SHA512: 1afce23d30232276d50c3af5af79d83b88e390a2b71f7df585cc1079585d330447d179bbc34c0a89599beb2da035dfd5b9ce23238171490825cabc3a19ae6e67
2019-01-16Document RNG design in random.hPieter Wuille
2019-01-16Use secure allocator for RNG statePieter Wuille
2019-01-16Encapsulate RNGState betterPieter Wuille
2019-01-16DRY: Implement GetRand using FastRandomContext::randrangePieter Wuille
2019-01-16Sprinkle some sweet noexcepts over the RNG codePieter Wuille
2019-01-16Remove hwrand_initialized.Pieter Wuille
All access to hwrand is now gated by GetRNGState, which initializes the hwrand code.
2019-01-16Switch all RNG code to the built-in PRNG.Pieter Wuille
It includes the following policy changes: * All GetRand* functions seed the stack pointer and rdrand result (in addition to the performance counter) * The periodic entropy added by the idle scheduler now seeds stack pointer, rdrand and perfmon data (once every 10 minutes) in addition to just a sleep timing. * The entropy added when calling GetStrongRandBytes no longer includes the once-per-10-minutes perfmon data on windows (it is moved to the idle scheduler instead, where latency matters less). Other changes: * OpenSSL is no longer seeded directly anywhere. Instead, any generated randomness through our own RNG is fed back to OpenSSL (after an additional hashing step to prevent leaking our RNG state). * Seeding that was previously done directly in RandAddSeedSleep is now moved to SeedSleep(), which is indirectly invoked through ProcRand from RandAddSeedSleep. * Seeding that was previously done directly in GetStrongRandBytes() is now moved to SeedSlow(), which is indirectly invoked through ProcRand from GetStrongRandBytes().
2019-01-16Integrate util/system's CInit into RNGStatePieter Wuille
This guarantees that OpenSSL is initialized properly whenever randomness is used, even when that randomness is invoked from global constructors. Note that this patch uses Mutex directly, rather than CCriticalSection. This is because the lock-detection code is not necessarily initialized during global constructors.
2019-01-16Abstract out seeding/extracting entropy into RNGState::MixExtractPieter Wuille
2019-01-16Add thread safety annotations to RNG statePieter Wuille
2019-01-16Rename some hardware RNG related functionsPieter Wuille
2019-01-16Automatically initialize RNG on first use.Pieter Wuille
2019-01-16Don't log RandAddSeedPerfmon detailsPieter Wuille
These are hard to deal with, as in a follow-up this function can get called before the logging infrastructure is initialized.
2019-01-16scripted-diff: batch-recase BanMan variablesCarl Dong
-BEGIN VERIFY SCRIPT- sed -i "s/banMap/banmap/g" src/banman.h src/banman.cpp sed -i "s/netAddr/net_addr/g" src/banman.h src/banman.cpp sed -i "s/sinceUnixEpoch/since_unix_epoch/g" src/banman.h src/banman.cpp sed -i "s/bantimeoffset/ban_time_offset/g" src/banman.h src/banman.cpp sed -i "s/subNet/sub_net/g" src/banman.h src/banman.cpp sed -i "s/banReason/ban_reason/g" src/banman.h src/banman.cpp sed -i "s/notifyUI/notify_ui/g" src/banman.h src/banman.cpp sed -i "s/banEntry/ban_entry/g" src/banman.h src/banman.cpp sed -i "s/nStart/n_start/g" src/banman.h src/banman.cpp -END VERIFY SCRIPT-
2019-01-16banman: Add, use CBanEntry ctor that takes ban reasonCarl Dong
2019-01-16banman: reformulate nBanUtil calculationCarl Dong
Avoid reassigning parameters.
2019-01-16banman: add thread annotations and mark members const where possibleCory Fields
Also remove misleading comment. ClearBanned is used by rpc as well.
2019-01-16scripted-diff: batch-rename BanMan membersCory Fields
-BEGIN VERIFY SCRIPT- sed -i "s/clientInterface/m_client_interface/g" src/banman.h src/banman.cpp sed -i "s/setBannedIsDirty/m_is_dirty/g" src/banman.h src/banman.cpp sed -i "s/cs_setBanned/m_cs_banned/g" src/banman.h src/banman.cpp sed -i "s/setBanned/m_banned/g" src/banman.h src/banman.cpp -END VERIFY SCRIPT-
2019-01-16net: move BanMan to its own filesCory Fields
2019-01-16banman: pass in default ban time as a parameterCory Fields
Removes the dependency on arg parsing.
2019-01-16banman: pass the banfile path inCory Fields
There's no need to hard-code the path here. Passing it in means that there are no ordering concerns wrt establishing the datadir.
2019-01-16banman: create and split out banmanCory Fields
Some say he has always been.
2019-01-16net: split up addresses/ban dumps in preparation for moving themCory Fields
2019-01-16Merge #14839: [rebase] threads: fix unitialized members in sched_paramWladimir J. van der Laan
89282379baa503156d9b85f116ae5672f8588b39 threads: fix unitialized members in sched_param (Cory Fields) Pull request description: Rebased theuni's #14342. Building with gcc 8.2 against musl libc, which apparently has more attributes available in its sched_param. The following warnings were produced: warning: missing initializer for member 'sched_param::sched_ss_low_priority' [-Wmissing-field-initializers] warning: missing initializer for member 'sched_param::sched_ss_repl_period' [-Wmissing-field-initializers] warning: missing initializer for member 'sched_param::sched_ss_init_budget' [-Wmissing-field-initializers] warning: missing initializer for member 'sched_param::sched_ss_max_repl' [-Wmissing-field-initializers] Since the current thread may have interesting non-zero values for these fields, we want to be sure to only change the intended one. Query and modify the current sched_param rather than starting from a zeroed one. Tree-SHA512: a0bedbcf0130b3ee8261bb704e4bf6c9b760ad377c8a28c258765d54e54462b76707efc188b936b0a635cdd2bdf6b3b9298ab06ba361dc4806150b670d9702a3
2019-01-16tests: remove member connman/peerLogic in TestingSetupCory Fields
2019-01-16net: Break disconnecting out of Ban()Cory Fields
These are separate events which need to be carried out by separate subsystems. This also cleans up some whitespace and tabs in qt to avoid getting flagged by the linter. Current behavior is preserved.
2019-01-16Merge #15122: [RPC] Expand help text for importmulti changesWladimir J. van der Laan
b745e149c26507e31cdaed0412dcd9963647568d [docs] Expand help text for importmulti changes (John Newbery) Pull request description: Expands the RPC help text for changes to the importmulti RPC method. Tree-SHA512: e90e5abf66bba3863e7519b5f79c26d18a4d624e6e7878293bdd4ebb57f1a01c67de52e4a5621901a8cb87fb3516264b3b1a826997c7c3c17b11216f1f1a3db0
2019-01-16Merge #14268: Introduce SafeDbt to handle Dbt with free or memory_cleanse ↵Wladimir J. van der Laan
raii-style 4a86a0acd9ac3ca392f0584a5fd079a856e5e4ba Make SafeDbt DB_DBT_MALLOC on default initialization (Ben Woosley) 1a9f9f7e5e2e73fb832f5b96ad7e9e57954f3f3c Introduce SafeDbt to handle DB_DBT_MALLOC raii-style (Ben Woosley) 951a44e9cd6cf2b8058244f3f95181c5ba683fdd Drop unused setRange arg to BerkeleyBatch::ReadAtCursor (Ben Woosley) Pull request description: This provides additional exception-safety and case handling for the proper freeing of the associated buffers. Tree-SHA512: a038d728290cdb3905e7d881608052a6675b6425729ceaf7cfe69a6e91c2ee293cdb01e4b695a20963459ffdd9d4a1f9a08b3c07b1b5ba1aa8590a8149f686db
2019-01-16Merge #14151: windows: Fix remaining compiler warnings (MSVC)Wladimir J. van der Laan
b9dafe7d9ffcbe7928ffbfba816b54e196c57664 Fix remaining compiler warnings (MSVC). Move disabling of specific warnings from /nowarn to project file. (practicalswift) Pull request description: Fix remaining compiler warnings (MSVC). Before: ``` $ msbuild /p:TrackFileAccess=false /p:CLToolExe=clcache.exe build_msvc\bitcoin.sln /m /v:q /nowarn:C4244;C4267;C4715 /nologo …\script\script.cpp(272): warning C4018: '>': signed/unsigned mismatch …\test\allocator_tests.cpp(147): warning C4312: 'reinterpret_cast': conversion from 'int' to 'void *' of greater size …\boost\test\tools\old\impl.hpp(107): warning C4805: '==': unsafe mix of type 'const Left' and type 'const Right' in operation …\test\crypto_tests.cpp(535): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?) …\test\script_tests.cpp(188): warning C4805: '==': unsafe mix of type 'int' and type 'bool' in operation …\test\script_tests.cpp(190): warning C4805: '==': unsafe mix of type 'int' and type 'bool' in operation …\test\script_tests.cpp(191): warning C4805: '==': unsafe mix of type 'int' and type 'bool' in operation $ ``` After: ``` $ msbuild /p:TrackFileAccess=false /p:CLToolExe=clcache.exe build_msvc\bitcoin.sln /m /v:q /nowarn:C4244;C4267;C4715;C4805 /nologo $ ``` Tree-SHA512: 5b30334d3804e869779e77dad75a799e8e5e7eb2e08634cd40035cce140edd623cbb6c8b5806d2158c3df97888d3ea9ff4b8b6a5a83de3fe2cb361e29588c115
2019-01-16Merge #14409: utils and libraries: Make 'blocksdir' always net specificWladimir J. van der Laan
e4a0c3547ed886871f8b3d51c6b4ffdb181a8b9c Improve blocksdir functional test. (Hennadii Stepanov) c3f1821ac788e522e7558e3575150433450dcb8c Make blockdir always net specific (Hennadii Stepanov) Pull request description: The blocks directory is net specific by definition. Also this prevents the side effect of calling `GetBlocksDir(false)` in the non-mainnet environment. Currently a new node creates an unused `blocks\` directory in the root of the data directory when `-testnet` or `-regtest` is specified. Refs: - #12653 - https://github.com/bitcoin/bitcoin/pull/12653#discussion_r174784834 by @laanwj - https://github.com/bitcoin/bitcoin/issues/14595#issuecomment-436011186 Tree-SHA512: c9957a68a4a200ebd2010823a56db7e61563afedcb7c9828e86b13f3af2990e07854b622c1f3374756f94574acb3ea32de7d2a399eef6c0623f0e11265155627
2019-01-16Improve "help-console" messageHennadii Stepanov
Added a note that results can be queried in the parenthesized syntax. Deprecated boolean `verbose` replaced with numerical `verbosity` in `getblock` examples.
2019-01-16Merge #15136: qt: "Peers" tab overhaulWladimir J. van der Laan
3537c8345c788a527bb4e1d00683ca7f8ee5fb1a Do not deselect peer when switching away from tab (Hennadii Stepanov) b0037c51909dc55e279baa81f063c169c9735105 Improve Peers tab layout (Hennadii Stepanov) Pull request description: This is an alternative to #14798. The "Peers" tab of the "Debug" window improved to address comments https://github.com/bitcoin/bitcoin/pull/6209#issuecomment-108072605 (by @jonasschnelli) and https://github.com/bitcoin/bitcoin/pull/14798#issuecomment-441618268 (by @promag). This allows to keep the peer selection while navigating to other places and effectively reverts e0597268116cf90d961abeba9d14aaad0ab682d2. Screenshots with this PR: ![screenshot from 2019-01-09 22-01-36](https://user-images.githubusercontent.com/32963518/50927352-2e6fb700-1460-11e9-9173-582348210492.png) ![screenshot from 2019-01-09 22-02-11](https://user-images.githubusercontent.com/32963518/50927354-329bd480-1460-11e9-9926-d0eb0f026a35.png) ![screenshot from 2019-01-09 22-02-37](https://user-images.githubusercontent.com/32963518/50927358-3596c500-1460-11e9-864d-c8704451f3d9.png) Tree-SHA512: 3d086007f6d72930bc2fc3c395175adda0f1a7722de3842bc246ee4f3bfc5ebda4b9a626fb68a7ee8663a88d0842deb37c0c460ad84cc58e22f138acf8bc71ea