From 6387c0ab501679108004a17da5929b778b912efe Mon Sep 17 00:00:00 2001 From: ziggie Date: Sun, 25 Aug 2024 09:48:01 +0200 Subject: [PATCH] walletrpc: error out for non-anchor chans. Return an error if a non-anchor channel is tried to be fee-bumped. --- lnrpc/walletrpc/walletkit_server.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lnrpc/walletrpc/walletkit_server.go b/lnrpc/walletrpc/walletkit_server.go index 5ed33cdc8..f955168f4 100644 --- a/lnrpc/walletrpc/walletkit_server.go +++ b/lnrpc/walletrpc/walletkit_server.go @@ -1179,6 +1179,11 @@ func (w *WalletKit) BumpForceCloseFee(_ context.Context, return nil, err } + if !channel.ChanType.HasAnchors() { + return nil, fmt.Errorf("not able to bump the fee of a " + + "non-anchor channel") + } + // Match pending sweeps with commitments of the channel for which a bump // is requested. Depending on the commitment state when force closing // the channel we might have up to 3 commitments to consider when @@ -1237,6 +1242,10 @@ func (w *WalletKit) BumpForceCloseFee(_ context.Context, return commitSet.Contains(sweep.OutPoint.Hash) }, pendingSweeps) + if len(anchors) == 0 { + return nil, fmt.Errorf("unable to find pending anchor outputs") + } + // Filter all relevant anchor sweeps and update the sweep request. for _, anchor := range anchors { // Anchor cpfp bump request are predictable because they are