X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=fuzz%2Fsrc%2Ffull_stack.rs;h=ff3ef74e8eaee751a300b511e2de402b1a8a326d;hb=135489d7b47828da7ecf7ec624bcb4b35cbfbf95;hp=b49248d0cf3f8466242dee4ef4b54fbdf548ad5d;hpb=b5723c7d4837a26156ac22672e62aa2c955b95ba;p=rust-lightning diff --git a/fuzz/src/full_stack.rs b/fuzz/src/full_stack.rs index b49248d0..ff3ef74e 100644 --- a/fuzz/src/full_stack.rs +++ b/fuzz/src/full_stack.rs @@ -135,9 +135,9 @@ impl<'a> std::hash::Hash for Peer<'a> { } struct MoneyLossDetector<'a> { - manager: Arc, Arc>>, Arc, Arc, Arc>>, - monitor: Arc, Arc>>, - handler: PeerManager, Arc, Arc>>, Arc, Arc, Arc>>>, + manager: Arc, Arc, Arc, Arc>>, Arc, Arc, Arc, Arc>>, + monitor: Arc, Arc, Arc, Arc>>, + handler: PeerManager, Arc, Arc, Arc, Arc>>, Arc, Arc, Arc, Arc>>, Arc>, peers: &'a RefCell<[bool; 256]>, funding_txn: Vec, @@ -149,9 +149,9 @@ struct MoneyLossDetector<'a> { } impl<'a> MoneyLossDetector<'a> { pub fn new(peers: &'a RefCell<[bool; 256]>, - manager: Arc, Arc>>, Arc, Arc, Arc>>, - monitor: Arc, Arc>>, - handler: PeerManager, Arc, Arc>>, Arc, Arc, Arc>>>) -> Self { + manager: Arc, Arc, Arc, Arc>>, Arc, Arc, Arc, Arc>>, + monitor: Arc, Arc, Arc, Arc>>, + handler: PeerManager, Arc, Arc, Arc, Arc>>, Arc, Arc, Arc, Arc>>, Arc>) -> Self { MoneyLossDetector { manager, monitor, @@ -222,6 +222,9 @@ impl<'a> Drop for MoneyLossDetector<'a> { // Force all channels onto the chain (and time out claim txn) self.manager.force_close_all_channels(); + for _ in 0..6*24*14 { + self.connect_block(&[]); + } } } } @@ -323,7 +326,7 @@ pub fn do_test(data: &[u8], logger: &Arc) { Err(_) => return, }; - let watch = Arc::new(ChainWatchInterfaceUtil::new(Network::Bitcoin, Arc::clone(&logger))); + let watch = Arc::new(ChainWatchInterfaceUtil::new(Network::Bitcoin)); let broadcast = Arc::new(TestBroadcaster{}); let monitor = Arc::new(channelmonitor::SimpleManyChannelMonitor::new(watch.clone(), broadcast.clone(), Arc::clone(&logger), fee_est.clone()));