From 9bb39833cc23a2aed0b0521c6f94c2be08663285 Mon Sep 17 00:00:00 2001 From: SomberNight Date: Thu, 18 Mar 2021 19:13:33 +0100 Subject: [PATCH] lnpeer: add sanity checks in channel open flow re ln dummy output --- electrum/lnpeer.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/electrum/lnpeer.py b/electrum/lnpeer.py index bb935f2f1..59ee44513 100644 --- a/electrum/lnpeer.py +++ b/electrum/lnpeer.py @@ -677,7 +677,9 @@ class Peer(Logger): funding_address = bitcoin.redeem_script_to_address('p2wsh', redeem_script) funding_output = PartialTxOutput.from_address_and_value(funding_address, funding_sat) dummy_output = PartialTxOutput.from_address_and_value(ln_dummy_address(), funding_sat) - funding_tx.outputs().remove(dummy_output) + if dummy_output not in funding_tx.outputs(): raise Exception("LN dummy output (err 1)") + funding_tx._outputs.remove(dummy_output) + if dummy_output in funding_tx.outputs(): raise Exception("LN dummy output (err 2)") funding_tx.add_outputs([funding_output]) funding_tx.set_rbf(False) if not funding_tx.is_segwit():