diff --git a/aquatic_udp/src/lib/lib.rs b/aquatic_udp/src/lib/lib.rs index 7ccee1c..a740a3e 100644 --- a/aquatic_udp/src/lib/lib.rs +++ b/aquatic_udp/src/lib/lib.rs @@ -23,7 +23,7 @@ pub const APP_NAME: &str = "aquatic_udp: UDP BitTorrent tracker"; pub fn run(config: Config) -> ::anyhow::Result<()> { let state = State::default(); - tasks::update_access_list(&config, &state); + tasks::update_access_list(&config, &state.access_list); let num_bound_sockets = start_workers(config.clone(), state.clone())?; @@ -55,7 +55,7 @@ pub fn run(config: Config) -> ::anyhow::Result<()> { loop { ::std::thread::sleep(Duration::from_secs(config.cleaning.interval)); - tasks::update_access_list(&config, &state); + tasks::update_access_list(&config, &state.access_list); state.torrents.lock().clean(&config, &state.access_list); } diff --git a/aquatic_udp/src/lib/tasks.rs b/aquatic_udp/src/lib/tasks.rs index 44675c9..13517c4 100644 --- a/aquatic_udp/src/lib/tasks.rs +++ b/aquatic_udp/src/lib/tasks.rs @@ -1,3 +1,4 @@ +use std::sync::Arc; use std::sync::atomic::Ordering; use histogram::Histogram; @@ -7,10 +8,10 @@ use aquatic_common::access_list::AccessListMode; use crate::common::*; use crate::config::Config; -pub fn update_access_list(config: &Config, state: &State) { +pub fn update_access_list(config: &Config, access_list: &Arc) { match config.access_list.mode { AccessListMode::White | AccessListMode::Black => { - if let Err(err) = state.access_list.update_from_path(&config.access_list.path) { + if let Err(err) = access_list.update_from_path(&config.access_list.path) { ::log::error!("Update access list from path: {:?}", err); } }