Wladimir J. van der Laan
806b9e7570
Merge #8332 : semi trivial: clarify witness branches in transaction.h serialization
...
e37b16a
transaction: clarify witness branches (Daniel Cousens)
2016-07-28 13:00:02 +02:00
Wladimir J. van der Laan
30a87c0747
Merge #8407 : [Qt] Add dbcache migration path
...
893f379
[Qt] Add dbcache migration path (Jonas Schnelli)
2016-07-28 11:28:42 +02:00
Jonas Schnelli
893f379ba0
[Qt] Add dbcache migration path
2016-07-28 10:57:24 +02:00
Wladimir J. van der Laan
64d660a43f
Merge #8348 : Trivial: Segwit: Don't call IsWitnessEnabled from ContextualCheckBlock
...
38c4c8b
Trivial: Segwit: Don't call IsWitnessEnabled from ContextualCheckBlock (Jorge Timón)
2016-07-28 09:51:04 +02:00
Kaz Wesley
d3af342276
prepend license statement to indirectmap
...
Add statement about MIT licensing to indirectmap.h. I forgot the license
preamble when I originally wrote the file.
2016-07-27 16:27:07 -07:00
Jorge Timón
d12b732ac2
libconsensus: Expose a flag for BIP112
...
We added the segwit one, but we forgot CHECKSEQUENCEVERIFY
2016-07-28 00:23:03 +02:00
Jorge Timón
c8664eeac7
Trivial: pass Consensus::Params& instead of CChainParams& in ContextualCheckBlock
2016-07-27 23:58:04 +02:00
Wladimir J. van der Laan
4d4970fe53
Merge #8206 : [Wallet] Add HD xpriv to dumpwallet
...
77c912d
[Wallet] add HD xpriv to dumpwallet (Jonas Schnelli)
2016-07-27 15:25:34 +02:00
Jonas Schnelli
77c912d21c
[Wallet] add HD xpriv to dumpwallet
2016-07-27 15:19:23 +02:00
Suhas Daftuar
1d06e49834
Ignore CMPCTBLOCK messages for pruned blocks
...
Also ignores CMPCTBLOCK announcements that have too little work. This is to
prevent disk-exhaustion DoS.
2016-07-26 16:52:35 -04:00
Suhas Daftuar
1de2a46632
Ignore GETBLOCKTXN requests for unknown blocks
...
Don't disconnect peers, or else we leak information that could be
used for fingerprinting.
2016-07-26 16:50:48 -04:00
Wladimir J. van der Laan
4b1a4d8810
Merge #8381 : Make witness v0 outputs non-standard
...
c59c434
qa: Add test for standardness of segwit v0 outputs (Suhas Daftuar)
1ffaff2
Make witness v0 outputs non-standard before segwit activation (Johnson Lau)
2016-07-26 14:24:11 +02:00
Wladimir J. van der Laan
618c9dd8c6
Merge #8365 : Treat high-sigop transactions as larger rather than rejecting them
...
ab942c1
Treat high-sigop transactions as larger rather than rejecting them (Pieter Wuille)
2016-07-26 11:27:30 +02:00
Wladimir J. van der Laan
517eee3e8f
Merge #8362 : Scale legacy sigop count in CreateNewBlock
...
682aa0f
Scale legacy sigop count in CreateNewBlock (Suhas Daftuar)
2016-07-25 18:08:09 +02:00
lizhi
cc021ef486
remove outdated legacy code
...
CheckSignatureElement is not used,it be replaced by eccrypto::CheckSignatureElement.
2016-07-24 10:49:07 +08:00
NicolasDorier
122786d0e0
Consensus: Remove ISM
2016-07-23 01:02:53 +09:00
Suhas Daftuar
c59c434b7d
qa: Add test for standardness of segwit v0 outputs
2016-07-23 00:01:02 +08:00
Johnson Lau
1ffaff2f74
Make witness v0 outputs non-standard before segwit activation
2016-07-22 06:35:07 +00:00
Jonas Schnelli
b50e1ac298
[Wallet] Correct hdmasterkeyid/masterkeyid name confusion
2016-07-21 21:58:12 +02:00
Wladimir J. van der Laan
381917f610
Merge #8347 : Trivial: Make CBlockIndex param const in ContextualCheckBlockHeader and ContextualCheckBlock
...
6f3d616
Trivial: Make CBlockIndex param const in ContextualCheckBlockHeader and ContextualCheckBlock (Jorge Timón)
2016-07-21 14:31:40 +02:00
NicolasDorier
7821889bce
Consensus: Remove calls to error() from ContextualCheckBlock
2016-07-21 20:57:08 +09:00
Wladimir J. van der Laan
6f4092da80
Merge #8342 : Consensus: Trivial transform BOOST_FOREACH into for loop
...
a3e1984
Consensus: Trivial transform BOOST_FOREACH into for loop (NicolasDorier)
2016-07-21 11:56:33 +02:00
fanquake
208d37f116
[trivial] Remove URLs from About dialog translations
2016-07-21 16:21:08 +08:00
Jonas Schnelli
2f32c82b3d
[Qt] show network/chain errors in the GUI
2016-07-20 14:42:19 +02:00
Patrick Strateman
6523fcaab2
Move SetMinVersion for FEATURE_HD to SetHDMasterKey
2016-07-19 22:30:17 -07:00
Pieter Wuille
ab942c15bd
Treat high-sigop transactions as larger rather than rejecting them
2016-07-19 12:31:49 +02:00
Wladimir J. van der Laan
045106b4f1
Merge #8367 : [Wallet] Ensure <0.13 clients can't open HD wallets
...
a4f137f
[Wallet] Ensure <0.13 clients can't open HD wallets (Jonas Schnelli)
2016-07-19 12:13:12 +02:00
Thomas Snider
fbc60703a5
[trivial] Switched constants to sizeof()
2016-07-18 19:42:09 -07:00
Jonas Schnelli
a4f137f367
[Wallet] Ensure <0.13 clients can't open HD wallets
2016-07-18 22:56:45 +02:00
Suhas Daftuar
2c06bae39e
Rename "block cost" to "block weight"
2016-07-18 13:28:26 -04:00
Suhas Daftuar
682aa0f289
Scale legacy sigop count in CreateNewBlock
2016-07-18 12:42:41 -04:00
Wladimir J. van der Laan
6c0336c772
build: bump version to 0.13.99
...
Now that 0.13 branch has been split off, master is 0.13.99 (pre-0.14).
2016-07-18 12:22:18 +02:00
Wladimir J. van der Laan
e4382fbef5
qt: periodic translations update
2016-07-18 12:13:08 +02:00
Wladimir J. van der Laan
8cef5bd58a
mining: Improve -blockmaxcost
help message
...
One-word replacement to #8354 .
2016-07-18 10:56:25 +02:00
Wladimir J. van der Laan
f5660d381a
Merge #8295 : Mining-related fixups for 0.13.0
...
c1d61fb
Add warning if -blockminsize is used. (Suhas Daftuar)
27362dd
Remove -blockminsize option (Suhas Daftuar)
d2e46e1
Remove addScoreTxs() (Suhas Daftuar)
6dd4bc2
Exclude witness transactions in addPackageTxs() pre-segwit activation (Suhas Daftuar)
f15c2cd
CreateNewBlock: add support for size-accounting to addPackageTxs (Suhas Daftuar)
2016-07-18 08:23:45 +02:00
Wladimir J. van der Laan
238300b398
Merge #8323 : Add HD keypath to CKeyMetadata, report metadata in validateaddress
...
7945088
[Wallet] comsetic non-code changes for the HD feature (Jonas Schnelli)
68d7682
[Wallet] ensure CKeyMetadata.hdMasterKeyID will be cleared during SetNull() (Jonas Schnelli)
f708085
[QA] extend wallet-hd test to cover HD metadata (Jonas Schnelli)
986c223
[Wallet] print hd masterkeyid in getwalletinfo (Jonas Schnelli)
b1c7b24
[Wallet] report optional HDKeypath/HDMasterKeyId in validateaddress (Jonas Schnelli)
5b95dd2
[Wallet] extend CKeyMetadata with HD keypath (Jonas Schnelli)
2016-07-18 07:58:33 +02:00
Wladimir J. van der Laan
37303934fe
Merge #8305 : Improve handling of unconnecting headers
...
e91cf4b
Add test for handling of unconnecting headers (Suhas Daftuar)
96fa953
Improve handling of unconnecting headers (Suhas Daftuar)
2016-07-18 07:46:12 +02:00
Jorge Timón
38c4c8b701
Trivial: Segwit: Don't call IsWitnessEnabled from ContextualCheckBlock
2016-07-17 02:41:58 +02:00
Jorge Timón
6f3d616dc8
Trivial: Make CBlockIndex param const in ContextualCheckBlockHeader and ContextualCheckBlock
2016-07-17 01:43:15 +02:00
NicolasDorier
a3e1984651
Consensus: Trivial transform BOOST_FOREACH into for loop
2016-07-16 11:08:52 +09:00
Jonas Schnelli
7945088d41
[Wallet] comsetic non-code changes for the HD feature
2016-07-15 10:34:08 +02:00
Jonas Schnelli
68d7682b9f
[Wallet] ensure CKeyMetadata.hdMasterKeyID will be cleared during SetNull()
2016-07-15 10:33:25 +02:00
Wladimir J. van der Laan
bc94b87487
Merge #8324 : [Wallet] keep HD seed during salvagewallet
...
b993671
[Wallet] keep HD seed during salvagewallet (Jonas Schnelli)
2016-07-14 11:37:48 +02:00
Wladimir J. van der Laan
ca40ef6029
Merge #8312 : Fix mempool DoS vulnerability from malleated transactions
...
46c9620
Test that unnecessary witnesses can't be used for mempool DoS (Suhas Daftuar)
bb66a11
Fix DoS vulnerability in mempool acceptance (Suhas Daftuar)
2016-07-14 08:21:13 +02:00
Wladimir J. van der Laan
4324bd237c
Merge #8311 : Rename CTxinWitness -> CTxInWitness
...
36ae37a
Rename CTxinWitness -> CTxInWitness (Bob McElrath)
2016-07-14 08:18:38 +02:00
Wladimir J. van der Laan
1bc9c8085f
Merge #8271 : [bugfix] Do not send witnesses in cmpctblock
...
252675e
Do not send witnesses in cmpctblock (Pieter Wuille)
2016-07-14 08:17:22 +02:00
Daniel Cousens
e37b16a75c
transaction: clarify witness branches
2016-07-14 13:40:50 +10:00
Suhas Daftuar
96fa95361f
Improve handling of unconnecting headers
...
When processing a headers message that looks like a block announcement,
send peer a getheaders if the headers message won't connect.
Apply DoS points after too many consecutive unconnecting headers messages.
2016-07-12 13:12:40 -04:00
Wladimir J. van der Laan
4831a16223
qt: periodic translation update
...
Added languages:
- `bg_BG`: Bulgarian (Bulgaria)
2016-07-12 11:40:33 +02:00
Jonas Schnelli
b993671921
[Wallet] keep HD seed during salvagewallet
2016-07-09 12:58:03 +02:00
Jonas Schnelli
986c223214
[Wallet] print hd masterkeyid in getwalletinfo
2016-07-09 12:12:36 +02:00
Jonas Schnelli
b1c7b244e2
[Wallet] report optional HDKeypath/HDMasterKeyId in validateaddress
2016-07-09 12:12:32 +02:00
Jonas Schnelli
5b95dd2c25
[Wallet] extend CKeyMetadata with HD keypath
2016-07-09 11:52:17 +02:00
MarcoFalke
477777f250
[rpcwallet] Don't use floating point
2016-07-08 12:01:25 +02:00
Wladimir J. van der Laan
ff46dd4a34
Merge #7540 : Rename OP_NOP3 to OP_CHECKSEQUENCEVERIFY
...
18c975c
Rename NOP3 to CHECSEQUENCEVERIFY in rpc tests (BtcDrak)
14d0130
Rename OP_NOP3 to OP_CHECKSEQUENCEVERIFY (BtcDrak)
2016-07-08 11:39:10 +02:00
Suhas Daftuar
bb66a11396
Fix DoS vulnerability in mempool acceptance
...
Moves the IsStandard check to happen after the premature-witness check,
so that adding a witness to a transaction can't prevent mempool acceptance.
Note that this doesn't address the broader category of potential mempool DoS
issues that affect transactions after segwit activation.
2016-07-07 15:49:26 -04:00
Bob McElrath
36ae37a9f9
Rename CTxinWitness -> CTxInWitness
2016-07-06 19:46:46 -04:00
Jonas Schnelli
91abb77970
Merge #8288 : qt: Network-specific example address
...
4f44cb6
qt: Network-specific example address (Wladimir J. van der Laan)
2016-07-06 15:45:17 +02:00
Wladimir J. van der Laan
b978701ba1
qt: periodic translations update
2016-07-06 07:59:07 +02:00
Wladimir J. van der Laan
396f9d6296
Merge #8273 : Bump -dbcache
default to 300MiB
...
efd1d83
doc: Mention dbcache increase in release notes (Wladimir J. van der Laan)
32cab91
Bump `-dbcache` default to 300MiB (Wladimir J. van der Laan)
2016-07-06 07:46:47 +02:00
Wladimir J. van der Laan
32cab91278
Bump -dbcache
default to 300MiB
...
Also cap the allocation for the leveldb-specific cache for the UTXO set
to 8MiB.
This avoids that the extra cache memory goes to the much less effective
leveldb cache instead of our application-level cache.
2016-07-06 07:44:51 +02:00
Wladimir J. van der Laan
042c323922
Merge #8275 : Remove bad chain alert partition check
...
ab8be98
Remove bad chain alert partition check (BtcDrak)
2016-07-06 07:35:54 +02:00
Wladimir J. van der Laan
aef381161f
Merge #8298 : wallet: Revert input selection post-pruning
...
20f3cd7
wallet: Revert input selection post-pruning (Wladimir J. van der Laan)
2016-07-06 07:21:40 +02:00
Suhas Daftuar
c1d61fbd08
Add warning if -blockminsize is used.
2016-07-05 19:57:45 -04:00
Gregory Maxwell
4fbdc4365b
Revert "net: Avoid duplicate getheaders requests." PR #8054
...
This reverts commit f93c2a1b7e
.
This can cause synchronization to get stuck.
2016-07-05 20:45:14 +00:00
MarcoFalke
33336e1aac
[util] CopyrightHolders: Check for untranslated substitution
...
Also, remove check which is always true
2016-07-02 10:46:26 +02:00
Wladimir J. van der Laan
20f3cd75f6
wallet: Revert input selection post-pruning
...
This reverts PR #4906 , "Coinselection prunes extraneous inputs from
ApproximateBestSubset".
Apparently the previous behavior of slightly over-estimating the set of
inputs was useful in cleaning up UTXOs.
See also #7664 , #7657 , as well as 2016-07-01 discussion on #bitcoin-core-dev IRC.
2016-07-01 13:26:01 +02:00
Suhas Daftuar
27362dda4d
Remove -blockminsize option
2016-06-30 11:41:13 -04:00
Suhas Daftuar
d2e46e1b5c
Remove addScoreTxs()
2016-06-30 11:37:38 -04:00
Suhas Daftuar
6dd4bc289c
Exclude witness transactions in addPackageTxs() pre-segwit activation
2016-06-30 11:24:32 -04:00
Wladimir J. van der Laan
975a41dcc2
windows: Add testnet icon for testnet link
...
Overhauled testnet icon by Jonas Schnelli
2016-06-30 17:17:58 +02:00
Wladimir J. van der Laan
4f44cb616d
qt: Network-specific example address
...
Generate an (invalid) example address for in the bitcoin address
widgets, based on the network prefix, instead of hardcoding a mainnet
address.
- `1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L` for mainnet (same as now)
- `n2wxQmfexkjwEPgdD6iJA7T7RtzkmHxhFc` for testnet
2016-06-29 17:35:54 +02:00
Wladimir J. van der Laan
a7897c02f7
qt: Remove client name from debug window
...
Remove the client name from the debug window in the GUI. It is already
part of the user agent, so adding it separately doesn't add anything.
2016-06-28 18:27:49 +02:00
BtcDrak
14d01309be
Rename OP_NOP3 to OP_CHECKSEQUENCEVERIFY
2016-06-28 17:17:36 +01:00
Wladimir J. van der Laan
3685e0c1da
Merge #8261 : The bit field is shown only when status is "started"
...
2129fce
The bit field is shown only when status is "started" (Pavel Janík)
2016-06-28 16:06:40 +02:00
Wladimir J. van der Laan
3b2dadc8d5
qt: Periodic translations update
2016-06-28 11:49:38 +02:00
Pavel Janík
2129fcea69
The bit field is shown only when status is "started"
2016-06-28 10:25:27 +02:00
Wladimir J. van der Laan
ff03c50c00
Merge #8257 : Do not ask a UI question from bitcoind
...
1acf1db
Do not ask a UI question from bitcoind (Pieter Wuille)
2016-06-28 10:12:01 +02:00
Wladimir J. van der Laan
a5072a7730
util: Remove zero-argument versions of LogPrint and error
...
Changes in tinyformat, recently imported from upstream have made the
zero-argument versions of formatting functions unnecessary. Remove them.
This is a slight semantic change: `%` characters in the zero-argument
call are now regarded and need to be escaped. As for as I know, the only
use of this is in `main.cpp`.
2016-06-27 18:39:25 +02:00
Wladimir J. van der Laan
695041e495
util: Update tinyformat
...
Updates `tinyformat.h` to commit
3a33bbf654
upstream.
Makes sure that our local changes are kept:
- #3767 1b8fd35aad
Make tinyformat errors raise an exception instead of assert()ing
- #4735 9b6d4c5cdc
Move strprintf define to tinyformat.h
- #4748 6e5fd003e0
include stdexcept (for std::exception)
- #8000 9eaa0afa6e
force USE_VARIADIC_TEMPLATES
- Add `std::string format(const std::string &fmt...` added this
at the time, as we want to be able to do `strprintf(_(...), ...)`
Inspired by #8264 .
2016-06-27 18:17:27 +02:00
Suhas Daftuar
f15c2cde45
CreateNewBlock: add support for size-accounting to addPackageTxs
...
Includes a change to not continue to use size-accounting in addScoreTxs
or addPackageTxs just because addPriorityTxs() is used.
2016-06-27 10:58:58 -04:00
Wladimir J. van der Laan
5a06ebbf2d
Merge #8258 : RPC: Hide softfork if timeout is 0
...
409f833
RPC: Hide softfork if timeout is 0 (jl2012)
2016-06-27 16:07:50 +02:00
Pieter Wuille
252675efc6
Do not send witnesses in cmpctblock
2016-06-26 20:19:00 +02:00
Matthew King
873e81f89b
Use portable #! in python scripts (/usr/bin/env)
2016-06-26 16:47:03 +03:00
Wladimir J. van der Laan
1922e5a654
Merge #8244 : remove unnecessary LOCK(cs_main) in getrawpmempool
...
27f8126
remove unnecessary LOCK(cs_main) (Daniel Cousens)
2016-06-25 16:10:10 +02:00
jl2012
409f83322e
RPC: Hide softfork if timeout is 0
2016-06-25 00:55:07 +08:00
Wladimir J. van der Laan
d612837814
Merge #8149 : Segregated witness rebased
...
f852813
BIP9 parameters for testnet (Johnson Lau)
070dbc4
--- [SEGWIT] begin: deployment --- (Pieter Wuille)
fdb43df
[qa] Add GetTransactionSigOpCost unit tests (Jonas Nick)
d846e02
[qa] script_tests: witness tests can specify tx amount (Suhas Daftuar)
330b0f3
[qa] p2p segwit tests (Suhas Daftuar)
4f7ff00
[qa] Add rpc test for segwit (Alex Morcos)
66cca79
[qa] Autogeneration support for witness in script_tests (Pieter Wuille)
06d3805
[qa] Add segwit support to script_tests (Pieter Wuille)
00f46cb
[qa] Add transaction tests for segwit (NicolasDorier)
0aa9207
[qa] Witness version 0 signing unit tests (Pieter Wuille)
978e200
--- [SEGWIT] begin: tests --- (Pieter Wuille)
745eb67
[RPC] signrawtransaction can sign P2WSH (NicolasDorier)
f4691ab
[RPC] Add wallet support for witness transactions (using P2SH) (Pieter Wuille)
605e847
BIP143: Signing logic (Pieter Wuille)
9757b57
--- [SEGWIT] begin: wallet --- (Pieter Wuille)
af87a67
Do not use compact blocks when segwit is enabled (Pieter Wuille)
6032f69
Add rewind logic to deal with post-fork software updates (Pieter Wuille)
b7dbeb2
[libconsensus] Script verification API with amounts (Thomas Kerin)
2b1f6f9
BIP141: Other consensus critical limits, and BIP145 (Pieter Wuille)
7c4bf77
[RPC] Return witness data in blockchain RPCs (Johnson Lau)
3dd4102
BIP143: Verification logic (Pieter Wuille)
0ef1dd3
Refactor script validation to observe amounts (Pieter Wuille)
b8a9749
BIP144: Handshake and relay (receiver side) (Pieter Wuille)
8b49040
BIP141: Commitment structure and deployment (Pieter Wuille)
449f9b8
BIP141: Witness program (Pieter Wuille)
7030d9e
BIP144: Serialization, hashes, relay (sender side) (Pieter Wuille)
ecacfd9
--- [SEGWIT] begin: P2P/node/consensus --- (Pieter Wuille)
2016-06-24 18:07:44 +02:00
Pieter Wuille
1acf1db76f
Do not ask a UI question from bitcoind
2016-06-24 16:45:12 +02:00
Wladimir J. van der Laan
af2421c291
Merge #8256 : BUG: bitcoin-qt crash
...
d7828ab
check that transactionView->selectionModel()->selectedRows(0) exists (fsb4000)
2016-06-24 13:48:16 +02:00
fsb4000
d7828abd5b
check that transactionView->selectionModel()->selectedRows(0) exists
2016-06-24 18:08:32 +07:00
Pieter Wuille
133deb83df
Mark my dnsseed as supporting filtering
2016-06-23 15:44:35 +02:00
Wladimir J. van der Laan
08338942b5
Merge #8204 : Update petertodd's testnet seed
...
d80efec
Update petertodd's testnet seed (Peter Todd)
2016-06-23 13:04:42 +02:00
Wladimir J. van der Laan
a1c92c29fd
trivial: capitalize BIP32 in option help
...
For consistency, BIP32 should be in uppercase in translation message.
Reported by @pryds on Transifex.
2016-06-23 10:44:36 +00:00
Daniel Cousens
27f8126ff3
remove unnecessary LOCK(cs_main)
2016-06-23 12:44:53 +10:00
Johnson Lau
f8528134fc
BIP9 parameters for testnet
2016-06-22 15:43:02 +02:00
Jonas Nick
fdb43df23e
[qa] Add GetTransactionSigOpCost unit tests
2016-06-22 15:43:02 +02:00
Suhas Daftuar
d846e02372
[qa] script_tests: witness tests can specify tx amount
...
Add tests that witness signatures cover value
2016-06-22 15:43:02 +02:00
Suhas Daftuar
330b0f31ee
[qa] p2p segwit tests
...
mininode now supports witness transactions/blocks, blocktools
has a helper for adding witness commitments to blocks, and script
has a function to calculate hashes for signature under sigversion
1, used by segwit.
Py3 conversion by Marco Falke
Test to make sure upgraded nodes don't ask for non-wit blocks by
Gregory Sanders.
2016-06-22 15:43:02 +02:00
Alex Morcos
4f7ff00497
[qa] Add rpc test for segwit
...
Amended by Pieter Wuille to use multisig 1-of-1 for P2WSH tests, and BIP9
based switchover logic.
Fixes and py3 conversion by Marco Falke.
2016-06-22 15:43:01 +02:00
Pieter Wuille
66cca79130
[qa] Autogeneration support for witness in script_tests
2016-06-22 15:43:01 +02:00
Pieter Wuille
06d3805c1a
[qa] Add segwit support to script_tests
...
Contains fix by Johnson Lau.
2016-06-22 15:43:01 +02:00
NicolasDorier
00f46cbcd9
[qa] Add transaction tests for segwit
...
Including BIP143 P2WSH examples by jl2012.
2016-06-22 15:43:01 +02:00
Pieter Wuille
0aa9207451
[qa] Witness version 0 signing unit tests
2016-06-22 15:43:01 +02:00
NicolasDorier
745eb678ef
[RPC] signrawtransaction can sign P2WSH
2016-06-22 15:43:01 +02:00
Pieter Wuille
f4691ab3a9
[RPC] Add wallet support for witness transactions (using P2SH)
...
Includes support for pushkeyhash wit v0 by Alex Morcos.
2016-06-22 15:43:01 +02:00
Pieter Wuille
605e8473a7
BIP143: Signing logic
2016-06-22 15:43:01 +02:00
Pieter Wuille
af87a67eff
Do not use compact blocks when segwit is enabled
2016-06-22 15:43:00 +02:00
Pieter Wuille
6032f6930a
Add rewind logic to deal with post-fork software updates
...
Includes logic for dealing with pruning by Suhas Daftuar.
2016-06-22 15:43:00 +02:00
Thomas Kerin
b7dbeb24eb
[libconsensus] Script verification API with amounts
...
script_tests: always test bitcoinconsensus_verify_script_with_amount if VERIFY_WITNESS isn't set
Rename internal method + make it static
trim bitcoinconsensus_ prefix
Add SERIALIZE_TRANSACTION_WITNESS flag
2016-06-22 15:43:00 +02:00
Pieter Wuille
2b1f6f9ccf
BIP141: Other consensus critical limits, and BIP145
...
Includes changes by Suhas Daftuar, Luke-jr, and mruddy.
2016-06-22 15:43:00 +02:00
Johnson Lau
7c4bf779e8
[RPC] Return witness data in blockchain RPCs
...
Includes RPC field name changes by Luke-jr.
2016-06-22 15:43:00 +02:00
Pieter Wuille
3dd410294d
BIP143: Verification logic
...
Includes simplifications by Eric Lombrozo.
2016-06-22 15:43:00 +02:00
Pieter Wuille
0ef1dd3e11
Refactor script validation to observe amounts
...
This is a preparation for BIP143 support.
2016-06-22 15:43:00 +02:00
Pieter Wuille
b8a97498df
BIP144: Handshake and relay (receiver side)
...
Service bit logic by Nicolas Dorier.
Only download blocks from witness peers after fork.
2016-06-22 15:42:59 +02:00
Pieter Wuille
8b49040854
BIP141: Commitment structure and deployment
...
Includes a fix by Suhas Daftuar and LongShao007
2016-06-22 15:42:59 +02:00
Pieter Wuille
449f9b8deb
BIP141: Witness program
2016-06-22 15:42:59 +02:00
Pieter Wuille
7030d9eb47
BIP144: Serialization, hashes, relay (sender side)
...
Contains refactorings by Eric Lombrozo.
Contains fixup by Nicolas Dorier.
Contains cleanup of CInv::GetCommand by Alex Morcos
2016-06-22 15:42:59 +02:00
Wladimir J. van der Laan
e9d76a161d
Merge #8068 : Compact Blocks
...
48efec8
Fix some minor compact block issues that came up in review (Matt Corallo)
ccd06b9
Elaborate bucket size math (Pieter Wuille)
0d4cb48
Use vTxHashes to optimize InitData significantly (Matt Corallo)
8119026
Provide a flat list of txid/terators to txn in CTxMemPool (Matt Corallo)
678ee97
Add BIP 152 to implemented BIPs list (Matt Corallo)
56ba516
Add reconstruction debug logging (Matt Corallo)
2f34a2e
Get our "best three" peers to announce blocks using cmpctblocks (Matt Corallo)
927f8ee
Add ability to fetch CNode by NodeId (Matt Corallo)
d25cd3e
Add receiver-side protocol implementation for CMPCTBLOCK stuff (Matt Corallo)
9c837d5
Add sender-side protocol implementation for CMPCTBLOCK stuff (Matt Corallo)
00c4078
Add protocol messages for short-ids blocks (Matt Corallo)
e3b2222
Add some blockencodings tests (Matt Corallo)
f4f8f14
Add TestMemPoolEntryHelper::FromTx version for CTransaction (Matt Corallo)
85ad31e
Add partial-block block encodings API (Matt Corallo)
5249dac
Add COMPACTSIZE wrapper similar to VARINT for serialization (Matt Corallo)
cbda71c
Move context-required checks from CheckBlockHeader to Contextual... (Matt Corallo)
7c29ec9
If AcceptBlockHeader returns true, pindex will be set. (Matt Corallo)
96806c3
Stop trimming when mapTx is empty (Pieter Wuille)
2016-06-22 14:30:38 +02:00
Wladimir J. van der Laan
9e45ef1ef0
Merge #8234 : qt: Periodic transifex update
...
4cbe05b
qt: Periodic transifex update (Wladimir J. van der Laan)
2016-06-22 08:52:06 +02:00
Wladimir J. van der Laan
760a6c7cb2
Merge #8231 : [Qt] fix a bug where the SplashScreen will not be hidden during startup
...
b3e1348
[Qt] fix a bug where the SplashScreen will not be hidden during startup (Jonas Schnelli)
2016-06-22 08:50:14 +02:00
Wladimir J. van der Laan
961893f26e
Merge #8222 : Enable mempool consistency checks in unit tests
...
3775ff9
Enable mempool consistency checks in unit tests (Pieter Wuille)
2016-06-22 08:48:37 +02:00
Matt Corallo
48efec82f3
Fix some minor compact block issues that came up in review
2016-06-21 16:09:46 -07:00
Wladimir J. van der Laan
4cbe05bf20
qt: Periodic transifex update
...
Pulls in the following new languages:
- `af` Afrikaans
- `es_419` Spanish (Latin America)
- `es_AR` Spanish (Argentina)
- `es_CO` Spanish (Colombia)
- `fil` Filipino
- `it_IT` Italian (Italy)
- `ro` Romanian
- `sr@latin` Serbian (Latin)
- `ta` Tamil
- `uz@Latn` Uzbek (Latin)
- `zh_HK` Chinese (Hong Kong)
2016-06-21 15:32:07 +02:00
Jonas Schnelli
b3e1348c46
[Qt] fix a bug where the SplashScreen will not be hidden during startup
2016-06-21 11:35:29 +02:00
TheLazieR Yip
bf9c70b100
Fix LogPrint to LogPrintf
...
Printing Log without category defined should use LogPrintf
Github-Pull: #8230
Meta: PR should have been based on master in the first place
2016-06-21 10:21:42 +02:00
Wladimir J. van der Laan
1f86d64f6d
Merge #8220 : Stop trimming when mapTx is empty
...
ad0752e
Stop trimming when mapTx is empty (Pieter Wuille)
2016-06-20 15:21:27 +02:00
Wladimir J. van der Laan
94ab58b5cc
Merge #8179 : Evict orphans which are included or precluded by accepted blocks.
...
54326a6
Increase maximum orphan size to 100,000 bytes. (Gregory Maxwell)
8c99d1b
Treat orphans as implicit inv for parents, discard when parents rejected. (Gregory Maxwell)
11cc143
Adds an expiration time for orphan tx. (Gregory Maxwell)
db0ffe8
This eliminates the primary leak that causes the orphan map to always grow to its maximum size. (Gregory Maxwell)
1b0bcc5
Track orphan by prev COutPoint rather than prev hash (Pieter Wuille)
2016-06-20 14:53:33 +02:00
Wladimir J. van der Laan
a6ddb19bd9
Merge #7687 : Stop treating importaddress'ed scripts as change
...
595b22e
Stop treating importaddress'ed scripts as change (Pieter Wuille)
2016-06-20 14:09:49 +02:00
Wladimir J. van der Laan
12a541e8da
Merge #8210 : [Qt] Bump to Qt5.6.1
...
2759597
Only pass -lQt5PlatformSupport if >=Qt5.6 (Jonas Schnelli)
59d063d
Use runtime linking of QT libdbus, use custom/temp. SDK URL (Jonas Schnelli)
6194d9a
Fix bitcoin_qt.m4 and fix-xcb-include-order.patch (Jonas Schnelli)
f6eb4e2
[depends] OpenSSL 1.0.1k - update config_opts (fanquake)
f25209a
depends: bump OSX toolchain (Cory Fields)
2016-06-20 13:33:41 +02:00
Jonas Schnelli
2759597bc8
Only pass -lQt5PlatformSupport if >=Qt5.6
2016-06-20 10:17:01 +02:00
Pieter Wuille
ccd06b94f6
Elaborate bucket size math
2016-06-19 23:06:55 -07:00
Matt Corallo
0d4cb48ef1
Use vTxHashes to optimize InitData significantly
2016-06-19 23:06:55 -07:00
Matt Corallo
811902649d
Provide a flat list of txid/terators to txn in CTxMemPool
2016-06-19 23:06:55 -07:00
Matt Corallo
56ba516727
Add reconstruction debug logging
2016-06-19 23:06:55 -07:00
Matt Corallo
2f34a2e476
Get our "best three" peers to announce blocks using cmpctblocks
2016-06-19 23:06:55 -07:00
Matt Corallo
927f8eede0
Add ability to fetch CNode by NodeId
2016-06-19 23:06:55 -07:00
Matt Corallo
d25cd3ec4e
Add receiver-side protocol implementation for CMPCTBLOCK stuff
2016-06-19 23:06:55 -07:00
Matt Corallo
9c837d5468
Add sender-side protocol implementation for CMPCTBLOCK stuff
2016-06-19 01:34:58 -07:00
Matt Corallo
00c40784fe
Add protocol messages for short-ids blocks
2016-06-19 01:34:57 -07:00
Matt Corallo
e3b2222144
Add some blockencodings tests
2016-06-19 01:34:57 -07:00
Matt Corallo
f4f8f14adc
Add TestMemPoolEntryHelper::FromTx version for CTransaction
2016-06-19 01:34:57 -07:00
Matt Corallo
85ad31ede7
Add partial-block block encodings API
2016-06-19 01:34:57 -07:00
Matt Corallo
5249daca5a
Add COMPACTSIZE wrapper similar to VARINT for serialization
2016-06-19 01:34:57 -07:00
Matt Corallo
cbda71cf04
Move context-required checks from CheckBlockHeader to Contextual...
2016-06-19 01:34:57 -07:00
Matt Corallo
7c29ec9449
If AcceptBlockHeader returns true, pindex will be set.
...
Assert this instead of checking (and then dref'ing later anyway)
to make sure no one thinks they can change that postcondition of
AcceptBlockHeader..
2016-06-19 01:34:57 -07:00
Pieter Wuille
96806c39f4
Stop trimming when mapTx is empty
2016-06-19 01:34:57 -07:00
Pieter Wuille
3775ff9ea7
Enable mempool consistency checks in unit tests
2016-06-18 19:15:03 +02:00
Pieter Wuille
ad0752e41f
Stop trimming when mapTx is empty
2016-06-18 18:50:40 +02:00
MarcoFalke
faa91b12f7
[wallet] tests: Don't use floating point
2016-06-17 13:07:38 +02:00
Pieter Wuille
66db2d62d5
Merge #7600 : Mining: Select transactions using feerate-with-ancestors
...
29fac19
Add unit tests for ancestor feerate mining (Suhas Daftuar)
c82a4e9
Use ancestor-feerate based transaction selection for mining (Suhas Daftuar)
2016-06-16 19:20:13 +02:00
Suhas Daftuar
29fac19c93
Add unit tests for ancestor feerate mining
2016-06-16 12:35:37 -04:00
Suhas Daftuar
c82a4e9a63
Use ancestor-feerate based transaction selection for mining
...
Includes changes by Pieter Wuille
2016-06-16 12:35:37 -04:00
Wladimir J. van der Laan
9c3d0fab36
Merge #7892 : Add full UTF-8 support to RPC
...
7982fce
doc: Mention full UTF-8 support in release notes (Wladimir J. van der Laan)
6bbb4ef
test: test utf-8 for labels in wallet (Wladimir J. van der Laan)
a406fcb
test: add ensure_ascii setting to AuthServiceProxy (Wladimir J. van der Laan)
60ab9b2
Squashed 'src/univalue/' changes from 2740c4f..f32df99 (Wladimir J. van der Laan)
2016-06-16 12:08:35 +02:00
Wladimir J. van der Laan
3f89a534ac
Merge #8113 : Rework addnode behaviour
...
1a5a4e6
Randomize name lookup result in ConnectSocketByName (Pieter Wuille)
f9f5cfc
Prevent duplicate connections where one is by name and another by ip (Pieter Wuille)
1111b80
Rework addnode behaviour (Pieter Wuille)
2016-06-16 12:06:51 +02:00
Wladimir J. van der Laan
62fcf27bd8
Merge #8171 : [RPC] Fix createrawtx sequence number unsigned int parsing
...
6fa950a
[RPC] Fix createrawtx sequence number unsigned int parsing (Jonas Schnelli)
2016-06-16 11:06:51 +02:00
Wladimir J. van der Laan
e4bb4a85a5
Merge #8084 : Add recently accepted blocks and txn to AttemptToEvictConnection.
...
6ee7f05
Allow disconnecting a netgroup with only one member in eviction. (Gregory Maxwell)
5d0ca81
Add recently accepted blocks and txn to AttemptToEvictConnection. (Gregory Maxwell)
2016-06-16 11:03:52 +02:00
Wladimir J. van der Laan
0a64777b90
Merge #8208 : Do not set extra flags for unfiltered DNS seed results
...
bc0a895
Do not set extra flags for unfiltered DNS seed results (Pieter Wuille)
2016-06-16 10:57:59 +02:00
Wladimir J. van der Laan
f7a403b4cf
Merge #8207 : [trivial] Add a link to the Bitcoin-Core repository and website to the About Dialog
...
fa58e5e
[doc] Add website links to about dialog (MarcoFalke)
2016-06-16 10:56:20 +02:00
MarcoFalke
fa58e5ee93
[doc] Add website links to about dialog
2016-06-16 10:07:36 +02:00
Gregory Maxwell
6ee7f05622
Allow disconnecting a netgroup with only one member in eviction.
...
With the latest additions there are enough protective measures that
we can take the training wheels off.
2016-06-15 20:19:13 +00:00
Gregory Maxwell
5d0ca81f74
Add recently accepted blocks and txn to AttemptToEvictConnection.
...
This protects any not-already-protected peers who were the most
recent four to relay transactions and most recent four to send
blocks to us.
2016-06-15 20:19:07 +00:00
Pieter Wuille
bc0a895d81
Do not set extra flags for unfiltered DNS seed results
2016-06-15 19:31:58 +02:00
Gregory Maxwell
54326a6808
Increase maximum orphan size to 100,000 bytes.
...
Although this increases node memory usage in the worst case by perhaps
30MB, the current behavior causes severe issues with dependent tx relay.
2016-06-15 09:56:42 +00:00
Gregory Maxwell
8c99d1b525
Treat orphans as implicit inv for parents, discard when parents rejected.
...
An orphan whos parents were rejected is never going to connect, so there
is little utility in keeping it.
Orphans also helpfully tell us what we're missing, so go ahead and treat
it as INVed.
2016-06-15 09:56:37 +00:00
Gregory Maxwell
11cc143895
Adds an expiration time for orphan tx.
...
This prevents higher order orphans and other junk from
holding positions in the orphan map. Parents delayed
twenty minutes are more are unlikely to ever arrive.
The freed space will improve the orphan matching success rate for
other transactions.
2016-06-15 09:56:28 +00:00
Peter Todd
d80efec327
Update petertodd's testnet seed
...
New seed with servicebit filtering support.
2016-06-15 00:11:39 -04:00
BtcDrak
ab8be98fdb
Remove bad chain alert partition check
...
As per meeting 2016-03-31
https://bitcoincore.org/en/meetings/2016/03/31/#bad-chain-alerts
The partition checker was producing huge number of false-positives
and was disabled in 0.12.1 on the understanding it would either be
fixed in 0.13 or removed entirely from master if not.
2016-06-14 12:26:59 +01:00
Jonas Schnelli
fb0ac482ee
Merge #7636 : Add bitcoin address label to request payment QR code
...
1c2a1ba
Add address label to request payment QR Code (QT) (Francesco 'makevoid' Canessa)
2016-06-14 13:17:44 +02:00
Wladimir J. van der Laan
b67a4726df
Merge #8035 : [Wallet] Add simplest BIP32/deterministic key generation implementation
...
afcd77e
Detect -usehd mismatches when wallet.dat already exists (Jonas Schnelli)
17c0131
[Docs] Add release notes and bip update for Bip32/HD wallets (Jonas Schnelli)
c022e5b
[Wallet] use constant for bip32 hardened key limit (Jonas Schnelli)
f190251
[Wallet] Add simplest BIP32/deterministic key generation implementation (Jonas Schnelli)
2016-06-14 11:44:22 +02:00
Jonas Schnelli
afcd77e179
Detect -usehd mismatches when wallet.dat already exists
2016-06-14 08:56:01 +02:00
Pieter Wuille
1a5a4e6488
Randomize name lookup result in ConnectSocketByName
2016-06-13 23:53:08 +02:00
Pieter Wuille
f9f5cfc506
Prevent duplicate connections where one is by name and another by ip
2016-06-13 23:53:08 +02:00
Pieter Wuille
1111b80df8
Rework addnode behaviour
...
* Use CNode::addeName to track whether a connection to a name is already open
* A new connection to a previously-connected by-name addednode is only opened when
the previous one closes (even if the name starts resolving to something else)
* At most one connection is opened per addednode (even if the name resolves to multiple)
* Unify the code between ThreadOpenAddedNodeConnections and getaddednodeinfo
* Information about open connections is always returned, and the dns argument becomes a dummy
* An IP address and inbound/outbound is only reported for the (at most 1) open connection
2016-06-13 23:53:06 +02:00
Pieter Wuille
ecd7fd37c8
Introduce REQUIRED_SERVICES constant
2016-06-13 17:40:16 +02:00
Pieter Wuille
ee06e04369
Introduce enum ServiceFlags for service flags
2016-06-13 17:40:16 +02:00
Pieter Wuille
15bf863219
Don't require services in -addnode
2016-06-13 17:40:16 +02:00
Pieter Wuille
5e7ab16d29
Only store and connect to NODE_NETWORK nodes
2016-06-13 17:40:16 +02:00
Pieter Wuille
fc83f18153
Verify that outbound connections have expected services
2016-06-13 17:40:16 +02:00
Pieter Wuille
3764dec36c
Keep addrman's nService bits consistent with outbound observations
2016-06-13 17:40:16 +02:00
Francesco 'makevoid' Canessa
1c2a1bac0a
Add address label to request payment QR Code (QT)
...
In the Receive 'Tab' of the QT wallet, when 'Show'ing a previously requested payment, add a label underneath the QR Code showing the bitcoin address where the funds will go to.
This way the user can be sure that the QR code scanner app the user using is reading the correct bitcoin address, preventing funds to be stolen.
Includes fix for HiDPI screens by @jonasschnelli.
2016-06-13 16:09:14 +01:00
Wladimir J. van der Laan
44c1b1c9bb
Merge #8141 : Continuing port of java comparison tool
...
ff2dcf2
Tests: Edit bloated varint test and add option for 'barely expensive' tests (mrbandrews)
12c5a16
Catch exceptions from non-canonical encoding and print only to log (mrbandrews)
291f8aa
Continuing port of java comptool (mrbandrews)
8c9e681
Tests: Rework blockstore to avoid re-serialization. (mrbandrews)
2016-06-13 11:37:37 +02:00
Wladimir J. van der Laan
e1486eb95c
Merge #7598 : Refactor CreateNewBlock to be a method of the BlockAssembler class
...
c2dd5a3
FIX: correctly measure size of priority block (Alex Morcos)
a278764
FIX: Account for txs already added to block in addPriorityTxs (Alex Morcos)
4dc94d1
Refactor CreateNewBlock to be a method of the BlockAssembler class (Alex Morcos)
2016-06-13 11:35:55 +02:00
Gregory Maxwell
db0ffe80a0
This eliminates the primary leak that causes the orphan map to
...
always grow to its maximum size.
This does not go so far as to attempt to connect orphans made
connectable by a new block.
Keeping the orphan map less full helps improve the reliability
of relaying chains of transactions.
2016-06-10 20:42:03 +00:00
Pieter Wuille
1b0bcc5f95
Track orphan by prev COutPoint rather than prev hash
2016-06-10 19:51:20 +00:00
instagibbs
657fc19d65
rename mapAddrCount to mapNetGroupNodes
2016-06-10 10:09:06 -04:00
Wladimir J. van der Laan
63151521fd
Merge commit '60ab9b200654ef0914459711cf2b22be16be3dc2'
2016-06-10 15:19:51 +02:00
Wladimir J. van der Laan
ac8d0418ed
qt: translations update
2016-06-10 10:12:00 +02:00
Wladimir J. van der Laan
fde0ac403c
Merge #8133 : build: Finish up out-of-tree changes
...
d1a3d57
bulid: fix "make translate" when out-of-tree (Cory Fields)
340012d
build: add temporary fix for "bad magic number" error in out-of-tree builds (Cory Fields)
142ffc7
travis: use out-of-tree build (Cory Fields)
92e37a3
build: fix out-of-tree 'make deploy' for osx (Cory Fields)
ab95d5d
build: a few ugly hacks to get the rpc tests working out-of-tree (Cory Fields)
fc4ad0c
build: more out-of-tree fixups (Cory Fields)
0cb0f26
build: out-of-tree fixups (Cory Fields)
2016-06-10 10:05:57 +02:00
Wladimir J. van der Laan
9201ce8f2f
Merge #8181 : build: Get rid of CLIENT_DATE
...
d096d22
build: Get rid of `CLIENT_DATE` (Wladimir J. van der Laan)
2016-06-10 09:51:34 +02:00
Cory Fields
d1a3d570e5
bulid: fix "make translate" when out-of-tree
2016-06-09 17:49:16 -04:00
Pieter Wuille
7ce9ac5c83
Merge #7292 : [RPC] Expose ancestor/descendant information over RPC
...
176e19b
Mention new RPC's in release notes (Suhas Daftuar)
7f6eda8
Add ancestor statistics to mempool entry RPC output (Suhas Daftuar)
a9b8390
Add test coverage for new RPC calls (Suhas Daftuar)
b09b813
Add getmempoolentry RPC call (Suhas Daftuar)
0dfd869
Add getmempooldescendants RPC call (Suhas Daftuar)
8f7b5dc
Add getmempoolancestors RPC call (Suhas Daftuar)
5ec0cde
Refactor logic for converting mempool entries to JSON (Suhas Daftuar)
2016-06-09 16:32:37 +02:00
Suhas Daftuar
7f6eda8043
Add ancestor statistics to mempool entry RPC output
2016-06-09 09:56:27 -04:00
Suhas Daftuar
b09b8135ae
Add getmempoolentry RPC call
2016-06-09 09:56:27 -04:00
Suhas Daftuar
0dfd86956d
Add getmempooldescendants RPC call
2016-06-09 09:56:27 -04:00
Wladimir J. van der Laan
d096d22446
build: Get rid of CLIENT_DATE
...
Putting the build date in the executable is a practice that has no place
in these days, now that deterministic building is increasingly common.
Continues #7732 which did this for the GUI.
2016-06-09 13:34:09 +02:00
Wladimir J. van der Laan
0b5279f89c
Merge #8166 : src/test: Do not shadow local variables
...
c2715d3
Do not shadow local variables (Pavel Janík)
2016-06-09 08:25:25 +02:00
Wladimir J. van der Laan
1445835bd3
Merge #8154 : drop vAddrToSend after sending big addr message
...
d3d02d5
drop vAddrToSend after sending big addr message (Kaz Wesley)
2016-06-09 08:13:14 +02:00
Wladimir J. van der Laan
d36618585d
Merge #8168 : util: Add ParseUInt32 and ParseUInt64
...
e012f3c
util: Add ParseUInt32 and ParseUInt64 (Wladimir J. van der Laan)
2016-06-09 07:37:07 +02:00
Wladimir J. van der Laan
7e6dd7bee4
Merge #8172 : Fix two warnings for comparison between signed and unsigned
...
77f63a4
Fix two warnings for comparison between signed and unsigned (Pieter Wuille)
2016-06-09 07:29:09 +02:00
Pieter Wuille
4286f43025
Merge #8173 : Use SipHash for node eviction (cont'd)
...
eebc232
test: Add more test vectors for siphash (Wladimir J. van der Laan)
8884830
Use C++11 thread-safe static initializers (Pieter Wuille)
c31b24f
Use 64-bit SipHash of netgroups in eviction (Pieter Wuille)
9bf156b
Support SipHash with arbitrary byte writes (Pieter Wuille)
053930f
Avoid recalculating vchKeyedNetGroup in eviction logic. (Patrick Strateman)
2016-06-08 18:32:34 +02:00