chanbackup: add SCB support for new anchor commitments
This commit is contained in:
5 files changed
+30
-20
No files matched your search
+14
-2
@@ -31,6 +31,11 @@ const (
|
||||
// implicitly denotes that this channel uses the new tweakless commit
|
||||
// format.
|
||||
TweaklessCommitVersion = 1
|
||||
|
||||
// AnchorsCommitVersion is the third SCB version. This version
|
||||
// implicitly denotes that this channel uses the new anchor commitment
|
||||
// format.
|
||||
AnchorsCommitVersion = 2
|
||||
)
|
||||
|
||||
// Single is a static description of an existing channel that can be used for
|
||||
@@ -157,9 +162,14 @@ func NewSingle(channel *channeldb.OpenChannel,
|
||||
},
|
||||
}
|
||||
|
||||
if channel.ChanType.IsTweakless() {
|
||||
switch {
|
||||
case channel.ChanType.HasAnchors():
|
||||
single.Version = AnchorsCommitVersion
|
||||
|
||||
case channel.ChanType.IsTweakless():
|
||||
single.Version = TweaklessCommitVersion
|
||||
} else {
|
||||
|
||||
default:
|
||||
single.Version = DefaultSingleVersion
|
||||
}
|
||||
|
||||
@@ -174,6 +184,7 @@ func (s *Single) Serialize(w io.Writer) error {
|
||||
switch s.Version {
|
||||
case DefaultSingleVersion:
|
||||
case TweaklessCommitVersion:
|
||||
case AnchorsCommitVersion:
|
||||
default:
|
||||
return fmt.Errorf("unable to serialize w/ unknown "+
|
||||
"version: %v", s.Version)
|
||||
@@ -332,6 +343,7 @@ func (s *Single) Deserialize(r io.Reader) error {
|
||||
switch s.Version {
|
||||
case DefaultSingleVersion:
|
||||
case TweaklessCommitVersion:
|
||||
case AnchorsCommitVersion:
|
||||
default:
|
||||
return fmt.Errorf("unable to de-serialize w/ unknown "+
|
||||
"version: %v", s.Version)
|
||||
|
||||
Reference in new issue
Block a user