Browse Source

lnbase: set new field in Transaction instead of returning a tuple in make_commitment

regtest_lnd
Janus 7 years ago
committed by SomberNight
parent
commit
b117bf6b36
No known key found for this signature in database GPG Key ID: B33B5F232C6271E9
  1. 18
      lib/lnbase.py

18
lib/lnbase.py

@ -516,13 +516,13 @@ def make_commitment(ctn, local_funding_pubkey, remote_funding_pubkey, remote_pay
tx = Transaction.from_io(c_inputs, c_outputs_filtered, locktime=locktime, version=2) tx = Transaction.from_io(c_inputs, c_outputs_filtered, locktime=locktime, version=2)
tx.BIP_LI01_sort() tx.BIP_LI01_sort()
htlc_output_indices = {} tx.htlc_output_indices = {}
for idx, output in enumerate(c_outputs): for idx, output in enumerate(c_outputs):
if output in tx.outputs(): if output in tx.outputs():
# minus the first two outputs (to_local, to_remote) # minus the first two outputs (to_local, to_remote)
htlc_output_indices[idx - 2] = tx.outputs().index(output) tx.htlc_output_indices[idx - 2] = tx.outputs().index(output)
return tx, {i: Outpoint(tx.txid(), j) for i, j in htlc_output_indices.items()} return tx
class Peer(PrintError): class Peer(PrintError):
@ -842,7 +842,7 @@ class Peer(PrintError):
local_amount = to_local_msat // 1000 local_amount = to_local_msat // 1000
remote_amount = to_remote_msat // 1000 remote_amount = to_remote_msat // 1000
# remote commitment transaction # remote commitment transaction
remote_ctx, _ = make_commitment( remote_ctx = make_commitment(
0, 0,
remote_funding_pubkey, funding_key.pubkey, local_payment_pubkey, remote_funding_pubkey, funding_key.pubkey, local_payment_pubkey,
base_point.pubkey, remote_payment_basepoint, base_point.pubkey, remote_payment_basepoint,
@ -865,7 +865,7 @@ class Peer(PrintError):
self.print_error('received funding_signed') self.print_error('received funding_signed')
remote_sig = payload['signature'] remote_sig = payload['signature']
# verify remote signature # verify remote signature
local_ctx, _ = make_commitment( local_ctx = make_commitment(
0, 0,
funding_key.pubkey, remote_funding_pubkey, remote_payment_pubkey, funding_key.pubkey, remote_funding_pubkey, remote_payment_pubkey,
base_point.pubkey, remote_payment_basepoint, base_point.pubkey, remote_payment_basepoint,
@ -995,7 +995,7 @@ class Peer(PrintError):
) )
] ]
new_commitment, _ = make_commitment_using_open_channel(openchannel, 1, True, local_next_per_commitment_point, new_commitment = make_commitment_using_open_channel(openchannel, 1, True, local_next_per_commitment_point,
openchannel.local_state.amount_sat, openchannel.local_state.amount_sat,
openchannel.remote_state.amount_sat - expected_received_sat, openchannel.remote_state.amount_sat - expected_received_sat,
htlcs_in_local) htlcs_in_local)
@ -1025,7 +1025,7 @@ class Peer(PrintError):
# TODO check payment_hash # TODO check payment_hash
revocation_pubkey = derive_blinded_pubkey(revocation_basepoint, remote_next_commitment_point) revocation_pubkey = derive_blinded_pubkey(revocation_basepoint, remote_next_commitment_point)
htlcs_in_remote = [(make_offered_htlc(revocation_pubkey, their_remote_htlc_pubkey, their_local_htlc_pubkey, payment_hash), amount_msat)] htlcs_in_remote = [(make_offered_htlc(revocation_pubkey, their_remote_htlc_pubkey, their_local_htlc_pubkey, payment_hash), amount_msat)]
remote_ctx, htlc_outpoints = make_commitment_using_open_channel(openchannel, 1, False, remote_next_commitment_point, remote_ctx = make_commitment_using_open_channel(openchannel, 1, False, remote_next_commitment_point,
openchannel.remote_state.amount_sat - expected_received_sat, openchannel.local_state.amount_sat, htlcs_in_remote) openchannel.remote_state.amount_sat - expected_received_sat, openchannel.local_state.amount_sat, htlcs_in_remote)
remote_ctx.sign({bh2u(funding_pubkey): (funding_privkey, True)}) remote_ctx.sign({bh2u(funding_pubkey): (funding_privkey, True)})
sig_index = pubkeys.index(bh2u(funding_pubkey)) sig_index = pubkeys.index(bh2u(funding_pubkey))
@ -1043,7 +1043,7 @@ class Peer(PrintError):
preimage_script = htlcs_in_remote[0][0] preimage_script = htlcs_in_remote[0][0]
htlc_output_txid = remote_ctx.txid() htlc_output_txid = remote_ctx.txid()
htlc_tx_inputs = make_htlc_tx_inputs( htlc_tx_inputs = make_htlc_tx_inputs(
*htlc_outpoints[0], remote_ctx.txid(), remote_ctx.htlc_output_indices[0],
revocationpubkey=revocation_pubkey, revocationpubkey=revocation_pubkey,
local_delayedpubkey=remote_delayedpubkey, local_delayedpubkey=remote_delayedpubkey,
amount_msat=amount_msat, amount_msat=amount_msat,
@ -1070,7 +1070,7 @@ class Peer(PrintError):
remote_next_commitment_point = revoke_and_ack_msg["next_per_commitment_point"] remote_next_commitment_point = revoke_and_ack_msg["next_per_commitment_point"]
# remote commitment transaction without htlcs # remote commitment transaction without htlcs
bare_ctx, _ = make_commitment_using_open_channel(openchannel, 2, False, remote_next_commitment_point, bare_ctx = make_commitment_using_open_channel(openchannel, 2, False, remote_next_commitment_point,
openchannel.remote_state.amount_sat - expected_received_sat, openchannel.local_state.amount_sat + expected_received_sat) openchannel.remote_state.amount_sat - expected_received_sat, openchannel.local_state.amount_sat + expected_received_sat)
bare_ctx.sign({bh2u(funding_pubkey): (funding_privkey, True)}) bare_ctx.sign({bh2u(funding_pubkey): (funding_privkey, True)})

Loading…
Cancel
Save