fix local_index in channel _shutdown

This commit is contained in:
ThomasV 2019-03-14 09:47:51 +01:00
parent 3abe30e9d8
commit 023d4026b9
2 changed files with 4 additions and 5 deletions

View file

@ -756,7 +756,7 @@ class Channel(PrintError):
htlcs=htlcs)
def get_local_index(self):
return int(self.config[LOCAL].multisig_key.pubkey < self.config[REMOTE].multisig_key.pubkey)
return int(self.config[LOCAL].multisig_key.pubkey > self.config[REMOTE].multisig_key.pubkey)
def make_closing_tx(self, local_script: bytes, remote_script: bytes,
fee_sat: int) -> Tuple[bytes, int, str]:

View file

@ -1155,11 +1155,10 @@ class Peer(PrintError):
# TODO: negociate better
our_fee = their_fee
# index of our_sig
i = bool(chan.get_local_index())
if not is_local: i = not i
i = chan.get_local_index()
# add signatures
closing_tx.add_signature_to_txin(0, int(i), bh2u(der_sig_from_sig_string(our_sig) + b'\x01'))
closing_tx.add_signature_to_txin(0, int(not i), bh2u(der_sig_from_sig_string(their_sig) + b'\x01'))
closing_tx.add_signature_to_txin(0, i, bh2u(der_sig_from_sig_string(our_sig) + b'\x01'))
closing_tx.add_signature_to_txin(0, 1-i, bh2u(der_sig_from_sig_string(their_sig) + b'\x01'))
# broadcast
await self.network.broadcast_transaction(closing_tx)
return closing_tx.txid()