Skip to content

Commit 1883977

Browse files
committed
f move recvd commit_sig check out of else & change close to warn for no active signing session
1 parent a72cb0c commit 1883977

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

lightning/src/ln/channel.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7042,6 +7042,7 @@ impl<SP: Deref> FundedChannel<SP> where
70427042
update_fee: None,
70437043
})
70447044
} else { None };
7045+
// TODO(dual_funding): For async signing support we need to hold back `tx_signatures` until the `commitment_signed` is ready.
70457046
let tx_signatures = if (
70467047
// if it has not received tx_signatures for that funding transaction AND
70477048
// if it has already received commitment_signed AND it should sign first, as specified in the tx_signatures requirements:
@@ -7066,19 +7067,19 @@ impl<SP: Deref> FundedChannel<SP> where
70667067
session.holder_tx_signatures().clone()
70677068
}
70687069
} else {
7069-
if !session.has_received_commitment_signed() {
7070-
self.context.expecting_peer_commitment_signed = true;
7071-
}
70727070
None
70737071
};
7072+
if !session.has_received_commitment_signed() {
7073+
self.context.expecting_peer_commitment_signed = true;
7074+
}
70747075
(commitment_update, tx_signatures, None)
70757076
} else {
70767077
// The `next_funding_txid` does not match the latest interactive funding transaction so we
70777078
// MUST send tx_abort to let the remote know that they can forget this funding transaction.
70787079
(None, None, Some(msgs::TxAbort { channel_id: self.context.channel_id(), data: vec![] }))
70797080
}
70807081
} else {
7081-
return Err(ChannelError::close("Counterparty set `next_funding_txid` at incorrect state".into()));
7082+
return Err(ChannelError::Warn("No active signing session. The associated funding transaction may have already been broadcast.".into()));
70827083
}
70837084
} else {
70847085
// Don't send anything related to interactive signing if `next_funding_txid` is not set.

0 commit comments

Comments
 (0)