@@ -8,8 +8,8 @@ use crate::logger::{log_error, FilesystemLogger, Logger};
88use crate :: payment_store:: PaymentStore ;
99use crate :: peer_store:: PeerStore ;
1010use crate :: types:: {
11- ChainMonitor , ChannelManager , GossipSync , KeysManager , NetAddress , NetworkGraph ,
12- OnionMessenger , PeerManager ,
11+ ChainMonitor , ChannelManager , FakeMessageRouter , GossipSync , KeysManager , NetAddress ,
12+ NetworkGraph , OnionMessenger , PeerManager ,
1313} ;
1414use crate :: wallet:: Wallet ;
1515use crate :: LogLevel ;
@@ -18,13 +18,15 @@ use crate::{
1818 WALLET_KEYS_SEED_LEN ,
1919} ;
2020
21- use lightning:: chain:: keysinterface:: EntropySource ;
2221use lightning:: chain:: { chainmonitor, BestBlock , Watch } ;
2322use lightning:: ln:: channelmanager:: { self , ChainParameters , ChannelManagerReadArgs } ;
2423use lightning:: ln:: msgs:: RoutingMessageHandler ;
2524use lightning:: ln:: peer_handler:: { IgnoringMessageHandler , MessageHandler } ;
2625use lightning:: routing:: router:: DefaultRouter ;
27- use lightning:: routing:: scoring:: { ProbabilisticScorer , ProbabilisticScoringParameters } ;
26+ use lightning:: routing:: scoring:: {
27+ ProbabilisticScorer , ProbabilisticScoringDecayParameters , ProbabilisticScoringFeeParameters ,
28+ } ;
29+ use lightning:: sign:: EntropySource ;
2830
2931use lightning:: util:: config:: UserConfig ;
3032use lightning:: util:: ser:: ReadableArgs ;
@@ -505,7 +507,7 @@ fn build_with_store_internal<K: KVStore + Sync + Send + 'static>(
505507 Ok ( scorer) => Arc :: new ( Mutex :: new ( scorer) ) ,
506508 Err ( e) => {
507509 if e. kind ( ) == std:: io:: ErrorKind :: NotFound {
508- let params = ProbabilisticScoringParameters :: default ( ) ;
510+ let params = ProbabilisticScoringDecayParameters :: default ( ) ;
509511 Arc :: new ( Mutex :: new ( ProbabilisticScorer :: new (
510512 params,
511513 Arc :: clone ( & network_graph) ,
@@ -517,11 +519,13 @@ fn build_with_store_internal<K: KVStore + Sync + Send + 'static>(
517519 }
518520 } ;
519521
522+ let scoring_fee_params = ProbabilisticScoringFeeParameters :: default ( ) ;
520523 let router = Arc :: new ( DefaultRouter :: new (
521524 Arc :: clone ( & network_graph) ,
522525 Arc :: clone ( & logger) ,
523526 keys_manager. get_secure_random_bytes ( ) ,
524527 Arc :: clone ( & scorer) ,
528+ scoring_fee_params,
525529 ) ) ;
526530
527531 // Read ChannelMonitor state from store
@@ -594,6 +598,7 @@ fn build_with_store_internal<K: KVStore + Sync + Send + 'static>(
594598 Arc :: clone ( & keys_manager) ,
595599 user_config,
596600 chain_params,
601+ cur_time. as_secs ( ) as u32 ,
597602 )
598603 }
599604 } ;
@@ -611,14 +616,12 @@ fn build_with_store_internal<K: KVStore + Sync + Send + 'static>(
611616 Arc :: clone ( & keys_manager) ,
612617 Arc :: clone ( & keys_manager) ,
613618 Arc :: clone ( & logger) ,
619+ Arc :: new ( FakeMessageRouter { } ) ,
620+ IgnoringMessageHandler { } ,
614621 IgnoringMessageHandler { } ,
615622 ) ) ;
616623 let ephemeral_bytes: [ u8 ; 32 ] = keys_manager. get_secure_random_bytes ( ) ;
617624
618- let cur_time = SystemTime :: now ( )
619- . duration_since ( SystemTime :: UNIX_EPOCH )
620- . map_err ( |_| BuildError :: InvalidSystemTime ) ?;
621-
622625 // Initialize the GossipSource
623626 // Use the configured gossip source, if the user set one, otherwise default to P2PNetwork.
624627 let gossip_source_config = gossip_source_config. unwrap_or ( & GossipSourceConfig :: P2PNetwork ) ;
@@ -658,12 +661,14 @@ fn build_with_store_internal<K: KVStore + Sync + Send + 'static>(
658661 route_handler : Arc :: clone ( & p2p_gossip_sync)
659662 as Arc < dyn RoutingMessageHandler + Sync + Send > ,
660663 onion_message_handler : onion_messenger,
664+ custom_message_handler : IgnoringMessageHandler { } ,
661665 } ,
662666 GossipSync :: Rapid ( _) => MessageHandler {
663667 chan_handler : Arc :: clone ( & channel_manager) ,
664668 route_handler : Arc :: new ( IgnoringMessageHandler { } )
665669 as Arc < dyn RoutingMessageHandler + Sync + Send > ,
666670 onion_message_handler : onion_messenger,
671+ custom_message_handler : IgnoringMessageHandler { } ,
667672 } ,
668673 GossipSync :: None => {
669674 unreachable ! ( "We must always have a gossip sync!" ) ;
@@ -675,7 +680,6 @@ fn build_with_store_internal<K: KVStore + Sync + Send + 'static>(
675680 cur_time. as_secs ( ) . try_into ( ) . map_err ( |_| BuildError :: InvalidSystemTime ) ?,
676681 & ephemeral_bytes,
677682 Arc :: clone ( & logger) ,
678- IgnoringMessageHandler { } ,
679683 Arc :: clone ( & keys_manager) ,
680684 ) ) ;
681685
0 commit comments