File tree 2 files changed +24
-2
lines changed
2 files changed +24
-2
lines changed Original file line number Diff line number Diff line change @@ -8053,6 +8053,20 @@ impl<SP: Deref> InboundV1Channel<SP> where SP::Target: SignerProvider {
8053
8053
8054
8054
Ok((channel, funding_signed, channel_monitor))
8055
8055
}
8056
+
8057
+ /// Indicates that the signer may have some signatures for us, so we should retry if we're
8058
+ /// blocked.
8059
+ #[allow(unused)]
8060
+ pub fn signer_maybe_unblocked<L: Deref>(&mut self, logger: &L) -> Option<msgs::AcceptChannel>
8061
+ where L::Target: Logger
8062
+ {
8063
+ if !self.context.holder_commitment_point.is_available() {
8064
+ self.context.holder_commitment_point.advance(&self.context.holder_signer, &self.context.secp_ctx, logger);
8065
+ }
8066
+ if self.signer_pending_accept_channel && self.context.holder_commitment_point.is_available() {
8067
+ self.generate_accept_channel_message(logger)
8068
+ } else { None }
8069
+ }
8056
8070
}
8057
8071
8058
8072
// A not-yet-funded outbound (from holder) channel using V2 channel establishment.
Original file line number Diff line number Diff line change @@ -8146,9 +8146,17 @@ where
8146
8146
});
8147
8147
}
8148
8148
}
8149
- ChannelPhase::UnfundedInboundV1(_) => {},
8149
+ ChannelPhase::UnfundedInboundV1(chan) => {
8150
+ let logger = WithChannelContext::from(&self.logger, &chan.context, None);
8151
+ if let Some(msg) = chan.signer_maybe_unblocked(&&logger) {
8152
+ pending_msg_events.push(events::MessageSendEvent::SendAcceptChannel {
8153
+ node_id,
8154
+ msg,
8155
+ });
8156
+ }
8157
+ },
8150
8158
}
8151
- };
8159
+ };
8152
8160
8153
8161
let per_peer_state = self.per_peer_state.read().unwrap();
8154
8162
if let Some((counterparty_node_id, channel_id)) = channel_opt {
You can’t perform that action at this time.
0 commit comments