Commit graph

7648 commits

Author SHA1 Message Date
Matt Corallo
79d422acfa Add withdraw-claimed tracking to mempool and enforce it 2017-02-02 10:58:47 -05:00
Matt Corallo
16063366d9 Enforce single-withdraw by tracking withdraws-spent in CheckInputs 2017-02-02 10:58:47 -05:00
Matt Corallo
c549d96ead Add sidechain claims to UTXO db 2017-02-02 10:58:47 -05:00
Matt Corallo
9f3c9ad5ad Add withdraw-spent to CCoinsView/utxodb
Allows CCoinsCacheEntry/CCoinsMap entries to either be a CCoins
or, by setting a flag in the map key, a withdraw output from a
chain from which withdraw proofs are allowed to move to this
chain from.
2017-02-02 10:58:47 -05:00
Matt Corallo
a37cd32dd6 Verify Withdraw proofs in script execution 2017-02-02 10:58:47 -05:00
Matt Corallo
6c945bea44 Tweak SignatureChecker to expose a bit more about the transaction 2017-02-02 10:58:47 -05:00
Matt Corallo
cca18eee8d Add withdraw lock to script/standard.h (and, thus, RPC raw txn) 2017-02-02 10:58:47 -05:00
Matt Corallo
c51a6f32d0 Add CScript::PushWithdraw function 2017-02-02 10:58:47 -05:00
Matt Corallo
cf5d16755d Add CScript::IsWithdrawLock() (which is standard) 2017-02-02 10:58:47 -05:00
Pieter Wuille
6be3888987 Disable proof checking for all blocks on load
We still verify the headers of the last -checkblocks blocks.
2017-02-02 10:58:47 -05:00
Matt Corallo
c8ac3bf7d7 Add block sign/sig combine/etc RPC functions 2017-02-02 10:58:47 -05:00
Matt Corallo
f0327ad6f1 Re-add support for bitcoin headers/proofs in sidechain validation 2017-02-02 10:58:47 -05:00
Matt Corallo
b6a9974821 Block with invalid signature is corruption-possible 2017-02-02 10:58:47 -05:00
instagibbs
49002b0a92 Implement basic private chain mode 2017-02-02 10:58:47 -05:00
jtimon
911294c696 Refactors in anticipation of private chain mode 2017-02-02 10:58:43 -05:00
Matt Corallo
101d8d7085 Un-hard-code genesis hashes 2016-11-01 11:48:16 -04:00
Jorge Timón
568827dce1 Elements: Start Alpha 2016-11-01 11:48:16 -04:00
Jorge Timón
28c3d990e6 Elements: Remove testnet3 2016-11-01 11:48:16 -04:00
Jorge Timón
cbb438cccc Chainparams: Adapt qt/paymentserver to support more than 2 chains 2016-11-01 11:48:16 -04:00
Jorge Timón
d16d076053 Checkpoints: The hash of the genesis block it's the genesis checkpoint and chain id 2016-11-01 11:48:16 -04:00
Jorge Timón
8441051714 Chainparams: Qt: Simplify network/chain styles and add a default purple one 2016-11-01 11:48:16 -04:00
Jorge Timón
6275ff8ed6 Chainparams: Generic selection with -chain=<chainString> in addition of -testnet and -regtest 2016-11-01 11:48:16 -04:00
Matt Corallo
595f6bda3a Chainparams: Get rid of CChainParams& Params(std::string) 2016-11-01 11:48:16 -04:00
Jorge Timón
7731e3973f Chainparams: Use a regular factory for creating chainparams 2016-11-01 11:48:16 -04:00
Matt Corallo
183cc2e8f4 Restore MoneyRange checks on total tx fees
This re-adds the security-checks that were surreptitiously removed
all the way back in 8d7849b6db.
2016-11-01 11:48:16 -04:00
Pieter Wuille
1469f277d9 Get rid of CTxOut::GetHash 2016-11-01 11:48:16 -04:00
Matt Corallo
7abc17e9c2 Fail in DecodeHexTx if there is extra data at the end 2016-11-01 11:48:16 -04:00
Matt Corallo
6848561bd4 Remove extra nonce reset logic in IncrementExtraNonce
I assume this was added to prevent deanonymization, but that
doesn't matter anymore since its only used on regtest.
2016-11-01 11:48:16 -04:00
Jorge Timón
6bb56092b8 Testchains: Don't check the genesis block
Rebased by Pieter Wuille.
Cleanup by Matt Corallo.
2016-11-01 11:48:16 -04:00
MarcoFalke
c4e42ff5f0 [net] Remove assert(nMaxInbound > 0)
nMaxInbound might very well be 0 or -1, if the user prefers to keep
a small number of maxconnections.

Note: nMaxInbound of -1 means that the user set maxconnections
to 8 or less, but we still want to keep an additional slot for
the feeler connection.

Github-Pull: #9008
Rebased-From: fa1c3c2eb0
2016-11-01 11:48:16 -04:00
Wladimir J. van der Laan
777da7d69c nMaxOutbound is MAX_OUTBOUND_CONNECTIONS on 0.13
Github-Pull: #8949
2016-11-01 11:48:16 -04:00
Wladimir J. van der Laan
ecfdb8364a qt: pre-rc2 translations update 2016-11-01 11:48:15 -04:00
Luke Dashjr
b50a80ad1b RPC/Mining: getblocktemplate: Update and fix formatting of help
Github-Pull: #8951
Rebased-From: 59daa58d6a
2016-11-01 11:48:15 -04:00
Gregory Maxwell
59f1dd5403 Make dnsseed's definition of acute need include relevant services.
We normally prefer to connect to peers offering the relevant services.

If we're not connected to enough peers with relevant services, we
 probably don't know about them and could use dnsseed's help.

Github-Pull: #8949
Rebased-From: 4630479135
2016-11-01 11:48:15 -04:00
Gregory Maxwell
b69d8b2b27 Be more aggressive in connecting to peers with relevant services.
Only allow skipping relevant services until there are four outbound
 connections up.

This avoids quickly filling up with peers lacking the relevant
 services when addrman has few or none of them.

Github-Pull: #8949
Rebased-From: 9583477288
2016-11-01 11:48:15 -04:00
Matt Corallo
2fda56524b Remove bogus assert on number of oubound connections.
This value can be significantly higher if the users uses addnode

Github-Pull: #8944
Rebased-From: 1ab21cf344
2016-11-01 11:48:15 -04:00
Wladimir J. van der Laan
6c1a016a64 rpc: Generate auth cookie in hex instead of base64
Base64 contains '/', and the '/' character in credentials is problematic
for AuthServiceProxy which represents the RPC endpoint as an URI with
user and password embedded.

Closes #8399.

Github-Pull: #8858
Rebased-From: 1c80386bce
2016-11-01 11:48:15 -04:00
Wladimir J. van der Laan
a5cef7b077
Bump version to 0.13.1 2016-10-18 00:15:59 +02:00
Christian Decker
5b4192bc4c
My DNS seed supports filtering
Currently supports filtering by any combination of the 4 least
significant bits.

Github-Pull: #8940
Rebased-From: 2449e12681
2016-10-17 19:43:40 +02:00
Matt Corallo
3d770a88d3
Add x9 service bit support to dnsseed.bluematt.me
Github-Pull: #8940
Rebased-From: ffb4713920
2016-10-17 19:43:11 +02:00
Matt Corallo
9aa0c15972
Comment that most dnsseeds only support some service bits combos
Github-Pull: #8940
Rebased-From: 504c72ad34
2016-10-17 19:42:58 +02:00
Pieter Wuille
8b66659921
Define start and end time for segwit deployment
Github-Pull: #8937
Rebased-From: f9c23dea97
2016-10-17 16:52:31 +02:00
Wladimir J. van der Laan
cb8887e87d
qt: periodic translation update 2016-10-17 16:16:20 +02:00
Johnson Lau
fef7b46841 test segwit uncompressed key fixes
Github-Pull: #8499
Rebased-From: 9260085377
2016-10-17 14:16:08 +02:00
Pieter Wuille
4ec21e8a64 Fix ismine and addwitnessaddress: no uncompressed keys in segwit
Github-Pull: #8499
Rebased-From: 248f3a76a8
2016-10-17 14:10:59 +02:00
Johnson Lau
821f3e6751 Require compressed keys in segwit as policy and disable signing with uncompressed keys for segwit scripts
Github-Pull: #8499
Rebased-From: 4c0c25a604
2016-10-17 14:10:58 +02:00
Johnson Lau
540413d995 Add standard limits for P2WSH with tests
Github-Pull: #8499
Rebased-From: 3ade2f64cf
2016-10-17 14:10:58 +02:00
jonnynewbs
bcf3806f4c Update bitcoin-tx to output witness data.
Github-Pull: #8817
Rebased-From: 4408558843
2016-10-13 20:35:33 +02:00
Matt Corallo
4bb9ce8a95 Use cmpctblock type 2 for segwit-enabled transfer
Contains version negotiation logic by Matt Corallo and bugfixes by
Suhas Daftuar.

Github-Pull: #8393
Rebased-From: 6aa28abf53
2016-10-13 20:35:33 +02:00
Pieter Wuille
fe1975a974 Use cmpctblock type 2 for segwit-enabled transfer
Contains version negotiation logic by Matt Corallo and bugfixes by
Suhas Daftuar.

Github-Pull: #8393
Rebased-From: 6aa28abf53
2016-10-13 20:15:17 +02:00