Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also .

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also .
Choose a Base Repository
bitcoin/bitcoin
8706774431/litecoin
9cat/templecoin
Anoncoin/anoncoin
BSafe-network/bitcoin
BitAltcoin/bitaltcoin
BitcoinHardfork/bitcoin
BitcoinPRReadingGroup/bitcoin
BitcoinUnlimited/BitcoinUnlimited
ClaireDuSoleil/bitcoin
CoinBlack/blackcoin
Crowndev/crowncoin
DarrellDuane/bitcoin
Diapolo/bitcoin
EvgenijM86/emercoin
Fermat-ORG/iop-token-server
Flowdalic/bitcoin
Gamerbit/omnicore
GeorgeKimionis/bitcoin
HOdlcoin/HOdlcoin
HongPong/bitcoin
KnCMiner/bitcoin
ManAgainstCode/bitcoin
MazaCoin/maza
OmniLayer/omnicore
Orbitcoin/Orbitcoin
PIVX-Project/PIVX
Peershare/Peershare
Peershares/Peershares
Peerunity/Peerunity
SandyCohen/mincoin
ShadowOfHarbringer/bitcoin-nftf
SproutsCommunityRep/sprouts
T-X/bitcoin-git
TheBlueMatt/bitcoin
TheSeven/ppcoin
TommyWorldPower/Energi
TorinKwok/bitcoin
TripleSpeeder/bitcoin
UASF/bitcoin
Unseen/Goldbits
VirtualDestructor/bitcoin-qt-i2p
VsyncCrypto/Vsync
ZoomT/bitcoin
aLQ/bitbar
aaronschmitz/chronocrypt
ahmedbodi/bytecoin
atmshop/litecoin
aurarad/auroracoin-old
bankledger/bitcoin
bfroemel/smallchange
bitcoin-hivemind/hivemind
bitcoinclassic/bitcoinclassic
bitcoinec/bitcoinec
bitcoinfibre/bitcoinfibre
bitcoinknots/bitcoin
bitgem/bitgem
bitpay/bitcoin
bitshares/bitshares-pts
bitundo/bitcoin
bitzeny/bitzeny
bloq/bitcoin
bobsomers/ANDREWCHANcoin
bryan-mills/bytecoin
btc1/bitcoin
btcdrak/bitcoin
bytemaster/bitshare_bitcoin_branch
cdecker/bitcoin
chaincoin/chaincoin
cloudcoin/cloudcoin
codebounty/bitcoin
creativechain/creativechain-core
credits-currency/credits
darkhosis/Gangnam-Style-v4-tandified
dashpay/dash
dexX7/bitcoin
dgarage/bc2
donSchoe/xolominer
dooglus/bitcoin
drivechain-implementation-2/bitcoin
drivechain-project/bitcoin
earthcoinproject/earthcoin
eduffield222/dash
elacoin/elacoin
emercoin/emercoin
energicryptocurrency/energi
ezcoin/ezcoin
faircoin/faircoin
fhcteam/FengHuangCoin
florincoin/florincoin
foo1inge/datacoin
foocoin/freicoin
franko-org/franko
freewil/bitcoin
freicoin/freicoin-old
fusebox/i0coin
gandrewstone/BitcoinUnlimited
gasteve/bitcoin
gavinandresen/bitcoin-git
genjix/bitcoin
glv2/peerunity
gmaxwell/bitcoin
goku1997/bitcoin
groffer/bitcoin
halfinney/bitcoin
harry-1989/bitcoin
hrobeers/peercoin
ixcoin/ixcoin
jakeva/bitcoin-pwcheck
janko33bd/bitcoin
jaromil/bitcoin
javgh/bitcoin
jgarzik/bitcoin
jl2012/bitcoin
jlcurby/NobleCoin
jlopp/statoshi
jmezinskis/calcoin
jonasschnelli/bitcoin
jonls/bitcoin
jordanlewis/bitcoin
joulecoin/joulecoin
kaiquewdev/bitcoin
keesdewit82/LasVegasCoin
keninishna/ass-pennies
knotwork/Mergecoin
laanwj/bitcoin
litecoin-project/litecoin
llluiop/bitcoin
luke-jr/bitcoin
lzsaver/bitcoin-translation
m0mchil/bitcoin
m21/mastercore
maaku/bitcoin
mad/bitcoin
makomk/bitcoin
marscoin/marscoin
mastercoin-MSC/mastercore
mathwizard1232/nyancoins
megacoin/megacoin
memorycoin/memorycoin
mhanne/bitcoin
mikaelh2/primecoin
mikehearn/bitcoin
mincoin/mincoin
morcos/bitcoin
mrmayfield/bitcoin
mrtexaznl/mediterraneancoin
myriadcoin/myriadcoin
myriadteam/myriadcoin
namuyan/kumacoin-v2
nsacoin/nsacoin
onecoin/onecoin
particl/particl-core
peercoin/peercoin
petertodd/bitcoin
phelixbtc/bitcoin
pocopoco/yacoin
primecoin/primecoin
primedigger/primecoin
raghuariga/bitcoin
rakyll/bitcoin
reddcoin-project/reddcoin
reddink/reddcoin
reinier19/bitcoin
riecoin/riecoin
ronpaulcoin/ronpaulcoin
runn1ng/bitcoin
ryanxcharles/bitcoin
satoshisbitcoin/satoshisbitcoin
sdhjob/bitcoin
segsignal/bitcoin
sifcoin/sifcoin
sipa/bitcoin
skeincoin/skeincoin
sppl/mavro
stcupp/bitcoin
stuycoin/stuycoin
sunnyking/ppcoin
syscoin/syscoin2
tcatm/bitcoin
thbaumbach/primecoin
theuni/bitcoin
timohanke/bitcoin
timothyej/bitcoin
truthcoin/truthcoin-cpp
tumf/litecoin
tzuryby/bitcoin
udibr/bitcoin
umaar/bitcoin
umiyuki/sayacoin
vertcoin/vertcoin-old
vinced/namecoin
vtcex/bitcoin
whitslack/bitcoin-infinity
worldcoinproject/worldcoin-v0.8
yacoin/yacoin
zachlatta/marscoin
zathras-crypto/omnicore
zeta-dev/zetacoin
zetacoin/zetacoin
Nothing to show
...
Choose a Head Repository
bitcoin/bitcoin
8706774431/litecoin
9cat/templecoin
Anoncoin/anoncoin
BSafe-network/bitcoin
BitAltcoin/bitaltcoin
BitcoinHardfork/bitcoin
BitcoinPRReadingGroup/bitcoin
BitcoinUnlimited/BitcoinUnlimited
ClaireDuSoleil/bitcoin
CoinBlack/blackcoin
Crowndev/crowncoin
DarrellDuane/bitcoin
Diapolo/bitcoin
EvgenijM86/emercoin
Fermat-ORG/iop-token-server
Flowdalic/bitcoin
Gamerbit/omnicore
GeorgeKimionis/bitcoin
HOdlcoin/HOdlcoin
HongPong/bitcoin
KnCMiner/bitcoin
ManAgainstCode/bitcoin
MazaCoin/maza
OmniLayer/omnicore
Orbitcoin/Orbitcoin
PIVX-Project/PIVX
Peershare/Peershare
Peershares/Peershares
Peerunity/Peerunity
SandyCohen/mincoin
ShadowOfHarbringer/bitcoin-nftf
SproutsCommunityRep/sprouts
T-X/bitcoin-git
TheBlueMatt/bitcoin
TheSeven/ppcoin
TommyWorldPower/Energi
TorinKwok/bitcoin
TripleSpeeder/bitcoin
UASF/bitcoin
Unseen/Goldbits
VirtualDestructor/bitcoin-qt-i2p
VsyncCrypto/Vsync
ZoomT/bitcoin
aLQ/bitbar
aaronschmitz/chronocrypt
ahmedbodi/bytecoin
atmshop/litecoin
aurarad/auroracoin-old
bankledger/bitcoin
bfroemel/smallchange
bitcoin-hivemind/hivemind
bitcoinclassic/bitcoinclassic
bitcoinec/bitcoinec
bitcoinfibre/bitcoinfibre
bitcoinknots/bitcoin
bitgem/bitgem
bitpay/bitcoin
bitshares/bitshares-pts
bitundo/bitcoin
bitzeny/bitzeny
bloq/bitcoin
bobsomers/ANDREWCHANcoin
bryan-mills/bytecoin
btc1/bitcoin
btcdrak/bitcoin
bytemaster/bitshare_bitcoin_branch
cdecker/bitcoin
chaincoin/chaincoin
cloudcoin/cloudcoin
codebounty/bitcoin
creativechain/creativechain-core
credits-currency/credits
darkhosis/Gangnam-Style-v4-tandified
dashpay/dash
dexX7/bitcoin
dgarage/bc2
donSchoe/xolominer
dooglus/bitcoin
drivechain-implementation-2/bitcoin
drivechain-project/bitcoin
earthcoinproject/earthcoin
eduffield222/dash
elacoin/elacoin
emercoin/emercoin
energicryptocurrency/energi
ezcoin/ezcoin
faircoin/faircoin
fhcteam/FengHuangCoin
florincoin/florincoin
foo1inge/datacoin
foocoin/freicoin
franko-org/franko
freewil/bitcoin
freicoin/freicoin-old
fusebox/i0coin
gandrewstone/BitcoinUnlimited
gasteve/bitcoin
gavinandresen/bitcoin-git
genjix/bitcoin
glv2/peerunity
gmaxwell/bitcoin
goku1997/bitcoin
groffer/bitcoin
halfinney/bitcoin
harry-1989/bitcoin
hrobeers/peercoin
ixcoin/ixcoin
jakeva/bitcoin-pwcheck
janko33bd/bitcoin
jaromil/bitcoin
javgh/bitcoin
jgarzik/bitcoin
jl2012/bitcoin
jlcurby/NobleCoin
jlopp/statoshi
jmezinskis/calcoin
jonasschnelli/bitcoin
jonls/bitcoin
jordanlewis/bitcoin
joulecoin/joulecoin
kaiquewdev/bitcoin
keesdewit82/LasVegasCoin
keninishna/ass-pennies
knotwork/Mergecoin
laanwj/bitcoin
litecoin-project/litecoin
llluiop/bitcoin
luke-jr/bitcoin
lzsaver/bitcoin-translation
m0mchil/bitcoin
m21/mastercore
maaku/bitcoin
mad/bitcoin
makomk/bitcoin
marscoin/marscoin
mastercoin-MSC/mastercore
mathwizard1232/nyancoins
megacoin/megacoin
memorycoin/memorycoin
mhanne/bitcoin
mikaelh2/primecoin
mikehearn/bitcoin
mincoin/mincoin
morcos/bitcoin
mrmayfield/bitcoin
mrtexaznl/mediterraneancoin
myriadcoin/myriadcoin
myriadteam/myriadcoin
namuyan/kumacoin-v2
nsacoin/nsacoin
onecoin/onecoin
particl/particl-core
peercoin/peercoin
petertodd/bitcoin
phelixbtc/bitcoin
pocopoco/yacoin
primecoin/primecoin
primedigger/primecoin
raghuariga/bitcoin
rakyll/bitcoin
reddcoin-project/reddcoin
reddink/reddcoin
reinier19/bitcoin
riecoin/riecoin
ronpaulcoin/ronpaulcoin
runn1ng/bitcoin
ryanxcharles/bitcoin
satoshisbitcoin/satoshisbitcoin
sdhjob/bitcoin
segsignal/bitcoin
sifcoin/sifcoin
sipa/bitcoin
skeincoin/skeincoin
sppl/mavro
stcupp/bitcoin
stuycoin/stuycoin
sunnyking/ppcoin
syscoin/syscoin2
tcatm/bitcoin
thbaumbach/primecoin
theuni/bitcoin
timohanke/bitcoin
timothyej/bitcoin
truthcoin/truthcoin-cpp
tumf/litecoin
tzuryby/bitcoin
udibr/bitcoin
umaar/bitcoin
umiyuki/sayacoin
vertcoin/vertcoin-old
vinced/namecoin
vtcex/bitcoin
whitslack/bitcoin-infinity
worldcoinproject/worldcoin-v0.8
yacoin/yacoin
zachlatta/marscoin
zathras-crypto/omnicore
zeta-dev/zetacoin
zetacoin/zetacoin
Nothing to show
Checking mergeability… Don’t worry, you can still create the pull request.
Commits on Jun 01, 2015
@laanwj laanwj Bump version to 0.11 8e15efa
@laanwj laanwj qt: Periodic translation update 2be094e
@petertodd @laanwj petertodd + laanwj Fix off-by-one error w/ nLockTime in the wallet
Previously due to an off-by-one error the wallet ignored
nLockTime-by-height transactions that would be valid in the next block
even though they are accepted into the mempool. The transactions
wouldn't show up until confirmed, nor would they be included in the
unconfirmed balance. Similar to the mempool behavior fix in 665bdd3,
the wallet code was calling IsFinalTx() directly without taking into
account the fact that doing so tells you if the transaction could have
been mined in the *current* block, rather than the next block.

To fix this we strip IsFinalTx() of non-consensus-critical
functionality, removing the default arguments, and add CheckFinalTx() to
check if a transaction will be final in the next block.

Github-Pull: #6183
Rebased-From: 28bf062
75a4d51
Commits on Jun 02, 2015
@sdaftuar @laanwj sdaftuar + laanwj Ignore getheaders requests when not synced.
Rebased-From: a1ba077
Github-Pull: #6172
b4bbad1
@laanwj laanwj build: disable optional use of gmp in internal secp256k1 build
Until secp256k1 is used for verification there is no reason for Bitcoin
Core's secp256k1 to link against gmp, even if available. Pass a flag to
configure to override the bignum implementation.

This fixes a crash at runtime on ppc64 reported by @gmaxwell.

Github-Pull: #6210
Rebased-From: 7fd5b80
dfdb6dd
@luke-jr @laanwj luke-jr + laanwj Remove P2SH coinbase flag, no longer interesting
Github-Pull: #6203
Rebased-From: d449772
c00ae64
@theuni theuni gitian: Bump cache dir for 0.11 7d4b5cb
Commits on Jun 03, 2015
@jonasschnelli @laanwj jonasschnelli + laanwj [OSX] revert renaming of Bitcoin-Qt.app
Github-Pull: #6214
Rebased-From: a2241ea
4d435d1
@jonasschnelli @laanwj jonasschnelli + laanwj OSX: use "Bitcoin Core" as Bundle Display Name
Github-Pull: #6214
Rebased-From: 0a32a93
6145fdf
@laanwj laanwj json: fail read_string if string contains trailing garbage
Change `read_string` to fail when not the entire input has been
consumed. This avoids unexpected, even dangerous behavior (fixes #6223).

The new JSON parser adapted in #6121 also solves this problem so in
master this is a temporary fix, but should be backported to older releases.

Also adds tests for the new behavior.

Github-Pull: #6226
Rebased-From: 4e157fc
5901596
@theuni @laanwj theuni + laanwj osx: set min version to 10.7 for 0.11+
Github-Pull: #6218
Rebased-From: c3cdd7b
ecdcf13
@theuni @laanwj theuni + laanwj gitian: bump faketime to something more recent
This helps in file views where binaries are sorted by time

Github-Pull: #6218
Rebased-From: be65628
7a4304e
@laanwj laanwj Merge pull request #6219
7d4b5cb gitian: Bump cache dir for 0.11 (Cory Fields)
666e973
@sdaftuar @laanwj sdaftuar + laanwj Be stricter in processing unrequested blocks
AcceptBlock will no longer process an unrequested block, unless it has not
been previously processed and has more work than chainActive.Tip()

Github-Pull: #5875
Rebased-From: 9be0e68
304892f
@sdaftuar @laanwj sdaftuar + laanwj P2P regression test for new AcceptBlock behavior
Github-Pull: #5875
Rebased-From: aa8c827
2edec4f
@laanwj laanwj doc: update release notes 32b0117
Commits on Jun 05, 2015
@laanwj laanwj Merge pull request #6238
cfc600d Bugfix: Correct links for Xcode download (Luke Dashjr)
053110d
Commits on Jun 08, 2015
@laanwj laanwj Disable partition check for now, it triggers too often (issue #6251) 3eada74
Commits on Jun 10, 2015
@luke-jr @laanwj luke-jr + laanwj configure: Detect (and reject) LibreSSL
Rebased-From: a5a81f7
Github-Pull: #6244
0401aa2
@morcos @laanwj morcos + laanwj Fix removing of orphan transactions
We don't want to erase orphans that still have missing inputs, they should still be tracked as orphans.  Also, the transaction thats being accepted can't be an orphan otherwise it would have previously been accepted, so doesn't need to be added to the erase queue.

Github-Pull: #5985
Rebased-From: 14d4eef
37b4e42
Commits on Jun 11, 2015
@ajweiss @laanwj ajweiss + laanwj Prune: Support noncontiguous block files
In some corner cases, it may be possible for recent blocks to end up in
the same block file as much older blocks.  Previously, the pruning code
would stop looking for files to remove upon first encountering a file
containing a block that cannot be pruned, now it will keep looking for
candidate files until the target is met and all other criteria are
satisfied.

This can result in a noncontiguous set of block files (by number) on
disk, which is fine except for during some reindex corner cases, so
make reindex preparation smarter such that we keep the data we can
actually use and throw away the rest.  This allows pruning to work
correctly while downloading any blocks needed during the reindex.

Rebased-From: c257a8c
Github-Pull: #6221
6cb70ca
Commits on Jun 12, 2015
@laanwj laanwj Remove translation for -help-debug options
Github-Pull: #6264
Rebased-From: 9b5659d
94cd705
Commits on Jun 15, 2015
@dgenr8 @laanwj dgenr8 + laanwj Fix getbalance *
Chance "getbalance *" not to use IsTrusted.  The method and result
now match the "getbalance <specific-account>" behavior. In
particular, "getbalance * 0" now works.

Also fixed a comment -- GetGalance has required 1 confirmation
for many years, and the default "getbalance *" behavior matches
that.

Github-Pull: #6276
Rebased-From: 7d6a85a
c9fd907
@theuni @laanwj theuni + laanwj gitian: Use the new bitcoin-detached-sigs git repo for OSX signatures
Rather than fetching a signature.tar.gz from somewhere on the net, instruct
Gitian to use a signature from a tag in the bitcoin-detached-sigs repository
which corresponds to the tag of the release being built.

This changes detached-sig-apply.sh to take a dirname rather than a tarball as
an argument, though detached-sig-create.sh still outputs a tarball for
convenience.

Github-Pull: #6269
Rebased-From: c110575
95aca44
@laanwj laanwj Add option `-alerts` to opt out of alert system
Make it possible to opt-out of the centralized alert system by providing
an option `-noalerts` or `-alerts=0`. The default remains unchanged.

This is a gentler form of #6260, in which I went a bit overboard by
removing the alert system completely.

I intend to add this to the GUI options in another pull after this.

Github-Pull: #6274
Rebased-From: 02a6702
4d9c7fe
@gavinandresen @laanwj gavinandresen + laanwj Use best header chain timestamps to detect partitioning
The partition checking code was using chainActive timestamps
to detect partitioning; with headers-first syncing, it should use
(and with this pull request, does use) pIndexBestHeader timestamps.

Fixes issue #6251

Github-Pull: #6256
Rebased-From: 65b9454
fce474c
@laanwj laanwj translation update pre-rc2 2617b75
Commits on Jun 16, 2015
@theuni @laanwj theuni + laanwj Fix scheduler build with some boost versions.
Some boost versions have a conflicting overload of wait_until that returns void.
Explicitly use a template here to avoid hitting that overload.

Github-Pull: #6285
Rebased-From: 72bf90d
ef1d506
Commits on Jun 17, 2015
@rion @laanwj rion + laanwj remove berkeley-db4 workaround
"brew install berkeley-db4" appears to be working again.  simplified instructions by removing the berkeley-db4 workaround.

Github-Pull: #6286
Rebased-From: a3a80c2
3902c15
@welshjf @laanwj welshjf + laanwj depends: fix Boost 1.55 build on GCC 5
Boost assumes variadic templates are always available in GCC 4.4+, but
they aren't since we don't build with -std=c++11.

This applies the patch that fixed the issue in boost 1.57:
boostorg/config@eec8085

See also: https://svn.boost.org/trac/boost/ticket/10500

Github-Pull: #6280
Rebased-From: b19a88b
25c2216
@laanwj laanwj doc: Update release notes for rc2 5f032c7
Commits on Jun 21, 2015
@laanwj laanwj Revert "Disable partition check for now, it triggers too often (issue #…
…6251)"

Re-enable partition check, it should be safe again after #6256.

This reverts commit 3eada74.
e6334f4
Commits on Jun 22, 2015
@laanwj laanwj doc: update mailing list address
Move from sourceforge to linux foundation.

Also get rid of some other stale mentions of sourceforge.

Github-Pull: #6319
Rebased-From: 88d8525
3f8fcc9
@theuni @laanwj theuni + laanwj gitian: add a gitian-win-signer descriptor
This is exactly like the current OSX signing process.

osslsigncode has been patched to detach and re-attach Windows signatures.
The changes can be seen here: https://github.com/theuni/osslsigncode/commits/attach-signature

There's a pull-request open upstream for the changes:
https://sourceforge.net/p/osslsigncode/osslsigncode/merge-requests/3/

This work has been back-ported to the stable 1.7.1 release of osslsigncode, so
that a smaller patch can be reviewed.

Github-Pull: #6303
Rebased-From: d08cfc2
b711599
Commits on Jun 23, 2015
@s3erios @laanwj s3erios + laanwj Add an alternate location of endian.h header
Github-Pull: #6246
Rebased-From: 0640a5e
8ea6d37
@laanwj Philip Kaufmann + laanwj fix crash on shutdown when e.g. changing -txindex and abort action
- fixes #3136
- the problem is related to Boost path and a static initialized internal
  pointer
- using a std::string in CDBEnv::EnvShutdown() prevents the problem
- this removes the boost::filesystem::path path field from CDBEnv

Github-Pull: #6282
Rebased-From: 0ce30ea
daf956b
@laanwj laanwj doc: mention bitcoin-submittx example in release notes 88accef
Commits on Jun 25, 2015
@sdaftuar @laanwj sdaftuar + laanwj Advance pindexLastCommonBlock for blocks in chainActive
This prevents an edge case where a block downloaded and pruned
in-between successive calls to FindNextBlocksToDownload could
cause the block to be unnecessarily re-requested.

Github-Pull: #6233
Rebased-From: 3e91433
a587606
@laanwj laanwj Hardcoded seeds update June 2015
- Moved all seed related scripts to contrib/seeds for consistency
- Updated `makeseeds.py` to handle IPv6 and onions, fix regular
  expression for recent Bitcoin Core versions
- Fixed a bug in `generate-seeds.py` with regard to IPv6 parsing

Allow for non-8333 nodes to appear in the internal seeds. This will
allow bitcoind to bypas a filter on 8333. This also makes it possible to
use the same tool for e.g. testnet.

As hosts with multiple nodes per IP are likely abusive, add a filter to
remove these (the ASN check will take care of them for IPv4, but not
IPv6 or onion).

Github-Pull: #6333
Rebased-From: ccd4369 884454a b932953
41bbc85
Commits on Jun 30, 2015
@theuni @laanwj theuni + laanwj gitian: make the windows signing process match OSX
Github-Pull: #6354
Rebased-From: a3ba9a5
bdf0d94
@laanwj Micha + laanwj Ideal release process for Windows detached signing
This is an ideal version of what the release process should look like,
making it more consistent with the OS X process. Some of the changes
described here would need to be made in the descriptors, which is somewhat
beyond what I would feel comfortable doing, not really understanding the signature process in depth.

[skip ci]

Github-Pull: #6354
Rebased-From: 6e849b8
bad1e8b
Commits on Jul 01, 2015
@laanwj laanwj update release notes for 0.11.0rc3 afc60de
Commits on Jul 03, 2015
@laanwj laanwj Merge pull request #6369
dae0a89 assets-attribution: Update typicons to MIT license (Luke Dashjr)
7bf37e1
Commits on Jul 06, 2015
@morcos morcos release notes for fee estimation changes 9a2469e
@laanwj laanwj Merge pull request #6383
9a2469e release notes for fee estimation changes (Alex Morcos)
ebad618
Commits on Jul 08, 2015
@spinza spinza Fix typo in release notes. 5460b24
@laanwj laanwj Merge pull request #6397
5460b24 Fix typo in release notes. (spin)
757ceaa
Commits on Jul 10, 2015
@laanwj laanwj doc: add important information about tx flood to release notes d26f951
Commits on Jul 15, 2015
@tailsjoin @laanwj tailsjoin + laanwj doc: Remove recommendation to add old repos for libd4.8*
It is unreasonable to ask to change the global package configuration
just to build a package. Not only that, this is potentially harmful to the system.

Also do a few punctuation fixes in REST-interface.md.

Github-Pull: #6413
Rebased-From: 9fbca20
d7101a6
@laanwj laanwj qt: define QT_NO_KEYWORDS
QT_NO_KEYWORDS prevents Qt from defining the `foreach`, `signals`,
`slots` and `emit` macros.

Avoid overlap between Qt macros and boost - for example #undef hackiness
in #6421.

Conflicts:
	src/qt/addressbookpage.cpp
	src/qt/peertablemodel.cpp
	src/qt/receivecoinsdialog.cpp
	src/qt/rpcconsole.cpp

Rebased-From: d29ec6c
Github-Pull: #6433
e092f22
@laanwj laanwj qt: update forgotten emit to Q_EMIT in macdockiconhandler.mm
Leftover from #6433

Rebased-From: ce183dc
1649667
@theuni @laanwj theuni + laanwj openssl: avoid config file load/race
Github-Pull: #6438
Rebased-From: d4b1d5a
2531438
Commits on Jul 17, 2015
@btcdrak @laanwj btcdrak + laanwj Updated URL location of netinstall for Debian
Github-Pull: #6439
Rebased-From: 09d4ddf
980f820
@laanwj laanwj qt: periodic translations update ea5b5dd
Commits on Jul 20, 2015
@sipa @laanwj sipa + laanwj Test whether created sockets are select()able
Conflicts:
	src/net.cpp

Rebased-From: d422f9b
0095b9a
@laanwj laanwj Fix warning introduced by #6412
SOCKET are defined as unsigned integers, thus always >=0.

Rebased-From: 89289d8
e8b87c8
Commits on Jul 24, 2015
@laanwj laanwj qt: Force TLS1.0+ for SSL connections
Github-Pull: #6384
Rebased-From: 15e26a6
8e5a969
Commits on Jul 27, 2015
@theuni @laanwj theuni + laanwj Depends: bump to qt 5.5
Github-Pull: #6471
Rebased-From: fe997df 5189fe3 ab67dd7 ecd6a89 060b3d3
92401c2
@sipa @laanwj sipa + laanwj Cache transaction validation successes
Conflicts:
	src/main.cpp
	src/test/test_bitcoin.cpp

Github-Pull: #6077
Rebased-From: 17b1142 517e6dd
bc484ef
Commits on Jul 28, 2015
@sipa sipa Revert "Cache transaction validation successes"
This reverts commit bc484ef.
5c27f12
Commits on Jul 29, 2015
@sdaftuar @laanwj sdaftuar + laanwj Be even stricter in processing unrequested blocks
Github-Pull: #6224
Rebased-From: bfc30b3 6b1066f 04b5d23 59b49cd
93b606a
Commits on Aug 20, 2015
@theuni @laanwj theuni + laanwj consensus: cache the openssl EC_GROUP to avoid a race condition for e…
…ach CECKey instantiation

Github-Pull: #6571
Rebased-From: 1d1073c
100ac4e
@paveljanik @laanwj paveljanik + laanwj Do not store more than 200 timedata samples.
Github-Pull: #6545
Rebased-From: 8be371d
649f5d9
Commits on Sep 22, 2015
@theuni @luke-jr theuni + luke-jr travis: for travis generating an extra build 1f4d7cf
@randy-waterhouse @luke-jr randy-waterhouse + luke-jr Add autogen.sh to source tarball. a37567d
@laanwj @luke-jr laanwj + luke-jr tests: Remove old sh-based test framework
This removes the `conflictedbalance.sh` test as well, but that test has
been broken for a long time and isn't part of any scripts.
What it does is, IMO, sufficiently tested by other tests.
49c6a64
@fanquake @luke-jr fanquake + luke-jr Remove bash test note from rpc-tests readme a496e11
@theuni @luke-jr theuni + luke-jr locking: fix a few small issues uncovered by -Wthread-safety
- rpcwallet: No need to lock twice here
- openssl: Clang doesn't understand selective lock/unlock here. Ignore it.
- CNode: Fix a legitimate (though very unlikely) locking bug.
60457d3
@casey @luke-jr casey + luke-jr Avoid leaking file descriptors in RegisterLoad
This is pretty trivial, but if there's an error here we'll leak a file
descriptor. Changed it to always close the file.
f6355e6
@theuni @luke-jr theuni + luke-jr build: fix libressl detection
Checking libcrypto for a function after we've already found a (possibly
different) libcrypto is not what we want to do here.

pkg-config might've found a cross lib while AC_CHECK_LIB may find a different
or native one.

Run a link-test against the lib that's already been found instead.
5a39133
@laanwj @luke-jr laanwj + luke-jr Make sure LogPrintf strings are line-terminated
Fix the cases where LogPrint[f] was accidentally called without line
terminator, which resulted in concatenated log lines.

(see e.g. #6492)
7ff9d12
@rnicoll @luke-jr rnicoll + luke-jr Make sure LogPrint strings are line-terminated e0020d4
@ajweiss @luke-jr ajweiss + luke-jr Delay initial pruning until after wallet init
Don't prune until any wallet rescanning has taken place to avoid
potentially pruning blocks that the wallet rescan may need.
e6adac7
@casey @luke-jr casey + luke-jr Use unique name for AlertNotify tempfile f6d29a6
@rnicoll @luke-jr rnicoll + luke-jr Handle no chain tip available in InvalidChainFound()
Handle the case where no chain tip is available, in InvalidChainFound(). This fixes a null pointer deference when running unit tests, if the genesis block or block validation code is broken.
4a37410
@casey @luke-jr casey + luke-jr Fix race condition on test node shutdown c5b89fe
@ajweiss @luke-jr ajweiss + luke-jr Handle leveldb::DestroyDB() errors on wipe failure
Add error checking to CLevelDBWrapper for errors from
leveldb::DestroyDB().  Without it, if unlink() or DeleteFileW() fail to
delete files, they will fail silent.  If they fail to delete any files,
CLevelDBWrapper will silently open and read the existing database.

Typically any permissions issues would be caught by leveldb as it churns
through many files as part of its compaction process, but it is
conceivable that this could cause problems on Windows with anti-virus
and indexing software.
f171fee
@fanquake @luke-jr fanquake + luke-jr Add missing files to files.md
typo
4877053
@casey @luke-jr casey + luke-jr Make sure we re-acquire lock if a task throws 626c5e6
@casey @luke-jr casey + luke-jr Replace boost::reverse_lock with our own. 6b51b9b
@morcos @luke-jr morcos + luke-jr Fix masking of irrelevant bits in address groups. 13642a5
@morcos @luke-jr morcos + luke-jr add unit test for CNetAddr::GetGroup. 1f6772e
@theuni @luke-jr theuni + luke-jr net: Set SO_REUSEADDR for Windows too
When running the rpc tests in Wine, nodes often fail to listen on localhost
due to a stale socket from a previous run. This aligns the behavior with other
platforms.
ccc4ad6
@theuni @luke-jr theuni + luke-jr rpc-tests: re-enable rpc-tests for Windows 13bd5a7
@JohnDolittle @luke-jr JohnDolittle + luke-jr add support for miniupnpc api version 14
The value of new arg ttl is set to 2 as it's recommended default.
21c406e
@vlajos @luke-jr vlajos + luke-jr PARTIAL: typofixes (found by misspell_fixer)
Upstream: 9f68ed6 (PR #6539)
45bfa13
@jonasschnelli @laanwj jonasschnelli + laanwj [QT] fix thin space word wrap line brake issue
The thin space QT html hack results in cut-off chars/nums after a line break.

Avoid word wrap line breaks by using a smaller font and a line break before each alternative value)

Rebased-From: 24cb7c7
Github-Pull: #6694
834e299
Commits on Sep 23, 2015
@laanwj laanwj Merge pull request #6703
45bfa13 PARTIAL: typofixes (found by misspell_fixer) (Veres Lajos)
21c406e add support for miniupnpc api version 14 (Pavel Vasin)
13bd5a7 rpc-tests: re-enable rpc-tests for Windows (Cory Fields)
ccc4ad6 net: Set SO_REUSEADDR for Windows too (Cory Fields)
1f6772e add unit test for CNetAddr::GetGroup. (Alex Morcos)
13642a5 Fix masking of irrelevant bits in address groups. (Alex Morcos)
6b51b9b Replace boost::reverse_lock with our own. (Casey Rodarmor)
626c5e6 Make sure we re-acquire lock if a task throws (Casey Rodarmor)
4877053 Add missing files to files.md (fanquake)
f171fee Handle leveldb::DestroyDB() errors on wipe failure (Adam Weiss)
c5b89fe Fix race condition on test node shutdown (Casey Rodarmor)
4a37410 Handle no chain tip available in InvalidChainFound() (Ross Nicoll)
f6d29a6 Use unique name for AlertNotify tempfile (Casey Rodarmor)
e6adac7 Delay initial pruning until after wallet init (Adam Weiss)
e0020d4 Make sure LogPrint strings are line-terminated (J Ross Nicoll)
7ff9d12 Make sure LogPrintf strings are line-terminated (Wladimir J. van der Laan)
5a39133 build: fix libressl detection (Cory Fields)
f6355e6 Avoid leaking file descriptors in RegisterLoad (Casey Rodarmor)
60457d3 locking: fix a few small issues uncovered by -Wthread-safety (Cory Fields)
a496e11 Remove bash test note from rpc-tests readme (fanquake)
49c6a64 tests: Remove old sh-based test framework (Wladimir J. van der Laan)
a37567d Add autogen.sh to source tarball. (randy-waterhouse)
1f4d7cf travis: for travis generating an extra build (Cory Fields)
1cd7952
Commits on Sep 29, 2015
@laanwj laanwj qt: periodic translation update 8a915e5
Commits on Oct 02, 2015
@petertodd petertodd Add uint256 support to CRollingBloomFilter
(cherry picked from commit bbe4108)
2983fe0
@sipa @petertodd sipa + petertodd Reuse vector hashing code for uint256
(cherry picked from commit a3d65fe)
25cf122
@petertodd petertodd Make CRollingBloomFilter set nTweak for you
While CBloomFilter is usually used with an explicitly set nTweak,
CRollingBloomFilter is only used internally. Requiring every caller to
set nTweak is error-prone and redundant; better to have the class handle
that for you with a high-quality randomness source.

Additionally when clearing the filter it makes sense to change nTweak as
well to recover from a bad setting, e.g. due to insufficient randomness
at initialization, so the clear() method is replaced by a reset() method
that sets a new, random, nTweak value.

(cherry picked from commit d2d7ee0)
83671ef
@sipa @petertodd sipa + petertodd Only use randomly created nonces in CRollingBloomFilter.
(cherry picked from commit d741371)
6eed52e
@petertodd petertodd Keep track of recently rejected transactions
Nodes can have divergent policies on which transactions they will accept
and relay.  This can cause you to repeatedly request and reject the same
tx after its inved to you from various peers which have accepted it.
Here we add rolling bloom filter to keep track of such rejections,
clearing the filter every time the chain tip changes.

Credit goes to Alex Morcos, who created the patch that this code is
based on.

Original code by Peter Todd. Refactored to not construct the
filter at startup time by Pieter Wuille.

(cherry picked from commit 0847d9c)
ec9b6c3
@laanwj @petertodd laanwj + petertodd Move recentRejects initialization to top of InitBlockIndex
This avoids that premature return in the condition that a new chain is initialized
results in NULL pointer errors due to recentReject not being constructed.

Also add assertions where it is used.

(cherry picked from commit a8d0407)
5094a81
Commits on Oct 06, 2015
@laanwj laanwj Merge pull request #6750
5094a81 Move recentRejects initialization to top of InitBlockIndex (Wladimir J. van der Laan)
ec9b6c3 Keep track of recently rejected transactions (Peter Todd)
6eed52e Only use randomly created nonces in CRollingBloomFilter. (Pieter Wuille)
83671ef Make CRollingBloomFilter set nTweak for you (Peter Todd)
25cf122 Reuse vector hashing code for uint256 (Pieter Wuille)
2983fe0 Add uint256 support to CRollingBloomFilter (Peter Todd)
5ed8d0b
Commits on Oct 07, 2015
@gmaxwell @laanwj gmaxwell + laanwj Test LowS in standardness, removes nuisance malleability vector.
This adds SCRIPT_VERIFY_LOW_S to STANDARD_SCRIPT_VERIFY_FLAGS which
 will make the node require the canonical 'low-s' encoding for
 ECDSA signatures when relaying or mining.

Consensus behavior is unchanged.

The rational is explained in a81cd96:
 Absent this kind of test ECDSA is not a strong signature as given
 a valid signature {r, s} both that value and {r, -s mod n} are valid.
 These two encodings have different hashes allowing third parties a
 vector to change users txids.  These attacks are avoided by picking
 a particular form as canonical and rejecting the other form(s); in
 the of the LOW_S rule, the smaller of the two possible S values is
 used.

If widely deployed this change would eliminate the last remaining
 known vector for nuisance malleability on boring SIGHASH_ALL
 p2pkh transactions.  On the down-side it will block most
 transactions made by sufficiently out of date software.

Unlike the other avenues to change txids on boring transactions this
 one was randomly violated by all deployed bitcoin software prior to
 its discovery.  So, while other malleability vectors where made
 non-standard as soon as they were discovered, this one has remained
 permitted.  Even BIP62 did not propose applying this rule to
 old version transactions, but conforming implementations have become
 much more common since BIP62 was initially written.

Bitcoin Core has produced compatible signatures since a28fb70 in
 September 2013, but this didn't make it into a release until 0.9
 in March 2014; Bitcoinj has done so for a similar span of time.
 Bitcoinjs and electrum have been more recently updated.

This does not replace the need for BIP62 or similar, as miners can
 still cooperate to break transactions.  Nor does it replace the
 need for wallet software to handle malleability sanely[1]. This
 only eliminates the cheap and irritating DOS attack.

[1] On the Malleability of Bitcoin Transactions
Marcin Andrychowicz, Stefan Dziembowski, Daniel Malinowski, Łukasz Mazurek
http://fc15.ifca.ai/preproceedings/bitcoin/paper_9.pdf

Rebased-From: b196b68
Github-Pull: #6769
71cc9d9
Commits on Oct 08, 2015
@petertodd petertodd Make CScriptNum() take nMaxNumSize as an argument
While the existing numeric opcodes are all limited to 4-byte bignum
arguments, new opcodes will need different limits.

Rebased-From: 99088d6
684636b
@petertodd petertodd Move LOCKTIME_THRESHOLD to src/script/script.h
Will now be needed by CHECKLOCKTIMEVERIFY code.

Rebased-From: 48e9c57
6ec08db
@petertodd petertodd Replace NOP2 with CHECKLOCKTIMEVERIFY (BIP65)
<nLockTime> CHECKLOCKTIMEVERIFY -> <nLockTime>

Fails if tx.nLockTime < nLockTime, allowing the funds in a txout to be
locked until some block height or block time in the future is reached.

Only the logic and unittests are implemented; this commit does not have
any actual soft-fork logic in it.

Thanks to Pieter Wuille for rebase.

Credit goes to Gregory Maxwell for the suggestion of comparing the
argument against the transaction nLockTime rather than the current
time/blockheight directly.

Rebased-From: bc60b2b
4fa7a04
@petertodd petertodd Enable CHECKLOCKTIMEVERIFY as a standard script verify flag
Transactions that fail CLTV verification will be rejected from the
mempool, making it easy to test the feature. However blocks containing
"invalid" CLTV-using transactions will still be accepted; this is *not*
the soft-fork required to actually enable CLTV for production use.

Rebased-From: ffd75ad
6ea5ca4
@petertodd petertodd Add CHECKLOCKTIMEVERIFY (BIP65) soft-fork logic
Based on the earlier BIP66 soft-fork logic implemented by Pieter
Wuille's 5a47811

Rebased-From: 287f54f
5e82e1c
@petertodd petertodd Add RPC tests for the CHECKLOCKTIMEVERIFY (BIP65) soft-fork
bip65-cltv.py is based on the earlier BIP66 soft-fork RPC test
implemented by Pieter Wuille's 819bcf9

bip65-cltv-p2p.py is based on the earlier BIP66 P2P test by Suhas
Daftuar's d76412b

Rebased-From: 3082578
c5a27f4
@eordano @petertodd eordano + petertodd CLTV: Add more tests to improve coverage
Four cases included:

* The CLTV operand type mismatches the tx locktime. In the script it is
  1 (interpreted as block height), but in the tx is 500000000
  (interpreted as date)
* The stack is empty when executing OP_CLTV
* The tx is final by having only one input with MAX_INT sequence number
* The operand for CLTV is negative (after OP_0 OP_1 OP_SUB)

Rebased-From: cb54d17
70a427b
@laanwj @petertodd laanwj + petertodd Show softfork status in getblockchaininfo
Rebased-From: 5ed1079
ba1da90
@petertodd petertodd Add BIP65 to getblockchaininfo softforks list
Rebased-From: 54a200ac9ad8909303ccf1ac49c291e0c2b5fb23
6af25b0
Commits on Oct 09, 2015
@dgenr8 dgenr8 In (strCommand == "tx"), return if AlreadyHave()
The main effect is to exit processing for recently-rejected hashes,
in case they are pushed to us without prior advertisement.  This
behavior was seen in the wild.

An additional effect is to do early checks for mempool or mapOrphan
existence.  No logging or nDoS tracking is needed for failures of
these checks.
36f14bf
@laanwj laanwj Update miniupnpc to 1.9.20151008
This version of miniupnpc fixes a buffer overflow in the XML (ugh)
parser during initial network discovery.

http://talosintel.com/reports/TALOS-2015-0035/

The commit fixing the vulnerability is:
miniupnp/miniupnp@79cca97

Reported by timothy on IRC.

Github-Pull: 6789
Rebased-From: 0cca024
b4ad73f
@laanwj laanwj Merge pull request #6785
36f14bf In (strCommand == "tx"), return if AlreadyHave() (Tom Harding)
b4dc33e
@laanwj laanwj doc: Update release notes for 0.11.1 04d0c27
@laanwj laanwj qt: Update translations before 0.11.1 d7d87a1
@laanwj laanwj doc: #6077 was reverted, don't mention in release notes
Reported by sipa
17ea542
@laanwj laanwj Bump version to 0.11.1 717152c
Commits on Oct 10, 2015
@laanwj laanwj net: Disable upnp by default
Common sentiment is that the miniupnpc codebase likely contains further
vulnerabilities.

I'd prefer to get rid of the dependency completely, but a compromise for
now is to at least disable it by default.

Github-Pull: #6795
Rebased-From: 21d27eb
4dbcec0
Commits on Oct 11, 2015
@laanwj laanwj Bump minrelaytxfee default
To bridge the time until a dynamic method for determining this fee is
merged.

This is especially aimed at the stable releases (0.10, 0.11) because
full mempool limiting, as will be in 0.12, is too invasive and risky to
backport.

Github-Pull: #6793
Rebased-From: 28e3249 4e2efb3
e7bcc4a
@laanwj laanwj doc: update release notes for 0.11.1rc2 dad3e98
Commits on Oct 12, 2015
@laanwj laanwj doc: Add Luke Dashjr to credits in release notes
Somehow missed...
cf33f19
Commits on Oct 14, 2015
@diegoviola @luke-jr diegoviola + luke-jr Fix spelling of Qt 9b9acc2
@morcos @luke-jr morcos + luke-jr Fix locking in GetTransaction.
GetTransaction needs to lock cs_main until ReadBlockFromDisk completes, the data inside CBlockIndex's can change since pruning.  This lock was held by all calls to GetTransaction except rest_tx.
01878c9
@MarcoFalke @luke-jr MarcoFalke + luke-jr [Qt] Raise debug window when requested
* Raise the debug window when hidden behind other windows
* Switch to the debug window when on another virtual desktop
* Show the debug window when minimized

This change is a conceptual copy of 5ffaaba and 382e9e2
b3eaa30
@zw @luke-jr zw + luke-jr Include bitcoin-tx binary on Debian/Ubuntu
Currently left out of Matt's PPA.  Debian's package for unstable already has it.
1e672ae
@zw @luke-jr zw + luke-jr Split bitcoin-tx into its own package
Reverts the change putting it in the bitcoind deb.
2394f4d
@zw @luke-jr zw + luke-jr Drop "with minimal dependencies" from description
Five boost libs plus libcrypto are needed; I don't think that quite passes for minimal.
6fd0019
@MarcoFalke @luke-jr MarcoFalke + luke-jr [trivial] Fix rpc message "help generate" a33cd5b
@laanwj @luke-jr laanwj + luke-jr build: Remove dependency of bitcoin-cli on secp256k1
bitcoin-cli (in contrast to bitcoin-tx, which does signing ops)
shouldn't need secp256k1, and indeed it doesn't.
87a797a
@luke-jr luke-jr Bugfix: Allow mining on top of old tip blocks for testnet (fixes test…
…net-in-a-box use case)
33d6825
@laanwj @luke-jr laanwj + luke-jr build: disable -Wself-assign
Prevent these warnings in clang 3.6:

    ./serialize.h:96:9: warning: explicitly assigning value of variable of type 'uint64_t' (aka 'unsigned long') to itself [-Wself-assign]
        obj = (obj);
        ~~~ ^  ~~~
9e45157
@kleetus @luke-jr kleetus + luke-jr [Trivial] Fixed typo when referring to a previous section in
depends/README.md [skip ci]
bfc6154
@TheBlueMatt @luke-jr TheBlueMatt + luke-jr Update bluematt-key, the old one is long-since revoked 54f9dee
@CodeShark @luke-jr CodeShark + luke-jr Clarification of unit test build instructions. e42bf16
Commits on Oct 15, 2015
@laanwj Micha + laanwj Add historical release notes for October 2015 bugfix releases
[skip ci]

Rebased-From: d57586f
Github-Pull: #6832
09a00a1
Commits on Oct 19, 2015
@laanwj laanwj build: make sure OpenSSL heeds noexecstack
This passes `-Wa,--noexecstack` to the assembler when building
platform-specific assembly files, to signal that a non-executable stack
can be used. This is the same approach as used by Debian
(see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=430583)

Rebased-From: bfcdc21
Github-Pull: #6852
21e58b8
Commits on Oct 20, 2015
@morcos @laanwj morcos + laanwj Make fee aware of min relay in pruning.py RPC test
Rebased-From: b6d5e32
Github-Pull: #6841
0720324
Commits on Oct 23, 2015
@mitchellcash @luke-jr mitchellcash + luke-jr Correct spelling mistakes in doc folder
- OSX —> OS X
- XCode —> Xcode
- github —> GitHub
- homebrew —> Homebrew
- gitian —> Gitian
- Other miscellaneous obvious spelling fixes and whitespace removal
4fbfebe
@TheBlueMatt @luke-jr TheBlueMatt + luke-jr Update debian/changelog and slight tweak to debian/control 7ce2c91
@TheBlueMatt @luke-jr TheBlueMatt + luke-jr Change URLs to https in debian/control 131d7f9
@dcousens @luke-jr dcousens + luke-jr *: alias -h for --help
af6edac
@gmaxwell @laanwj gmaxwell + laanwj Set TCP_NODELAY on P2P sockets.
Nagle appears to be a significant contributor to latency now that the static
 sleeps are gone.  Most of our messages are relatively large compared to
 IP + TCP so I do not expect this to create enormous overhead.

This may also reduce traffic burstyness somewhat.

Conflicts:
	src/net.cpp

Rebased-From: a4e28b3
Github-Pull: #6867
95a5039
@laanwj laanwj Merge pull request #6707
6af25b0 Add BIP65 to getblockchaininfo softforks list (Peter Todd)
ba1da90 Show softfork status in getblockchaininfo (Wladimir J. van der Laan)
70a427b CLTV: Add more tests to improve coverage (Esteban Ordano)
c5a27f4 Add RPC tests for the CHECKLOCKTIMEVERIFY (BIP65) soft-fork (Peter Todd)
5e82e1c Add CHECKLOCKTIMEVERIFY (BIP65) soft-fork logic (Peter Todd)
6ea5ca4 Enable CHECKLOCKTIMEVERIFY as a standard script verify flag (Peter Todd)
4fa7a04 Replace NOP2 with CHECKLOCKTIMEVERIFY (BIP65) (Peter Todd)
6ec08db Move LOCKTIME_THRESHOLD to src/script/script.h (Peter Todd)
684636b Make CScriptNum() take nMaxNumSize as an argument (Peter Todd)
fc7f0ee
@morcos @laanwj morcos + laanwj Do not allow blockfile pruning during reindex.
Also clarify startup message.

Github-Pull: #6856
Rebased-From: d3b09f6
dfe55bd
@maaku @btcdrak maaku + btcdrak Add rules--presently disabled--for using GetMedianTimePast as endpoin…
…t for lock-time calculations

The lock-time code currently uses CBlock::nTime as the cutoff point for time based locked transactions. This has the unfortunate outcome of creating a perverse incentive for miners to lie about the time of a block in order to collect more fees by including transactions that by wall clock determination have not yet matured. By using CBlockIndex::GetMedianTimePast from the prior block instead, the self-interested miner no longer gains from generating blocks with fraudulent timestamps. Users can compensate for this change by simply adding an hour (3600 seconds) to their time-based lock times.

If enforced, this would be a soft-fork change. This commit only adds the functionality on an unexecuted code path, without changing the behaviour of Bitcoin Core.
a1d3c6f
@maaku @btcdrak maaku + btcdrak Enable policy enforcing GetMedianTimePast as the end point of lock-ti…
…me constraints

Transactions are not allowed in the memory pool or selected for inclusion in a block until their lock times exceed chainActive.Tip()->GetMedianTimePast(). However blocks including transactions which are only mature under the old rules are still accepted; this is *not* the soft-fork required to actually rely on the new constraint in production.
f720c5f
Commits on Nov 04, 2015
@sipa sipa Squashed 'src/leveldb/' changes from 7d41e6f..20ca81f
20ca81f Merge pull request #9
7aa105e leveldb: Win32WritableFile without memory mapping

git-subtree-dir: src/leveldb
git-subtree-split: 20ca81f
0af5b8e
@sipa sipa Update LevelDB 70de437
Commits on Nov 05, 2015
@laanwj laanwj Merge pull request #6945
0af5b8e Squashed 'src/leveldb/' changes from 7d41e6f..20ca81f (Pieter Wuille)
2c82485
@laanwj laanwj Merge pull request #6884
f720c5f Enable policy enforcing GetMedianTimePast as the end point of lock-time constraints (Mark Friedenbach)
a1d3c6f Add rules--presently disabled--for using GetMedianTimePast as endpoint for lock-time calculations (Mark Friedenbach)
df616ae
Commits on Nov 06, 2015
@laanwj laanwj Merge pull request #6825
af6edac *: alias -h for --help (Daniel Cousens)
131d7f9 Change URLs to https in debian/control (Matt Corallo)
7ce2c91 Update debian/changelog and slight tweak to debian/control (Matt Corallo)
4fbfebe Correct spelling mistakes in doc folder (Mitchell Cash)
e42bf16 Clarification of unit test build instructions. (Eric Lombrozo)
54f9dee Update bluematt-key, the old one is long-since revoked (Matt Corallo)
bfc6154 [Trivial] Fixed typo when referring to a previous section in depends/README.md [skip ci] (Chris Kleeschulte)
9e45157 build: disable -Wself-assign (Wladimir J. van der Laan)
33d6825 Bugfix: Allow mining on top of old tip blocks for testnet (fixes testnet-in-a-box use case) (Luke Dashjr)
87a797a build: Remove dependency of bitcoin-cli on secp256k1 (Wladimir J. van der Laan)
a33cd5b [trivial] Fix rpc message "help generate" (MarcoFalke)
6fd0019 Drop "with minimal dependencies" from description (Zak Wilcox)
2394f4d Split bitcoin-tx into its own package (Zak Wilcox)
1e672ae Include bitcoin-tx binary on Debian/Ubuntu (Zak Wilcox)
b3eaa30 [Qt] Raise debug window when requested (MarcoFalke)
01878c9 Fix locking in GetTransaction. (Alex Morcos)
9b9acc2 Fix spelling of Qt (Diego Viola)
6c31ac0
@sipa @laanwj sipa + laanwj Always flush block and undo when switching to new file
Previously, the undo weren't being flushed during a reindex because
fKnown was set to true in FindBlockPos. That is the correct behaviour
for block files as they aren't being touched, but undo files are
touched.

This changes the behaviour to always flush when switching to a new file
(even for block files, though that isn't really necessary).

Rebased-From: 22e7807
Github-Pull: #6948
4e895b0
Commits on Nov 07, 2015
@laanwj laanwj bump version to 0.11.2 984587a
Commits on Nov 08, 2015
@harding harding [Docs] First-draft release notes for 0.11.2RC1 40941d9
@harding harding [docs] Minor revisions to 0.11.2RC1 release notes
- Revisions to text as proposed by Greg Maxwell
- Add Btcdrak to contributors for backporting #6884
- Fix spelling mistake

[ci skip]
929b2c7
Commits on Nov 09, 2015
@harding harding [docs] 0.11.2 release notes: add sipa graphs & leveldb note
[ci skip]
9149589
@laanwj laanwj Merge pull request #6968
9149589 [docs] 0.11.2 release notes: add sipa graphs & leveldb note (David A. Harding)
929b2c7 [docs] Minor revisions to 0.11.2RC1 release notes (David A. Harding)
40941d9 [Docs] First-draft release notes for 0.11.2RC1 (David A. Harding)
3dcb390
@harding harding [doc] 0.11.2 release notes: use original pull numbers
[ci skip]
ab6ff12
Commits on Nov 10, 2015
@laanwj laanwj Merge pull request #6975
ab6ff12 [doc] 0.11.2 release notes: use original pull numbers (David A. Harding)
7e27892
Commits on Nov 15, 2015
@morcos morcos add bip65 tests to rpc-tests.sh -extended 9730051
Commits on Nov 16, 2015
@laanwj laanwj Merge pull request #7021
9730051 add bip65 tests to rpc-tests.sh -extended (Alex Morcos)
595c8d6
Commits on Nov 18, 2015
@theuni @luke-jr theuni + luke-jr build: Split hardening/fPIE options out
This allows for fPIE to be used selectively.

Github-Pull: #6978
Rebased-From: 17c4d9d
90de0e1
@theuni @luke-jr theuni + luke-jr build: Use fPIC rather than fPIE for qt objects.
But only if qt was built with reduced relocations.

Github-Pull: #6978
Rebased-From: 69d0513
5c0b357
Commits on Nov 30, 2015
@laanwj Ryan Havar + laanwj Default fPayAtLeastCustomFee to false
This allows for much finer control of the transaction fees per kilobyte
as it prevent small transactions using a fee that is more appropriate
for one that is of a kilobyte.

This also allows controlling the fee per kilobyte over rpc such that:

bitcoin-cli settxfee `bitcoin-cli estimatefee 2`

would make sense, while currently it grossly fails often by a factor of x3

Conflicts:
	src/wallet/wallet.cpp
Rebased-From: 4b89f01
7d0a05f
@MarcoFalke @laanwj MarcoFalke + laanwj [wallet] Add rpc tests to verify fee calculations
Conflicts:
	qa/rpc-tests/wallet.py

Rebased-From: fa506c0
5f09cda
Commits on Dec 26, 2015
@MarcoFalke MarcoFalke [dbwrapper] Detect obfuscation fa24941
@MarcoFalke MarcoFalke [init] Fix typo fa3cb49
Commits on Jan 09, 2016
@laanwj laanwj Merge pull request #7259
fa3cb49 [init] Fix typo (MarcoFalke)
fa24941 [dbwrapper] Detect obfuscation (MarcoFalke)
00aefcc
Commits on Jan 20, 2016
@MarcoFalke @laanwj MarcoFalke + laanwj [walletdb] Fix syntax error in key parser
Github-Pull: #7381
Rebased-From: fa6d4cc
c40ec14
Commits on Mar 01, 2016
@luke-jr @laanwj luke-jr + laanwj Bugfix: gitian: Add curl to packages (now needed for depends)
Github-Pull: #7614
Rebased-From: 5c70a6d
7815cb6
@MarcoFalke @laanwj MarcoFalke + laanwj Fix url in .travis.yml
Github-Pull: #7136
Rebased-From: 9999cb0
a0e13f0
@luke-jr @laanwj luke-jr + laanwj Workaround Travis-side CI issues
Github-Pull: #7487
Rebased-From: 149641e c01f08d 5d1148c 1ecbb3b
77841d4
@MarcoFalke @laanwj MarcoFalke + laanwj [depends] builders: No need to set -L and --location for curl
Github-Pull: #7606
Rebased-From: fa7a5c5
a0cfe3a
Commits on Mar 14, 2016
@MarcoFalke MarcoFalke [trivial] init cleanup
Github-Pull: #6664
Rebased-From: 4c3cab1
7e1f975
@laanwj laanwj Revert "Default fPayAtLeastCustomFee to false"
This reverts commit 7d0a05f.

This change in fee behavior was unexpected to users and shouldn't
be in a backport release. See detailed timeline in
#7633 (comment)
for details.

People can upgrade to 0.12 if they want this new behavior.
b6f5904
@laanwj laanwj Revert "[wallet] Add rpc tests to verify fee calculations"
This reverts commit 5f09cda.

(make tests pass again)
d49f724
Commits on Mar 15, 2016
@laanwj laanwj Merge #7682: [0.11.3] Fix "Unclear error when starting Bitcoin Core"
7e1f975 [trivial] init cleanup (MarcoFalke)
0ba7020
Commits on Mar 24, 2016
@luke-jr luke-jr Merge commit '5c0b357' into backports-for-0.11.3 d626faa
@theuni @luke-jr theuni + luke-jr build: Set osx permissions in the dmg to make Gatekeeper happy
Github-Pull: #7092
Rebased-From: 392d3c5
e979f09
Commits on Mar 30, 2016
@laanwj laanwj bump version to 0.11.3
And clean out release notes.
12943ad
@btcdrak @laanwj btcdrak + laanwj Mark p2p alert system as deprecated.
Set default to off
This feature is removed entirely as of 0.13.0

Github-Pull: #7741
Rebased-From: c0fe2c9
c251f46
Commits on Mar 31, 2016
@laanwj laanwj Merge #7743: [0.11] Important backports for 0.11.3 (updated to v0.12.0)
e979f09 build: Set osx permissions in the dmg to make Gatekeeper happy (Cory Fields)
5c0b357 build: Use fPIC rather than fPIE for qt objects. (Cory Fields)
90de0e1 build: Split hardening/fPIE options out (Cory Fields)
ecaa178
Commits on Jun 22, 2016
@laanwj laanwj qt: Final translation update on 0.11 branch
Translations have been closed for 0.11 on Transifex. Make sure that the
latest translations are available on the branch.
0cd4fb6
Commits on Mar 09, 2017
@laanwj laanwj net: Disable P2P alert system 0bace83