0.8.6#3463
Conversation
Fixes a memory exhaustion attack on low-memory peers.
Fixes issue#2838; this is a tweaked version of pull#2845 that should not leak the length of the password and is more generic, in case we run into other situations where we need timing-attack-resistant comparisons.
This reverts commit 7cc960f.
Orphan transactions were stored as a CDataStream pointer; this changes the mapOrphanTransactions data structures to store orphans as a CTransaction. This also fixes CVE-2013-4627 by always re-serializing transactions before relaying them.
git-subtree-dir: src/leveldb git-subtree-split: a02ddf9
This reduces a peer's ability to attack network resources by using a full bloom filter, but without reducing the usability of bloom filters. It sets a default match everything filter for peers and it generalizes a prior optimization to cover more cases.
Without this include, sometimes BOOST_VERSION was defined and sometimes it was not, depending on which includes came before it. The result was a random mix of sleep or sleep_for for boost versions >= 1.50.
Conflicts: src/main.cpp
This resulted in just passing all transactions to filtered wallets which worked surprisingly well, except where it didn't.
This also makes negative transaction versions non-standard. This avoids an issue triggered in block 256818 where transactions with negative version numbers were incorrectly serialized into the UTXO set. On restart nodes detect the inconsistency and refuse to start so long as a block with these transactions is inside the self-consistency check window, logging "coin database inconsistencies found". The software recommends reindexing, but reindexing does not correct the problem. This should be fixed by changing the chainstate serialization, but working around it seems harmless for now because the version is not used by any network rule currently. A patch free workaround is to start with -checklevel=2 which skips the consistency checks, but the IsStandard change is important for miners in order to protect unpatched nodes.
After discussing with BlueMatt, this appears to be harmless in its current state since it's always set before it's used. Initialize it anyway for readability and future safety. Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com> Rebased-From: 106f133
- could be helpful when debugging shutdown related problems Rebased-by: Warren Togami <wtogami@gmail.com> Rebased-from: ced3c24
Conflicts: src/main.cpp Rebased-from: cb3076a
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com> Rebased-From: 959e62f
As we'd previously learned, OSX's fsync is a data eating lie. Since 0.8.4 we're still getting some reports of disk corruption on OSX but now all of it looks like the block files have gotten out of sync with the database. It turns out that we were still using fsync() on the block files, so this isn't surprising.
…BOOST_VERSION is used
- fixes src\net.cpp:1601: Error:invalid conversion from 'void*' to 'const char*' [-fpermissive] in a setsockopt() call on Win32 that was found by using MinGW 4.8.1 compiler suite
This avoids spurious errors with the old tests but still tests enough that if the rng is replaced with a totally broken one it should still fail.
Conflicts: src/core.h
One-line change. Fixes #2752.
release-process.md Conflicts: doc/release-process.md
WalletView: - add new signal showNormalIfMinimized() - emit the new signal in handleURI() to fix a bug, preventing the main window to show up when using bitcoin: URIs Upstream: dbc0a6a
Use deleteLater() instead of delete, as it is not allowed to delete widgets directly in an event handler. Should solve the MacOSX random crashes on send with coincontrol. Rebased-From: 6c98cca
Versions of bitcoin before 0.8.6 have a bug that inserted empty transactions into the vtxPrev in the wallet, which will cause the node to be banned when retransmitted, hence add a check for !tx.vin.empty() before RelayTransaction.
CWalletTx::AddSupportingTransactions() was adding empty transaction to vtxPrev in some cases. Skip over these. Part one of the solution to #3190. This prevents invalid vtxPrev from entering the wallet, but not current ones being transmitted.
fail on short writes Ensure new files referred to by the manifest are in the filesystem.
mmap is proven on the other platforms, we are not changing it at the last moment before release.
|
Automatic sanity-testing: FAILED MERGE, see http://jenkins.bluematt.me/pull-tester/03a7d673876dc8fbae876290b455c02b0cac80bd for test log. This pull does not merge cleanly onto current master |
|
No clue what you are trying to do @DontKnowPS Don't drink and git 🍺 |
|
Every so often we get this type of weird merges... sometimes from a side branch, sometimes from an altcoin. I wonder if there's some odd or misunderstood guide these people are following...? |
No description provided.