edfa40eb6 Remove the min(max( construction for the ct_exponent argument (Steven Roose)
Pull request description:
As per @dgpv's suggestion here: https://github.com/ElementsProject/elements/pull/834#discussion_r396333202
@dgpv could you review?
Tree-SHA512: 6c91a0a86a593f22ff42fb617aa96aeb97e2e5225e2b5b6980aa470f45ee613dab53de49dbbae20aecf7a4bf21cc005839be770917d55cfb2c9afd821c2d0231
fd4dcf9c7 Improve coinbase and issuance tx testing for txindex (Steven Roose)
ac9966f65 Index the genesis block with txindex (Steven Roose)
Pull request description:
This reverts commit ed12d5df1b in which Core removed the genesis txs from the txindex.
Since they are spendable in Elements (as opposed to Core), they should be added to the index as well.
Tree-SHA512: a9067032f80a78f5393437d287022756816a4baa6bfb8fc382d04dc7831a536dc68959a039636aa4b1bb268b2b849e67a0d4ca59abe835c2834ac358f8175e9e
We removed the similar construction for ct_bits in an earlier commit.
The construction is to keep the value between -1 and 18. This kind of
means that a user that inputs a value outside that range will not get an
error, but will use the value on the edge of the range instead.
It's probably better to return an error (generated by secp256k1) in the
case of invalid input.
c780a5186 nit: Comment in blind_tests.cpp was wrong (Steven Roose)
e87b39040 Some readability improvements in blind.cpp (Steven Roose)
26e5490e8 Switch default bits of hiding to 52 (Gregory Sanders)
Pull request description:
Replaces https://github.com/ElementsProject/elements/pull/793 and is basically that MR but rebased. (I can't rebase on Greg's branch.)
Tree-SHA512: 2c321d7f50d1c16f73e9eafc905b3a21a1aa7a4c44a2da39b1adda7f7c12d74c0f49379c7995afe605b5c07410e8e2f0e3468826e4d246c91c8a1c2c8a03e5dc
bfb77ad44 Reduce mintxfee to 0.1 sat/vbyte and fallback fee to 2 sat/vb (Steven Roose)
Pull request description:
This follows the reduction of the `minrelaytxfee` in the previous release to the same value. Using this value, the wallet will be able to make transactions with a 0.1 sat/vbyte fee by default.
Tree-SHA512: a8a977e48abdb103f4514cfe92014be4e7d720d7d1626c4648d021f0cdad55ff839d0bb146158186676f4d72515b7b6112140b041de2d86f765c8f443e567560
a7b41e1f7 initpegoutwallet: check for hardened derivation steps early (Gregory Sanders)
Pull request description:
Before anything is written to wallet.
Tree-SHA512: 44d46740481aaf06a9ff774f5c0bfa750e522b19b5cf7beeae7c1e29652978f727dc04d7f95849595d6b5fbab6a743ed66ecc529e2f56b2e8c309b1100fc12a5
c5cb71484 Place the mainchain RPC warmup message in a better place (Steven Roose)
Pull request description:
Now it also shows with `-validatepegin=0`.
Tree-SHA512: 7e04ab1b5b853fc6896245cb735e1fbfeb2c94950afdf4e2a40ad1c1d59ed06f578c1f491686caa88fa0432a02078ad4c04f338500b34812503e06570e988d52
91583b6e0 Create witness outputs for (re)issueasset RPC (Gregory Sanders)
Pull request description:
Band aid for https://github.com/ElementsProject/elements/issues/824
Tree-SHA512: 275056e075796513527382ab2c8164433267839c709d28fc197a250a98f6e1096761ff6ec9840723e7095f4027ca2fcdfa18990ed426c4e5d091efe7bc698253
fc841c804 Fix claimpegin and createrawpegin support for multiwallet. (Glenn Willen)
Pull request description:
Fixes#812. @stevenroose, take a look when you get back?
Fix multiple issues with claimpegin and createrawpegin support for
multiple loaded wallets:
- Failure to call EnsureWalletIsAvailable would cause a crash when multiple
wallets were loaded, but one was not specified in the RPC call.
- Failure to propagate the request URL from claimpegin when making an
internal call to another RPC would result in failure when multiple
wallets were loaded, by failing to specify one for that call.
Add a regression test to the feature_fedpeg.py test: at a critical point,
create a second wallet on the sidechaind, and set up the RPC client to
use the first one, to check that it still works correctly.
Tree-SHA512: 38d28319d0bc131f530a03e2477b013a982b28d321383a2316372d9aa94f66b19137ba4c1c7e1fe44e3470fe87e80fabbd435836892925b50134c05613581e10
Fix multiple issues with claimpegin and createrawpegin support for
multiple loaded wallets:
- Failure to call EnsureWalletIsAvailable would cause a crash when multiple
wallets were loaded, but one was not specified in the RPC call.
- Failure to propagate the request URL from claimpegin when making an
internal call to another RPC would result in failure when multiple
wallets were loaded, by failing to specify one for that call.
Add a regression test to the feature_fedpeg.py test: at a critical point,
create a second wallet on the sidechaind, and set up the RPC client to
use the first one, to check that it still works correctly.
This fixes f.e. that when arguments are set in CLI or the config file
without a network attached (`port` instead of `liquidv1.port`), they
will now be assigned to the liquidv1 instead of Bitcoin mainnet.
6ff3125fc Replace Greg with Steven as security contact (Steven Roose)
Pull request description:
Tree-SHA512: d29b1cf63e44511530b8d167af14c88f9e5f30c207b98751c16c6027f65c4c38e2450d57d62893a1db72651c31ba0335c2f52a8d185c06997feb5386590aeec1
ee068ef07 Fix VerifyScript calls in fuzz/script_flags (Gregory Sanders)
Pull request description:
Only is compiled with clang/fuzzer setups I suppose.
Tree-SHA512: 3e4b7a1fc96a684cb1b56565830f9f343a23a77677ddde3b18c86cc18d745bbc98c69bdefe985a0f29b3002f05bfc956d2b2b9b6574a4b48615a89dd70f6e468
00eb6c097 Test funding peg-in psbt (Andrew Chow)
1ce74e07f Be able to fund transactions with peg-ins (Andrew Chow)
74c4d3778 Tests for fundrawtransaction with external inputs (Andrew Chow)
c25874672 allow fundtx rpcs to work with external inputs (Andrew Chow)
9486cdf54 Give a better error when tx size estimation fails (Andrew Chow)
8258aaa73 Allow Coin Selection be able to take external inputs (Andrew Chow)
698340b62 Allow CInputCoin to also be constructed with COutPoint and CTxOut (Andrew Chow)
Pull request description:
Allows `fundrawtransaction` and `walletcreatefundedpsbt` to take transactions with pre-selected peg-in inputs and take them into account when selecting additional inputs to meet the output amounts.
As a side effect, those RPCs will also now allow pre-selected non-wallet inputs so long as the correct additional solving data is provided (scripts and pubkeys are needed to estimate the size for transaction fees).
Based on #751
Ports https://github.com/bitcoin/bitcoin/pull/17211 with some modification to work with elements outputs and such.
Tree-SHA512: 813202adfe2b63780bea01b02975dda393197a489a6c1a9590908ac7252d1d0e5f0984125fbfd1dc271524ddad84dc1778a1e8fa447e61235c7f21c6e6999460
7cb5f6bb0 Sign PSBTs with peg-in data (Andrew Chow)
73711eb0b Merge psbt peg-in data (Andrew Chow)
4ad849fed Finalize psbt peg-ins (Andrew Chow)
b7e369505 Test createpsbt and decodepsbt with peg-ins (Andrew Chow)
8ece8e0a0 Show peg-in info in decodepsbt (Andrew Chow)
646e76f7d Be able to create peg-in PSBTs in createpegin (Andrew Chow)
b5590b20c Add peg-in PSBT fields (Andrew Chow)
Pull request description:
Adds peg-in fields for PSBT. `createpsbt` uses the new peg-in raw tx api to allow specifying the peg-in data and then adds it to the psbt. `decodepsbt`, `finalizepsbt` and `walletsignpsbt` are both updated to handle peg-in stuff too. Also tests.
`walletcreatefundedpsbt` still does not handle peg-in data. It will require handling external inputs which the wallet does not do. I think it would be best to first implement external inputs in `FundTransaction` upstream before allowing `walletcreatefundedpsbt` to accept peg-ins.
Tree-SHA512: 838c2cf0de78b6ad948aaec2932326e2e39b6645c98193c90eedaee7e5cd8ebe3e8ea00e3ba4a67d5f862948195f37aded0e6a08a7c3c20def325d4cabb78ee3