Merge pull request #1518 from valentinewallace/2022-06-OMs-prefactor
[rust-lightning] / fuzz / src / router.rs
index 80ea1f1bc73d6932e4ab3db1a2da8904b0f77f14..cccc7c4f5a7f6cd21eeac3d10560f3d8f2fae298 100644 (file)
@@ -16,11 +16,11 @@ use lightning::chain::transaction::OutPoint;
 use lightning::ln::channelmanager::{ChannelDetails, ChannelCounterparty};
 use lightning::ln::features::InitFeatures;
 use lightning::ln::msgs;
+use lightning::routing::gossip::{NetworkGraph, RoutingFees};
 use lightning::routing::router::{find_route, PaymentParameters, RouteHint, RouteHintHop, RouteParameters};
 use lightning::routing::scoring::FixedPenaltyScorer;
 use lightning::util::logger::Logger;
 use lightning::util::ser::Readable;
-use lightning::routing::network_graph::{NetworkGraph, RoutingFees};
 
 use bitcoin::hashes::Hash;
 use bitcoin::secp256k1::PublicKey;
@@ -159,10 +159,10 @@ pub fn do_test<Out: test_logger::Output>(data: &[u8], out: Out) {
                }
        }
 
-       let logger: Arc<dyn Logger> = Arc::new(test_logger::TestLogger::new("".to_owned(), out));
+       let logger = test_logger::TestLogger::new("".to_owned(), out);
 
        let our_pubkey = get_pubkey!();
-       let net_graph = NetworkGraph::new(genesis_block(Network::Bitcoin).header.block_hash());
+       let net_graph = NetworkGraph::new(genesis_block(Network::Bitcoin).header.block_hash(), &logger);
 
        let mut node_pks = HashSet::new();
        let mut scid = 42;
@@ -196,7 +196,7 @@ pub fn do_test<Out: test_logger::Output>(data: &[u8], out: Out) {
                        },
                        4 => {
                                let short_channel_id = slice_to_be64(get_slice!(8));
-                               net_graph.close_channel_from_update(short_channel_id, false);
+                               net_graph.channel_failed(short_channel_id, false);
                        },
                        _ if node_pks.is_empty() => {},
                        _ => {
@@ -228,13 +228,14 @@ pub fn do_test<Out: test_logger::Output>(data: &[u8], out: Out) {
                                                                unspendable_punishment_reserve: None,
                                                                confirmations_required: None,
                                                                force_close_spend_delay: None,
-                                                               is_outbound: true, is_funding_locked: true,
+                                                               is_outbound: true, is_channel_ready: true,
                                                                is_usable: true, is_public: true,
                                                                balance_msat: 0,
                                                                outbound_capacity_msat: capacity.saturating_mul(1000),
                                                                next_outbound_htlc_limit_msat: capacity.saturating_mul(1000),
                                                                inbound_htlc_minimum_msat: None,
                                                                inbound_htlc_maximum_msat: None,
+                                                               config: None,
                                                        });
                                                }
                                                Some(&first_hops_vec[..])
@@ -267,9 +268,9 @@ pub fn do_test<Out: test_logger::Output>(data: &[u8], out: Out) {
                                                final_value_msat: slice_to_be64(get_slice!(8)),
                                                final_cltv_expiry_delta: slice_to_be32(get_slice!(4)),
                                        };
-                                       let _ = find_route(&our_pubkey, &route_params, &net_graph,
+                                       let _ = find_route(&our_pubkey, &route_params, &net_graph.read_only(),
                                                first_hops.map(|c| c.iter().collect::<Vec<_>>()).as_ref().map(|a| a.as_slice()),
-                                               Arc::clone(&logger), &scorer, &random_seed_bytes);
+                                               &logger, &scorer, &random_seed_bytes);
                                }
                        },
                }