cfg: rename legacyprotocol to protocol

Since we are also going to use it for experimental new features.
This commit is contained in:
Johan T. Halseth 2020-03-06 16:11:48 +01:00
parent 51c5352ae4
commit 44756b5811
No known key found for this signature in database
GPG Key ID: 15BAADA29DA20D26
5 changed files with 26 additions and 26 deletions

@ -345,7 +345,7 @@ type config struct {
Watchtower *lncfg.Watchtower `group:"watchtower" namespace:"watchtower"` Watchtower *lncfg.Watchtower `group:"watchtower" namespace:"watchtower"`
LegacyProtocol *lncfg.LegacyProtocol `group:"legacyprotocol" namespace:"legacyprotocol"` ProtocolOptions *lncfg.ProtocolOptions `group:"protocol" namespace:"protocol"`
AllowCircularRoute bool `long:"allow-circular-route" description:"If true, our node will allow htlc forwards that arrive and depart on the same channel."` AllowCircularRoute bool `long:"allow-circular-route" description:"If true, our node will allow htlc forwards that arrive and depart on the same channel."`
} }

@ -2,21 +2,21 @@
package lncfg package lncfg
// LegacyProtocol is a struct that we use to be able to test backwards // ProtocolOptions is a struct that we use to be able to test backwards
// compatibility of protocol additions, while defaulting to the latest within // compatibility of protocol additions, while defaulting to the latest within
// lnd. // lnd, or to enable experimental protocol changes.
type LegacyProtocol struct { type ProtocolOptions struct {
} }
// LegacyOnion returns true if the old legacy onion format should be used when // LegacyOnion returns true if the old legacy onion format should be used when
// we're an intermediate or final hop. This controls if we set the // we're an intermediate or final hop. This controls if we set the
// TLVOnionPayloadOptional bit or not. // TLVOnionPayloadOptional bit or not.
func (l *LegacyProtocol) LegacyOnion() bool { func (l *ProtocolOptions) LegacyOnion() bool {
return false return false
} }
// LegacyOnion returns true if the old commitment format should be used for new // LegacyCommitment returns true if the old commitment format should be used
// funded channels. // for new funded channels.
func (l *LegacyProtocol) LegacyCommitment() bool { func (l *ProtocolOptions) LegacyCommitment() bool {
return false return false
} }

@ -2,14 +2,14 @@
package lncfg package lncfg
// LegacyProtocol is a struct that we use to be able to test backwards // ProtocolOptions is a struct that we use to be able to test backwards
// compatibility of protocol additions, while defaulting to the latest within // compatibility of protocol additions, while defaulting to the latest within
// lnd. // lnd, or to enable experimental protocol changes.
type LegacyProtocol struct { type ProtocolOptions struct {
// Onion if set to true, then we won't signal TLVOnionPayloadOptional. // LegacyOnionFormat if set to true, then we won't signal
// As a result, nodes that include us in the route won't use the new // TLVOnionPayloadOptional. As a result, nodes that include us in the
// modern onion framing. // route won't use the new modern onion framing.
Onion bool `long:"onion" description:"force node to not advertise the new modern TLV onion format"` LegacyOnionFormat bool `long:"legacyonion" description:"force node to not advertise the new modern TLV onion format"`
// CommitmentTweak guards if we should use the old legacy commitment // CommitmentTweak guards if we should use the old legacy commitment
// protocol, or the newer variant that doesn't have a tweak for the // protocol, or the newer variant that doesn't have a tweak for the
@ -21,12 +21,12 @@ type LegacyProtocol struct {
// LegacyOnion returns true if the old legacy onion format should be used when // LegacyOnion returns true if the old legacy onion format should be used when
// we're an intermediate or final hop. This controls if we set the // we're an intermediate or final hop. This controls if we set the
// TLVOnionPayloadOptional bit or not. // TLVOnionPayloadOptional bit or not.
func (l *LegacyProtocol) LegacyOnion() bool { func (l *ProtocolOptions) LegacyOnion() bool {
return l.Onion return l.LegacyOnionFormat
} }
// LegacyOnion returns true if the old commitment format should be used for new // LegacyCommitment returns true if the old commitment format should be used
// funded channels. // for new funded channels.
func (l *LegacyProtocol) LegacyCommitment() bool { func (l *ProtocolOptions) LegacyCommitment() bool {
return l.CommitmentTweak return l.CommitmentTweak
} }

@ -982,7 +982,7 @@ func (c commitType) String() string {
func (c commitType) Args() []string { func (c commitType) Args() []string {
switch c { switch c {
case commitTypeLegacy: case commitTypeLegacy:
return []string{"--legacyprotocol.committweak"} return []string{"--protocol.committweak"}
case commitTypeTweakless: case commitTypeTweakless:
return []string{} return []string{}
} }
@ -4247,7 +4247,7 @@ func testMultiHopPayments(net *lntest.NetworkHarness, t *harnessTest) {
// //
// First, we'll create Dave and establish a channel to Alice. Dave will // First, we'll create Dave and establish a channel to Alice. Dave will
// be running an older node that requires the legacy onion payload. // be running an older node that requires the legacy onion payload.
daveArgs := []string{"--legacyprotocol.onion"} daveArgs := []string{"--protocol.legacyonion"}
dave, err := net.NewNode("Dave", daveArgs) dave, err := net.NewNode("Dave", daveArgs)
if err != nil { if err != nil {
t.Fatalf("unable to create new nodes: %v", err) t.Fatalf("unable to create new nodes: %v", err)

@ -336,13 +336,13 @@ func newServer(listenAddrs []net.Addr, chanDB *channeldb.DB,
// Only if we're not being forced to use the legacy onion format, will // Only if we're not being forced to use the legacy onion format, will
// we signal our knowledge of the new TLV onion format. // we signal our knowledge of the new TLV onion format.
if !cfg.LegacyProtocol.LegacyOnion() { if !cfg.ProtocolOptions.LegacyOnion() {
globalFeatures.Set(lnwire.TLVOnionPayloadOptional) globalFeatures.Set(lnwire.TLVOnionPayloadOptional)
} }
// Similarly, we default to the new modern commitment format unless the // Similarly, we default to the new modern commitment format unless the
// legacy commitment config is set to true. // legacy commitment config is set to true.
if !cfg.LegacyProtocol.LegacyCommitment() { if !cfg.ProtocolOptions.LegacyCommitment() {
globalFeatures.Set(lnwire.StaticRemoteKeyOptional) globalFeatures.Set(lnwire.StaticRemoteKeyOptional)
} }
@ -375,8 +375,8 @@ func newServer(listenAddrs []net.Addr, chanDB *channeldb.DB,
) )
featureMgr, err := feature.NewManager(feature.Config{ featureMgr, err := feature.NewManager(feature.Config{
NoTLVOnion: cfg.LegacyProtocol.LegacyOnion(), NoTLVOnion: cfg.ProtocolOptions.LegacyOnion(),
NoStaticRemoteKey: cfg.LegacyProtocol.LegacyCommitment(), NoStaticRemoteKey: cfg.ProtocolOptions.LegacyCommitment(),
}) })
if err != nil { if err != nil {
return nil, err return nil, err