let status = match loop_channel_manager.claim_funds(payment_preimage.unwrap()) {
true => {
println!(
- "\nEVENT: received payment from payment hash {} of {} millisatoshis",
- hex_utils::hex_str(&payment_hash.0),
- amt
- );
+ "\nEVENT: received payment from payment hash {} of {} millisatoshis",
+ hex_utils::hex_str(&payment_hash.0),
+ amt
+ );
print!("> ");
io::stdout().flush().unwrap();
HTLCStatus::Succeeded
}
};
+ // 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
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;
});
}