Skip to content

[bug]: CPFP BumpFee request returns a success code on an external outpoint #9851

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
alexbosworth opened this issue May 22, 2025 · 1 comment · Fixed by #9854
Closed

[bug]: CPFP BumpFee request returns a success code on an external outpoint #9851

alexbosworth opened this issue May 22, 2025 · 1 comment · Fixed by #9854
Assignees
Labels
bug Unintended code behaviour wallet The wallet (lnwallet) which LND uses
Milestone

Comments

@alexbosworth
Copy link
Contributor

Background

When calling the BumpFee API to request a fee bump for an outpoint that is not controlled by the wallet, the API should not return a success message, since it cannot bump the requested outpoint

Your environment

  • lnd 0.19.0-beta

Steps to reproduce

  1. Create a local chain address
  2. Fund a PSBT paying to this address, but also an external address
  3. Sign and broadcast this PSBT
  4. List the UTXOs to see the TX itself is listed as a UTXO
  5. Call BumpFee, but not on the local chain address output index, on the external address index
  6. LND will return Successfully registered CPFP-tx with the sweeper

Example:

Transaction

0200000000010116c14d68dedb139e56c60ee2661e1bdde59202eaeb627eefa1e3e25bb6f59bbb0000000000ffffffff0300e1f505000000001600142c3ca97c9a0c5fd0d849da3aa5a442c09bcc819000e1f5050000000017a914a9974100aeee974a20cda9a2f545704a0ab54fdc87ef1d1a1e010000002251208fc6609ee1600666783c925dc299498b08e8114c905bc47066d1566a944bb5260247304402206e9e18c71dfbdc5522feeed3550a7e64098597aba081d021ecdd66e7a40329ce02202dad0c9573b942304e778afc60c8269cf6207e256bf866142557b27d0fe1bc110121036e93f1bfb734837d87e2e0e1f94af73ee8be3c54307af0e09dc12f3bce28092d00000000

Arguments to BumpFee

{
  force: true,
  outpoint: {
    output_index: 1,
    txid_str: '52bc17ef75059b615395c7ce73cb790289f192436ea8b100a6feb628f0224849'
  },
  target_conf: 6
}

Response from LND

{ status: 'Successfully registered CPFP-tx with the sweeper' }

Expected behavior

Error with message the passed output does not belong to the wallet

Actual behavior

CPFP will actually silently fail since the referenced outpoint is external

@alexbosworth alexbosworth added bug Unintended code behaviour needs triage labels May 22, 2025
@saubyk saubyk added wallet The wallet (lnwallet) which LND uses and removed needs triage labels May 22, 2025
@ziggie1984
Copy link
Collaborator

ziggie1984 commented May 22, 2025

previous check made also created the derivation info which included the check whether our wallet was in possession of the keys, that is not the case anymore:

https://github.com/btcsuite/btcwallet/blob/b26f4ec458b2f148f2295f749820eadb0535cf8c/wallet/utxos.go#L112

Introduced in: #8961

@saubyk saubyk added this to the v0.19.1 milestone May 23, 2025
@saubyk saubyk linked a pull request May 23, 2025 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Unintended code behaviour wallet The wallet (lnwallet) which LND uses
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants