Skip to content

Commit a53764a

Browse files
committed
[fuzz] Do not fail in FST if a channel is closed before we fund it
1 parent f8450a7 commit a53764a

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

fuzz/src/full_stack.rs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ use lightning::ln::msgs::DecodeError;
3939
use lightning::routing::router::get_route;
4040
use lightning::routing::network_graph::NetGraphMsgHandler;
4141
use lightning::util::config::UserConfig;
42+
use lightning::util::errors::APIError;
4243
use lightning::util::events::Event;
4344
use lightning::util::enforcing_trait_impls::EnforcingSigner;
4445
use lightning::util::logger::Logger;
@@ -531,7 +532,13 @@ pub fn do_test(data: &[u8], logger: &Arc<dyn Logger>) {
531532
continue 'outer_loop;
532533
}
533534
};
534-
channelmanager.funding_transaction_generated(&funding_generation.0, tx.clone()).unwrap();
535+
if let Err(e) = channelmanager.funding_transaction_generated(&funding_generation.0, tx.clone()) {
536+
// It's possible the channel has been closed in the mean time, but any other
537+
// failure may be a bug.
538+
if let APIError::ChannelUnavailable { err } = e {
539+
assert_eq!(err, "No such channel");
540+
} else { panic!(); }
541+
}
535542
pending_funding_signatures.insert(funding_output, tx);
536543
}
537544
},

0 commit comments

Comments
 (0)