0.8 #6909

pull nathanimpact wants to merge 78 commits into bitcoin:master from bitcoin:0.8 changing 78 files +1521 −423
  1. nathanimpact commented at 12:50 AM on October 30, 2015: none

    No description provided.

  2. Truncate oversize 'tx' messages before relaying/storing.
    Fixes a memory exhaustion attack on low-memory peers.
    7cc960f8f5
  3. Dump addresses every 15 minutes instead of 10 seconds 65c20dbf55
  4. Bump version numbers for 0.8.3 release 40809aed65
  5. Bump version numbers to prep for 0.8.4 release 6929f2a45f
  6. Fix Gnome bitcoin: URI handler 6f315b4016
  7. Fix multi-block reorg transaction resurrection 38863afbcc
  8. Make RPC password resistant to timing attacks
    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.
    cdb3441b5c
  9. Revert "Truncate oversize 'tx' messages before relaying/storing."
    This reverts commit 7cc960f8f57e7fe90ee7aa0ccd3e3c6c89ec5a25.
    08dd92060b
  10. Simplify storage of orphan transactions
    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.
    21696c12f3
  11. Checkpoint at block 250,000 20b611770f
  12. Remove inline LevelDB to prepare for git-subtree version 5c739c574f
  13. Squashed 'src/leveldb/' content from commit a02ddf9
    git-subtree-dir: src/leveldb
    git-subtree-split: a02ddf9b14d145e88185ee209ab8b01d8826663a
    cb1e39f0a3
  14. Merge commit 'cb1e39f0a35cc2b36fb748c26f69cd27e0ed5332' as 'src/leveldb' e6552eed63
  15. Squashed 'src/leveldb/' changes from a02ddf9..be1b0ff
    be1b0ff On Mac OS X fsync does not guarantee write to disk. Use fcntl F_FULLFSYNC instead.
    
    git-subtree-dir: src/leveldb
    git-subtree-split: be1b0ff1fcd6ad820a7fd111ac671fb51cc68001
    6519339fe8
  16. Merge commit '6519339fe849bdbbff047d9eef8ab6c5fbb3e2a4' 980b1c3571
  17. Performance optimization for bloom filters.
    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.
    ac7c960067
  18. fixed: include boost header as necessary
    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.
    708c75c0ee
  19. fixed: don't use thread::sleep_for where it's known to be broken
    Fixes #2690.
    5e18c6ccbc
  20. Fix non-standard disconnected transactions causing mempool orphans
    Conflicts:
    	src/main.cpp
    d7fdc5fac3
  21. Update the bloom state on the real object, not the temporary one.
    This resulted in just passing all transactions to filtered wallets
    which worked surprisingly well, except where it didn't.
    839c7d1fa8
  22. Longer term workaround for chainstate corruption from negative versions.
    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.
    f0a1d87b00
  23. Fix out-of-bounds check 27fefeac71
  24. Bump version numbers for 0.8.5 release ef14a26b12
  25. process received messages one at a time without sleeping between messages 7084756f4f
  26. Fix comparison tool by asking for blocks more aggressively
    Rebased-from: b33b9a6fefbe832bf45a6c7717d0537f27597bff
    5c55bf5af0
  27. Fix uninitialized variable added in 5c55bf5
    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: 106f133de6bdb577c4135847fd703d08f525ba46
    3e89dbb132
  28. log start and end of Shutdown()
    - could be helpful when debugging shutdown related problems
    
    Rebased-by:   Warren Togami <wtogami@gmail.com>
    Rebased-from: ced3c248168941fbbd42d5a3807657a88be6a54e
    633d95ec22
  29. Log reason for non-standard transaction rejection
    Conflicts:
    	src/main.cpp
    
    Rebased-from: cb3076a3daa68eebf19c681ab48a0c0d9f0ce7a5
    c4892eb4b3
  30. make -logtimestamps default on and rework help-message
    Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
    Rebased-From: 959e62f
    05ea79052c
  31. More fixes for blockchain corruption on OSX.
    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.
    f46f128b9a
  32. Hurricane Electric uses block 2001:470::, not 2011:470:: 0119e0c592
  33. Porting MinGW multithreading bugfix to makefile.mingw
    Original fix:
    https://github.com/bitcoin/bitcoin/commit
    /8864019f6d88b13d3442843d9e6ebeb8dd938831
    e88eb41b6c
  34. exclude CreatePidFile() function on WIN32 as it is unused f607729b26
  35. Fix build date for from-tarball builds 99f73bd2fd
  36. osx: fix bitcoin-qt startup crash when clicking dock icon
    Crash probably introduced by 4d17a1b0.
    Inialize the window to NULL and verify it before use.
    
    Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
    068996daa5
  37. Bump version numbers for 0.8.6 release e4be09cfae
  38. Squashed 'src/leveldb/' changes from be1b0ff..be91006
    936b461 Merge upstream LevelDB 1.13.
    748539c LevelDB 1.13
    
    git-subtree-dir: src/leveldb
    git-subtree-split: be9100673b05cec1662a54d0b7a59e4317fdda86
    83efc9104f
  39. Silence useless warning in src/json/json_spirit_writer_template.h to make important warnings easier to see.
    warning: typedef ‘Char_type’ locally defined but not used [-Wunused-local-typedefs]
    e564297156
  40. Refactor: pull alert string sanitization into util
    Rebased-from: 17faf562629cd27f00fc138e218ebcc1ce071765
    56ce843314
  41. special case DoS value == 0 in ProcessMessage()
    - prevents unneeded log messages, which could make users think something
      bad was happening
    
    Squashed: style-police code cleanup
    3779de9d89
  42. Add some additional logging to give extra network insight. 1c53d0a4fb
  43. Store and use a sanitized subVer
    Rebased-from: a946aa8d3ec7009ac670eeb65a525efe5eeb6e84
    7120d76dc6
  44. Increase default -blockmaxsize/prioritysize to 300K/30K 5c029630f9
  45. Remove CENT-output free transaction rule when relaying
    Remove the (relay/mempool) rule that all outputs of free transactions
    must be greater than 0.01 XBT. Dust spam is now taken care of by making
    dusty outputs non-standard.
    1ca8a75cb4
  46. Lower maximum size for free transaction creation
    Changes the maximum size of a free transaction that will be created
    from 10,000 bytes to 1,000 bytes.
    
    The idea behind this change is to make the free transaction area
    available to a greater number of people; with the default 27K-per-block,
    just three very-large very-high-priority transactions could fill the space.
    9612e4c0d9
  47. Explictly cast calculation to int, to allow std::max to work. 187f8a5675
  48. Add missing 0x prefix in chainparams.cpp
    Conflicts:
    	src/chainparams.cpp
    df238b1975
  49. Bugfix: Move boost/version include from db.cpp to walletdb.cpp where BOOST_VERSION is used 89c2ea0891
  50. fix invalid conversion error with MinGW 4.8.1 in net.cpp
    - 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
    1b350f25a6
  51. fix typo in README.md 9f7fc8b332
  52. Fix typo in README.md 98289bbe25
  53. Make the rand tests determinstic. (fixes #2714)
    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.
    d3fe7c44f7
  54. Update HomeBrew osx makefile patch to account for recent changes to makefile c9c67b00df
  55. fix comment about dust logic
    Conflicts:
    	src/core.h
    901ae4bffd
  56. Add wtogami to gitian download scripts. 96896a0ece
  57. Create parent directories if needed in GetDataDir
    One-line change. Fixes #2752.
    138705a173
  58. Made the build/release process completable verbatim as listed in
    release-process.md
    
    Conflicts:
    	doc/release-process.md
    daf9e4627f
  59. Fix memory leak on exception in Key::SignCompact 6f21e7317e
  60. fix memory leak in CKey::SetCompactSignature() 27e35bf840
  61. Don't attempt to resize vector to negative size. df0f6d020a
  62. Fix typo in a comment: it's base58, not base48. 3b8868dca4
  63. Bitcoin-Qt: Fix display of window when bitcoin: URI is opened
    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: dbc0a6aba2cf94aa1b167145a18e0b9c671aef5b
    bfb0856986
  64. Fix typo: make default maxblocksize 350k (not 300) 22db46cf11
  65. release notes: add warning about 32-bit systems a0a5b20156
  66. qt: use deleteLater to remove send entries
    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: 6c98cca9e47ddb9c786cd3f0445175c378515e0d
    8c3ba8be01
  67. Refuse to retransmit transactions without vins
    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.
    ec93d0aa43
  68. Prevent empty transactions from being added to vtxPrev
    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.
    1eb11e32e8
  69. dont use mmap in leveldb, this is a marginal performance hit
    fail on short writes
    
    Ensure new files referred to by the manifest are in the filesystem.
    5f553f8422
  70. LevelDB: use PosixWriteableFile only on MacOS X
    mmap is proven on the other platforms, we are not changing it at
    the last moment before release.
    77f7bcb352
  71. leveldb: Use native Darwin memory barriers d3381e71a1
  72. Release notes for 0.8.6 03a7d67387
  73. consensus: guard against openssl's new strict DER checks
    New versions of OpenSSL will reject non-canonical DER signatures. However,
    it'll happily decode them. Decode then re-encode before verification in order
    to ensure that it is properly consumed.
    
    Github-Pull: #5634
    Rebased-From: 488ed32f2ada1d1dd108fc245d025c4d5f252783
    f4134ee301
  74. fail immediately on an empty signature
    Github-Pull: #5634
    Rebased-From: 8dccba6a45db0466370726ed462b9da2eae43bce
    91e1332011
  75. Improve robustness of DER recoding code
    Add some defensive programming on top of #5634.
    
    This copies the respective OpenSSL code in ECDSA_verify in
    OpenSSL pre-1.0.1k (e.g. https://github.com/openssl/openssl/blob/OpenSSL_1_0_1j/crypto/ecdsa/ecs_vrf.c#L89)
    more closely.
    
    As reported by @sergiodemianlerner.
    
    Github-Pull: #5640
    Rebased-From: c6b7b29f232c651f898eeffb93f36c8f537c56d2
    f19dded6e4
  76. Implement BIP 66 validation rules and switchover logic da7ba593d7
  77. Raise version of created blocks, and enforce DERSIG in mempool 534e6dac47
  78. Backport of some of BIP66's tests 6690ef7fea
  79. Merge #5765: Implement BIP66 (0.8) 9d11aba4c4
  80. gmaxwell closed this on Oct 30, 2015

  81. sipa commented at 12:50 AM on October 30, 2015: member

    A pull request is asking us to merge a change you created. You don't need it to check out a version of the code.

  82. laanwj deleted the branch on May 3, 2018
  83. MarcoFalke locked this on Sep 8, 2021
Contributors

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-29 03:16 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me