Update to LDK 0.0.115
[ldk-sample] / src / main.rs
index 1e5edf47f00b1d2fa860a789c2dfe0a09f8a6865..6780d38d59dd3d793ab72a2aed4bdb36c5c9e383 100644 (file)
@@ -29,7 +29,7 @@ use lightning::routing::gossip;
 use lightning::routing::gossip::{NodeId, P2PGossipSync};
 use lightning::routing::router::DefaultRouter;
 use lightning::util::config::UserConfig;
-use lightning::util::events::{Event, PaymentPurpose};
+use lightning::events::{Event, PaymentPurpose};
 use lightning::util::ser::ReadableArgs;
 use lightning_background_processor::{BackgroundProcessor, GossipSync};
 use lightning_block_sync::init;
@@ -165,6 +165,8 @@ async fn handle_ldk_events(
                        receiver_node_id: _,
                        via_channel_id: _,
                        via_user_channel_id: _,
+                       claim_deadline: _,
+                       onion_fields: _,
                } => {
                        println!(
                                "\nEVENT: received payment from payment hash {} of {} millisatoshis",
@@ -260,6 +262,7 @@ async fn handle_ldk_events(
                        next_channel_id,
                        fee_earned_msat,
                        claim_from_onchain_tx,
+                       outbound_amount_forwarded_msat,
                } => {
                        let read_only_network_graph = network_graph.read_only();
                        let nodes = read_only_network_graph.nodes();
@@ -297,15 +300,20 @@ async fn handle_ldk_events(
                        } else {
                                "from HTLC fulfill message"
                        };
+                       let amt_args = if let Some(v) = outbound_amount_forwarded_msat {
+                               format!("{}", v)
+                       } else {
+                               "?".to_string()
+                       };
                        if let Some(fee_earned) = fee_earned_msat {
                                println!(
-                                       "\nEVENT: Forwarded payment{}{}, earning {} msat {}",
-                                       from_prev_str, to_next_str, fee_earned, from_onchain_str
+                                       "\nEVENT: Forwarded payment for {} msat{}{}, earning {} msat {}",
+                                       amt_args, from_prev_str, to_next_str, fee_earned, from_onchain_str
                                );
                        } else {
                                println!(
-                                       "\nEVENT: Forwarded payment{}{}, claiming onchain {}",
-                                       from_prev_str, to_next_str, from_onchain_str
+                                       "\nEVENT: Forwarded payment for {} msat{}{}, claiming onchain {}",
+                                       amt_args, from_prev_str, to_next_str, from_onchain_str
                                );
                        }
                        print!("> ");
@@ -337,6 +345,7 @@ async fn handle_ldk_events(
                                .unwrap();
                        bitcoind_client.broadcast_transaction(&spending_tx);
                }
+               Event::ChannelPending { .. } => {}
                Event::ChannelReady {
                        ref channel_id,
                        user_channel_id: _,
@@ -378,6 +387,10 @@ async fn start_ldk() {
        let ldk_data_dir = format!("{}/.ldk", args.ldk_storage_dir_path);
        fs::create_dir_all(ldk_data_dir.clone()).unwrap();
 
+       // ## Setup
+       // Step 1: Initialize the Logger
+       let logger = Arc::new(FilesystemLogger::new(ldk_data_dir.clone()));
+
        // Initialize our bitcoind client.
        let bitcoind_client = match BitcoindClient::new(
                args.bitcoind_rpc_host.clone(),
@@ -385,6 +398,7 @@ async fn start_ldk() {
                args.bitcoind_rpc_username.clone(),
                args.bitcoind_rpc_password.clone(),
                tokio::runtime::Handle::current(),
+               Arc::clone(&logger),
        )
        .await
        {
@@ -411,15 +425,11 @@ async fn start_ldk() {
                return;
        }
 
-       // ## Setup
-       // Step 1: Initialize the FeeEstimator
+       // Step 2: Initialize the FeeEstimator
 
        // BitcoindClient implements the FeeEstimator trait, so it'll act as our fee estimator.
        let fee_estimator = bitcoind_client.clone();
 
-       // Step 2: Initialize the Logger
-       let logger = Arc::new(FilesystemLogger::new(ldk_data_dir.clone()));
-
        // Step 3: Initialize the BroadcasterInterface
 
        // BitcoindClient implements the BroadcasterInterface trait, so it'll act as our transaction
@@ -629,7 +639,7 @@ async fn start_ldk() {
        let stop_listen_connect = Arc::new(AtomicBool::new(false));
        let stop_listen = Arc::clone(&stop_listen_connect);
        tokio::spawn(async move {
-               let listener = tokio::net::TcpListener::bind(format!("0.0.0.0:{}", listening_port))
+               let listener = tokio::net::TcpListener::bind(format!("[::]:{}", listening_port))
                        .await
                        .expect("Failed to bind to listen port - is something else already listening on it?");
                loop {