Commit graph

20590 commits

Author SHA1 Message Date
Gregory Sanders
8a6af4ca6a
Merge #722: [0.18 backport] Fix liquidv1 sync #720
9e1c98eaa Don't activate dynafed like custom chains (Gregory Sanders)
200a392d8 Fix liquidv1 sync (Gregory Sanders)

Pull request description:

  Backport of Fix liquidv1 sync #720

Tree-SHA512: 564653f70d9dbdc63ac5dcff97c2f4a676dcafa61056604043edf05e331e7de70b2df07b9c8be93ae8fad43bf557ddd0eb848d031b04e40f6a26ba923eb94e79
2019-09-27 10:04:53 -04:00
Gregory Sanders
9e1c98eaa1
Don't activate dynafed like custom chains 2019-09-27 10:40:20 +02:00
Gregory Sanders
200a392d85
Fix liquidv1 sync
A single field wasn't given a positive value which
meant it considers no peg-ins to be valid.
2019-09-27 10:40:13 +02:00
Gregory Sanders
8161038c7b
Merge #707: [0.18 backport] sendtomainchain_pak: Fix minimum send amount message
9add5a844 Fix feature_pak.py in light of #706 (Gregory Sanders)
817ebcd07 sendtomainchain_pak: Fix minimum send amount message (Gregory Sanders)

Pull request description:

  backport of #706

Tree-SHA512: a1f16636210eb28c221a442c113a609da906079b3688dc1dc53e33d0409096638a48036032ba7349257a4d599342272df40dd9335bbc9ac1008c439602a94f8a
2019-09-17 13:07:04 -04:00
Gregory Sanders
9add5a8442
Fix feature_pak.py in light of #706 2019-09-17 15:11:19 +01:00
Gregory Sanders
817ebcd073
sendtomainchain_pak: Fix minimum send amount message 2019-09-11 14:46:42 +01:00
Steven Roose
eed409ad55
Merge #705: [0.18 backport] RPC: Fix tweakfedpegscript for dynafed, add basic test
08eee04be RPC: Fix tweakfedpegscript for dynafed, add basic test (Gregory Sanders)

Pull request description:

  Backport of https://github.com/ElementsProject/elements/pull/704.

Tree-SHA512: 9ab616d0afcbc5ff58085f949f8012f10d7c82af12222d686b91b673b2449f3d8789502a9120b6570e8d586676149de095c72faa88388e7c05f5207423bd97e9
2019-09-10 20:26:00 +01:00
Gregory Sanders
08eee04be8
RPC: Fix tweakfedpegscript for dynafed, add basic test 2019-09-10 17:56:10 +01:00
Gregory Sanders
f346837657
Merge #703: [0.18] Dynafed backport
f11f066db Generalize the number of epochs old a peg-in can be and still be valid (Gregory Sanders)
d47a7e081 feature_fedpeg.py: Run in various dynafed transition settings (Gregory Sanders)
5b2c79e49 Fix compilation of raw transaction operations with peg-in inputs (Gregory Sanders)
0a44ff67a p2sh-wrap peg-in addresses if fedpeg_program is p2sh-wrapped (Gregory Sanders)
be4606970 Refactor IsPAKValid to not magically acquire chainparams (Gregory Sanders)
c6070be5a Remove script/standard dependence of ContextualCheckDynaFedHeader (Gregory Sanders)
d9431c092 Remove dyanfed.cpp's dependency on script/standard.h (Gregory Sanders)
a7dc478ba After a reorg, boot all peg-ins and peg-outs from mempool (Gregory Sanders)
9a3b9b9cf Enforce PAK checks on dynafed proposals (Gregory Sanders)
ffec60954 Replace fedpeg template init check for pak one (Gregory Sanders)
8dc1de4db Update python test framework for DynaFedParamEntry fedpeg program (Gregory Sanders)
d3d2bc3da Add functional test for illegal proposals (Gregory Sanders)
25bdb0a85 Update dynafed functional test to new behavior (Gregory Sanders)
04cadcd68 fixup proposal checks (Gregory Sanders)
0a21f531a getnewblockhex fills out proposal fedpeg program (Gregory Sanders)
1892b67f9 Make future parent segwit versions in fedpegscripts be vacuously true (Gregory Sanders)
1122fc28a Add dynafed proposal restrictions (Gregory Sanders)
69e881a59 Add description of NextBlockIsParameterTransition (Gregory Sanders)
a7bb36f6c Remove misleading comment for ContextualCheckDynaFedHeader use (Gregory Sanders)
b7aaf4be9 Add fedpeg_program field in dynafed header (Gregory Sanders)
cc2f57a96 CreatePAKListFromExtensionSpace just uses FromBytes for correctness (Gregory Sanders)
7e4f88b68 Remove short-circuit dynafed vote fail for readability (Gregory Sanders)
285daab40 s/m_dyna_params/m_dynafed_params/ (Gregory Sanders)
e963834d2 Light explanation of dynamic federations fields (Gregory Sanders)
8f12b617f s/ConsensusParamEntry/DynaFedParamEntry/ (Gregory Sanders)
6ddf46cde s/m_sbs_wit_limit/m_signblock_witness_limit/ (Gregory Sanders)
1d1cf23fd s/HF_MASK/DYNAFED_HF_MASK/ (Gregory Sanders)
5e2aca1b9 s/d_params/dynafed_params/ (Gregory Sanders)
4829b3a88 signrawtransaction* should use up to date fedpegscript for peg-in signing (Gregory Sanders)
8bd702784 Dynafed RPC support, tests, and deployment for custom chains (Gregory Sanders)
f08756b5d OP_TRUE outputs should be allowed to be segwit-ified by decodescript (Gregory Sanders)
2eded09b6 Have removeForBlock boot transactions when required (Gregory Sanders)
0cfe03bec Expose fedpeg fetching to consensus and mempool internals (Gregory Sanders)
b00515e22 GetTransactionSigOpCost shouldn't need fedpegscript to evaluate (Gregory Sanders)
b096f8dda Add and update startup args for dynafed (Gregory Sanders)
8436710b4 Add unused dynamic genesis block style in chainparams (Gregory Sanders)
f2e3495d6 Create epoch length chainparam (Gregory Sanders)
85467c06c Set default of multi_data_permitted to enforce_pak (Gregory Sanders)
e1474d1bc Correct comment about liquidv1 fedpeg matching template (Gregory Sanders)
4818e5e2b Miner should stop trying to account for old PAK system (Gregory Sanders)
f277ec52f Add miner ability to make dynafed blocks (Gregory Sanders)
f5e46328e ContextualCheckBlockHeader: dynafed doesn't call CheckChallenge (Gregory Sanders)
fb333b3ed Introduce contextual block checks for dynafed (Gregory Sanders)
8f2194c90 Enable pak enforcement at mempool/block level when appropriate (Gregory Sanders)
fac525bac ScriptHasValidPAKProof takes fedpeg as arg (Gregory Sanders)
144d48622 Remove old mempool-booting logic (Gregory Sanders)
1c7782451 Remove standardness checks for PAK (Gregory Sanders)
a306c0c6e Update PAK internals, helper functions (Gregory Sanders)
60d4093eb Disable PAK loading from configuration on init, disable pak test (Gregory Sanders)
5e273e806 Add inactive versionbits dynafed deployment (Gregory Sanders)
1f470d320 ReadBlockFromDisk: do genesis block check before block proof check (Gregory Sanders)
cd5d87cbc Bump last old block version for versonbits due to elements (Gregory Sanders)
86ed316bc Add python implementation of dynafed block serialization (Gregory Sanders)
7ec6c5350 Deserialize merkle proofs without witness, which matters for dynafed (Gregory Sanders)
af485a818 Add fedpegscript-fetching helper (Gregory Sanders)
d1207bdd9 calculate_contract: remove most template checks and assert in preperation for dynafed (Gregory Sanders)
21cf12843 Add note on peg-in sigops (Gregory Sanders)
c37a8fe88 Add dynafed helper functions (Gregory Sanders)
fa1f497a2 Refactor block_proof to support dynafed (Gregory Sanders)
0402da670 Add dynamic federation blockheader fields to chaindb serialization (Gregory Sanders)
ab6e3e37f Add dynamic federations blockheader serialization with HF bit (Gregory Sanders)
f49c0a684 Define dynamic federations primitives (Gregory Sanders)

Pull request description:

Tree-SHA512: dcc7f9f225dcc5921cc325e267e30367283afe4b8d88c9a008dccf72393b35245b50cc48eddce035b2dbbe2a0b669b5027998fc88f30bfc18cf78af7f0a484a4
2019-09-06 15:36:09 -04:00
Gregory Sanders
f11f066db4 Generalize the number of epochs old a peg-in can be and still be valid 2019-09-06 10:24:00 -04:00
Gregory Sanders
d47a7e0814 feature_fedpeg.py: Run in various dynafed transition settings 2019-09-06 10:24:00 -04:00
Gregory Sanders
5b2c79e49a Fix compilation of raw transaction operations with peg-in inputs 2019-09-06 10:24:00 -04:00
Gregory Sanders
0a44ff67a7 p2sh-wrap peg-in addresses if fedpeg_program is p2sh-wrapped 2019-09-06 10:24:00 -04:00
Gregory Sanders
be4606970e Refactor IsPAKValid to not magically acquire chainparams 2019-09-06 10:24:00 -04:00
Gregory Sanders
c6070be5a2 Remove script/standard dependence of ContextualCheckDynaFedHeader 2019-09-06 10:24:00 -04:00
Gregory Sanders
d9431c092a Remove dyanfed.cpp's dependency on script/standard.h 2019-09-06 10:24:00 -04:00
Gregory Sanders
a7dc478ba2 After a reorg, boot all peg-ins and peg-outs from mempool 2019-09-06 10:24:00 -04:00
Gregory Sanders
9a3b9b9cfd Enforce PAK checks on dynafed proposals 2019-09-06 10:24:00 -04:00
Gregory Sanders
ffec60954d Replace fedpeg template init check for pak one 2019-09-06 10:24:00 -04:00
Gregory Sanders
8dc1de4db4 Update python test framework for DynaFedParamEntry fedpeg program 2019-09-06 10:24:00 -04:00
Gregory Sanders
d3d2bc3dad Add functional test for illegal proposals 2019-09-06 10:24:00 -04:00
Gregory Sanders
25bdb0a856 Update dynafed functional test to new behavior 2019-09-06 10:24:00 -04:00
Gregory Sanders
04cadcd689 fixup proposal checks 2019-09-06 10:24:00 -04:00
Gregory Sanders
0a21f531ae getnewblockhex fills out proposal fedpeg program 2019-09-06 10:24:00 -04:00
Gregory Sanders
1892b67f99 Make future parent segwit versions in fedpegscripts be vacuously true 2019-09-06 10:24:00 -04:00
Gregory Sanders
1122fc28af Add dynafed proposal restrictions 2019-09-06 10:24:00 -04:00
Gregory Sanders
69e881a597 Add description of NextBlockIsParameterTransition 2019-09-06 10:24:00 -04:00
Gregory Sanders
a7bb36f6cf Remove misleading comment for ContextualCheckDynaFedHeader use 2019-09-06 10:24:00 -04:00
Gregory Sanders
b7aaf4be9e Add fedpeg_program field in dynafed header 2019-09-06 10:24:00 -04:00
Gregory Sanders
cc2f57a960 CreatePAKListFromExtensionSpace just uses FromBytes for correctness 2019-09-06 10:24:00 -04:00
Gregory Sanders
7e4f88b688 Remove short-circuit dynafed vote fail for readability 2019-09-06 10:24:00 -04:00
Gregory Sanders
285daab400 s/m_dyna_params/m_dynafed_params/ 2019-09-06 10:24:00 -04:00
Gregory Sanders
e963834d27 Light explanation of dynamic federations fields 2019-09-06 10:24:00 -04:00
Gregory Sanders
8f12b617fc s/ConsensusParamEntry/DynaFedParamEntry/ 2019-09-06 10:24:00 -04:00
Gregory Sanders
6ddf46cde1 s/m_sbs_wit_limit/m_signblock_witness_limit/ 2019-09-06 10:24:00 -04:00
Gregory Sanders
1d1cf23fd2 s/HF_MASK/DYNAFED_HF_MASK/ 2019-09-06 10:24:00 -04:00
Gregory Sanders
5e2aca1b9d s/d_params/dynafed_params/ 2019-09-06 10:24:00 -04:00
Gregory Sanders
4829b3a88c signrawtransaction* should use up to date fedpegscript for peg-in signing 2019-09-06 10:24:00 -04:00
Gregory Sanders
8bd702784b Dynafed RPC support, tests, and deployment for custom chains 2019-09-06 10:24:00 -04:00
Gregory Sanders
f08756b5d7 OP_TRUE outputs should be allowed to be segwit-ified by decodescript 2019-09-06 10:06:44 -04:00
Gregory Sanders
2eded09b6a Have removeForBlock boot transactions when required 2019-09-06 10:06:44 -04:00
Gregory Sanders
0cfe03bec4 Expose fedpeg fetching to consensus and mempool internals 2019-09-06 10:06:44 -04:00
Gregory Sanders
b00515e223 GetTransactionSigOpCost shouldn't need fedpegscript to evaluate 2019-09-06 10:06:44 -04:00
Gregory Sanders
b096f8ddac Add and update startup args for dynafed 2019-09-06 10:06:44 -04:00
Gregory Sanders
8436710b4a Add unused dynamic genesis block style in chainparams 2019-09-06 10:06:44 -04:00
Gregory Sanders
f2e3495d60 Create epoch length chainparam 2019-09-06 10:06:44 -04:00
Gregory Sanders
85467c06ce Set default of multi_data_permitted to enforce_pak 2019-09-06 10:06:44 -04:00
Gregory Sanders
e1474d1bc7 Correct comment about liquidv1 fedpeg matching template 2019-09-06 10:06:44 -04:00
Gregory Sanders
4818e5e2b4 Miner should stop trying to account for old PAK system 2019-09-06 10:06:44 -04:00
Gregory Sanders
f277ec52f1 Add miner ability to make dynafed blocks 2019-09-06 10:06:44 -04:00