Skip to content

Refuse PSBTs that made lightningd abort in libwally - #77

Merged
kwsantiago merged 2 commits into
blake2b-unifiedfrom
psbt-asserts
Oct 30, 2026
Merged

kwsantiago merged 2 commits into
blake2b-unifiedfrom
psbt-asserts

Conversation

@kwsantiago

Copy link
Copy Markdown

Two PSBTs an RPC caller can pass that make lightningd abort on a libwally assertion.

  • wallet: addpsbtoutput and addpsbtinput given a version 2 PSBT without PSBT_GLOBAL_TX_MODIFIABLE (or without the outputs or inputs bit) aborted in psbt_add_output or psbt_append_input. They now refuse it, since adding to such a PSBT can invalidate a signature already made.
  • bitcoin: a version 2 PSBT where one input requires a time locktime and another a height locktime has no valid locktime, and fundchannel_complete aborted on it in psbt_txid. psbt_from_b64 now refuses it, which covers every RPC parameter and plugin reply.

Changelog-None

@kwsantiago
kwsantiago merged commit bead538 into blake2b-unified Oct 30, 2026
46 checks passed
@kwsantiago
kwsantiago deleted the psbt-asserts branch October 30, 2026 14:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant