From 02889e1bb8b2262ef0174b72d402ee0ef372d25c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Tue, 19 Oct 2021 23:04:51 +0200 Subject: [PATCH] aquatic_udp: glommio: move update_access_list to new common.rs --- aquatic_udp/src/lib/glommio/common.rs | 35 +++++++++++++++++++++++++ aquatic_udp/src/lib/glommio/handlers.rs | 29 ++------------------ aquatic_udp/src/lib/glommio/mod.rs | 1 + 3 files changed, 38 insertions(+), 27 deletions(-) create mode 100644 aquatic_udp/src/lib/glommio/common.rs diff --git a/aquatic_udp/src/lib/glommio/common.rs b/aquatic_udp/src/lib/glommio/common.rs new file mode 100644 index 0000000..c18ac51 --- /dev/null +++ b/aquatic_udp/src/lib/glommio/common.rs @@ -0,0 +1,35 @@ +use std::cell::RefCell; +use std::rc::Rc; + +use futures_lite::{AsyncBufReadExt}; +use glommio::io::{BufferedFile, StreamReaderBuilder}; +use glommio::{prelude::*}; + +use crate::common::*; +use crate::config::Config; + +pub async fn update_access_list( + config: Config, + access_list: Rc>, +){ + if config.access_list.mode.is_on(){ + let access_list_file = BufferedFile::open(config.access_list.path).await.unwrap(); + + let mut reader = StreamReaderBuilder::new(access_list_file).build(); + + loop { + let mut buf = String::with_capacity(42); + + match reader.read_line(&mut buf).await { + Ok(_) => { + access_list.borrow_mut().insert_from_line(&buf); + }, + Err(err) => { + break; + } + } + + yield_if_needed().await; + } + } +} diff --git a/aquatic_udp/src/lib/glommio/handlers.rs b/aquatic_udp/src/lib/glommio/handlers.rs index 6b341b9..3a308b1 100644 --- a/aquatic_udp/src/lib/glommio/handlers.rs +++ b/aquatic_udp/src/lib/glommio/handlers.rs @@ -3,9 +3,8 @@ use std::net::{IpAddr, SocketAddr}; use std::rc::Rc; use std::time::Duration; -use futures_lite::{AsyncBufReadExt, Stream, StreamExt}; +use futures_lite::{Stream, StreamExt}; use glommio::channels::channel_mesh::{MeshBuilder, Partial, Role, Senders}; -use glommio::io::{BufferedFile, StreamReaderBuilder}; use glommio::timer::TimerActionRepeat; use glommio::{enclose, prelude::*}; use rand::prelude::SmallRng; @@ -14,6 +13,7 @@ use rand::SeedableRng; use crate::common::announce::handle_announce_request; use crate::common::*; use crate::config::Config; +use crate::glommio::common::update_access_list; pub async fn run_request_worker( config: Config, @@ -91,28 +91,3 @@ async fn handle_request_stream( } } -pub async fn update_access_list( - config: Config, - access_list: Rc>, -){ - if config.access_list.mode.is_on(){ - let access_list_file = BufferedFile::open(config.access_list.path).await.unwrap(); - - let mut reader = StreamReaderBuilder::new(access_list_file).build(); - - loop { - let mut buf = String::with_capacity(42); - - match reader.read_line(&mut buf).await { - Ok(_) => { - access_list.borrow_mut().insert_from_line(&buf); - }, - Err(err) => { - break; - } - } - - yield_if_needed().await; - } - } -} diff --git a/aquatic_udp/src/lib/glommio/mod.rs b/aquatic_udp/src/lib/glommio/mod.rs index 89c6b9b..31fd483 100644 --- a/aquatic_udp/src/lib/glommio/mod.rs +++ b/aquatic_udp/src/lib/glommio/mod.rs @@ -5,6 +5,7 @@ use glommio::prelude::*; use crate::config::Config; +mod common; pub mod handlers; pub mod network;