URI: 
       tlnchan: make force_close_tx() assure that tx is valid, trigger failure in test - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 1d8fe52fa3d54cceb034d44ccea98a3b54eaebe9
   DIR parent cf3e050b7e58d46fda20959125f081f3264a3f28
  HTML Author: Janus <ysangkok@gmail.com>
       Date:   Mon, 17 Dec 2018 15:27:34 +0100
       
       lnchan: make force_close_tx() assure that tx is valid, trigger failure in test
       
       Diffstat:
         M electrum/lnchan.py                  |       5 +++++
         M electrum/tests/test_lnchan.py       |       2 ++
       
       2 files changed, 7 insertions(+), 0 deletions(-)
       ---
   DIR diff --git a/electrum/lnchan.py b/electrum/lnchan.py
       t@@ -868,6 +868,11 @@ class Channel(PrintError):
                tx = self.current_commitment(LOCAL)
                tx.sign({bh2u(self.config[LOCAL].multisig_key.pubkey): (self.config[LOCAL].multisig_key.privkey, True)})
                remote_sig = self.config[LOCAL].current_commitment_signature
       +
       +        preimage_hex = tx.serialize_preimage(0)
       +        pre_hash = sha256d(bfh(preimage_hex))
       +        assert ecc.verify_signature(self.config[REMOTE].multisig_key.pubkey, remote_sig, pre_hash)
       +
                remote_sig = ecc.der_sig_from_sig_string(remote_sig) + b"\x01"
                none_idx = tx._inputs[0]["signatures"].index(None)
                tx.add_signature_to_txin(0, none_idx, bh2u(remote_sig))
   DIR diff --git a/electrum/tests/test_lnchan.py b/electrum/tests/test_lnchan.py
       t@@ -237,6 +237,8 @@ class TestChannel(unittest.TestCase):
                # forward since she's sending an outgoing HTLC.
                alice_channel.receive_revocation(bobRevocation)
        
       +        alice_channel.force_close_tx()
       +
                # test serializing with locked_in htlc
                self.assertEqual(len(alice_channel.to_save()['local_log']), 1)
                alice_channel.serialize()