core-lightning/openingd/dualopend_wire.csv
niftynei f24bbac8d9 channel leases: pass expected lease rates around in compat form
We need to know what the lease we're expecting is. To do this
we pass around the hex encoded portion of the wire format.

We can use this passed in expected lease rates to confirm that the peer
is, in fact, using the same rates as what we have currently.

Changelog-Added: JSON-RPC: fundchannel, multifundchannel, and openchannel_init now accept a 'compact_lease' for any requested funds
2021-07-20 13:28:38 -04:00

11 KiB

1#include <bitcoin/chainparams.h>
2#include <bitcoin/psbt.h>
3#include <common/cryptomsg.h>
4#include <common/channel_config.h>
5#include <common/channel_id.h>
6#include <common/derive_basepoints.h>
7#include <common/features.h>
8#include <common/fee_states.h>
9#include <common/htlc_wire.h>
10#include <common/penalty_base.h>
11#include <common/per_peer_state.h>
12#include <secp256k1.h>
13#include <wire/peer_wire.h>
14# Which network are we configured for?
15# Base configuration we'll offer
16# Minimum/maximum configuration values we'll accept
17# Constraints in case the other end tries to open a channel.
18# master-dualopend: peer has reconnected
19# master->dualopend: reply back with our first funding info/contribs
20# must go last because of embedded tu32
21# master->dualopend: reply back with our funding info/contribs
22# dualopend->master: is this a valid RBF candidate transaction?
23# master->dualopend: this is a valid RBF candidate transaction
24# master->dualopend: attempt an RBF
25# dualopend->master: ready to commit channel open to database and
26# get some signatures for the funding_tx.
27# dualopend->master: peer updated the psbt
28# master->dualopend: we updated the psbt
29# master->dualopend: fail this channel open
30# must go last because embedded tu32
31# dualopend->master received tx_sigs from peer
32# master->dualopend send our tx_sigs to peer
33# dualopend->master tx sigs transmitted to peer
34# dualopend->peer peer locked channel
35# dualopend->master this channel has been locked
36# master->dualopend funding reached depth; tell peer
37# Tell peer to shut down channel.
38# Peer told us that channel is shutting down
39# Peer presented proof it was from the future.
40# master -> dualopend: do you have a memleak?
41# must go last because of embedded tu32
42# dualopend -> master: validate liqudity offer sig