From 7feb3bdf83db898ea0ef696e14c232da8b5b9d73 Mon Sep 17 00:00:00 2001 From: Olaoluwa Osuntokun Date: Tue, 5 Mar 2024 00:18:17 -0600 Subject: [PATCH] feature: add new NoRbfCoopClose option --- feature/manager.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/feature/manager.go b/feature/manager.go index 0b6653985..273578999 100644 --- a/feature/manager.go +++ b/feature/manager.go @@ -63,6 +63,10 @@ type Config struct { // NoRouteBlinding unsets route blinding feature bits. NoRouteBlinding bool + // RbfCoopClose unsets any bits that signal support for using RBF for + // coop close. + NoRbfCoopClose bool + // CustomFeatures is a set of custom features to advertise in each // set. CustomFeatures map[Set][]lnwire.FeatureBit @@ -192,6 +196,11 @@ func newManager(cfg Config, desc setDesc) (*Manager, error) { raw.Unset(lnwire.Bolt11BlindedPathsOptional) raw.Unset(lnwire.Bolt11BlindedPathsRequired) } + if cfg.NoRbfCoopClose { + raw.Unset(lnwire.ShutdownAnySegwitOptional) + raw.Unset(lnwire.RbfCoopCloseOptionalStaging) + } + for _, custom := range cfg.CustomFeatures[set] { if custom > set.Maximum() { return nil, fmt.Errorf("feature bit: %v "+