No description provided.
jslee1301 patch 1 #10298
pull ghost wants to merge 4627 commits into bitcoin:0.11 from changing 1262 files +160191 −87708-
ghost commented at 11:20 PM on April 28, 2017: none
-
fa5137c11d
[doc] Remove unused clang format dev script
Also, update the clang format file to reflect the current coding style mentioned in the developer notes.
-
0fea960ca9
Merge #9510: [trivial] Fix typos in comments
cc16d99 [trivial] Fix typos in comments (practicalswift)
-
Fix typos 5f62e3eb63
-
720b579480
Merge #9646: depends: Fix cross build for qt5.7
b5f374f qt: fix build with zlib for target (Cory Fields) 8efa34f depends: add a zlib build (Cory Fields) 342eb96 build: find qt's renamed helper libs from 5.7 (Cory Fields)
-
d2c9e4d422
Merge #9615: Wallet incremental fee
4b189c1 Change bumpfee result value from 'oldfee' to 'origfee'. (Alex Morcos) 0c0c63f Introduce WALLET_INCREMENTAL_RELAY_FEE (Alex Morcos) e8021ec Use CWallet::GetMinimumFee in bumpfee (Alex Morcos) ae9719a Refactor GetMinimumFee to give option of providing targetFee (Alex Morcos) fe8e8ef [rpc] Add incremental relay fee to getnetworkinfo (Alex Morcos) 6b331e6 Fix to have miner test aware of new separate block min tx fee (Alex Morcos) de6400d Fix missing use of dustRelayFee (Alex Morcos) 5b15870 Use incrementalRelayFee for BIP 125 replacement (Alex Morcos)
-
36966a1c0e
Merge #9626: Clean up a few CConnman cs_vNodes/CNode things
2366180 Do not add to vNodes until fOneShot/fFeeler/fAddNode have been set (Matt Corallo) 3c37dc4 Ensure cs_vNodes is held when using the return value from FindNode (Matt Corallo) 5be0190 Delete some unused (and broken) functions in CConnman (Matt Corallo)
-
668de70be0
Merge #9644: [refactor] Remove using namespace <xxx> from src/
b7b48c8 Refactor: Remove using namespace <xxx> from src/*.cpp. (Karl-Johan Alm)
-
qt: periodic translations update 71fc17f667
-
53ab12d931
Merge #9649: [doc] Remove unused clang format dev script
fa5137c [doc] Remove unused clang format dev script (MarcoFalke)
-
e99f0d7ad4
Merge #9647: Skip RAII event tests if libevent is built without event_set_mem_functions
95f97f4 Skip RAII event tests if libevent is built without event_set_mem_functions (Luke Dashjr)
-
wallet: Refactor dummy signature signing for reusability d625b907a1
-
Contrib: Add jtimon pgp keys for commit sigs and future gitian builds 178454dde9
-
Net: CConnman: Make some methods const d45955fa09
-
Net: Make CNetMsgMaker more const fc7f2ffad4
-
Net: pass interruptMsgProc as const where possible 0729102f99
-
f62659448c
rpc: bumpfee: use correct maximum signed tx size for fee calculation
More accurate than simply adding one byte per input, and properly handles the case where the original transaction happened to have very small signatures
-
rpc: bumpfee: handle errors more gracefully 9522b53a91
-
1581ecbc33
Use configparser in rpc-tests.py
Remove the use of wildcard imports in rpc-tests.py and replace with configparser.
-
7bfb77045c
Merge #9640: Bumpfee: bugfixes for error handling and feerate calculation
9522b53 rpc: bumpfee: handle errors more gracefully (Suhas Daftuar) f626594 rpc: bumpfee: use correct maximum signed tx size for fee calculation (Suhas Daftuar) d625b90 wallet: Refactor dummy signature signing for reusability (Suhas Daftuar)
-
77bd8c4cab
Merge #9625: Increase minimum debug.log size to 10MB after shrink.
29fb311 Increase minimum debug.log size to 10MB after shrink. (Alex Morcos)
-
clarify listunspent amount description 3eba88d44c
-
3e900acafa
Require merge commits merge branches on top of other merge commits
Specifically, require that the left branch (first restult of git show -s --format=format:%P) is a signed merge commit, instead of allowing either. This is fine for now, but might need to be relaxed in the future. Also fixes an out-of-file-descriptors issue by holding too many open FDs writing to /dev/null
-
Test that pushes to bitcoin/bitcoin are signed per verify-commits ba94426d53
-
e30d9287fd
Merge #9663: [RPC] clarify listunspent amount description
3eba88d clarify listunspent amount description (Gregory Sanders)
-
ae972a5e99
Merge #9580: Fix various minor linearization script issues
b9d95bd Fix various minor linearization script issues (Douglas Roark)
-
4e19efba03
Merge #9556: Remove redundant semicolons
8fc6989 Remove redundant semicolons (practicalswift)
-
7c93952fec
Merge #9656: Check verify-commits on pushes to master
ba94426 Test that pushes to bitcoin/bitcoin are signed per verify-commits (Matt Corallo) 3e900ac Require merge commits merge branches on top of other merge commits (Matt Corallo)
-
1c2edd9f67
Merge #9654: Add jtimon pgp keys for commit sigs and future gitian builds
178454d Contrib: Add jtimon pgp keys for commit sigs and future gitian builds (Jorge Timón)
-
885cfdd217
Fix super-unlikely race introduced in 236618061a445d2cb11e72
Once the CNode has been added to vNodes, it is possible that it is disconnected+deleted in the socket handler thread. However, after that we now call InitializeNode, which accesses the pnode. helgrind managed to tickle this case (somehow), but I suspect it requires in immensely braindead scheduler.
-
Dont deserialize nVersion into CNode, should fix #9212 80ff0344ae
-
Bugfix: RPC/Mining: GBT should return 1 MB sizelimit before segwit activates 9fc7f0bce9
-
2046617b5e
net: deserialize the entire version message locally
This avoids having some vars set if the version negotiation fails. Also copy it all into CNode at the same site. nVersion and fSuccessfullyConnected are set last, as they are the gates for the other vars. Make them atomic for that reason.
-
12752af0cc
net: don't run callbacks on nodes that haven't completed the version handshake
Since ForEach* are can be used to send messages to all nodes, the caller may end up sending a message before the version handshake is complete. To limit this, filter out these nodes. While we're at it, may as well filter out disconnected nodes as well. Delete unused methods rather than updating them.
-
7a8c251901
net: Disallow sending messages until the version handshake is complete
This is a change in behavior, though it's much more sane now than before.
-
08bb6f4ed4
net: log an error rather than asserting if send version is misused
Also cleaned up the comments and moved from the header to the .cpp so that logging headers aren't needed from net.h
-
Fail in DecodeHexTx if there is extra data at the end 7ea0ad539f
-
922bea90c2
Better handle invalid parameters to signrawtransaction
This silently skips trying to merge signatures from inputs which do not exist from transactions provided to signrawtransaction, instead of hitting an assert.
-
[qa] Test that decoderawtransaction throws with extra data appended 691710a648
-
[qa] Add second input to signrawtransaction test case ec4f7e433e
-
4ec057dfa7
[wallet] Set correct metadata on bumpfee wallet transactions
Preserve comment, order form, and account strings from the original wallet transaction. Also set fTimeReceivedIsTxTime and fFromMe fields for consistency with CWallet::CreateTransaction. The latter two fields don't influence current wallet behavior, but do record that the transaction originated in the wallet instead of coming from the network or sendrawtransaction.
-
[qa] test signrawtransaction merge with missing inputs 6dbfe08c29
-
Lock cs_vSend and cs_inventory in a consistent order even in TRY fd13eca147
-
Always enforce lock strict lock ordering (try or not) 8465631845
-
7b2d96b634
Access WorkQueue::running only within the cs lock.
This removes a "race" between Interrupt() and Run(), though it should not effect any of our supported platforms.
-
a3511628d0
Merge #9679: Access WorkQueue::running only within the cs lock
7b2d96b Access WorkQueue::running only within the cs lock. (Matt Corallo)
-
496691741d
Merge #9609: net: fix remaining net assertions
08bb6f4 net: log an error rather than asserting if send version is misused (Cory Fields) 7a8c251 net: Disallow sending messages until the version handshake is complete (Cory Fields) 12752af net: don't run callbacks on nodes that haven't completed the version handshake (Cory Fields) 2046617 net: deserialize the entire version message locally (Cory Fields) 80ff034 Dont deserialize nVersion into CNode, should fix #9212 (Matt Corallo)
-
7821db30e1
Merge #9671: Fix super-unlikely race introduced in 236618061a445d2cb11e72
885cfdd Fix super-unlikely race introduced in 236618061a445d2cb11e72 (Matt Corallo)
-
Fixup style a bit by moving { to the same line as if statements 2a962d4540
-
ac719c936d
Init ECC context for test_bitcoin_fuzzy.
This avoids calling things like pubkey_parse with a null context argument.
-
923dc447ea
Merge #9578: Add missing mempool lock for CalculateMemPoolAncestors
003cd60 Add missing mempool lock for CalculateMemPoolAncestors (Matt Corallo)
-
fc67cd22f8
Merge #9691: Init ECC context for test_bitcoin_fuzzy.
ac719c9 Init ECC context for test_bitcoin_fuzzy. (Gregory Maxwell)
-
8d6447ecf7
Merge #9673: Set correct metadata on bumpfee wallet transactions
4ec057d [wallet] Set correct metadata on bumpfee wallet transactions (Russell Yanofsky)
-
986ba005ed
Merge #9651: Fix typos
5f62e3e Fix typos (practicalswift)
-
09e0c28f85
Merge #9659: Net: Turn some methods and params/variables const
0729102 Net: pass interruptMsgProc as const where possible (Jorge Timón) fc7f2ff Net: Make CNetMsgMaker more const (Jorge Timón) d45955f Net: CConnman: Make some methods const (Jorge Timón)
-
40f7e27d25
Merge #9650: Better handle invalid parameters to signrawtransaction
6dbfe08 [qa] test signrawtransaction merge with missing inputs (Matt Corallo) ec4f7e4 [qa] Add second input to signrawtransaction test case (Matt Corallo) 691710a [qa] Test that decoderawtransaction throws with extra data appended (Matt Corallo) 922bea9 Better handle invalid parameters to signrawtransaction (Matt Corallo) 7ea0ad5 Fail in DecodeHexTx if there is extra data at the end (Matt Corallo)
-
91bfffff5d
Use argparse in rpc_tests.py
This commit replaces the roll-your-own argument parsing in rpc_tests.py with Python's standard library argparse.
-
afd38e7cc8
Improve rpc-tests.py arguments
A few miscellaneous improvements to rpc-tests.py command line arguments: - make all arguments start with double dash for consistency - improve help text and output - add nozmq argument to explicitly exclude the ZMQ tests - change 'parallel' to 'jobs'
-
870cd2b58a
Merge #9378: [trivial] Add documentation for CWalletTx::fFromMe member.
39c77b0 Add documentation for CWalletTx::fFromMe member. (Russell Yanofsky)
-
3de3ccdfaa
Refactor rpc-tests.py
- add main() - remove global variables
-
02464da5e4
Merge #9227: Make nWalletDBUpdated atomic to avoid a potential race.
d63ff62 Make nWalletDBUpdated atomic to avoid a potential race. (Patrick Strateman)
-
net: rearrange so that socket accesses can be grouped together 45e2e08561
-
net: add a lock around hSocket 9a0b784dea
-
8713de83a0
build: Add options to override BDB cflags/libs
Add environment settings to specify the CFLAGS and LIBS to be used for BerkeleyDB directly. These will completely by-pass autodetection in the same way as other similar flags. ``` BDB_CFLAGS C compiler flags for BerkeleyDB, bypasses autodetection BDB_LIBS Linker flags for BerkeleyDB, bypasses autodetection ``` Implements #3921.
-
5cc2ebb619
Update OpenBSD and FreeBSD build steps
Re-try with most recent versions, and use BDB_CFLAGS/BDB_LIBS to directly point at BerkeleyDB instead of CPPFLAGS hacks.
-
729de15b63
Merge #9604: [Trivial] add comment about setting peer as HB peer.
dd5b011 [Trivial] add comment about setting peer as HB peer. (John Newbery)
-
b709fe7ffc
Merge #9532: Remove unused variables
90fd29b Remove unused int64_t nSinceLastSeen (practicalswift) ac4a095 Remove unused Python variables (practicalswift)
-
Use z = std::max(x - y, 0); instead of z = x - y; if (z < 0) z = 0; a47da4b6fe
-
[Trivial] Remove incorrect help message from gettxoutproof() 9949ebfa6a
-
29c53289a9
bench: Fix initialization order in registration
The initialization order of global data structures in different implementation units is undefined. Making use of this is essentially gambling on what the linker does, the so-called [Static initialization order fiasco](https://isocpp.org/wiki/faq/ctors#static-init-order). In this case it apparently worked on Linux but failed on OpenBSD and FreeBSD. To create it on first use, make the registration structure local to a function. Fixes #8910.
-
Further-enforce lockordering by enforcing directly after TRY_LOCKs 618ee9249b
-
Disconnect peers which we do not receive VERACKs from within 60 sec 2cbd1196b7
-
d304fef374
Merge #9712: bench: Fix initialization order in registration
29c5328 bench: Fix initialization order in registration (Wladimir J. van der Laan)
-
6a55515a9b
Merge #9705: build: Add options to override BDB cflags/libs
5cc2ebb Update OpenBSD and FreeBSD build steps (Wladimir J. van der Laan) 8713de8 build: Add options to override BDB cflags/libs (Wladimir J. van der Laan)
-
dd163f5788
Merge #9674: Always enforce strict lock ordering (try or not)
618ee92 Further-enforce lockordering by enforcing directly after TRY_LOCKs (Matt Corallo) 2a962d4 Fixup style a bit by moving { to the same line as if statements (Matt Corallo) 8465631 Always enforce lock strict lock ordering (try or not) (Matt Corallo) fd13eca Lock cs_vSend and cs_inventory in a consistent order even in TRY (Matt Corallo) -
9db8eecac1
Fix RPC failure testing
Make sure that RPC tests are actually checking failures correctly by: - Catching JSON RPC exceptions and verifying the error codes and messages. - Failing the test case if the JSON RPC exception isn't raised.
-
qa: mininode learns when a socket connects, not its first action 8aaba7a6b7
-
qa: Expose on-connection to mininode listeners b436f92f72
-
Qt/Intro: Update block chain size c8cee26100
-
Bugfix: Qt/Intro: Chain state needs to be stored even with the full blockchain 93ffba7163
-
Bugfix: Qt/Intro: Pruned nodes never require *more* space a9baa6d742
-
Qt/Intro: Move sizeWarningLabel text into C++ code 9adb694b17
-
Qt/Intro: Storage shouldn't grow significantly with pruning enabled 50c56570b2
-
36164faa33
Fix typo and spelling inconsistency in CONTRIBUTING.md
Fix spellings of GitHub Remove unnecessary changes Fix GitHub spelling on doc/translation_process.md
-
Qt/Intro: Explain a bit more what will happen first time f6d18f5b33
-
36f9d3ae6d
Merge #9718: Qt/Intro: Various fixes
a9baa6d Bugfix: Qt/Intro: Pruned nodes never require *more* space (Luke Dashjr) 93ffba7 Bugfix: Qt/Intro: Chain state needs to be stored even with the full blockchain (Luke Dashjr) c8cee26 Qt/Intro: Update block chain size (Luke Dashjr)
-
netbase: Make InterruptibleRecv return an error code instead of bool 13f608582c
-
3ddfe29837
netbase: Do not print an error on connection timeouts through proxy
If a timeout happens while reading the proxy response, this effectively means we timed out while connecting to the remote node. This is very common for Tor, so do not print an error message.
-
Remove bitseed.xf2.org form the dns seed list ca9955e706
-
467df390f0
Remove nonsense #undef foreach
This commit removes a preprocessor #undef for a macro that was never defined. Should make no difference to compiled code.
-
Add a test for P2P inactivity timeouts 66f861ade9
-
33f3b21407
Merge #9730: Remove bitseed.xf2.org form the dns seed list
ca9955e Remove bitseed.xf2.org form the dns seed list (Jonas Schnelli)
-
5e903a5ed9
devtools: Handle Qt formatting characters edge-case in update-translations.py
If both numeric format specifiers and "others" are used, assume we're dealing with a Qt-formatted message. In the case of Qt formatting (see https://doc.qt.io/qt-5/qstring.html#arg) only numeric formats are replaced at all. This means "(percentage: %1%)" is valid (which was introduced in #9461), without needing any kind of escaping that would be necessary for strprintf. Without this, this function would wrongly detect '%)' as a printf format specifier.
-
qt: Periodic translations update 7179e7ca0d
-
4dfac2c950
Update seeds tooling to Python 3
All the other tooling scripts require Python 3, it makes sense to do so here too. Also document the dependency on python3-dnspython.
-
bfa9393c06
contrib/seeds: Update PATTERN_AGENT
gmaxwell: Adds the newest versions, drops everything multiple softforks ago.
-
Pre-0.14.0 hardcoded seeds update a60677e394
-
056aba2b4f
Remove fallbacks for boost_filesystem < v3
Minimum boost version was bumped to 1.47.0 in #8920, which means the configure step won't even pass with older boost. This version has boost filesystem v3, which means the (crappy) fallbacks for older versions can go.
-
2447c1024e
Merge #9698: net: fix socket close race
9a0b784 net: add a lock around hSocket (Cory Fields) 45e2e08 net: rearrange so that socket accesses can be grouped together (Cory Fields)
-
321d0fc6b6
net: fix a few races. Credit @TheBlueMatt
These are (afaik) all long-standing races or concurrent accesses. Going forward, we can clean these up so that they're not all individual atomic accesses. - Reintroduce cs_vRecv to guard receive-specific vars - Lock vRecv/vSend for CNodeStats - Make some vars atomic. - Only set the connection time in CNode's constructor so that it doesn't change
-
Make nTimeConnected const in CNode 644f1234e2
-
Avoid copying CNodeStats to make helgrind OK with buggy std::string ae683c1b19
-
Access fRelayTxes with cs_filter lock in copyStats 512731bed0
-
Make nStartingHeight atomic 96f42d8a12
-
Make nServices atomic 0f31872615
-
Move [clean|str]SubVer writes/copyStats into a lock 22b4966a29
-
Make nTimeBestReceived atomic d8f2b8a8c0
-
Move CNode::addrName accesses behind locked accessors 036073bf87
-
Move CNode::addrLocal access behind locked accessors db2dc7a58c
-
b860915f8b
Merge #9707: Fix RPC failure testing
9db8eec Fix RPC failure testing (John Newbery)
-
442887f27f
Require timestamps for importmulti keys
Additionally, accept a "now" timestamp, to allow avoiding rescans for keys which are known never to have been used. Note that the behavior when "now" is specified is slightly different than the previous behavior when no timestamp was specified at all. Previously, when no timestamp was specified, it would avoid rescanning during the importmulti call, but set the key's nCreateTime value to 1, which would not prevent future block reads in later ScanForWalletTransactions calls. With this change, passing a "now" timestamp will set the key's nCreateTime to the current block time instead of 1. Fixes #9491
-
3cf991756c
Add test to check new importmulti "now" value
Easiest way to test this was to expose the timestamp via the validateaddress RPC (which was already looking up and returning key metadata).
-
Use MTP for importmulti "now" timestamps 266a8114cb
-
a58370e6a2
Dedup nTimeFirstKey update logic
Also make nTimeFirstKey member variable private. This is just a cleanup change, it doesn't change behavior in any significant way.
-
a80f98b1c7
Use importmulti timestamp when importing watch only keys
When importing a watch-only address over importmulti with a specific timestamp, the wallet's nTimeFirstKey is currently set to 1. After this change, the provided timestamp will be used and stored as metadata associated with watch-only key. This can improve wallet performance because it can avoid the need to scan the entire blockchain for watch only addresses when timestamps are provided. Also adds timestamp to validateaddress return value (needed for tests). Fixes #9034.
-
a06ede9a13
Merge #9708: Clean up all known races/platform-specific UB at the time PR was opened
db2dc7a Move CNode::addrLocal access behind locked accessors (Matt Corallo) 036073b Move CNode::addrName accesses behind locked accessors (Matt Corallo) d8f2b8a Make nTimeBestReceived atomic (Matt Corallo) 22b4966 Move [clean|str]SubVer writes/copyStats into a lock (Matt Corallo) 0f31872 Make nServices atomic (Matt Corallo) 96f42d8 Make nStartingHeight atomic (Matt Corallo) 512731b Access fRelayTxes with cs_filter lock in copyStats (Matt Corallo) ae683c1 Avoid copying CNodeStats to make helgrind OK with buggy std::string (Matt Corallo) 644f123 Make nTimeConnected const in CNode (Matt Corallo) 321d0fc net: fix a few races. Credit @TheBlueMatt (Cory Fields)
-
d978c41e1e
Merge #9736: Pre-0.14.0 hardcoded seeds update
a60677e Pre-0.14.0 hardcoded seeds update (Wladimir J. van der Laan) bfa9393 contrib/seeds: Update PATTERN_AGENT (Wladimir J. van der Laan) 4dfac2c Update seeds tooling to Python 3 (Wladimir J. van der Laan)
-
Remove unused module from rpc-tests a432aa0aa8
-
Bugfix: Qt/Options: Restore persistent "restart required" notice 0b4f273e9c
-
9acf25cc01
Return error when importmulti called with invalid address.
Lack of error checking noticed by Alex Morcos <morcos@chaincode.com>
-
c45b9fb54c
net: correctly ban before the handshake is complete
7a8c251901 made a change to avoid getting into SendMessages() until the version handshake (VERSION + VERACK) is complete. That was done to avoid leaking out messages to nodes who could connect, but never bothered sending us their version/verack. Unfortunately, the ban tally and possible disconnect are done as part of SendMessages(). So after 7a8c251901, if a peer managed to do something bannable before completing the handshake (say send 100 non-version messages before their version), they wouldn't actually end up getting disconnected/banned. That's fixed here by checking the banscore as part of ProcessMessages() in addition to SendMessages().
-
8502e7acbe
net: parse reject earlier
Prior to this change, all messages were ignored until a VERSION message was received, as well as possibly incurring a ban score. Since REJECT messages can be sent at any time (including as a response to a bad VERSION message), make sure to always parse them. Moving this parsing up keeps it from being caught in the if (pfrom->nVersion == 0) check below.
-
cbfc5a6728
net: require a verack before responding to anything else
7a8c251901 made this logic hard to follow. After that change, messages would not be sent to a peer via SendMessages() before the handshake was complete, but messages could still be sent as a response to an incoming message. For example, if a peer had not yet sent a verack, we wouldn't notify it about new blocks, but we would respond to a PING with a PONG. This change makes the behavior straightforward: until we've received a verack, never send any message other than version/verack/reject. The behavior until a VERACK is received has always been undefined, this change just tightens our policy. This also makes testing much easier, because we can now connect but not send version/verack, and anything sent to us is an error.
-
qa: mininode learns when a socket connects, not its first action 5b5e4f8330
-
qa: Expose on-connection to mininode listeners 8650bbb660
-
d9434918d2
qa: add a test to detect leaky p2p messages
This is certainly not exhaustive, but it's better than nothing. Adds checks for: - Any message received before sending a version - Any message received other than version/reject before sending a verack It also tries to goad the remote into sending a pong, address, or block announcement.
-
ec66d06e6e
Merge #9735: devtools: Handle Qt formatting characters edge-case in update-translations.py
7179e7c qt: Periodic translations update (Wladimir J. van der Laan) 5e903a5 devtools: Handle Qt formatting characters edge-case in update-translations.py (Wladimir J. van der Laan)
-
Selectively suppress deprecation warnings 4b6ccccc16
-
edc9e63c57
Merge #9682: Require timestamps for importmulti keys
266a811 Use MTP for importmulti "now" timestamps (Russell Yanofsky) 3cf9917 Add test to check new importmulti "now" value (Russell Yanofsky) 442887f Require timestamps for importmulti keys (Russell Yanofsky)
-
b08656e343
Merge #9715: Disconnect peers which we do not receive VERACKs from within 60 sec
66f861a Add a test for P2P inactivity timeouts (Matt Corallo) b436f92 qa: Expose on-connection to mininode listeners (Matt Corallo) 8aaba7a qa: mininode learns when a socket connects, not its first action (Matt Corallo) 2cbd119 Disconnect peers which we do not receive VERACKs from within 60 sec (Matt Corallo)
-
e87ce95fbd
Merge #9720: net: fix banning and disallow sending messages before receiving verack
d943491 qa: add a test to detect leaky p2p messages (Cory Fields) 8650bbb qa: Expose on-connection to mininode listeners (Matt Corallo) 5b5e4f8 qa: mininode learns when a socket connects, not its first action (Matt Corallo) cbfc5a6 net: require a verack before responding to anything else (Cory Fields) 8502e7a net: parse reject earlier (Cory Fields) c45b9fb net: correctly ban before the handshake is complete (Cory Fields)
-
a441db01b5
Merge #9755: Bugfix: Qt/Options: Restore persistent "restart required" notice
0b4f273 Bugfix: Qt/Options: Restore persistent "restart required" notice (Luke Dashjr)
-
[trivial] Fix recently introduced typos in comments 0c9b9b7d64
-
4c69d683f2
Merge #9553: Use z = std::max(x - y, 0) instead of z = x - y; if (z < 0) z = 0;
a47da4b Use z = std::max(x - y, 0); instead of z = x - y; if (z < 0) z = 0; (practicalswift)
-
d8e8b06bd0
Merge #9108: Use importmulti timestamp when importing watch only keys (on top of #9682)
a80f98b Use importmulti timestamp when importing watch only keys (Russell Yanofsky) a58370e Dedup nTimeFirstKey update logic (Russell Yanofsky)
-
6c5427d24c
wallet: Prevent "overrides a member function but is not marked 'override'" warnings
Because it is used inconsistently at least version 5.4.0 of g++ to complains about methods that don't use override. There is two ways to go about this: remove override from the methods having it, or add it to the methods missing it. I chose the second.
-
ba803efb68
Harden against mistakes handling invalid blocks
Fixes a bug in AcceptBlock() in invoking CheckBlock() with incorrect arguments, and restores a call to CheckBlock() from ProcessNewBlock() as belt-and-suspenders. Updates the (overspecified) tests to match behavior.
-
476cc47da0
Merge #9758: Selectively suppress deprecation warnings
4b6cccc Selectively suppress deprecation warnings (Jonas Schnelli)
-
7a93af8340
Merge #9756: Return error when importmulti called with invalid address.
9acf25c Return error when importmulti called with invalid address. (Russell Yanofsky)
-
07afcd6379
Add missing cs_wallet lock that triggers new lock held assertion
A new AssertLockHeld(cs_wallet) call was added in commit a58370e "Dedup nTimeFirstKey update logic" (part of PR #9108). The lock held assertion will fail when loading prexisting wallets files from before the #9108 merge that have watch-only keys.
-
1e92e041dd
Merge #9765: Harden against mistakes handling invalid blocks
ba803ef Harden against mistakes handling invalid blocks (Suhas Daftuar)
-
f8af89a918
Merge #9764: wallet: Prevent "overrides a member function but is not marked 'override'" warnings
6c5427d wallet: Prevent "overrides a member function but is not marked 'override'" warnings (Wladimir J. van der Laan)
-
e43a58514d
Merge #9771: Add missing cs_wallet lock that triggers new lock held assertion
07afcd6 Add missing cs_wallet lock that triggers new lock held assertion (Russell Yanofsky)
-
[Trivial] Update comments referencing main.cpp 00e623d0b8
-
8743320d6c
Merge #9763: [Trivial] Update comments referencing main.cpp
00e623d [Trivial] Update comments referencing main.cpp (CryptAxe)
-
8be0866883
[qa] Simplify import-rescan.py
Get rid of partial functions so the test can be more easily extended to add more variants of imports with options that affect rescanning (e.g. different key timestamps). Also change the second half of the test to send /to/ the imported addresses, instead of /from/ the imported addresses. The goal of this part of the test was to confirm that the wallet would pick up new transactions after an import regardless of whether or not a rescan happened during the import. But because the wallet can only do this reliably for incoming transactions and not outgoing transactions (which require the wallet to look up transaction inputs) the test previously was less meaningful than it should have been.
-
[qa] Extend import-rescan.py to test specific key timestamps c28583d062
-
[qa] Extend import-rescan.py to test imports on pruned nodes. 38d3e9ee59
-
afae75fd3d
Merge #9675: Fix typo and spelling inconsistency in CONTRIBUTING.md
36164fa Fix typo and spelling inconsistency in CONTRIBUTING.md (Koki Takahashi)
-
e662af3583
Use 2 hour grace period for key timestamps in importmulti rescans
Gregory Maxwell <greg@xiph.org> pointed out the lack of grace period in https://github.com/bitcoin/bitcoin/pull/9490#issue-199407998. The importwallet RPC which uses key timestamps in a similar way already has a 2 hour grace period.
-
QA: Test GBT size/weight limit values 279f944e8d
-
Update nMinimumChainWork and defaultAssumeValid. 3f78e460ba
-
Add two hour buffer to manual pruning 91fb506e0a
-
55c403b8fe
Ensure `-maxsigcachesize` is in valid range
- If the -maxsigcachesize parameter is set to zero, setup a minimum sized sigcache (2 elements) rather than segfaulting. - Handle maxsigcachesize being negative - Handle maxsigcachesize being too large
-
8dee822177
Merge #9777: Handle unusual maxsigcachesize gracefully
55c403b Ensure `-maxsigcachesize` is in valid range (John Newbery)
-
3c02b95740
Merge #9779: Update nMinimumChainWork and defaultAssumeValid.
3f78e46 Update nMinimumChainWork and defaultAssumeValid. (Gregory Maxwell)
-
ad168ef4e3
Merge #9778: Add two hour buffer to manual pruning
91fb506 Add two hour buffer to manual pruning (Alex Morcos)
-
9828f9a996
Merge #9761: Use 2 hour grace period for key timestamps in importmulti rescans
e662af3 Use 2 hour grace period for key timestamps in importmulti rescans (Russell Yanofsky) 38d3e9e [qa] Extend import-rescan.py to test imports on pruned nodes. (Russell Yanofsky) c28583d [qa] Extend import-rescan.py to test specific key timestamps (Russell Yanofsky) 8be0866 [qa] Simplify import-rescan.py (Russell Yanofsky)
-
ec1267f13b
[wallet] Remove importmulti always-true check
Remove "nLowestTimestamp <= chainActive.Tip()->GetBlockTimeMax()" check from importmulti, which is always true because nLowestTimestamp is set to the minimum of the most recent block time and all the imported key timestamps, which is necessarily lower than the maximum block time.
-
f87e8f5392
build: bump version to 0.14.99
Now that 0.14 branch has been split off, master is 0.14.99 (pre-0.15). Also clean out release notes.
-
Return errors from importmulti if complete rescans are not successful e2e2f4c856
-
Various review markups for rpc-tests.py improvements a6a3e58c48
-
Make KEY_SIZE a compile-time constant 914fad155d
-
Move BIP70_MAX_PAYMENTREQUEST_SIZE to header c801c82e25
-
3301587dc5
boost: remove iostreams includes
They're unused and produce nasty deprecation warnings
-
df42bcdbfe
Merge #9785: Avoid variable length arrays
c801c82 Move BIP70_MAX_PAYMENTREQUEST_SIZE to header (Pieter Wuille) 914fad1 Make KEY_SIZE a compile-time constant (Pieter Wuille)
-
12f46fa7d8
Merge #9786: boost: remove iostreams includes
3301587 boost: remove iostreams includes (Cory Fields)
-
8e5cca027f
gitian: bump descriptors for master
This was skipped for the 0.14 cycle.
-
Avoid VLA in hash.h 5c8fd50811
-
50a226563c
Merge #9788: gitian: bump descriptors for master
8e5cca0 gitian: bump descriptors for master (Cory Fields)
-
Use package name variable inside $(package)_file_name variable 1bfe6b426e
-
8efd1c820b
Merge #9744: Remove unused module from rpc-tests
a432aa0 Remove unused module from rpc-tests (Takashi Mitsuta)
-
eb4910193a
doc: Update manpages for master
(cherry picked from commit 268c390d02d99a4a93a0a01221e273d2b9695ff7)
-
aa5fa642b0
Merge #9696: [trivial] Fix recently introduced typos in comments
0c9b9b7 [trivial] Fix recently introduced typos in comments (practicalswift)
-
7ff4a538a8
Merge #9657: Improve rpc-tests.py
a6a3e58 Various review markups for rpc-tests.py improvements (John Newbery) 3de3ccd Refactor rpc-tests.py (John Newbery) afd38e7 Improve rpc-tests.py arguments (John Newbery) 91bffff Use argparse in rpc_tests.py (John Newbery) 1581ecb Use configparser in rpc-tests.py (John Newbery)
-
1f9e904f45
Merge #9791: Avoid VLA in hash.h
5c8fd50 Avoid VLA in hash.h (Pieter Wuille)
-
390a39bb5c
Merge #9795: doc: Update manpages for master (laanwj)
eb49101 doc: Update manpages for master (Wladimir J. van der Laan)
-
Add seed.btc.petertodd.org to mainnet DNS seeds 3b4dd2a676
-
[trivial] Add tests_config.ini to .gitignore 41e7219127
-
[qa][doc] Correct rpc test options in readme 851f6a39f1
-
1a9fd5cb9d
Merge #9724: Qt/Intro: Add explanation of IBD process
f6d18f5 Qt/Intro: Explain a bit more what will happen first time (Luke Dashjr) 50c5657 Qt/Intro: Storage shouldn't grow significantly with pruning enabled (Luke Dashjr) 9adb694 Qt/Intro: Move sizeWarningLabel text into C++ code (Luke Dashjr)
-
7ca2f54270
Merge #9794: Minor update to qrencode package builder
1bfe6b4 Use package name variable inside $(package)_file_name variable (Mitchell Cash)
-
2dad02232a
Merge #9760: [wallet] Remove importmulti always-true check
ec1267f [wallet] Remove importmulti always-true check (Russell Yanofsky)
-
aa791e2911
Merge #9619: Bugfix: RPC/Mining: GBT should return 1 MB sizelimit before segwit activates
279f944 QA: Test GBT size/weight limit values (Luke Dashjr) 9fc7f0b Bugfix: RPC/Mining: GBT should return 1 MB sizelimit before segwit activates (Luke Dashjr)
-
7639d38f14
Merge #9726: netbase: Do not print an error on connection timeouts through proxy
3ddfe29 netbase: Do not print an error on connection timeouts through proxy (Wladimir J. van der Laan) 13f6085 netbase: Make InterruptibleRecv return an error code instead of bool (Wladimir J. van der Laan)
-
171fc91f06
Read/write mempool.dat as a binary.
mempool.dat is a binary file and thus it should be read/written as such. Fixes #9810.
-
Fix for issue #9775. Added check for open() returning a NULL pointer. 40f11f8872
-
Add exclude option to rpc-tests.py c5784085e9
-
a87d02adad
use EXIT_ codes instead of magic numbers
To be consistent with other exit() calls.
-
7d46b3ea8d
Merge #9813: Read/write mempool.dat as a binary.
171fc91 Read/write mempool.dat as a binary. (Pavel Janík)
-
8ad31f9aa3
Merge #9798: Fix Issue #9775 (Check returned value of fopen)
40f11f8 Fix for issue #9775. Added check for open() returning a NULL pointer. (kirit93)
-
Fix segfault crash when shutdown the GUI in disablewallet mode 312c4f1057
-
8528d6ac6d
Merge #9817: Fix segfault crash when shutdown the GUI in disablewallet mode
312c4f1 Fix segfault crash when shutdown the GUI in disablewallet mode (Jonas Schnelli)
-
5f0556d032
Merge #9727: Remove fallbacks for boost_filesystem < v3
056aba2 Remove fallbacks for boost_filesystem < v3 (Wladimir J. van der Laan)
-
Remove harmless read of unusued priority estimates bc8fd12289
-
61a640ea97
Merge #9485: ZMQ example using python3 and asyncio
b471daf Adddress nits, use asyncio signal handling, create_task (Bob McElrath) 4bb7d1b Add python version checks and 3.4 example (Bob McElrath) 5406d51 Rewrite to not use Polling wrapper for asyncio, link to python2.7 example (Bob McElrath) 5ea5368 ZMQ example using python3 and asyncio (Bob McElrath)
-
build: warn about variable length arrays b602fe0f73
-
874c7363d7
Fix pruning test broken by 2 hour manual prune window
Regression happened in 91fb506 Add two hour buffer to manual pruning.
-
5628c70f2a
Merge #9807: RPC doc fix-ups.
851f6a3 [qa][doc] Correct rpc test options in readme (fanquake) 41e7219 [trivial] Add tests_config.ini to .gitignore (fanquake)
-
eaea2bbb41
Removed redundant parameter from mempool.PrioritiseTransaction
(Also made the `const uint256 hash` parameter a `const uint256& hash` as suggested by @sdaftuar)
-
qa: Set correct path for binaries in rpc tests 3333ad0b63
-
92dd6c8dfd
Merge #9815: Trivial: use EXIT_ codes instead of magic numbers
a87d02a use EXIT_ codes instead of magic numbers (Marko Bencun)
-
5b583efaa7
Merge #9805: Add seed.btc.petertodd.org to mainnet DNS seeds
3b4dd2a Add seed.btc.petertodd.org to mainnet DNS seeds (Peter Todd)
-
a8c5751038
Merge #9801: Removed redundant parameter from mempool.PrioritiseTransaction
eaea2bb Removed redundant parameter from mempool.PrioritiseTransaction (gubatron)
-
4b183d33f3
Remove block file location upgrade code
An effort to reduce the size of AppInitMain(). The removed code upgrades the location of the block files when upgrading to 0.8. 0.8 seems to be the oldest version still in use.
-
ba7220b5e8
Merge #9773: Return errors from importmulti if complete rescans are not successful
e2e2f4c Return errors from importmulti if complete rescans are not successful (Russell Yanofsky)
-
1efc99c4dc
Merge #9819: Remove harmless read of unusued priority estimates
bc8fd12 Remove harmless read of unusued priority estimates (Alex Morcos)
-
bed5b30a56
Merge #9711: [Trivial] Remove incorrect help message from gettxoutproof()
9949ebf [Trivial] Remove incorrect help message from gettxoutproof() (John Newbery)
-
9829c54de2
build: force a c++ standard to be specified
Newer compilers may switch to newer standards by default. For example, gcc6 uses std=gnu++14 by default.
-
fa4cd2e998
qa: Check return code when stopping nodes
This includes work by jnewbery
-
205830a37b
build: add --enable-werror option
This turns some compiler warnings into errors. Useful for c-i.
-
d14555de3d
Merge #9820: Fix pruning test broken by 2 hour manual prune window
874c736 Fix pruning test broken by 2 hour manual prune window (Russell Yanofsky)
-
1d2a57e9fd
Merge #9824: qa: Check return code when stopping nodes
fa4cd2e qa: Check return code when stopping nodes (MarcoFalke)
-
e68c266f3d
Merge #9789: build: add --enable-werror and warn on vla's
205830a build: add --enable-werror option (Cory Fields) b602fe0 build: warn about variable length arrays (Cory Fields)
-
3f95a806b1
Fix docstrings in qa tests
This commit fixes the module-level docstrings for the tests and helper modules in qa. Many of these tests were uncommented previously - this commit ensures that every test case has at least a minimum level of commenting.
-
7146d96de3
Merge #9766: Add --exclude option to rpc-tests.py
c578408 Add exclude option to rpc-tests.py (John Newbery)
-
d6064a89ac
Merge #9577: Fix docstrings in qa tests
3f95a80 Fix docstrings in qa tests (John Newbery)
-
a13a417cdc
Merge #9823: qa: Set correct path for binaries in rpc tests
3333ad0 qa: Set correct path for binaries in rpc tests (MarcoFalke)
-
692c9eddba
Merge #9831: build: force a c++ standard to be specified
9829c54 build: force a c++ standard to be specified (Cory Fields)
-
Update sendfrom RPC help to correct coin selection misconception f81f0d0030
-
864890adf5
[qa] Make import-rescan.py watchonly check reliable
Send payments during the test from a different node than the node generating keys to be imported, so the spending node doesn't create transactions that inadvertently involve (spend funds from) the imported keys. Fixes #9826
-
ef9f495e93
Trivial: fix comments referencing AppInit2
It was refactored into multiple functions in 0cc8b6bc44bea29e24fa4e13d8a9bbe4f1483680.
-
BIP32 extra test vector 30aedcbdb4
-
Trivial: Rephrase the definition of difficulty in the code. dc222f8f63
-
00285cece8
Merge #9840: Update sendfrom RPC help to correct coin selection misconception
f81f0d0 Update sendfrom RPC help to correct coin selection misconception (Russell Yanofsky)
-
dd6e0d6301
Merge #9833: Trivial: fix comments referencing AppInit2
ef9f495 Trivial: fix comments referencing AppInit2 (Marko Bencun)
-
f19afdbfb4
Merge #9612: [trivial] Rephrase the definition of difficulty.
dc222f8 Trivial: Rephrase the definition of difficulty in the code. (Karl-Johan Alm)
-
don't throw std::bad_alloc when out of memory. Instead, terminate immediately c5f008a416
-
6206252e50
Merge #9847: Extra test vector for BIP32
30aedcb BIP32 extra test vector (Pieter Wuille)
-
Change bitcoin address in RPC helpaddress to an invalid address, so people don't accidentally send coins there (like I did). 83ac719d34
-
c7e57ce981
Merge #9839: [qa] Make import-rescan.py watchonly check reliable
864890a [qa] Make import-rescan.py watchonly check reliable (Russell Yanofsky) Tree-SHA512: ea0e2b1d4fc8f35174c3d575fb751b428daf6ad3aa944fad4e3ddcc9195e4f17051473acabc54203b1d27cca64cf911b737ab92e986c40ef384410652e2dbea1
-
0a177148e7
uint256: replace sprintf with HexStr and reverse-iterator
Instead of calling sprintf for every byte, format the hex bytes ourselves by help of HexStr and a reverse_iterator.
-
19cafc6239
test: Replace remaining sprintf with snprintf
Use of `sprintf` is seen as a red flag as many of its uses are insecure. OpenBSD warns about it while compiling, and some modern platforms, e.g. [cloudlibc from cloudabi](https://github.com/NuxiNL/cloudlibc) don't even provide it anymore. Although our uses of these functions are secure, it can't hurt to replace them anyway. There are only 3 occurences left, all in the tests.
-
tests: Fix dangling pwalletMain pointer in wallet tests 75a109338f
-
94e5ba9ba2
Merge #9875: tests: Fix dangling pwalletMain pointer in wallet tests
75a1093 tests: Fix dangling pwalletMain pointer in wallet tests (Wladimir J. van der Laan) Tree-SHA512: 7fb6e8385fe7d542f9ecb113a08d675ca9e84907a1939b3a6ad41318fda55bc999b9bc8ffc3f56cd8610ca49d0db982d3c793df7bbcb7eb9638f4483030db6a8
-
306bd72157
Fix importmulti returning rescan errors for wrong keys
Bug was a missing ++i line in a new range for loop added in commit e2e2f4c "Return errors from importmulti if complete rescans are not successful"
-
[doc] Update doc/bips.md for BIP90 implementation fe71661ae1
-
prevector: assert successful allocation d4ee7baef7
-
88c2ae3ed2
Merge #9350: [Trivial] Adding label for amount inside of tx_valid/tx_invalid.json
988ce2d Adding 'amount' label to tx_valid/tx_invalid.json files (Chris Stewart) Tree-SHA512: 11c216c6565ecaa5ff4eb6122f87d3b28f89db52d1e473c0678f61c240e133698adb05e717bfb9d3db36409dfb230b902dca4029a58633be36c9f85e0db3d973
-
Add Pieter's old signed commits to revsig-commits a4b02f4275
-
65fdc37ac3
Merge #9856: Terminate immediately when allocation fails
d4ee7ba prevector: assert successful allocation (Cory Fields) c5f008a don't throw std::bad_alloc when out of memory. Instead, terminate immediately (Cory Fields) Tree-SHA512: 699ce8df5b1775a99c71d3cfc952b45da1c0091e1a4b6adfac52d5be6144c3d98f88ac3af90e5c73fff2f74666a499feb4a34434683ce5979814e869c0aeddc3
-
d75e8cb44d
Merge #9879: [doc] Update doc/bips.md for BIP90 implementation
fe71661 [doc] Update doc/bips.md for BIP90 implementation (Suhas Daftuar) Tree-SHA512: cfa72662e5e8ecedb7869b64c2064cc29d8736bcd9baacd59ea420dc2f93265c8d950e469863e77e8fa9348fbf1b39a1e2397253a2fd94b63adc909cc8c14873
-
30bdcfca2b
Merge #9865: Change bitcoin address in RPC help message
83ac719 Change bitcoin address in RPC helpaddress to an invalid address, so people don't accidentally send coins there (like I did). (Marijn Stollenga) Tree-SHA512: ca1163466a149d567b97efbfcfa8fdfe2d474245b4dd5a1a92555b4e87f8e99df5fee4cd79ef1ce6a98db2337846af78f37c2e6b31d02008b11fa0e151ce6590
-
f5ef8e9dd2
Merge #9867: Replace remaining sprintf with snprintf
19cafc6 test: Replace remaining sprintf with snprintf (Wladimir J. van der Laan) 0a17714 uint256: replace sprintf with HexStr and reverse-iterator (Wladimir J. van der Laan) Tree-SHA512: 2ba1dd4d25e1cbfff4d67b2f483448aa7c34ab5c799cddd48ba5826e5fa6df425abe35e244aaf4c52db9fccfb4d2a25a14bb4597bf9d1fce95991f270da6bb26
-
c322fa472e
Merge #9732: [Trivial] Remove nonsense #undef foreach
467df39 Remove nonsense #undef foreach (John Newbery) Tree-SHA512: b8c3c6654eb8a9e5008a1923bee46f7ef9f8216c8f4f1b4662d82c26410ca8d8afe41e24e48a3e2e8b2a25c81c33795a4073dabfe357caf0aa820519d4fffc71
-
b7547fa93e
Merge #9822: Remove block file location upgrade code
4b183d3 Remove block file location upgrade code (Marko Bencun) Tree-SHA512: fac1fce95341e0df645c08c7e794195b22b54df08826aa8728f2f97aede1e42f724f8133781b97f836d4a392d044d08c846bce471a6b478582014f8be501a712
-
7e2a2212ec
Merge #9829: Fix importmulti returning rescan errors for wrong keys
306bd72 Fix importmulti returning rescan errors for wrong keys (Russell Yanofsky) Tree-SHA512: ae9998236cbd3ff749d6b5c716bd76c9cec386b0708583e4912e4e05bf4584545258e1d0543aa5445024d2b5decf859a64f40c6503029773366a0f9a9ddf9b88
-
fa32a16c57
travis: Verify commits only for one target
This abuses the CHECK_DOC flag to serve as a general indicator to execute platform independent sanity checks.
-
36afd4db44
Merge #9888: travis: Verify commits only for one target
fa32a16 travis: Verify commits only for one target (MarcoFalke) Tree-SHA512: 4c08a4e74d476facf6049a6935535afd6c6cbafe808ad42aee055bcfab23fbe1e368f2479ab59a7cb8c0c93a3f0732b2d0d7d34ef137a979fc5916e6063c7fb3
-
11049f4fe6
Merge #9884: Add Pieter's old signed commits to revsig-commits
a4b02f4 Add Pieter's old signed commits to revsig-commits (Matt Corallo) Tree-SHA512: 614a0a41b6995d2c36cd0e2363aeee8b7494112586d0c3cfc10bdf725b0752ede279ec9a55de2769461edcbea0220dd482c4bbd989fa17142c59a0bf622c42e4
-
Add default Wallet e257864e47
- fanquake closed this on Apr 28, 2017
- MarcoFalke locked this on Sep 8, 2021
Contributors