diff --git a/watchtower/wtwire/features.go b/watchtower/wtwire/features.go new file mode 100644 index 000000000..327a88869 --- /dev/null +++ b/watchtower/wtwire/features.go @@ -0,0 +1,26 @@ +package wtwire + +import "github.com/lightningnetwork/lnd/lnwire" + +// GlobalFeatures holds the globally advertised feature bits understood by +// watchtower implementations. +var GlobalFeatures map[lnwire.FeatureBit]string + +// LocalFeatures holds the locally advertised feature bits understood by +// watchtower implementations. +var LocalFeatures = map[lnwire.FeatureBit]string{ + WtSessionsRequired: "wt-sessions-required", + WtSessionsOptional: "wt-sessions-optional", +} + +const ( + // WtSessionsRequired specifies that the advertising node requires the + // remote party to understand the protocol for creating and updating + // watchtower sessions. + WtSessionsRequired lnwire.FeatureBit = 8 + + // WtSessionsOptional specifies that the advertising node can support + // a remote party who understand the protocol for creating and updating + // watchtower sessions. + WtSessionsOptional lnwire.FeatureBit = 9 +)