Commit graph

20748 commits

Author SHA1 Message Date
Glenn Willen
e5ba4e819e Regression test for pegin validation issues during sync
Add a regression test for https://github.com/ElementsProject/elements/issues/891 .

This checks that we can sync successfully when making a bunch of new blocks
just as we have transient loss of parent daemon connectivity. This reliably
fails without the fix, and reliably succeeds with it. (It stands in for the
situation, more common in production, where we sync faster than the parent
daemon can keep up after a long outage.)
2021-09-07 15:51:46 +00:00
Glenn Willen
7f79f72ae9 Finish removing 'recheckpeginblockinterval'; move MainchainRPCCheck
- Finish removing all references to 'recheckpeginblockinterval', including
  documentation and tests.
- Remove periodic calls to MainchainRPCCheck; use it only at startup (and
  refactor accordingly to simplify logic.)
- Move MainchainRPCCheck from validation.h/cpp (public) to an internal
  helper function of init.cpp.
- Comment out definition of 'revalidation queue' type in txdb, to suppress
  "unused variable" warning. (Leave it visible to avoid future reuse.)
2021-09-07 15:51:34 +00:00
Glenn Willen
4ba4e0716d When validation is waiting for parent chain daemon, "stall".
Currently, if -validatepegin is given, and block validation can't proceed
because the parent chain is not synced, we mark the block invalid and put
it in a queue to be "revalidated" later. Unfortunately, marking a block
invalid has downstream consequences, in particular causing descendant blocks
to be marked invalid, which are not currently fixed by the queue.

Instead, we'll use a different strategy: if the mainchain daemon isn't
sufficiently synced to validate a block, we will "stall" connecting that
block to the chain, and have ActivateBestChain simply keep the tip at the
previous block until we're ready.

We can still download and validate (partly) blocks past this point while
we're waiting. They will be connected once the parent chain daemon catches
up.
2021-09-07 15:47:25 +00:00
Steven Roose
5b1f3cc00b
Merge ElementsProject/elements#997: Bump version to v0.18.1.12
59ca369d60 Bump version to v0.18.1.12 (Steven Roose)

Pull request description:

Top commit has no ACKs.

Tree-SHA512: 7c711cca14a3f9cfa6fe2863b90c90c9ebcdde14133efc9a61a6415a21743fc36769457e44240ff8dfb577073cd54f15bddbe6d09aecc9686d302886b920cacc
2021-05-11 13:38:44 +02:00
Steven Roose
99c8e18b07
Merge ElementsProject/elements#995: [elements 0.18] Update URL to download old QT SDK
32b3328d40 Update URL to download old QT SDK (Glenn Willen)

Pull request description:

  Backport of #992.

Top commit has no ACKs.

Tree-SHA512: 370c5b8c2f5453cda11cc8408289c75599928e4647d68e226794f53904be9474a8ebe00e4ca729fe2c7009d88b3e5062341e1f3e39534b375ed944532f2c4f86
2021-05-10 19:15:08 +02:00
Steven Roose
59ca369d60
Bump version to v0.18.1.12 2021-05-10 18:37:14 +02:00
Steven Roose
73cf2f5e6f
Merge ElementsProject/elements#993: [elements-0.18] Support supplying contract hash to issueasset RPC
8b9791fa0e Support supplying contract hash to issueasset RPC (Steven Roose)

Pull request description:

  Relating https://github.com/ElementsProject/elements/issues/985.

  Needs forward port.

Top commit has no ACKs.

Tree-SHA512: e30ce7f590a5d9e8aa37b4cccb4e69fa2c62adbc28a7e67e9a91b9cff081c54bb2e300ccb6e3c692719a8ec858bd32e32445d4040e19d1affd32dae5cc0462fc
2021-05-10 18:36:19 +02:00
Steven Roose
b181708ef3
Merge ElementsProject/elements#994: [elements-0.18] Add logging for dynafed activation and transitions
ca827fcd75 Add logging for dynafed activation and transitions (Steven Roose)

Pull request description:

  Relating https://github.com/ElementsProject/elements/issues/981.

  Needs forward port.

Top commit has no ACKs.

Tree-SHA512: 0c22b7e7d149fa4664f4fc0d37b644e2fc1995f2c7764c8f444a331d04216da1a9b7914d54df8ab15b20aa899eddd9834bd4cbe605c1ca3fd360521c9f5f0c1d
2021-05-10 16:44:53 +02:00
Steven Roose
1f900e2248
Merge ElementsProject/elements#989: [elements-0.18] Undo default signalling behavior for dynafed unless enabled
b104f95651 Undo default signalling behavior for dynafed unless enabled (Steven Roose)

Pull request description:

  Backport of #986.

ACKs for top commit:
  gwillen:
    utACK b104f95 for the backport, after #986 is merged, assuming that b7a116d is the final version that goes in for #986 .

Tree-SHA512: 58eb99a21fcd6f853255fc09053955c5ac0a9e991ce5b65a01ced4d67352e9d9d6a52d84742cf5e62e3068a7bf3584a195fc284cf3959cc008d786dfaaf0d143
2021-05-10 12:06:43 +02:00
Glenn Willen
32b3328d40
Update URL to download old QT SDK 2021-05-07 16:21:27 +02:00
Steven Roose
ca827fcd75
Add logging for dynafed activation and transitions 2021-05-07 15:45:00 +02:00
Steven Roose
8b9791fa0e
Support supplying contract hash to issueasset RPC 2021-05-07 14:56:22 +02:00
Steven Roose
b104f95651
Undo default signalling behavior for dynafed unless enabled 2021-05-07 13:45:54 +02:00
Steven Roose
b1a40781c6
Merge ElementsProject/elements#988: [elements-0.18] Add liquidv1test chainparams
f01651b676 Add liquidv1test chainparams. (Glenn Willen)
e3ece812bb Fix description of -chain parameter (Glenn Willen)
6317e584a2 Change stray uses of global gArgs to args in CCustomParams (Glenn Willen)

Pull request description:

  Backport of #982.

Top commit has no ACKs.

Tree-SHA512: e83ae76dd1a34a09962e905ae8083931209d346ed679f62393adec63dc7e22a5a2eee8d23887c4be6d547c3d0e75570e7d21045fec136af9c9006c26983f6bf4
2021-05-06 15:00:20 +01:00
Glenn Willen
f01651b676
Add liquidv1test chainparams. 2021-04-30 14:43:06 +01:00
Glenn Willen
e3ece812bb
Fix description of -chain parameter 2021-04-30 14:43:00 +01:00
Glenn Willen
6317e584a2
Change stray uses of global gArgs to args in CCustomParams 2021-04-30 14:42:54 +01:00
Steven Roose
2665406602
Merge #973: [elements-0.18] Bump version to 0.18.1.11
1c5086bd83 Bump version to 0.18.1.11 (Steven Roose)

Pull request description:

  Pending on inclusion of https://github.com/ElementsProject/elements/pull/972 and https://github.com/ElementsProject/elements/pull/971.

Tree-SHA512: 34a2c14b4e540b420ddb6d0149713068472011ba8c090502843afc20cb36429245fb3bc3de57a41bee28bdaedb3da6c67f2fd01a3db9c5a5ef1351a086ac423d
2021-03-16 17:12:16 +00:00
Steven Roose
e804229e3f
Merge #972: [elements-0.18] Update the copyright year to 2021
52cc9b507f Update the copyright year to 2021 (Philippe McLean)

Pull request description:

  Backport of #966.

Tree-SHA512: 9e343c9c16efd221560e9ad6a32491df8642e19cc67dab4bf4fa383d4f6bec1f238e16c0467934018d4237f5990ed69d53f37986d8338b099a4deb7914d34fb8
2021-03-16 17:11:09 +00:00
Steven Roose
67358f80a7
Merge #971: [elements-0.18] Specify the dynafed epoch length for liquidv1
92ae1f17b6 Specify the dynafed epoch length for liquidv1 (Steven Roose)

Pull request description:

  Backport of #970.

Tree-SHA512: 59769d0b57aa42d3333e38758307a08531560f524b7ebd75797e4b56def6aacf1fd51e97ac08877100a41cfa1724bde424a4342bff5086d7395f5947c745ae20
2021-03-16 17:10:33 +00:00
Steven Roose
1c5086bd83
Bump version to 0.18.1.11 2021-03-15 17:34:53 +00:00
Philippe McLean
52cc9b507f
Update the copyright year to 2021 2021-03-15 17:32:38 +00:00
Steven Roose
92ae1f17b6
Specify the dynafed epoch length for liquidv1 2021-03-15 17:30:46 +00:00
Steven Roose
3b5961d513
Merge #965: [elements-0.18] Bump version to 0.18.1.10
89dce1b4e Bump version to 0.18.1.10 (Steven Roose)

Pull request description:

Tree-SHA512: 4a1b60fd0e9e4da63a1721e8bdfc4d2e34bda0490b5ec6b7f2b8a5038363a96e1a26341ae2d77b2918309830630513e0bcfe4ed4b1fd39dd90baa53be23fcc47
2021-03-04 13:28:47 +00:00
Steven Roose
89dce1b4ec
Bump version to 0.18.1.10 2021-03-03 11:35:38 +00:00
Steven Roose
e163fd06ce
Merge #963: [elements-0.18] Add SIGHASH_RANGEPROOF support
4ace925c5 tests: Add test feature_sighash_rangeproof.py (Steven Roose)
559f1d15a Add SIGHASH_RANGEPROOF support (Steven Roose)
cb2d10341 Add set_wif to test frameworks's ECKey (Steven Roose)

Pull request description:

  Backport of #960.

Tree-SHA512: fb97696429c2b7ad101fafcce22d1e9f0bb6450f5c3252dc3cf0ca929b9ac8f63978c9b7115e2f37445b3fff6cae0878f076580256b4333086b020bfb5c99e7a
2021-03-03 11:31:35 +00:00
Steven Roose
da80f52359
Merge #962: [elements-0.18] Some minor dynafed improvements
868e92f78 Add two missing dynafed fields to getblockchaininfo (Steven Roose)
ae54a1bad dynafed: Support changing mainnet dynafed activation (Steven Roose)
0f9b1a2ed dynafed: Only verify proposed parameters if they differ from current (Steven Roose)

Pull request description:

  Backport of #958.

Tree-SHA512: d3f809e466b98f48ba76b8deacc1fc7516440089cd9146a94e9b53ef0dc20f9e53af88cc9edc507de6ccb2da74bf83ef3722f1ab81bb385e2b9a567a4d1f7e99
2021-03-03 10:51:56 +00:00
Steven Roose
4ace925c55
tests: Add test feature_sighash_rangeproof.py 2021-03-02 16:19:54 +00:00
Steven Roose
559f1d15a3
Add SIGHASH_RANGEPROOF support 2021-03-02 16:19:53 +00:00
Steven Roose
cb2d10341a
Add set_wif to test frameworks's ECKey 2021-03-02 16:19:51 +00:00
Steven Roose
868e92f78c
Add two missing dynafed fields to getblockchaininfo 2021-03-02 15:34:01 +00:00
Steven Roose
ae54a1bad4
dynafed: Support changing mainnet dynafed activation
This should obviously only be done by blocksigners. The flag used is not
documented.
2021-03-02 15:34:00 +00:00
Steven Roose
0f9b1a2ed1
dynafed: Only verify proposed parameters if they differ from current
This allows the initial relaxed restriction on non-segwit fedpeg
programs to be extended as long as the fedpeg program is not changed
while the block signing parameters can be changed.
2021-03-02 15:33:58 +00:00
Steven Roose
af1bef5c01
Merge #920: [0.18] Bump version to 0.18.1.9
8be8610e1 Bump version to 0.18.1.9 (Steven Roose)

Pull request description:

Tree-SHA512: 3c931edeb9a0726b9a3627163c04f99cc6d4024774531c3fcbd2827b2834d520a0139796ebe7a0cc24f7abba53c7e62560e6f0a5cae6e30f949b574b1d482132
2020-10-07 12:26:18 +02:00
Steven Roose
8be8610e1d
Bump version to 0.18.1.9 2020-10-06 20:10:16 +02:00
Steven Roose
2fd40d5481
Merge #918: [0.18 backport] Backport #912: Specify BIP9 deployment for DynaFed
47bc28aa8 Speficy dynafed deployment for Liquidv1 (Steven Roose)
385b670a9 Add comment to BIP9 time fields (Steven Roose)
6f70350d0 Move dynafed bit into the ELEMENTS fields (Steven Roose)

Pull request description:

Tree-SHA512: 12710e8fd04a3753d1afc26a81f62cdef66449071da00ca39854b1cd66c4002669c26e4db0a64636f3458206d451055ddbaeb66e4fc847166b57968cd2ce59e2
2020-10-06 20:07:31 +02:00
Steven Roose
a0bd8870d6
Merge #917: [0.18 backport] Backport #911: When decoding or signing a PSBT, check blinded values.
6d557b9a3 When decoding or signing a PSBT, check blinded values. (Glenn Willen)

Pull request description:

Tree-SHA512: 0604ae37e42d0f83487d3370c64ac3968cbb813580138a32280bb147bbe8378a4306a4f6fd194cc58024b5288a551627d17c162cc110a60032fa9c69c9d51c4b
2020-10-06 20:06:48 +02:00
Steven Roose
a882ef65b7
Merge #916: [0.18 backport] Backport #910: Fix mainchain RPC warmup message
c0e7cf64e Fix mainchain RPC warmup message (Steven Roose)

Pull request description:

Tree-SHA512: 671b91baff3281ec0ff32fa76ee402d23325e8554b33f2fbf36302299d1bf70e4008f32ce4042cfccaab92279200c3bfac6afb1406226dcbff2637e028f3b39f
2020-10-06 20:04:33 +02:00
Steven Roose
e77d754b88
Merge #915: [0.18 backport] Backport #904: Fix parsing of amount commitments from prevtxs in signrawtransactionw…
4e3161620 Fix parsing of amount commitments from prevtxs in signrawtransactionwithkey (Glenn Willen)

Pull request description:

Tree-SHA512: ead69e32fb14ee85f776f786f8510df1b71432e2f3fa02588913c94566219d7b951987162be205269a67acc8b1f1cca84e78278b4bb28fb129b9ca339cda1672
2020-10-06 20:03:47 +02:00
Steven Roose
ba357760c0
Merge #914: [0.18 backport] Backport #899: Use gitian infrastructure to install librsvg2-2 (in lieu of hard-code…
94a49e814 Use gitian infrastructure to install librsvg2-2 (in lieu of hard-coded wget) (Jeff Frontz)

Pull request description:

Tree-SHA512: e472ffa1d955e88767648cee99d337f9cedd181f5ae09ccdb5ec005873871087e0beec68f6405fd8b69b061e86c6599211067e9ca26a9827f896fac1f24d9cd4
2020-10-06 20:03:11 +02:00
Steven Roose
24ae8de235
Merge #913: [0.18 backport] Backport #896: Fix logic issues with randomization of outputs in [re]issueasset_base; minor refactoring
91ec3dd16 Make error messages distinct at each failure location. (Glenn Willen)
f335ff845 Fix logic issues with randomization of outputs in [re]issueasset_base; minor refactoring. (Glenn Willen)

Pull request description:

Tree-SHA512: b9bb0ebf8023dad1897063b57c3dcf34d3761cf571e4811a6c4e3ec6b7afec9aa5b29b38f1781eeee393b51171884d2b66894ff78016c35936c0bce75d46d2ed
2020-10-06 20:00:57 +02:00
Steven Roose
47bc28aa88
Speficy dynafed deployment for Liquidv1
Bit: 25
Start: block 1,000,000 (recent past)
Timeout: never
2020-10-06 13:45:32 +02:00
Steven Roose
385b670a9f
Add comment to BIP9 time fields
The semantics of these fields were changed in
6fc3fe04ef.
2020-10-06 13:45:31 +02:00
Steven Roose
6f70350d07
Move dynafed bit into the ELEMENTS fields 2020-10-06 13:45:30 +02:00
Glenn Willen
6d557b9a3c
When decoding or signing a PSBT, check blinded values.
When we decode or sign a PSBT given to us via RPC, first check that, if
it contains blinded output values, they verifiably match the unblinded
output values contained in the original transaction proposal. Otherwise fail.
2020-10-06 13:45:11 +02:00
Steven Roose
c0e7cf64eb
Fix mainchain RPC warmup message 2020-10-06 13:44:56 +02:00
Glenn Willen
4e31616206
Fix parsing of amount commitments from prevtxs in signrawtransactionwithkey 2020-10-06 13:44:37 +02:00
Jeff Frontz
94a49e814b
Use gitian infrastructure to install librsvg2-2 (in lieu of hard-coded wget) 2020-10-06 13:44:13 +02:00
Glenn Willen
91ec3dd165
Make error messages distinct at each failure location. 2020-10-06 13:43:39 +02:00
Glenn Willen
f335ff8456
Fix logic issues with randomization of outputs in [re]issueasset_base; minor refactoring. 2020-10-06 13:43:37 +02:00