43a355321f
In this commit, we split off the protocol options into a normal and legacy sub-config. The legacy sub-config protected by a built tag, and will only be populated if thet tag is set. Legacy options now have a `legacy` prefix. So `--protocol.legacyonion` is now `--protocol.onion`, and `--protocol.committweak`, is now `--protocol.legacy.committweak`. We also create a new experimental protocol feature sub-config for newer features that may not yet been fully complete, so they require a build tag.
16 lines
655 B
Go
16 lines
655 B
Go
package lncfg
|
|
|
|
// ProtocolOptions is a struct that we use to be able to test backwards
|
|
// compatibility of protocol additions, while defaulting to the latest within
|
|
// lnd, or to enable experimental protocol changes.
|
|
type ProtocolOptions struct {
|
|
// LegacyProtocol is a sub-config that houses all the legacy protocol
|
|
// options. These are mostly used for integration tests as most modern
|
|
// nodes shuld always run with them on by default.
|
|
LegacyProtocol `group:"legacy" namespace:"legacy"`
|
|
|
|
// ExperimentalProtocol is a sub-config that houses any experimental
|
|
// protocol features that also require a build-tag to activate.
|
|
ExperimentalProtocol
|
|
}
|