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 May 09, 2014
@laanwj laanwj Bump version numbers for 0.9.2 branch split-off
Show version as 0.9.1.99 until rc1.
c11c72c
Commits on May 12, 2014
@posita @laanwj posita + laanwj fixes #4163
Rebased-by: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-from: 90fd873
78363dc
@shshshsh @laanwj shshshsh + laanwj Switch stdout to line buffering
Use line buffering (instead of block buffering) so that messages arrive
immediately in systemd-journald, tail -f debug.log, and the like.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 283e405
a39d4e3
@sipa @laanwj sipa + laanwj Squashed 'src/leveldb/' changes from 9094c7f..7924331
42dcc7e Merge upstream LevelDB 1.17.
e353fbc Release LevelDB 1.17
269fc6c Release LevelDB 1.16
REVERT: 9094c7f Temporarily revert to writing .sst files instead of .ldb

git-subtree-dir: src/leveldb
git-subtree-split: 79243314e40ac31d79c68e5658a1d6a64800d50b
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 938b689
26ceac4
@laanwj laanwj Remove dummy PRIszX macros for formatting
Size specifiers are no longer needed now that we use typesafe tinyformat
for string formatting, instead of the system's sprintf.

No functional changes.

This continues the work in #3735.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 783b182
72ae546
@sipa @laanwj sipa + laanwj Move base58.h implementation code to base58.cpp
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: f6b7c64
010e661
@laanwj laanwj rpc: pass errors from async_accept
According to the [boost::asio documentation](http://www.boost.org/doc/libs/1_55_0/doc/html/boost_asio/reference/basic_socket_acceptor/async_accept/overload2.html),
the function signature of the handler must be:

    void handler(
      const boost::system::error_code& error // Result of operation.
    );

We were binding *all* the arguments, instead of all but the error,
resulting in nullary function that never got the error. Fix this
by adding an input argument substitution.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 0a0cd34
1ed6d49
@laanwj laanwj rpc: Make sure conn object is always cleaned up
Make sure conn object always gets cleaned up by using a
`boost::shared_ptr`.

This makes valgrind happy - before this commit, one connection object
always leaked at shutdown, as well as can avoid other leaks, when
for example an exception happens.

Also add an explicit Close() to the !ClientAllowed path to make it similar
to the normal path (I'm not sure whether it is needed, but it
can't hurt).

Rebased-By: Wladimir J. van der Laan
Rebased-From: 1a44522
203a0cf
@laanwj laanwj doc: remove mention of `-rpctimeout` from man page
That option hasn't existed for a long time.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 381b25d
8b1a93f
@laanwj laanwj rpc: keep track of acceptors, and cancel them in StopRPCThreads
Fixes #4156.

The problem is that the boost::asio::io_service destructor
waits for the acceptors to finish (on windows, and boost 1.55).

Fix this by keeping track of the acceptors and cancelling them before
stopping the event loops.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: cef4494
9f535d4
Commits on May 13, 2014
@laanwj laanwj qt: periodic language update
Pull updated translations from Transifex.

Add mn (Mongolian) language.

Do not update English translation for now as we want to keep
compatibility with 0.9.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 795b921
4b8a3ab
Commits on May 19, 2014
@itoffshore @laanwj itoffshore + laanwj SetupEnvironment() - clean commit
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 5248ff4
337459b
Commits on May 21, 2014
@kdomanski @laanwj kdomanski + laanwj switch from boost int types to <stdint.h>
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 4b61a6a, 3e74ac2, d56e30c
Github-Pull: #4129
79144ac
@kdomanski @laanwj kdomanski + laanwj remove ParseString(...) which is never used
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: be54b87
e917bdb
@theuni @laanwj theuni + laanwj gitian: Add OSX build descriptors
Github-Pull: #4185
Rebased-By: Wladimir J. van der Laan
Rebased-From: 1a97b22
f72b475
@laanwj laanwj qt: Periodic language update
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 6fcdad7
ac1dd87
@sipa @laanwj sipa + laanwj Add missing LOCK(cs_main)
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 305ccaa
2585310
Commits on May 23, 2014
@laanwj laanwj Replace non-threadsafe strerror
Log the name of the error as well as the error code if a network problem
happens. This makes network troubleshooting more convenient.

Use thread-safe strerror_r and the WIN32 equivalent FormatMessage.

Conflicts:
	src/netbase.cpp

Rebased-By: Wladimir van der Laan <laanwj@gmail.com>
Rebased-From: a60838d
e0036e9
@laanwj laanwj Replace non-threadsafe gmtime and setlocale
Make DateTimeStrFormat use boost::posix_time.

Also re-enable the util_DateTimeStrFormat tests, as they are no
longer platform specific.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 3e8ac6a
a626497
@laanwj laanwj qt: Periodic language update
Last-minute language update before release 0.9.2.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: a8a0db6
48115f5
@gavinandresen @laanwj gavinandresen + laanwj Add Tips and Tricks section to README
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: c47f537
042bdd3
@laanwj laanwj Add preliminary release notes for 0.9.2 5fa6143
Commits on May 29, 2014
@cozz @laanwj cozz + laanwj [Qt] Fix Start bitcoin on system login
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 066d9a5
6fb7591
@theuni @laanwj theuni + laanwj release: Bump the OSX SDK to 10.7 for gitian builds
This fixes the display on Retina Macbooks. It also moves us away from depending
on the ancient XCode3 sdk.

Conflicts:
	doc/release-process.md

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 2869b13
768cef9
@sipa @laanwj sipa + laanwj No references to centralized databases in help text.
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: b5ef85c
2f89f4b
Commits on May 30, 2014
@theuni @laanwj theuni + laanwj osx: Fix missing dock menu with qt5
Qt5 Removed the qt_mac_set_dock_menu function and left no replacement. It was
later re-added and deprecated for backwards-compatibility.

Qt5.2 adds the non-deprecated QMenu::setAsDockMenu(). Use that when possible.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: c21c74b
3a4a66f
Commits on Jun 01, 2014
@sipa @laanwj sipa + laanwj Limit number of known addresses per peer
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 5823449
d6377e6
@laanwj laanwj Set client version to release
No longer show the "Do not use..." banner.
64e1082
@laanwj laanwj Periodic language update
Pull updated translations from Transifex before 0.9.2

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 11ef78f
41b96da
Commits on Jun 02, 2014
@4tar @laanwj 4tar + laanwj Use pnode->nLastRecv as sync score directly
NodeSyncScore() should find the node which we recv data most recently, so put a negative sign to pnode->nLastRecv is indeed wrong.

Also change the return value type to int64_t.

Signed-off-by: Huang Le <4tarhl@gmail.com>
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 09a54a6
acb5356
Commits on Jun 03, 2014
@tm314159 @laanwj tm314159 + laanwj Properly initialize CWallet::nTimeFirstKey
Rebased-From: 91855f2
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
eac2cdc
Commits on Jun 06, 2014
@laanwj laanwj gitian: upgrade OpenSSL to 1.0.1h
Upgrade for https://www.openssl.org/news/secadv_20140605.txt

Just in case - there is no vulnerability that affects ecdsa signing or
verification.

The MITM attack vulnerability (CVE-2014-0224) may have some effect on
our usage of SSL/TLS.

As long as payment requests are signed (which is the common case), usage
of the payment protocol should also not be affected.

The TLS usage in RPC may be at risk for MITM attacks. If you have
`-rpcssl` enabled, be sure to update OpenSSL as soon as possible.

Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 6e7c4d1
3ae41a6
@laanwj Jeff Garzik + laanwj CWallet: fix nTimeFirstKey init, by making constructor init common code
Don't repeat yourself etc.

Rebased-From: d04fd3e
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
7ccadd4
@laanwj laanwj qt: Periodic translation update
Rebased-From: db41541
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
e39a3f2
Commits on Jun 13, 2014
@laanwj laanwj add 0.9.2rc2 changes to release notes 94cfe33
@laanwj laanwj fix download link and release in release notes 505681f
Commits on Jun 15, 2014
@laanwj laanwj gitian: make linux qt intermediate deterministic
Make the instdate for lrelease etc deterministic. This should have been
part of 0.9.2. Luckily this doesn't affect the end product, it is just
a bit annoying.

Rebased-From: 386e732
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
bd65d70
Commits on Jun 18, 2014
@theuni @laanwj theuni + laanwj Qt: Fix monospace font in osx 10.9
The "Monospace" hint was added in Qt 4.8, and it works as intended as opposed
to "TypeWriter" which fails to load a font.

Rebased-From: e9df7f8
Rebased-By: Wladimir J. van der Laan
9d5b5c3
Commits on Jun 19, 2014
@laanwj laanwj rpc: Ignore and log errors during cancel
Cancelling the RPC acceptors can sometimes result in an error about
a bad file descriptor.

As this is the shutdown sequence we need to continue nevertheless,
ignore these errors, log a warning and proceed.

Fixes #4352.
a378852
@laanwj laanwj rpc: Add acceptors only when listening succeeded
Rebased-From: 6afa493
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
b64b1c6
@laanwj laanwj Bump version to 0.9.2.1 354c0f3
Commits on Jul 04, 2014
@laanwj laanwj Remove NumBlocksOfPeers
Generally useless information. Only updates on connect time, not after
that. Peers can easily lie and the median filter is not effective in
preventing that.

In the past it was used for progress display in the GUI but
`CheckPoints::guessVerificationProgress` provides a better way that is now used.
It was too easy to mislead it. Peers do lie about it in practice, see issue #4065.

From the RPC, `getpeerinfo` gives the peer raw values, which are more
useful.
752ecec
Commits on Aug 18, 2014
@laanwj laanwj Version bump for 0.9.3 6862c8b
@laanwj laanwj Don't poll showmyip.com, it doesn't exist anymore
Fixes #4679.

This leaves us with only one candidate, checkip.dyndns.org.
GetMyExternalIP should be phased out as soon as possible.

Rebased-From: c33b983
5332b0a
@zw @laanwj zw + laanwj In -? output: -keypool, -gen, -genproclimit depend on ENABLE_WALLET
Rebased-From: a7e1d50
5baa4a9
@theuni @laanwj theuni + laanwj Remove bignum dependency for scripts 84efe0e
@zw @laanwj zw + laanwj Clarify that redeemScript is often optional
Rebased-From: 6265ecc
221684c
@haight6716 @laanwj haight6716 + laanwj qt: fix 'opens in testnet mode when presented with a BIP-72 link with…
… no fallback'

Passes tests:

```
$ ./bitcoin-qt 'bitcoin:?r=http://www.example.com/'
.. fixed the original problem - this launches mainnet.

$ ./bitcoin-qt 'bitcoin:mngeNQbTKnmaMbx8EXCYdwUbnt9JJD52cC'
.. launches testnet

$ ./bitcoin-qt -testnet 'bitcoin:1NXXeQRyMFFFRfyUix2o7mk1vhvk2Nxp78'
.. sanity check - launches mainnet.
```

Fixes #4355. Closes #4411.

Rebased-From: dd49e92
bf75a3d
@rdponticelli @laanwj rdponticelli + laanwj Avoid a segfault on getblock if it can't read a block from disk.
Rebased-From: 954d2e7
44d8e09
@JohnDolittle @laanwj JohnDolittle + laanwj AvailableCoins: acquire cs_main mutex
It's required when called from WalletModel

Rebased-From: ea3acaf
0a6dcae
@jmcorgan @laanwj jmcorgan + laanwj Update Debian packaging description for new bitcoin-cli
Rebased-From: 45abeb2
d78e431
@sipa @laanwj sipa + laanwj Add a way to limit deserialized string lengths
and use it for most strings being serialized.

Rebased-From: 216e9a4
a789965
@thofmann @laanwj thofmann + laanwj Add a new checkpoint at block 295,000
Block 295,000 seems to meet the criteria of a reasonable timestamp and
no strange transactions. 295,000 is the current block height in the
bootstrap.dat torrent provided by jgarzik.

Rebased-From: 125fba1
2382631
@apoelstra @laanwj apoelstra + laanwj key.cpp: fail with a friendlier message on missing ssl EC support
Previously if bitcoind is linked with an OpenSSL which is compiled
without EC support, this is seen as an assertion failure "pKey !=
NULL" at key.cpp:134, which occurs after several seconds. It is an
esoteric piece of knowledge to interpret this as "oops, I linked
with the wrong OpenSSL", and because of the delay it may not even
be noticed.

The new output is

: OpenSSL appears to lack support for elliptic curve cryptography. For
more information, visit
https://en.bitcoin.it/wiki/OpenSSL_and_EC_Libraries
: Initialization sanity check failed. Bitcoin Core is shutting down.

which occurs immediately after attempted startup.

This also blocks in an InitSanityCheck() function which currently only
checks for EC support but should eventually do more. See #4081.

Rebased-From: 4a09e1d
f6f4c83
@laanwj Jeff Garzik + laanwj base58: add paranoid return value checks
Rebased-From: 88df548
f8cdf4f
@laanwj laanwj Ignore too-long redeemScripts while loading wallet
This avoids that long redeemScripts that were grandfathered in
prevent the wallet from loading.

Fixes #4313.

Rebased-From: 18116b0
4b57c5b
@petertodd @laanwj petertodd + laanwj Check redeemScript size does not exceed 520 byte limit
redeemScripts >520bytes can't be spent due to the
MAX_SCRIPT_ELEMENT_SIZE limit; previously the addmultisigaddress and
createmultisig RPC calls would let you violate that limit unknowingly.

Also made the wallet code itself check the redeemScript prior to adding
it to the wallet, which in the (rare) instance that a user has added an
invalid oversized redeemScript to their wallet causes an error on
startup. The affected key isn't added to the wallet; other keys are
unaffected.
fd0c460
@petertodd @laanwj petertodd + laanwj Increase IsStandard() scriptSig length
Removes the limits on number of pubkeys for P2SH CHECKMULTISIG outputs.
Previously with the 500 byte scriptSig limit there were odd restrictions
where even a 1-of-12 P2SH could be spent in a standard transaction(1),
yet multisig scriptPubKey's requiring more signatures quickly ran out of
scriptSig space.

From a "stuff-data-in-the-blockchain" point of view not much has changed
as with the prior commit now only allowing the dummy value to be null
the newly allowed scriptSig space can only be used for signatures. In
any case, just using more outputs is trivial and doesn't cost much.

1) See 779b519480d8c5346de6e635119c7ee772e97ec872240c45e558f582a37b4b73
   Mined by BTC Guild.
84fe0ff
@laanwj laanwj preliminary release notes for 0.9.3 736d8b8
Commits on Aug 19, 2014
@laanwj Jeff Garzik + laanwj Avoid querying DNS seeds, if we have open connections.
The goal is to increase independence and privacy.

Rebased-From: 2e7009d
026b9df
Commits on Aug 21, 2014
@fanquake @laanwj fanquake + laanwj gitian: upgrade OpenSSL to 1.0.1i
Upgrade for https://www.openssl.org/news/secadv_20140806.txt

Rebased-From: 074bcdc
Github-Pull: #4648
bba0175
@theuni @laanwj theuni + laanwj qt: fix unicode character display on osx when building with 10.7 sdk
Conflicts:
	src/qt/bitcoin.cpp

Rebased-From: 292cc07
f62031b
@theuni @laanwj theuni + laanwj build: Fix boost build on some platforms
When the libpath doesn't line up with the value from config.sub, we don't find
the correct path to boost's libs. This adds a hack to try another path before
giving up.

Should close #3219.

Rebased-From: 54c7df8
0991401
@theuni @laanwj theuni + laanwj build: fix FDELT_TYPE configure check
This probably never worked properly. Confirmed working now with every compiler
I throw at it.

Rebased-From: 8021cf8
5591171
@theuni @laanwj theuni + laanwj libc-compat: add new symbol that's now needed
Rebased-From: 565e569
47c78c2
@rktoomey @laanwj rktoomey + laanwj Update build-osx.md
The homebrew instructions were outdated - berkeley-db4 hasn't worked for months, based on the questions I'm seeing on Google/SO.  So I added a section explaining how to install berkeley-db4 using homebrew and move on with your life.  Thanks for the rest of the documentation!
Conflicts:
	doc/build-osx.md

Rebased-From: b1ed7c2
49df14d
Commits on Aug 22, 2014
@laanwj laanwj gitian: Bump miniupnp version to 1.9.20140701
Also change build system: STATICLIB is now MINIUPNP_STATICLIB.
a9c6eef
@laanwj laanwj doc: Add list of contributors to 0.9.3 29ba8cc
@laanwj laanwj qt: Language update for 0.9.3 e6abbce
@laanwj laanwj doc: mention translations in release notes a12d6ac
Commits on Sep 01, 2014
@laanwj laanwj Add deeper XML checking to update-translation script
- Catch problems such as mismatched formatting characters. Remove
  messages that can give problems at runtime.

- Also remove unfinished/untranslated messages, they just take up space
  in the ts and waste parsing time.

Fixes #4774.

Rebased-From: da59f28
Rebased-By: Wladimir J. van der Laan
b62172a
@laanwj laanwj Filter translations through new update-translations script
This does not add any new messages from transifex, it just filters the
current ones.
ea55881
Commits on Sep 09, 2014
@laanwj laanwj Avoid repeated lookups in mapOrphanTransactions and mapOrphanTransact…
…ionsByPrev

Rebased-From: 89d91f6
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
c6727f3
Commits on Sep 10, 2014
@gavinandresen @laanwj gavinandresen + laanwj Fix crashing bug caused by orphan(s) with duplicate prevout.hash
Rebased-From: def2fdb
Rebased-By: Wladimir J. van der Laan
12927dd
@laanwj laanwj Limit CNode::mapAskFor
Tighten resource constraints on CNode.

Rebased-From: d4168c8
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
d030936
@laanwj Jeff Garzik + laanwj Avoid returning many "inv" orphans
Rebased-From: 540ac45
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
6eb5410
Commits on Sep 11, 2014
@laanwj laanwj doc: Remove outdated information about boost versions
Bitcoin core should work with any remotely recent boost version
if a proper build environment is present. Remove a confusing comment
from the build documentation.

Rebased-From: bd45b1a
0655d64
@laanwj laanwj build: Remove message about Ubuntu 13.10 when no boost sleep implemen…
…tation found

It's only confusing people into thinking that they should mess with
boost versions, which should not be necessary to get bitcoind to work.

If there is a bug in the build system with autodetecting boost it needs
to be solved not worked around.

Rebased-From: 539abc4
6fbd58d
@laanwj phantomcircuit + laanwj remove useless millisleep
reduces time to service requests improving performance

Rebased-From: 9189f5f
306a93b
@gavinandresen @laanwj gavinandresen + laanwj Stricter handling of orphan transactions
Prevent denial-of-service attacks by banning
peers that send us invalid orphan transactions
and only storing orphan transactions given to
us by a peer while the peer is connected.

Rebased-From: c74332c
6d911ad
@shshshsh @laanwj shshshsh + laanwj Make max number of orphan blocks kept in memory a startup parameter (f…
…ixes #4253)

Rebased-From: 7b45d94
af25208
@gavinandresen @laanwj gavinandresen + laanwj Store fewer orphan tx by default, add -maxorphantx option
There is no reason to store thousands of orphan transactions;
normally an orphan's parents will either be broadcast or
mined reasonably quickly.

This pull drops the maximum number of orphans from 10,000 down
to 100, and adds a command-line option (-maxorphantx) that is
just like -maxorphanblocks to override the default.
ea3c1b0
@laanwj laanwj Update release notes ce16723
Commits on Sep 12, 2014
@laanwj laanwj Update release notes cea5e49
Commits on Sep 13, 2014
@theuni @laanwj theuni + laanwj build: osx: Fix incomplete framework packaging for codesigning
Starting with 10.9, Framework versions must be signed individually, rather
than as a single bundle version, in order to be properly codesigned. This
change ensures that the proper plist files and symlinks are present prior to
packaging.

Rebased-From: 65f3fa8
e3d8d58
Commits on Sep 18, 2014
@laanwj laanwj Remove mention of MacPorts from OSX build docs
Rebased-From: d547ebf
213cd59
Commits on Sep 22, 2014
@laanwj laanwj build: change cdrkit location in build-process.md
The cdrkit.org domain expired.
Thanks to gdm85 on IRC for reporting this.

Rebased-From: 27fc527
40d2041
Commits on Sep 25, 2014
@theuni @laanwj theuni + laanwj build: fix release name strings for gitian builds
When building from a distdir as gitian does, checking for the .git dir
is not reliable. Instead, ask git if we're in a repo.

Rebase this into 0.9.3 branch after final to make sure that 0.9.4 will
have correct version strings in rcs.

Rebased-From: c65cc8c
855fd49
Commits on Oct 01, 2014
@theuni @laanwj theuni + laanwj osx: fix signing to make Gatekeeper happy (again)
The approach from 65f3fa8 worked for signing on 10.9.4, but not newer
versions. 10.9.5 (and up) want each framework to stand alone.

Now in addition to copying the plist's from Qt for each framework, we put them
in per-version dirs and only symlink to the latest, rather than using symlinks
for any contents.

Rebased-From: af0bd5e
613247f
Commits on Oct 02, 2014
@gavinandresen @laanwj gavinandresen + laanwj Keep symlinks when copying into .app bundle
Code signing failed for me on OSX 10.9.5 because the
Versions/Current symbolic links were being replaced
with a duplicate copy of the frameworks' code.

Releases were bigger than they needed to be, for the
same reason.

Rebased-From: 965c306
ffab1dd
@saivann @laanwj saivann + laanwj doc: Add instructions for consistent Mac OS X build names
Rebased-From: 0dcb0a5
2743529
Commits on Oct 03, 2014
@theuni theuni build: Fix OSX build when using Homebrew and qt5
Qt5 is bottled, so configure won't find it without some help. Use
brew to find out its prefix.

Also, qt5 added the host_bins variable to pkg-config, use it.
5b9f78d
Commits on Oct 08, 2014
@gavinandresen @laanwj gavinandresen + laanwj Refactor -alertnotify code
Refactor common -alertnotify code into static CAlert::Notify method.
25b49b5
Commits on Nov 24, 2014
@gmaxwell @laanwj gmaxwell + laanwj Make -proxy set all network types, avoiding a connect leak.
Previously -proxy was not setting the proxy for IsLimited networks, so
 if you set your configuration to be onlynet=tor you wouldn't get an
 IPv4 proxy set.

The payment protocol gets its proxy configuration from the IPv4 proxy,
 and so it would experience a connection leak.

This addresses issue #5355 and also clears up a cosmetic bug where
 getinfo proxy output shows nothing when onlynet=tor is set.

Conflicts:
	src/init.cpp

Rebased-From: 3c77714
Github-Issue: #5358
cd5164a
Commits on Dec 09, 2014
@sipa @laanwj sipa + laanwj Limit the number of new addressses to accumulate
Rebased-From: 12a49ca
bb424e4
@gmaxwell @laanwj gmaxwell + laanwj Disable SSLv3 (in favor of TLS) for the RPC client and server.
TLS is subject to downgrade attacks when SSLv3 is available, and
 SSLv3 has vulnerabilities.

The popular solution is to disable SSLv3. On the web this breaks
 some tiny number of very old clients. While Bitcoin RPC shouldn't
 be exposed to the open Internet, it also shouldn't be exposed to
 really old SSL implementations, so it shouldn't be a major issue
 for us to disable SSLv3.

There is more information on the downgrade attacks and disabling
 SSLv3 at https://disablessl3.com/ .

Rebased-From: 683dc40
0a94661
Commits on Jan 10, 2015
@theuni @laanwj theuni + laanwj 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: 488ed32
b8e81b7
@laanwj laanwj gitian: openssl-1.0.1i.tar.gz -> openssl-1.0.1k.tar.gz f047dfa
@laanwj laanwj fail immediately on an empty signature
Github-Pull: #5634
Rebased-From: 8dccba6
60c51f1
@laanwj laanwj doc: Update release process for openssl bump 65a1dda
@laanwj laanwj gitian: bump revision for OSX qt
Not necessary for windows or linux, as the intermedate build result
doesn't change.
However for OSX on 0.9 the builds for the intermediates are not
deterministic, so this cannot be assessed. Bump the dep version just in
case.
b8ac476
Commits on Jan 12, 2015
@laanwj laanwj 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: c6b7b29
037bfef
@laanwj laanwj qt: Pull updated translations from Transifex f6b7539
@laanwj laanwj doc: Update release notes for 0.9.4 2f32a0b
@laanwj laanwj Bump version to 0.9.4 be8ac71
@laanwj laanwj doc: Properly format git commits in changelog 41f94ed
Commits on Feb 06, 2015
@sipa sipa Implement BIP 66 validation rules and switchover logic ab03660
@sipa sipa Backport of some of BIP66's tests 989d499
@sipa sipa Raise version of created blocks, and enforce DERSIG in mempool 3230b32
Commits on Feb 10, 2015
@theuni theuni build: fix dynamic boost check when --with-boost= is used
(cherry picked from commit a7d1f03)
8438074
@laanwj laanwj Merge pull request #5780
8438074 build: fix dynamic boost check when --with-boost= is used (cherry picked from commit a7d1f03) (Cory Fields)
924d7e5
Commits on Feb 13, 2015
@laanwj laanwj Merge pull request #5762
3230b32 Raise version of created blocks, and enforce DERSIG in mempool (Pieter Wuille)
989d499 Backport of some of BIP66's tests (Pieter Wuille)
ab03660 Implement BIP 66 validation rules and switchover logic (Pieter Wuille)
864338a
@gmaxwell @laanwj gmaxwell + laanwj Sanitize command strings before logging them.
Normally bitcoin core does not display any network originated strings without
 sanitizing or hex encoding.  This wasn't done for strcommand in many places.

This could be used to play havoc with a terminal displaying the logs,
 especially with printtoconsole in use.

Thanks to Evil-Knievel for reporting this issue.

Conflicts:
	src/main.cpp
	src/net.cpp
	src/rpcserver.cpp

Rebased-From: 28d4cff
Github-Pull: #5770
6b4163b
Commits on Feb 18, 2015
@21E14 @laanwj 21E14 + laanwj Check pindexBestForkBase for null
Rebased-From: 730b1ed
Github-Pull: #5154
74f29c2
Commits on Feb 20, 2015
@morcos @gmaxwell morcos + gmaxwell Fix priority calculation in CreateTransaction
Make this projection of priority in 1 block match the calculation in the low priority reject code.

Rebased-From: 2d9b0b7
Github-Pull: #5675

Conflicts:
	src/wallet.cpp
9cd1dd9
Commits on Feb 26, 2015
@laanwj laanwj Merge pull request #5807
9cd1dd9 Fix priority calculation in CreateTransaction (Alex Morcos)
47fdeb4
Commits on May 05, 2015
@laanwj laanwj Final transifex pull for 0.9
Translations for the 0.9 branch have been closed. Make sure that all the
translation work done up to now ends up in the branch.
eb27e8d
Commits on May 18, 2015
@laanwj laanwj Version bump to 0.9.5 ea07ccb
Commits on May 21, 2015
@theuni theuni build: fix osx determinism for OSX
Backport of 90c7154

Linux/Windows wrapped 'date' rather than patching the OpenSSL build.
e328605
@laanwj laanwj Merge pull request #6169
e328605 build: fix osx determinism for OSX (Cory Fields)
b880967
Commits on Oct 15, 2015
@laanwj laanwj Disable upnp by default
Github-Pull: #6795
Rebased-From: 21d27eb
460ccfb