rpc: add new commitment_type field to OpenChannelRequest

This field will be examined later down the stack along with the set of
feature bits to determine if explicit channel commitment type
negotiation is possible or not.
This commit is contained in:
Olaoluwa Osuntokun
2021-03-03 19:39:53 -08:00
parent d0779e2ec2
commit 5a9f499dd5
5 changed files with 671 additions and 612 deletions

View File

@@ -1115,11 +1115,16 @@ message HTLC {
}
enum CommitmentType {
/*
Returned when the commitment type isn't known or unavailable.
*/
UNKNOWN_COMMITMENT_TYPE = 0;
/*
A channel using the legacy commitment format having tweaked to_remote
keys.
*/
LEGACY = 0;
LEGACY = 1;
/*
A channel that uses the modern commitment format where the key in the
@@ -1127,19 +1132,14 @@ enum CommitmentType {
up and recovery easier as when the channel is closed, the funds go
directly to that key.
*/
STATIC_REMOTE_KEY = 1;
STATIC_REMOTE_KEY = 2;
/*
A channel that uses a commitment format that has anchor outputs on the
commitments, allowing fee bumping after a force close transaction has
been broadcast.
*/
ANCHORS = 2;
/*
Returned when the commitment type isn't known or unavailable.
*/
UNKNOWN_COMMITMENT_TYPE = 999;
ANCHORS = 3;
}
message ChannelConstraints {
@@ -1867,6 +1867,12 @@ message OpenChannelRequest {
transaction.
*/
uint32 max_local_csv = 17;
/*
The explicit commitment type to use. Note this field will only be used if
the remote peer supports explicit channel negotiation.
*/
CommitmentType commitment_type = 18;
}
message OpenStatusUpdate {
oneof update {