use lightning::chain::chaininterface::{BroadcasterInterface, ConfirmationTarget, FeeEstimator};
use lightning::chain::chainmonitor;
use lightning::chain::keysinterface::{InMemorySigner, KeysInterface, KeysManager};
-use lightning::chain::Filter;
-use lightning::chain::Watch;
+use lightning::chain::{BestBlock, Filter, Watch};
use lightning::ln::channelmanager;
use lightning::ln::channelmanager::{
- BestBlock, ChainParameters, ChannelManagerReadArgs, SimpleArcChannelManager,
+ ChainParameters, ChannelManagerReadArgs, SimpleArcChannelManager,
};
use lightning::ln::peer_handler::{MessageHandler, SimpleArcPeerManager};
use lightning::ln::{PaymentHash, PaymentPreimage, PaymentSecret};
let final_tx: Transaction =
encode::deserialize(&hex_utils::to_vec(&signed_tx.hex).unwrap()).unwrap();
// Give the funding transaction back to LDK for opening the channel.
- channel_manager.funding_transaction_generated(&temporary_channel_id, final_tx).unwrap();
+ if channel_manager
+ .funding_transaction_generated(&temporary_channel_id, final_tx)
+ .is_err()
+ {
+ println!(
+ "\nERROR: Channel went away before we could fund it. The peer disconnected or refused the channel.");
+ print!("> ");
+ io::stdout().flush().unwrap();
+ }
}
Event::PaymentReceived { payment_hash, payment_preimage, payment_secret, amt, .. } => {
let mut payments = inbound_payments.lock().unwrap();
Ok(mut info) => {
for (pubkey, peer_addr) in info.drain() {
for chan_info in channel_manager.list_channels() {
- if pubkey == chan_info.remote_network_id {
+ if pubkey == chan_info.counterparty.node_id {
let _ =
cli::connect_peer_if_necessary(pubkey, peer_addr, peer_manager.clone())
.await;
// to avoid churn in the global network graph.
let chan_manager = Arc::clone(&channel_manager);
let network = args.network;
- if args.ldk_announced_listen_addr.is_some() {
+ if !args.ldk_announced_listen_addr.is_empty() {
tokio::spawn(async move {
let mut interval = tokio::time::interval(Duration::from_secs(60));
loop {
chan_manager.broadcast_node_announcement(
[0; 3],
args.ldk_announced_node_name,
- vec![args.ldk_announced_listen_addr.as_ref().unwrap().clone()],
+ args.ldk_announced_listen_addr.clone(),
);
}
});