X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=src%2Fmain.rs;h=bf0e24e9051ed6e8d75568f589d0da9fbd3f5570;hb=db795e9f0c4ae10704ad14fce2986825b9f2aa59;hp=21dfb284a81eeae3e9b1366a41e55fc4cd891378;hpb=f6eba96691e0438b700a6f7ce0608bd29b3c83d9;p=ldk-sample diff --git a/src/main.rs b/src/main.rs index 21dfb28..bf0e24e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -290,6 +290,22 @@ async fn start_ldk() { } }; + // Check that the bitcoind we've connected to is running the network we expect + let bitcoind_chain = bitcoind_client.get_blockchain_info().await.chain; + if bitcoind_chain + != match args.network { + bitcoin::Network::Bitcoin => "main", + bitcoin::Network::Testnet => "test", + bitcoin::Network::Regtest => "regtest", + bitcoin::Network::Signet => "signet", + } { + println!( + "Chain argument ({}) didn't match bitcoind chain ({})", + args.network, bitcoind_chain + ); + return; + } + // ## Setup // Step 1: Initialize the FeeEstimator @@ -466,13 +482,13 @@ async fn start_ldk() { let event_notifier = event_ntfn_sender.clone(); let listening_port = args.ldk_peer_listening_port; tokio::spawn(async move { - let listener = std::net::TcpListener::bind(format!("0.0.0.0:{}", listening_port)).unwrap(); + let listener = tokio::net::TcpListener::bind(format!("0.0.0.0:{}", listening_port)).await.unwrap(); loop { let peer_mgr = peer_manager_connection_handler.clone(); let notifier = event_notifier.clone(); - let tcp_stream = listener.accept().unwrap().0; + let tcp_stream = listener.accept().await.unwrap().0; tokio::spawn(async move { - lightning_net_tokio::setup_inbound(peer_mgr.clone(), notifier.clone(), tcp_stream) + lightning_net_tokio::setup_inbound(peer_mgr.clone(), notifier.clone(), tcp_stream.into_std().unwrap()) .await; }); }