mirror of
https://github.com/lightningdevkit/rust-lightning.git
synced 2025-02-24 23:08:36 +01:00
[fuzz] Add fst coverage for ChannelManager::update_channel_config
This commit is contained in:
parent
e63fc65ce0
commit
7aa06d25f2
1 changed files with 21 additions and 1 deletions
|
@ -48,7 +48,7 @@ use lightning::onion_message::messenger::{Destination, MessageRouter, OnionMessa
|
|||
use lightning::routing::gossip::{P2PGossipSync, NetworkGraph};
|
||||
use lightning::routing::utxo::UtxoLookup;
|
||||
use lightning::routing::router::{InFlightHtlcs, PaymentParameters, Route, RouteParameters, Router};
|
||||
use lightning::util::config::UserConfig;
|
||||
use lightning::util::config::{ChannelConfig, UserConfig};
|
||||
use lightning::util::errors::APIError;
|
||||
use lightning::util::test_channel_signer::{TestChannelSigner, EnforcementState};
|
||||
use lightning::util::logger::Logger;
|
||||
|
@ -104,6 +104,16 @@ impl InputData {
|
|||
Some(&self.data[old_pos..old_pos + len])
|
||||
}
|
||||
}
|
||||
impl std::io::Read for &InputData {
|
||||
fn read(&mut self, buf: &mut [u8]) -> std::io::Result<usize> {
|
||||
if let Some(sl) = self.get_slice(buf.len()) {
|
||||
buf.copy_from_slice(sl);
|
||||
Ok(buf.len())
|
||||
} else {
|
||||
Ok(0)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct FuzzEstimator {
|
||||
input: Arc<InputData>,
|
||||
|
@ -758,6 +768,16 @@ pub fn do_test(mut data: &[u8], logger: &Arc<dyn Logger>) {
|
|||
}
|
||||
}
|
||||
}
|
||||
35 => {
|
||||
let config: ChannelConfig =
|
||||
if let Ok(c) = Readable::read(&mut &*input) { c } else { return; };
|
||||
let chans = channelmanager.list_channels();
|
||||
if let Some(chan) = chans.get(0) {
|
||||
let _ = channelmanager.update_channel_config(
|
||||
&chan.counterparty.node_id, &[chan.channel_id], &config
|
||||
);
|
||||
}
|
||||
}
|
||||
_ => return,
|
||||
}
|
||||
loss_detector.handler.process_events();
|
||||
|
|
Loading…
Add table
Reference in a new issue